2016-09-28 29 views
0

在Android手机我想敬酒打开包的名称(应用程序) 当我再次打开另一个应用程序祝该特定应用程序的软件包名称是敬酒。 我也希望这样做的所有使用服务 我将是你的帮助,非常感谢。如何敬酒打开的应用程序包的名称(当我打开任何应用程序的软件包名称需要敬酒

+0

你说的“举杯东西”的意思是指 –

+0

到敬酒的东西? – Bennyhuo

+1

对您有帮助吗? http://stackoverflow.com/questions/2166961/determining-the-current-foreground-application-from-a-background-task-or-service – GoneUp

回答

-1

所以你需要显示您打开的任何应用的软件包名称。首先,搜索如何创建广播接收器,然后按p在这个代码中。

ActivityManager mgr = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE); 
    List<ActivityManager.RunningTaskInfo> taskInfo = mgr.getRunningTasks(1); 
    Log.d("topActivity", "Current Running Activity ::" 
      + taskInfo.get(0).topActivity.getClassName()); 

    ComponentName component = taskInfo.get(0).topActivity; 
    String packageName = component.getPackageName(); 
    Toast.makeText(getApplicationContext(), packageName , Toast.LENGTH_SHORT).show(); 

增加您的清单此权限:

uses-permission android:name="android.permission.GET_TASKS" 

要检测一个应用程序打开时,你必须创建一个意图,并启动它当上活动从后台线程改变。

+0

他想要得到他的包名,什么是伟大的代码? –

+0

非常感谢你。我是新来的android原因,我不知道如何使用广播接收器创建意图在后台线程中触发,你可以在你的程序中添加这个(广播接收器)程序。谢谢你 – Ank

1

使用下面的代码在你的发射活动

public static String PACKAGE_NAME; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    PACKAGE_NAME = getApplicationContext().getPackageName(); 

    Toast.makeText(this, PACKAGE_NAME , Toast.LENGTH_SHORT).show(); 
} 
相关问题