2012-11-10 107 views
1

我想創建一個「應用程序加載器」(初級)應用程序,它將從服務器獲取許可證 - 該許可證反過來將決定在其他兩個(輔助)的應用程序中可用的功能。多個應用程序的安裝程序或多個launchables

我想知道這個最好的辦法。我應該:

  1. 只從與許可信息相同的服務器獲取兩個輔助apks,並嘗試從應用程序加載器代碼中進行安裝;
  2. 將輔助應用打包到主應用的apk中。那麼我能夠在運行時從'父'apk的資源/資產中安裝輔助apks嗎?
  3. 重新創建輔助應用程序作爲一個父應用程序內的多個活動 - 與多個發射器?

我需要就各個方案的可行性,偏好(有原因)以及實際上哪些方案是可行的提供建議。

非常感謝。

回答

1

我可以在運行時從'父'apk的資源/資產中安裝輔助apks嗎?

不是沒有這些文件複製到外部存儲。由於您無法在運行時修改資源或資產,因此您的「已包裝」「次要」APK將保留在父APK中,無論更好還是更差。

我在各個場景可行性

全部是可行需要諮詢,內部約束上面列出。

+0

「全部是可行的,上面列出的contsraints內」 - 我想你的意思是:(1)和(2)(資產內的服務器或)採購文件,然後存儲到外部,然後運行。關於這個問題的兩個問題 - (i)我可以將文件存儲在設備上的父應用程序子目錄結構下(數據/數據...)(ii)我會遇到某些操作系統的權限問題(我只有2.3,沒有經驗在以後的版本中應用了哪些警告)。 – CoastalB

+0

@CoastalB:「我認爲你的意思是......」 - 我的意思是我答案的第一段。 「我可以將文件存儲在設備上的父應用程序子目錄結構下(數據/數據...)」 - 僅當文件在安裝過程中爲「MODE_WORLD_READABLE」時纔可以。安裝程序是一個不同的進程,對內部存儲上的普通文件沒有權限。 「我會遇到某些操作系統的權限問題」 - 不,沒有特定權限需要「ACTION_VIEW」APK文件。 – CommonsWare

+0

對不起 - 我問你的第一個段落只是作爲我最初誤解「你不能修改的資源。」我不想改變什麼,只是讀出的APK,但現在我明白你的意思。正如你所建議的,我會嘗試從輔助應用的子目錄中提取輔助應用(用M_W_R設置)並執行。說實話,我並不認爲這會很簡單 - 出於某種原因,我認爲本地安裝程序(出於安全目的)會有一些額外的關聯權限。 – CoastalB

相關問題