調べたい段階のXMLを選ぶ
ソースのuses-sdkはGradleに上書きされることがあり、ライブラリ由来の権限はマージ後に加わります。配布物の確認には完成したマニフェストを用意してください。@string/app_nameなどが残っている項目は、別のリソースを参照しないと値を確定できません。
Android開発
テキストXMLを貼り付けると350ミリ秒後に解析します。自動をオフにするとボタンまたはCtrl/Cmd+Enterで実行できます。
テキスト形式のAndroidManifest.xmlを貼り付けるか、サンプルを読み込んでください。
XMLはこのブラウザータブ内で処理され、アップロードされません。
テキスト形式のAndroidManifest.xmlを貼り付けるか、サンプルを読み込んでください。
ビルド後に増えた権限や、インストールを妨げるコンポーネントを調べるときは、長いファイルから関係する宣言を拾う必要があります。AndroidManifest確認では、権限とコンポーネントを分類し、intent-filterを所属先と一緒に読み取れます。各項目には元の行番号が残ります。
ソースファイルを調べたいときはそのXMLを、配布物を確かめたいときはマージ結果やデコード済みのXMLを使ってください。AndroidManifest.xmlを表示するだけでは分かりにくい構造を整理しますが、渡されていないGradle設定やリソースの値までは補いません。
AndroidManifest確認は、権限の要求と定義を別の種類として扱います。同じActivityに二つのintent-filterがあれば、action、category、dataもそれぞれ別に残ります。ランチャー用とウェブリンク用の条件を、一つの一覧へ混ぜずに点検できるマニフェストビューアーです。
exportedの未指定を判定するには対象SDKが必要です。数値が条件を満たす場合と不明な場合を区別し、元の行へ戻れるようにします。debuggableが明示的にtrueならリリース設定の確認を促しますが、指摘がないことを安全性の証明にはしません。
ソースのuses-sdkはGradleに上書きされることがあり、ライブラリ由来の権限はマージ後に加わります。配布物の確認には完成したマニフェストを用意してください。@string/app_nameなどが残っている項目は、別のリソースを参照しないと値を確定できません。
入力やインデントを変えると350ミリ秒後に更新します。自動を切るとCtrl/Cmd+Enterで実行できます。古い結果のコピーと保存は更新完了まで無効です。表示だけを概要からXMLやJSONへ切り替えても解析内容は変わりません。
概要でコピーすると完全なJSONレポートが得られ、最初の50件だけには制限されません。XML表示では整形XMLをコピーします。サンプルやクリアは置換プレビューと文字数を確認して適用し、一度の取り消しで直前の入力と結果へ戻せます。
manifest、uses-sdk、applicationの属性をまとめて表示します。未指定の項目やリソース参照はそのまま残します。.MainActivityのような相対名をpackageから展開しないため、ビルドのnamespaceを見ずに実際のクラス名を推測することはありません。
uses-permission、uses-permission-sdk-23、permissionを分け、maxSdkVersionやprotectionLevelなどの属性を保持します。applicationの直下にあるactivity、activity-alias、service、receiver、providerを抽出し、重複した宣言も消しません。
applicationの数、名前のない権限やコンポーネント、SDKの大小関係、actionのないフィルター、android名前空間の誤りを確認します。対象SDKが31以上の数値なら、フィルターを持つActivity、別名、サービス、レシーバーのexported未指定を検出します。
直接のテキストを持たないコンテナには2または4スペースのインデントを追加できます。既存の空白、コメント、混在するテキストは保持されます。概要は各分類を50件ずつ追加表示し、JSONには表示範囲外も含む属性、所属先、行番号、指摘を保存します。
APK内のファイルは通常バイナリAXMLです。Android StudioのAPK Analyzerやapkanalyzer manifest printで読みやすいXMLを取得し、その結果を貼り付けてください。ZIPへ名前を変えて展開しても、マニフェストのデコードは完了しません。
Android StudioでAndroidManifest.xmlを開き、Merged Manifestタブを選ぶとマージ後の内容と由来を確認できます。そのXMLを本ページに貼り付ければ宣言を整理できますが、このページ自体は複数のマニフェストをマージしたり、各項目の由来を復元したりしません。
Android 12以降を対象にすると、intent-filterを持つActivity、サービス、レシーバーには明示的なexportedが必要です。本ページはActivityの別名も確認します。対象が31以上の数値なら不足を報告し、対象が不明なら条件付きの説明を残します。trueかfalseかは用途に合わせて決めてください。
uses-permissionは既存の権限で制御された機能を使うための要求です。permissionはコンポーネントなどを保護する権限そのものを定義します。一覧では種類を区別しますが、どちらも端末での実際の許可状態を表すものではありません。
minSdkVersionはインストール可能な最小APIレベル、targetSdkVersionは対象とするプラットフォームの動作を指定します。表示は原文値のままで、Gradleが供給したり上書きしたりする値は計算しません。配布前には完成したビルドと端末で確認してください。
宣言の抽出や位置が違っていますか?