问题定义:我们有一个相当大的应用程序,它有多个用例,使它们彼此独立。例如,假设我们有a1,a2,a3和amp; a4模块是我们的主应用程序'A'的独立应用程序或用例。独立的a1,a2,a3,a4都是可购买的应用程序,以便用户访问我们的网站而不是游戏商店,并通过在我们的网站上支付一些费用激活a1或a2。
所以基本上App'A'是游戏商店中的免费应用程序,并且是带有按钮的仪表板,用于启动a1,a2,a3,a4。当用户点击让我们说a1按钮然后我们将检查a1是否已经安装并启动它但是如果它不存在则给用户一个下载它的链接。
选项1:将主应用'A'和a1,a2,a3,a4作为库项目。但是使用这种方法,主应用A的规模太大了。
选项2:将a1,a2,a3,a4版本作为单独的.apk,然后放入主应用“A”的资源文件夹中,然后根据需要进行安装。主应用程序A的大小再次变大。
选项3 :将a1,a2,a3,a4上传到第三方网站或播放商店并根据需要从中下载。这样主应用程序仍然更轻。
观察:在所有这些方法中,都会有一个独立的应用在用户手机上安装了自己的图标。因此,基本上用户可以从仪表板(最终将从a1应用程序中的Activity启动意图)启动,或者用户可以直接启动应用程序a1。
后续问题:还有其他人可以建议解决此类问题吗?另一件事是通过这种方法app a1,a2,a3,a4可以开发&彼此独立测试。
答案 0 :(得分:0)
对于它的价值,我会选择3来Play商店。这是最容易管理和最知名的。比非Google网站更受信任。 “当然他们确实喜欢30%......
为了你的后续行动,我假设是Eclipse。如果您使用其他东西,请做类似的事情。
将某些内容移至生产环境时,请创建发布包(文件夹)。在包中是:
多次备份到不同的驱动器。我也刻录了DVD。
当您处理下一个版本时,请将您需要的内容复制到新的待发布版本包中。不要修改当前的发行包。 创建一个新工作区。 将SD卡复制到sdcard文件夹。 通过重命名当前文件结构然后导出带有更改的文件结构,在开发期间进行基准测试。
在开发期间,每天至少一次使用导出复制工作区文件结构。它只需要几秒钟。
根据需要添加到此过程。我们的想法是,在您发布到Play商店之前,您确保将所有内容保存到包含apk的发布包中。然后对包进行无更改。如果您在生产版本上有错误,请启动新版本。
这是所有标准编程实践。你可能已经知道了这一切。问题是执行规则。你比任何人都更了解你的环境。您所要做的就是研究可以在发布包中放置哪些组件,以便您以后复制该envonemnt。然后你必须执行规则。或者让自己跟着他们。
人们倾向于快速修复或更改源代码并构建在最后一个生产环境的顶部。没人想在凌晨2点遵守规则。你可能不得不求助于身体暴力(知道咏春?)。或者也许发送Guido以确保遵守规则。
玩得开心。做一项研究。如果您遇到硬盘崩溃,请询问您的所有员工如何恢复原始状态。这就是你的发布包中的内容。 (这也是你应该每天备份的内容。)
好吧,我已经漫长的时间告诉你你已经知道的了。希望我已经引发了一些想法。你会好的,你会听到的。