我有一个有专业版和免费版的应用,两者几乎完全相同,我希望尽可能多地使用通用代码以避免复制和放弃从一个项目移动到下一个项目时粘贴问题。
据我所知,应用程序商店根据其软件包名称识别应用程序,但我知道更改已完成应用程序的软件包名称很困难。
这种情况是否有最佳做法?
目前我唯一能想到的是尝试将尽可能多的逻辑移动到cn1lib文件中并拥有两个独立的应用程序。其他想法/方法将不胜感激。
答案 0 :(得分:1)
cn1lib方法绝对是一个好方法,但并不总是容易或实用。
我们向一些开发人员提供的方法是像往常一样创建一个版本的应用程序(免费或专业版),然后为另一个版本添加新的包名称,例如如果您的应用是com.mycompany.myfreeapp
,那么您可以在事后添加包com.mycompany.myproversion
。
您的专业主类可以派生出免费的主类,甚至具有相同的名称(因为它们位于不同的包中),因此您可以拥有一个包含两个版本的项目。
要实现这一点,你需要两个技巧,复制你的codenameone_settings.properties
文件,并将所有提及的包(以及主类,如果你也改了)替换为专业版/免费版。您还需要替换iOS的配置文件(只需重新运行向导)。
要在调试器中运行它,只需编辑项目首选项中的运行部分以指向正确的主类。
你可以把它编成一个小脚本,一旦你完成这个过程就可以完成所有这些事情。