2011-02-04 25 views
0

在我看來,如果使用隱式的無類別意圖調用startActivity,則只能啓動具有指定默認類別(android.intent.category.DEFAULT)的意圖過濾器的活動。具有隱式無類別意圖的startActivity

如果我們使用startService而不是startActivity,則在服務的意圖過濾器中不需要此類別。

大家看到相同的行爲嗎?

它是否在Android官方文檔中有記載?

回答

0

我認爲這是記錄。

參見http://developer.android.com/reference/android/content/Intent.html

類別,如果提供,必須全部 由活性 類別它處理列出。也就是說,如果你 包括類別 CATEGORY_LAUNCHER和 CATEGORY_ALTERNATIVE,那麼你將 只能解析到與 意圖,列出這兩個 類別的組件。 活動將經常需要 支持CATEGORY_DEFAULT ,以便可以通過 Context.startActivity()找到它們。

我的經驗是,如果在intent中顯式設置了類,那麼可以使用startActivity()來使用無類別的活動。在那種情況下,沒有意圖匹配完成。

相關問題