我遇到了问题。我需要以两种方式构建一个应用程序,第一个构建用于开发(测试)使用,第二个构建应该是生产版本。有什么方法可以以编程方式进行吗? (使用一些构建引擎)我的意思是如果可能的话,两个应用程序应该同时在一台设备上运行。两个版本都是来自一个 Android 项目的 APK。
谢谢
最佳答案
我个人用这个来判断我是否处于 Debug模式:
final PackageInfo pinfo = getPackageInfo(ctx);
final boolean debugMode = (pinfo.applicationInfo.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0;
此代码基于android-manifest.xml
的Application
标签的debuggable
属性:
如果此属性显式设置为 true
,debugMode
将设置为 true
。
但如果它显式设置为 false
或在 xml 中不存在(隐式值),debugMode
将设置为 false
.
这样做您不能同时在同一设备上运行两个应用程序,因为两个 APK 需要同时安装两个不同的包名称。所以你必须构建两个 Eclipse 项目,每个项目都有自己的包名(例如 com.example.myapp.debug
和 com.example.myapp
),以及为什么不使用包含几乎所有代码的通用库 (com.example.myapp.common
):
com.example.myapp.debug
的 debuggable
标志设置为 true
和 com.example.myapp
的 debuggable
标志设置为 false
https://stackoverflow.com/questions/7427906/