↓その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.java
public 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 件のコメント:
コメントを投稿