Mat*_*ins 4 java environment android release
我正在开发Android应用程序,特别是使用Facebook Android SDK的应用程序.在开发模式中,我正在使用一个带有一个ID的测试Facebook应用程序.但是,在发布模式下,该应用程序将使用具有不同ID的第二个Facebook应用程序.
我想知道大多数Android(或Java可能是一个适当的知识领域)开发人员如何让他们的应用程序自动构建调试与发布值.在构建之前,理想的解决方案不涉及手动开关(例如:切换public static final DEBUG = false;到true).
在eclipse ADT 17.0及更高版本中,有一个新功能.检查使用您的代码自动构建的BuildConfig.DEBUG.
有关更多信息,请参阅http://developer.android.com/sdk/eclipse-adt.html
我不推荐使用IMEI方法......主要问题是并非所有Android设备都有IMEI.更好的方法是检查用于签署.apk的签名.
// See if we're a debug or a release build
try {
PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES);
if (packageInfo.signatures.length>0) {
String signature = new String(packageInfo.signatures[0].toByteArray());
isReleaseBuild = !signature.contains("Android Debug");
}
} catch (NameNotFoundException e1) {
e1.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)