Baca izin APK dengan perintah shell

16

Saya ingin membaca izin yang diminta dari file .apk di komputer (Android SDK diinstal) melalui baris perintah.

YAITU:

$ android read-permissions /path/to/someapp.apk

Saya tahu ini mungkin, saya tidak bisa menemukan perintah yang tepat.

whlk
sumber

Jawaban:

25

Jika saya menafsirkan "di komputer" dengan benar berarti "Saya ingin menggunakan baris perintah di komputer saya untuk membaca izin file .apk" maka Anda dapat melakukannya dengan aaptpada file lokal seperti:

C:\>aapt d permissions "MyApp.apk"
package: com.app.myapp
uses-permission: android.permission.ACCESS_NETWORK_STATE
uses-permission: android.permission.INTERNET

Jika maksud Anda .apk ada di perangkat, maka saya tidak mengetahui cara untuk melakukan ini selain menariknya dan berjalan aaptseperti di atas. pmmemiliki list permissionsperintah tetapi hanya mencantumkan semua izin yang tersedia di perangkat dan tidak menerima paket sebagai parameter (sejauh yang saya tahu, tetap).

eldarerathis
sumber
1

Pada perangkat mungkin akan lebih mudah untuk mencari bagian yang relevan di

/data/system/packages.xml

(yang dapat dibaca, meskipun direktori ini tidak dapat diramban atau dicantumkan) karena ini adalah file teks, sedangkan AndroidManifest.xml dalam apk berada dalam format terkompresi.

Ada kode di internet untuk menafsirkan manifes terkompresi pada perangkat, tapi itu sedikit lebih rumit.

Chris Stratton
sumber