Come dice il titolo, mi piacerebbe essere in grado di scoprire se un APK è debuggable impostato su true o false su un computer senza doverlo installare sul dispositivo, eseguirlo e vedere se viene visualizzato in DDMS o no .Come posso rilevare se un APK Android è debuggable impostato su true o false nel file manifest senza installarlo?
6
A
risposta
15
Questa è una di quelle cose "facili una volta che conosci come": usa lo strumento aapt per ispezionare il manifest.
aapt dump xmltree YourApp.apk AndroidManifest.xml | grep debuggable
questo comando vi darà un dump del modulo compilato del AndroidManifest.xml file- l'output sarà simile
A: android: debuggable (0x0101000f) = (tipo 0x12) 0x0
(Uscita effettiva dal mio prompt dei comandi) in questo esempio, 0x0 indica falso.
9
Apparentemente aapt
può farlo:
aapt l -a app.apk | grep debuggable
torneranno entrambi:
A: android:debuggable(0x0101000f)=(type 0x12)0xffffffff (means debuggable is true)
o
A: android:debuggable(0x0101000f)=(type 0x12)0x0 (means debuggable is false)
2
Per l'utente può usare la finestra di comando seguente:
aapt l -a <apk with path> | findstr debuggable
tornerà uno:
A: android:debuggable(0x0101000f)=(type 0x12)0xffffffff
-> this means debuggable is true.
o
A: android:debuggable(0x0101000f)=(type 0x12)0x0
-> this means debuggable is false.
Problemi correlati
- 1. Scarica il file .apk di Android VersionName o VersionCode SENZA installazione di apk
- 2. Rails: form_per checkbox impostato su true o false se la casella è selezionata/deselezionata
- 3. Come rilevare se $ _POST è impostato?
- 4. Questa applicazione non ha l'attributo debuggable abilitato nel suo manifest
- 5. Gradle sta generando APK debuggable sulla modalità di rilascio
- 6. Come installare più applicazioni Android (dai file apk) nel dispositivo?
- 7. AutomaticMigrationsEnabled false o true?
- 8. Come rilevare se un file è PDF o TIFF?
- 9. Come installare .apk file su dispositivo Android
- 10. Come è possibile impostare IsHitTestVisible su True su un figlio di qualcosa in cui è impostato su false?
- 11. python come "negare" valore: se true restituisce false, se false restituisce true
- 12. Come verificare se l'attributo richiesto è impostato su un campo
- 13. Objective-C TRUE/FALSE vs true/false
- 14. Come far scomparire completamente AppBarLayout con windowTranslucentStatus impostato su true
- 15. Come impostare le variabili python su true o false?
- 16. Istruzione mySQL condizionale. Se true UPDATE, se false INSERT
- 17. del modello rimane False dopo che è stato impostato True nel controller
- 18. Perché False == False in [False] restituisce True?
- 19. traslucido non funziona quando è impostato a livello di codice su Android 2.3.3 o 4.2
- 20. Coldfusion string == true O vuoto == false?
- 21. Come proteggere webservice url nel file di Android APK
- 22. Come registrare la classe dell'applicazione nel file manifest?
- 23. Installa APK Android senza richiesta
- 24. Come posso impostare facilmente una variabile su false con un valore predefinito true?
- 25. Perché {} == false valutare su false while [] == false restituisce true?
- 26. Ciò che rende questa applicazione Android debuggable
- 27. Android 2.2 - Come posso rilevare se sono installato su SDCard o no?
- 28. Come posso rilevare se un prodotto firewall è abilitato?
- 29. android rilevare se notte
- 30. Come posso rilevare se Dispatcher.DisableProcessing è attivo?
Grazie, ho trovato un metodo alternativo con 'l -a' troppo. – kabuko
Se vuoi conoscere lo stato del flag di debugging nel manifest puoi farlo come suggerisce @Alexander. Tuttavia, se vuoi sapere se un apk è effettivamente eseguibile, devi anche vedere se il 'grep' è vuoto. Se il manifest non ha flag di debug, verrà impostato su false. Dai documenti: 'Puoi disabilitare il debug rimuovendo l'attributo android: debuggable dal tag nel file manifest o impostando l'attributo android: debuggable su false nel file manifest. Puoi sempre guardare l'intero manifest rimuovendo '| grep debuggable' dal codice precedente. –
tir38