android:如何从另一个apk开始apk?

时间:2014-12-08 12:15:37

标签: android performance android-activity apk

我有两个不同的apk。在第一个我保存了一个创建布局的活动。在第二个apk中,我有一个视图和其他apk上的活动使用的类。我如何将它们连接在一起?

2 个答案:

答案 0 :(得分:1)

你应该找到新apk的包名:

     Intent newApp = new Intent(Intent.ACTION_MAIN);
     newApp.setComponent(new ComponentName("com.newApp.package","com.newApp.package.Activity"));
     startActivity(newApp);

如果您只有目标套餐名称,那也很好。您可以使用PackageManager找到它的启动Intent

Intent i;
PackageManager pm = getPackageManager();
try {
    i = manager.getLaunchIntentForPackage("target app package name");
    if (i == null)
        throw new PackageManager.NameNotFoundException();
    i.addCategory(Intent.CATEGORY_LAUNCHER);
    startActivity(i);
} catch (PackageManager.NameNotFoundException e) {

}

答案 1 :(得分:1)

您可以使用此

try {
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.setComponent(new ComponentName("com.newapp.packagename", "com.newapp.packagename.Activity"));
        intent.putExtra("KEY", value);
        startActivity(intent);
    } catch (ActivityNotFoundException e) {
        e.printStackTrace();
        Toast.makeText(getActivity(), "Please Install New App", Toast.LENGTH_SHORT).show();
    }