2010-07-01 74 views
0

我有一個功能齊全的程序可以工作。然而,它有兩個對話框,我知道每次編寫程序時我都會重複使用,或者每個程序可能會重複使用兩次。它們是EULA和信息頁面。所以我已經將這兩項活動移到了他們自己的項目中,但是我並不想擁有標準的EULA和信息頁面。所以我有關於我正在開發的項目的資源。 (如果使用Assets可以更好地工作,我可以改變這種情況。)(Android)意向傳遞資源/活動

對於EULA,我有一個靜態函數checkEULA來查看它是否已被接受,並且因爲我傳遞了活動和資源ID而工作。

但是,對於InfoActivity,我試圖將其作爲純意圖執行。我可以將ID傳入捆綁包,但是有沒有辦法從意向中獲取活動或資源,而無需將其添加到束?

或者,如果沒有,那麼有什麼最佳實踐,或者一種聰明的方式來傳遞資源到意圖讓它在另一端?

回答

1

您可以使用PackageManager類來做到這一點。我相信它可以讓你從系統上的任何軟件包訪問資源。

http://developer.android.com/reference/android/content/pm/PackageManager.html#getResourcesForApplication(java.lang.String)

話雖這麼說,我很好奇,你打算如何分配這一點。您是否要告訴用戶從Android Market下載兩個不同的軟件包?

你可能要考慮尋找到這是在最新版本增加了對Android SDK工具庫項目支持:

http://developer.android.com/guide/developing/eclipse-adt.html#libraryProject

http://developer.android.com/guide/developing/other-ide.html#libraryProject

+0

它看起來當我創建一個庫項目一樣,我不需要分享我的資源,這很容易。我正在考慮把它變成一個圖書館項目。 (注意..關於這方面的文檔缺少一個步驟..除了其他所有內容外,您還必須將src文件添加到Java Build Path中。) – Kinglink 2010-07-01 16:29:52