2012-02-11 66 views
2

比方說,你有一個應用程序聲明自己能夠處理像電話這樣的系統意圖,並且用戶將其選爲默認應用程序。當市場更新應用程序時,爲什麼要清除默認值?有沒有辦法阻止這種情況,所以如果我想讓Dialer 1.0處理電話按鈕,Dialer 2.0仍然可以做到這一點,而不必重新選擇它。爲什麼更新應用程序清除其默認值?

回答

4

默認值映射到應用程序中的特定實現(實現活動的類的名稱),可以在應用程序更新時更改。爲了保守和安全,平臺通常在應用程序更新時清除這些應用程序,因爲它們可能會更改並導致對不再存在的活動的引用。在您的應用中沒有任何東西可以阻止這種情況的發生。

+0

但在安裝時,您知道新APK提供的活動列表以及之前設置的默認值。所以不應該保留目標Activity仍然存在的默認值? – 2012-02-18 18:40:27

+0

它可能更聰明,但目前情況並非如此。 – hackbod 2012-02-19 07:32:43

相關問題