android - 如何开启特定的第三方 Activity ?

标签 android android-intent android-activity

好的,我想从应用程序而不是我的应用程序打开特定的 Activity。假设我想打开此包 com.test.app 和该包内的 TestActivity。我该怎么做?

我试过这样的:

Intent i = new Intent();
i.setClassName(pack, activity);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplicationContext().startActivity(i);

Intent i = new Intent(pack+activity);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplicationContext().startActivity(i);

Intent i = new Intent();
i.setClassName(pack, "."+activity);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplicationContext().startActivity(i);

Intent i = new Intent(pack+"."+activity);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplicationContext().startActivity(i);

所有这些我都遇到了这个错误:

Unable to find explicit activity class {PACKAGE/ACTIVITY}; have your declared this activity in your AndroidManifest.xml?

注意:我确实安装了应用程序包 com.test.app 和 Activity TestActivity。那么这怎么可能呢?

最佳答案

首先,您必须确保目标 Activity 已导出。它必须使用 android:export="true"显式导出,或者使用 intent-filter 隐式导出。您不能将 Intent 发送到任何应用程序的任何随机 Activity。

关于android - 如何开启特定的第三方 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18285893/

相关文章:

android - 在 Android 应用程序中通过 VideoView 将正在播放的视频静音

android - 处理从 URL 加载图像

android - 在 Google map 中标记 Recyclerview 数据

android - 奇怪的应用程序内存管理

android.content.ActivityNotFoundException,无法启动 Activity

android - 底部按钮

android - 如何从我的 Android 应用程序发送电子邮件?

android - 单一 Intent 共享音频和文本

android - 通过 Intent 从内部存储共享文本文件

Android 使用 if 语句打开 Intent