2017-03-21 6 views
0

Ich möchte wissen, welches Ziel die apk zielt, ich benutze apktool, um die apk-Datei zu dekompilieren, aber ich kann die SDK-Informationen in den dekompilierten APK-Dateien nicht finden, aber nur in der apktool.yml Datei wie folgt:Wie findet das Android-System SDK-Informationen in der App, die auf dem Telefon installiert ist?

sdkInfo: 
    minSdkVersion: '14' 
    targetSdkVersion: '23' 

Ich frage mich, wo kann Android-System die Informationen in der apk finden, die im Telefon installiert? Warum kann ich die Informationen in den dekompilierten Dateien nicht finden?


Update:

Es gibt Verdächtige Informationen in dekompilierten AndroidManifest.xml Datei, aber es gibt im Einklang mit den Informationen in der Datei apktool.yml.

Vielen Dank im Voraus.

+0

Mögliche Duplikate von [Wie AndroidManifest.xml aus APK-Datei anzuzeigen?] (Http://StackOverflow.com/Questions/4191762/How-to-view-androidmanifest-xml-from-apk-file) – 1615903

+0

auch überprüfe dies [Antwort] (http://stackoverflow.com/a/8301038/5993410) –

+0

@AtefHares Ich möchte wissen, wie das Android-System dies mit dem AndroidManifest.xml kennt, enthält die Informationen nicht (zumindest in den dekompilierten Dateien nicht identisch mit der Information in der Datei apktool.yml) – twlkyao

Antwort

1

Der folgende Befehl aus dem XMLTree des android manifest innerhalb einer apk Datei gedruckt wird:

aapt dump xmltree file.apk AndroidManifest.xml 

Beispielausgabe:

N: android=http://schemas.android.com/apk/res/android 
    E: manifest (line=17) 
    A: android:versionCode(0x0101021b)=(type 0x10)0x7 
    A: android:versionName(0x0101021c)="2.1-update1" (Raw: "2.1-update1") 
    A: package="com.android.spare_parts" (Raw: "com.android.spare_parts") 
    E: uses-sdk (line=0) 
     A: android:minSdkVersion(0x0101020c)=(type 0x10)0x7 
     A: android:targetSdkVersion(0x01010270)=(type 0x10)0x7 
    E: uses-permission (line=19) 
     A: android:name(0x01010003)="android.permission.SET_ANIMATION_SCALE" (Raw: "android.permission.SET_ANIMATION_SCALE") 
    E: uses-permission (line=20) 
     A: android:name(0x01010003)="android.permission.CHANGE_CONFIGURATION" (Raw: "android.permission.CHANGE_CONFIGURATION") 
    E: uses-permission (line=21) 
     A: android:name(0x01010003)="android.permission.WRITE_SETTINGS" (Raw: "android.permission.WRITE_SETTINGS") 
    E: application (line=23) 
     A: android:label(0x01010001)[email protected] 
     A: android:icon(0x01010002)[email protected] 
     E: activity (line=26) 
     A: android:name(0x01010003)="SpareParts" (Raw: "SpareParts") 
     E: intent-filter (line=27) 
      E: action (line=28) 
      A: android:name(0x01010003)="android.intent.action.MAIN" (Raw: "android.intent.action.MAIN") 
      E: category (line=29) 
      A: android:name(0x01010003)="android.intent.category.DEFAULT" (Raw: "android.intent.category.DEFAULT") 
      E: category (line=30) 
      A: android:name(0x01010003)="android.intent.category.LAUNCHER" (Raw: "android.intent.category.LAUNCHER") 

Hier legen Sie auf den Linien 7 und 8 die minSdkVersion und targetSdkVersion sehen können. Source

+0

Danke, das löst mein Problem. – twlkyao

1

AndroidManifest.xml Dateien containts diese Werte:

minSdkVersion targetSdkVersion

https://ibotpeaches.github.io/Apktool/

Verwenden apktool Ihre APK-Datei zu entschlüsseln.

+1

Gradle überschreibt die Manifestwerte –

+0

@AtefHares Ok. Aber es speichert in dieser Datei neue Werte. Android OS erkennt unterstützte Versionen durch Parsing dieser Datei. – Vyacheslav

+0

@AtefHares Nach dem Dekompilieren kann ich weder minSdkVersion noch targetSdkVerion, aber platformBuildVersionCode und platformBuildVersionName finden, aber sie stimmen nicht mit den SDK-Informationen in apktool.yml überein. – twlkyao

-1

Sie können es in Ihrer App/Hauptmodul Ebene build.gradle Datei finden.

Im folgenden Abschnitt

android { 
    compileSdkVersion 23 
    buildToolsVersion '25.0.0' 
    defaultConfig { 
     applicationId "yourApplicationPackage" 
     minSdkVersion 14 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
     multiDexEnabled true 
    } 
} 

minSdkVersion 14

targetSdkVersion 23

+1

OP fragt, wie man die Informationen aus einer APK-Datei extrahiert. – 1615903

+1

Sorry, ich meine wo kann Android die Informationen in der apk finden, die installiert ist. – twlkyao

+0

OK.Danke, dass Sie es bestätigen. –

Verwandte Themen