获取用户从应用列表中选择的应用的名称(android)
作者:互联网
制作一个android应用程序,我有这个意图设置,可以让用户从所有应用程序列表中进行选择,并且可以正常运行.
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
Intent pickIntent = new Intent(Intent.ACTION_PICK_ACTIVITY);
pickIntent.putExtra(Intent.EXTRA_INTENT, mainIntent);
startActivityForResult(pickIntent, 0);
我还添加了一个onActivityResult()方法,而不在其中编写任何代码.我需要在onActivityResult()方法中使用什么代码来获取用户选择的应用程序的软件包名称?
(或我可以用来启动所选应用程序的任何其他信息)
解决方法:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode == 0 && resultCode == Activity.RESULT_OK && data != null) {
ComponentName componentName = data.getComponent();
final String packageName = componentName.getPackageName();
final String activityName = componentName.getClassName();
}
}
或者你也可以startActivity(data);因此您可以启动用户选择的应用.
标签:onactivityresult,android 来源: https://codeday.me/bug/20191010/1885445.html