2011-09-07 33 views
0

我有針對Android 1.x和2.x的已發佈應用,現在我想讓它支持3.x.將現有的應用移至Android 3.x

但是Android 3.0有大量的API更改,特別是在UI上,因此如果我想讓一個應用程序與2.x和3.x兼容,代碼將變得很難看,而且封裝文件將會很大。

另一方面,如果我爲3.x製作另一個應用程序,那麼我需要保留它們的通用代碼的兩個副本。這真的很煩人。

我應該選擇什麼,或者沒有人有更聰明的解決方案?謝謝!

回答

1

如果打包在一起,你仍然可以分別維護的一切 - 例如:把一個前綴,在每一個佈局和類3.x中,如honeyMain.class面前,honeymain.xml

或者你可以做到這一點,讓你更有意義。

或者將它們部分放在一起。

它會讓你的應用變大,但隨後有15人使用3.x下載,60人使用2.x下載,你會得到75次下載,而不是一個應用15個,另一個應用60個。市場上所有排名的應用程序的累計值都會更好。另一方面,如果3.x真的很醜或FC,那麼負面評級將會影響2.x和3.x,但這很容易通過測試,測試和測試來控制。

此外,我個人討厭管理兩個不同應用程序的代碼。它過於重複。

所以,我的建議是將它們打包在一起。

+0

謝謝你,我想我會走這條路。 –

+0

很高興幫助。 :) – Jakar

+0

爲資源使用前綴是一個壞主意,當您可以使用資源限定符時,這樣就可以保持相同的佈局名稱,但將它們以不同方式打包,即在'layout-v11'或'layout-xlarge' (注意3.2中有新的屏幕限定符) – PJL

0

右鍵單擊您的項目並選擇「屬性」,選擇「Android」的從窗口,並且要檢查它的版型和應用

1

。利用資源預選賽,例如中-xlarge,-v11等

在必要時使用反射或其他技術以避免拉入API級別不支持的東西。

使用兼容性庫,這樣就可以無論如何都可以對代碼進行碎片化處理,避免重複,並且很少費力處理不同的屏幕大小。

providing resources

multple screens

compat lib