从Receiver启动外部活动

时间:2011-08-14 13:09:50

标签: android android-intent broadcastreceiver

我得到了这个代码来推出Googles Car Home:

Intent i = new Intent();
                i.setClassName("com.android.carhome", "CarHome");
                i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                context.startActivity(i);

但是,我收到了以下错误:

E/AndroidRuntime( 6604): Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.carhome/com.android.carhome.CarHome}; have you declared this activity in your AndroidManifest.xml

如何在anifest中声明这个?我搜索了很多,但没有找到答案。

谢谢!

1 个答案:

答案 0 :(得分:1)

这是您在清单中声明Receiver的方式。

 <receiver android:name=".CarHome" android:enabled="true">
        <intent-filter>
      <action android:name="com.android.carhome.CarHome"></action>
        </intent-filter>
    </receiver>

http://developer.android.com/guide/topics/manifest/receiver-element.html

但是,我不确定你是否可以将外部意图作为接收者启动。您必须将其作为具有DEFAULT类别和所有内容的单独活动启动。