我正在编写一个 Android 应用程序,并希望基于相同的代码创建两个版本——免费版本和高级版本。我有两个版本的一个代码库,具有各种运行时检查来启用或禁用某些功能,例如
public class MyAppContext extends Application
{
public static final boolean isPremium = true;
}
// later, in another file....
if (!MyAppContext.isPremium) {
CoolFeatures.setVisibility(View.GONE);
}
我正在使用最新的开发工具(Eclipse Indigo 和 Google 的 ADT 16)。现在,我遵循一个相当繁琐的过程,在源文件中将 isPremium 设置为 true,将应用程序导出到 APK,然后将其设置为 false 并再次将其导出到不同的 APK。这既烦人又容易出错。
有没有办法自动化这个过程?那是,
1) 创建两个不同的构建配置,以便在导出应用程序时生成两个 APK 文件。
2) 让构建配置影响编译时的代码——例如,将静态布尔值设置为 true 或 false。
Thanks!
将您的项目更改为库项目。然后创建两个应用程序(免费、高级)并导入库。然后你就可以继承MyAppContext
反对并改变isPremium
根据需要加入成员,也许可以使用额外的成员setPremium()
功能。
请注意,在清单 XML 中,您必须为每个活动、服务等使用库项目的包名称。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)