我有兩個活動來自不同的包,比方說,「com.exampleone.a」和「com.exampletwo.b」。他們在同一個項目下。
在單清單XML,由於效率的原因,我選擇申報「com.exampleone」作爲包,即
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.exampleone"
....../>
這樣,對於意向濾波器上的其他活動我使用...
<intent-filter>
<action android:name="com.exampletwo.b" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
在我的計劃,我想去com.exampletwo.b,我會使用
所以......
Intent myIntent = new Intent("com.exampletwo.b");
startActivity(myIntent);
碰巧(是的,生活),我最終決定我必須使用activity「com.exampletwo.b」作爲啓動器。所以我試着把它變成一個啓動器...
<intent-filter>
<action android:name="com.exampletwo.b" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
...這不起作用(它給出'沒有啓動器活動發現'錯誤)。我不能重命名行動...
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
...因爲當時我也有些問題涉及到本次活動(注意,在整個項目中,我一直在使用「com.exampletwo.b 「爲我的意圖)。
有沒有一種方法可以讓啓動器工作,最好不必重命名任何東西?
我想我可能通過創建虛擬啓動器活動來實現這個工作,但是有沒有更簡單的方法來解決這個問題?