2016-06-27 8 views
0

Android Docによれば、Androidアプリはデフォルトではデバッグできません。Androidアプリがデフォルトでデバッグできないのはなぜですか?

アンドロイド:デバッグアプリケーションをデバッグすることができるかどうかは

、 ユーザーモードでデバイス上で動作している場合であっても - 「真」それができるならば、そうでない場合、「偽」。 デフォルト値は "false"です。

ここで、私はAndroid Studioで最も簡単なアプリケーションをデフォルトの手順で作成すると仮定します。

  • AndroidManifest.xmlには、android:debuggable指定子が含まれていません。

  • デフォルトのbuild.gradleファイルには、buildTypesの下にデバッグ可能な指定子が含まれていません。

Androidドックごとに、デフォルトではデバッグ可能ではありません。

ただし、Android Studioで新しく作成したアプリをいつでもデバッグできます。

なぜですか?

答えて

1

これ以下の記事はここでうまくdo not use debugabble attribute

それを説明し、それから、重要な注意事項です。

Androidの開発者が自分のアプリのマニフェストファイルのデバッグ可能な属性を更新し、デバッグのために「true」に設定し、新しい署名付きパッケージをリリースする直前に「false」に設定しなければならない時がありました。

しかし、すべての開発者が気付いたわけではありませんが、多くの人が手動でデバッグ可能な切り替えを続けています。 SDKツールから

http://developer.android.com/tools/sdk/tools-notes.html

リビジョン8:真のデバッグビルドの

サポート。開発者は、マニフェスト内のタグにandroid:debuggable属性を追加する必要がなくなりました。ビルドツールは自動的に属性を追加します。 Eclipse/ADTでは、すべての増分ビルドはデバッグビルドと見なされるため、ツールはandroid:debuggable = "true"を挿入します。署名付きリリースビルドをエクスポートするとき、ツールは属性を追加しません。 Antでは、antデバッグコマンドは自動的にandroid:debuggable = "true"属性を挿入しますが、antリリースは自動的に挿入しません。 Ifandroid:debuggable = "true"を手動で設定すると、antリリースはリリースビルドではなく、実際にデバッグビルドを行います。 だから、ほとんどの場合、あなたができるのは、属性を全く扱わないことです。そうすれば、署名されたリリースをエクスポートするときにデバッグデータは含まれないことになります。

唯一の例外は、実際には一般的なケースではなく、デバッグ情報が含まれた署名付きパッケージを配布する必要がある場合です。