Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用显式意图在不同的应用程序中启动活动_Android_Android Intent_Explicit Intent - Fatal编程技术网

Android 使用显式意图在不同的应用程序中启动活动

Android 使用显式意图在不同的应用程序中启动活动,android,android-intent,explicit-intent,Android,Android Intent,Explicit Intent,我已经编写了两个不同的应用程序,我们称之为AppA和AppB。我正在尝试使用意图从AppB启动AppA中的活动。我正试图以明确的意图来实现这一点 在AppB中,我创建了如下意图: ComponentName cn = new ComponentName("com.example.user.appa", "appaActivity"); Intent infoIntent = new Intent(); infoIntent.setComponent(cn

我已经编写了两个不同的应用程序,我们称之为AppA和AppB。我正在尝试使用意图从AppB启动AppA中的活动。我正试图以明确的意图来实现这一点

在AppB中,我创建了如下意图:

 ComponentName cn = new ComponentName("com.example.user.appa",
            "appaActivity");
    Intent infoIntent = new Intent();
    infoIntent.setComponent(cn);
    infoIntent.setAction("com.example.DO_SOMETHING");
    infoIntent.putStringArrayListExtra("arrList", incInfo);
    startActivity(infoIntent);
在AppA的AndroidManifest.xml中,我包含了以下内容:

<activity
     android:name=".appaActivity"
     android:label="@string/title_activity">
     <intent-filter>
         <action android:name="com.example.DO_SOMETHING"/>
     </intent-filter>
</activity>

由于我可以清楚地看到我在AppA AndroidManifest.xml中定义了appaActivity,有人能告诉我我可能忽略了什么吗?

在AppB的ComponentName对象中,我没有提供类名的完整路径,因为我没有意识到这是必要的。一旦我加上这些,它就像一个符咒

更正的组件名称:

ComponentName cn = new ComponentName("com.example.user.appa",
    "com.example.user.appa.appaActivity");

您是否尝试将“”添加到意图筛选器中?因为这是一个明确的意图,所以我不需要指定默认值,因为我直接调用该活动。然而,我确实解决了这个问题。我没有意识到我需要将类名的完整路径指定为ComponentName对象的第二个参数。无论如何谢谢你!
ComponentName cn = new ComponentName("com.example.user.appa",
    "com.example.user.appa.appaActivity");