↓その2書きました。こちらの方がシンプルです。
デバッグビルドとリリースビルドで処理を変える方法(2)
http://neta-abc.blogspot.jp/2012/05/2.html
コード
MainActivity.java
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
if (DebugUtil.isDebuggable(getApplicationContext())) {
Log.e(getClass().getSimpleName(), "Debug Build");
} else {
Log.e(getClass().getSimpleName(), "Release Build");
}
}
}
DebugUtil.javapublic class DebugUtil {
public static boolean isDebuggable(Context context) {
PackageManager manager = context.getPackageManager();
ApplicationInfo info = null;
try {
info = manager.getApplicationInfo(context.getPackageName(), 0);
} catch (NameNotFoundException e) {
return false;
}
if ((info.flags & ApplicationInfo.FLAG_DEBUGGABLE) == ApplicationInfo.FLAG_DEBUGGABLE) {
return true;
}
return false;
}
}
AndroidManifest.xmlのapplicationタグ内でandroid:debuggableをtrue/falseしてデバッグビルドとリリースビルドを切り替えると思っていましたが、Eclipseから実行した場合は自動でandroid:debuggable="true"となるようです。
上記コードで以下を確認しました。
・Eclipseから実行した場合
Debug Buildのログが表示される。
・Export Signed Application Packageで作成したAPKファイルをインストールして実行した場合
Release Buildのログが表示される。
参考にしたサイト
Tech Racho
「Androidでリリース時にデバッグログをオフにする方法」
http://techracho.bpsinc.jp/bps/2010_06_28/1946
Y.A.Mの雑記帳
「Android SDK Tools, Reviison 8」
General notes: "true debug build をサポート。..."の部分
http://y-anz-m.blogspot.com/2010/12/androidsdk-tools-reviison-8.html
0 件のコメント:
コメントを投稿