Android環境にインストールせずにapkファイルからパッケージやアプリケーションに関する情報を取得することは可能ですか?
4 に答える
$ aapt dump badging <path-to-apk>
PackageManagerクラスからこのメソッドを確認してください。
public PackageInfo getPackageArchiveInfo(String archiveFilePath, int flags)
パッケージアーカイブファイルで定義されたアプリケーションパッケージに関する全体的な情報を取得します
あなたに役立つかもしれません;)
apkファイルは、実際には別の名前の単なるzipアーカイブです。x.apkの名前をx.zipに変更します。ここで、xはファイルの名前であり、任意のzipツールで開くことができます。それはあなたがapkファイルでそれを見つけることができるかどうかに関してあなたが探している情報に本当に依存します。探しているものがわかっていれば、アプリのアクセス権などの重要な情報がかなり読みやすい形式で保存されているAndroidManifest.xmlファイルにアクセスできると言えます。何を見つけたいですか?あなたがreadmeか何かを探しているなら、あなたはほぼ確実にそこにそれを見つけることができません。
AndroidManifest.xmlを解凍してバイナリ形式から変換するのは最善の方法ではありません(IMHO)
あなたには選択肢があるように振る舞います。あなたが持っているのがAPKだけなら、あなたはそうしません。唯一の解決策は、APKファイルしかない場合、Samが指摘したことに基づいています。
もちろん、APKを取得する場所(Webサーバーなど)に関係なく、APKと一緒に別のファイルでメタデータを公開できます。