我正在尝试编写一个启动Android STK活动的应用程序,如下所示:
Intent intent = new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setAction(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.android.stk", "com.android.stk.StkLauncherActivity"));
startActivity(intent);
我一直收到以下错误:
android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.stk/com.android.stk.StkLauncherActivity}; have you declared this activity in your AndroidManifest.xml?
我在清单中声明了以下内容:
<activity android:name="com.android.stk.StkLauncherActivity"/>
答案 0 :(得分:4)
尝试使用PackageManager.getLaunchIntentForPackage返回意图在给定包中启动前门活动:
PackageManager manager = getPackageManager();
Intent intent =manager.getLaunchIntentForPackage("com.android.stk");
if (intent != null)
startActivity(intent);
答案 1 :(得分:1)
看起来像是一个错字
com.android.stk/com.android.stk2.StkLauncherActivity
stk
或stk2
? :)
答案 2 :(得分:0)
要从其他应用启动活动,您可以在您的活动所属的应用的Android清单的活动意图过滤器中设置“操作”。在启动时为意图设置相同的“操作”
答案 3 :(得分:0)
请尝试以下代码段
final Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
final ComponentName cn = new ComponentName("com.abc.xyz", "com.abc.xyz.MainActivity");
intent.setComponent(cn);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity( intent);
详细信息Follow this Link