0

制作一个 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() 方法中需要什么代码来获取用户选择的应用程序的包名称?

(或我可以用来启动所选应用程序的任何其他信息)

4

1 回答 1

0
@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); 这样您就可以启动用户选择的应用程序。

于 2013-11-30T03:35:55.987 回答