Android 6.0:获取当前活动的包名称[重复]
Posted
技术标签:
【中文标题】Android 6.0:获取当前活动的包名称[重复]【英文标题】:Android 6.0: Get package name of current activity [duplicate] 【发布时间】:2016-04-04 08:30:51 【问题描述】:如何获取当前活动包名?正如getRunningAppProcesses()
在android 6.0 中不工作。
下面是我的代码:
grdPhoto.setOnItemClickListener(new AdapterView.OnItemClickListener()
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
//get package name of current running application.
ActivityManager mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
packageName = mActivityManager.getRunningAppProcesses().get(1).processName;
Log.e("Package name:=========== ", "Package name " + packageName);
);
【问题讨论】:
***.com/questions/13792653/… 查看这个答案***.com/questions/28066231/… 感谢您的回复,但在 android 6.0 上无法获取当前正在运行的应用程序包名称。 【参考方案1】:此代码是不必要的:
//get package name of current running application.
ActivityManager mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
packageName = mActivityManager.getRunningAppProcesses().get(1).processName;
试试这个:
grdPhoto.setOnItemClickListener(new AdapterView.OnItemClickListener()
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
//get package name of current running application.
Log.e("Package name:=========== ", "Package name " + getApplicationContext().getPackageName());
);
如果这不起作用,您知道您的 ontemclicklistener 存在问题,因此请在您的 oncreate 方法中尝试此操作或作为日志来证明getApplicationContext().getPackageName()
将获得正确的应用程序包名称。
Toast.makeText(this, getApplicationContext().getPackageName(),Toast.LENGTH_SHORT).show();
【讨论】:
【参考方案2】:获取包名:
getApplicationContext().getPackageName();
也请参考:Get package name.
【讨论】:
以上是关于Android 6.0:获取当前活动的包名称[重复]的主要内容,如果未能解决你的问题,请参考以下文章
我将如何获取可以在 android 上成为 Home 的应用程序的包名称
如何在android中获取Fragment的包名(不是Activity的)[重复]
如何在 android 2.3 及更高版本中获取当前启动器的包名?