2
我試圖通過僅從其他應用程序中的活動指定其動作(自定義)在其意向過濾器中定義的動作來啓動活動。要啓動的活動是其應用程序的主要活動,因此已在其意向過濾器中設置爲動作和類別android.intent.action.MAIN
& android.intent.category.LAUNCHER
。現在根據意向和意圖過濾器的Android文檔,在這種情況下,我不需要指定DEFAULT
類別。但做同樣的我我無法啓動該活動。無法使用隱式意圖啓動活動,僅指定動作
logcat中說,活動找不到......
我是曲解文本或有別的失蹤......?
代碼,用於調用活動
Intent i=new Intent();
i.setAction("android.AddressBookV4.firstActivity");
startActivity(i);
活動的定義被稱爲manifest文件
<activity android:name=".AddressBook"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.AddressBookV4.firstActivity" />
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
但沒有類別的意圖應該已通過類別測試。也acc。以文檔爲目標對象中存在的默認類別時,在爲「主」操作設置活動的情況下,不需要提及類別爲「啓動器」。 – Amit 2010-03-07 08:48:25
「但沒有任何類別的意圖應該通過類別測試」 - 不,它不會。你需要將'LAUNCHER'類別添加到你的'Intent'中。 – CommonsWare 2010-03-07 13:41:45