有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何从我的安卓应用程序启动另一个应用程序

final List<PackageInfo> packs = getPackageManager().getInstalledPackages(0);

上面的PackageInfo类用于获取包列表

获取以下项目的程序包名称:

    ViewHendler hendler = new ViewHendler();
                hendler.textLable = (TextView)convertView.findViewById(R.id.textView);
Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage(packageName);



startActivity( LaunchIntent );

然后使用程序包名称调用启动应用程序(packageName)

void launchApp(String packageName) {

        Intent mIntent = getPackageManager().getLaunchIntentForPackage(packageName);
       if (mIntent != null) {
            try {
                startActivity(mIntent);
            } catch (ActivityNotFoundException err) {
                Toast t = Toast.makeText(getApplicationContext(),
                        R.string.app_not_found, Toast.LENGTH_SHORT);
                t.show();
            }
        }
    }

但没有得到结果(从我的应用程序中启动另一个应用程序)


共 (1) 个答案

  1. # 1 楼答案

    这是正确的使用方法:

    Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.package.name");
    startActivity(LaunchIntent);
    

    但可能你没有许可,或者你没有申请
    首先检查packageName参数