2012-11-13 71 views
1

我有一個正在爲幾個不同的客戶開發的應用程序。該應用程序將完全相同,每個客戶只有不同的公司名稱,聯繫方式和徽標圖形。所有應用都可以在Google Play上使用。管理可重新安裝的Android應用程序

有什麼方法可以管理應用程序,以便我只需要更新一次代碼即可在所有客戶端上發佈更改?即,如果我對代碼進行更改,我可以上傳一次,所有應用程序都可以從那裏更新?

我雖然在Play Store上製作應用程序本質上是一個骨架apk,然後它可以下載並安裝正確的APK,並從Web服務中檢索適當的自定義數據,然後以編程方式處理檢查應用程序的更新版本apk 。我在這裏可以看到的唯一問題是用戶需要啓用不明來源的安裝,這不適合我們的客戶。

有沒有人有任何其他想法如何做到這一點?

回答

-1

當然,做到這一點的一種方法是將應用程序開發爲網絡應用程序。然後,所有的容器應用程序將需要包含的將是一個Web視圖和應用程序所屬公司的詳細信息。網絡服務可以處理所有請求。

此方法的問題是您無法訪問android UI小部件集。而且,就我所知,您無法從webview中的代碼訪問設備位置服務等功能?

+1

而一個網絡應用程序不可用離線...哦,但它是多平臺 – 323go

+0

嗯...應用程序的問題依賴於互聯網連接無論如何。進一步的研究表明,通過HTML5訪問位置服務是可能的。無論如何,該項目已取消我的手,所以問題得到解決:) – LairdPleng

3

1.)創建一個容器應用程序,並通過在線下載自定義位並將其存儲在私有存儲中,將其「提供」給相應的客戶端。例如,您可以下載一個XML文件,其中包含定義UI的元素和對徽標圖形的引用,然後在運行時應用這些資產。如果您想進行單點登錄,您可以提供一個啓動器小部件,該小部件將從下載的資產更新到選定的客戶端。在Eclipse的一個庫項目中編寫核心功能,然後爲每個客戶端(具有不同的assets和values.xml)定製應用程序包含該庫。您的所有業務邏輯和用戶界面的首當其衝都將在客戶端之間共享,但前端位將是定製的。

是的,你將不得不維護幾個包,而發佈會有點額外的工作。另一方面,這是一個非常乾淨的方法,可以最大限度地重用代碼。

0

就我個人而言,我會根據您可以打包的應用程序的配置文件製作儘可能多的應用程序。圖像,標籤等都可以在運行時確定。您必須找到一種方法來發送或下載「配置」文件,但是在某一時刻(安裝期間),用戶將被連接。

+0

是使基於配置文件的數據是容易的部分。我正在尋找的是一種能夠將更新彙總到所有客戶端的基本代碼而無需維護獨立代碼庫的方法。 – LairdPleng

相關問題