デフォルトでは、Build Variants
をrelease
に変更すると、logcatでログを取得できませんが、アプリのリリースログを読み取る必要があります。これを有効にするにはどうすればよいですか?
Android:debuggable="true"
タグ内のマニフェストに<application>
(デフォルトはfalse)を追加します。
Android:デバッグ可能
ユーザーモードのデバイスで実行している場合でも、アプリケーションをデバッグできるかどうか-可能な場合は「true」、そうでない場合は「false」。
マニフェストファイルのタグからAndroid:debuggable属性を削除するか、マニフェストファイルのAndroid:debuggable属性をfalseに設定すると、デバッグを無効にできます。
Android {...}タグ内のbuild.gradle
ファイルに次を追加する必要がある場合があります。
lintOptions {
checkReleaseBuilds false
}
そして、サイドノートとして:デバイスの右に、アプリケーションのデバッグ可能はfalseまたはtrueに設定されます。しかし、Android StudioのLogCat)を介して、debuggableがtrueに設定されている場合のみ可能です(これをテストしただけです)
私は他のソリューションが好きではありません。なぜなら、あなたはアプリが実際にどのようにデプロイされているかをテストしていないからです。
より良い解決策は、 Android Device Monitor を開いて、debuggable=false
。
ここで見つけてください:
ツール-> Android-> Android Device Monitor
更新:
AndroidデバイスモニターはAndroid Studio 3.2で削除されました。ただし、SDKにはまだ存在し、ログを確認するために使用できます($Android_SKD/tools/
)
追加する必要があります
Android {
buildTypes {
release {
debuggable true
この場合、Log.
またはSystem.out.println
を使用してログを表示できます。
リリースバージョンを実行できない場合(app
は無効)、エラーが表示されます:「apkは署名されていません。プロジェクト構造ダイアログを使用して、選択したフレーバーの署名情報を設定してください」、 app -release-unsigned.apkは署名されていません 。