2016-01-06 66 views
2

我有一個應用程序,有一個專業版和免費版本,兩者幾乎相同,我想有儘可能多的通用代碼,以避免複製&粘貼問題從移動一個項目到下一個。兩個Codename一個項目與共享代碼

據我瞭解,應用程序商店可以根據軟件包名稱識別應用程序,但我知道更改已完成應用程序的軟件包名稱非常困難。

這種情況是否有最佳做法?

目前我唯一能想到的就是嘗試將盡可能多的邏輯移動到cn1lib文件中,並有兩個單獨的應用程序。其他想法/方法將不勝感激。

回答

1

cn1lib方法絕對是一個好方法,但並不總是簡單或實用。

我們爲某些開發人員提供的方法是像往常一樣創建應用程序的一個版本(免費或專業版),然後爲其他版本添加一個新的軟件包名稱。如果你的應用程序是com.mycompany.myfreeapp,那麼你可以在事後添加包com.mycompany.myproversion

您的專業主類可以派生出免費的主類,甚至具有相同的確切名稱(因爲它們位於不同的包中),因此您可以有兩個版本的項目。

爲了實現這個功能,您需要兩個技巧,複製codenameone_settings.properties文件,並將包中的所有提及(以及主類,如果您也更改)替換爲專業版/免費版。您還需要替換iOS的供應配置文件(只需重新運行該向導)。

要在調試器中運行此操作,只需編輯項目首選項中的運行部分以指向正確的主類。

你可以將它編碼成一個小腳本,一旦你通過這個過程就完成所有這些事情。