2016-10-27 97 views
0

我正在使用AndroidStudio製作項目,但即使在Gradle腳本中正確設置了VersionCode之後,它現在也不會出現在AndroidManifest.xml文件中。 它是否存儲在apk內的其他文件中?哪裏存儲.apk中的AndroidStudio VersionCode值?

更確切地說:

1)我找不到任何 「安卓的versionCode」 在我的AndroidManifest.xml。要檢查AndroidManifest.xml,我需要.apk,使用apktool d將其展開到一個文件夾,然後檢查該文件夾內的AndroidManifest.xml。

2)但是,如果我使用aapt工具,這是結果我得到:

aapt l -a my.apk | grep "android:version" 
A: android:versionCode(0x0101021b)=(type 0x10)0x4e 
+1

在app-gradle這個文件 – Blackbelt

+0

的versionCode和版本名稱 –

+0

我編輯的問題,以增加更多的信息被提及。 – DavidGuaita

回答

0

只能在應用程序文件的gradle

+0

對不起,我的意思是它在apk中。 – DavidGuaita

-1

裏面的應用程序找到的versionCode的versionName在Android Studio中 - >的build.gradle文件U將找到的versionCode

android { 
     compileSdkVersion 23 
     buildToolsVersion "24.0.0" 

defaultConfig { 
     applicationId "com.app.consumer" 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
} 
+0

謝謝,我的意思是在哪裏可以找到apk。我編輯了這個問題,請再次檢查。 – DavidGuaita

0

Inside Gradle腳本 - > build.gradle(模塊:應用程序)文件。

android { 
.... 
versionCode xx 

versionName "xxxx".... 

} 
0

現在它不會出現在AndroidManifest.xml文件中。 ?

- 是的。您的gradle將優先於清單版本代碼,版本名稱,應用程序標識(package_name)和其他內容。

它是否存儲在apk內的其他文件中?

- 您可以在安裝應用程序後看到所有內容。 (作爲應用信息)。

Gradle將爲您製作各種風格的apk文件。

0

但即使在Gradle腳本中正確設置了VersionCode, 現在它不會出現在AndroidManifest.xml文件中。它是否存儲在apk內的其他文件中 ?

不,它總是存儲在AndroidManifest.xml,因爲它一直是。你正在看錯文件壽。您應該檢查AS通過清單合併爲您生成的那個。你可以在這裏找到它(用於調試味)

./app/build/intermediates/manifests/full/debug/AndroidManifest.xml 
+0

我檢查生成的apk文件裏面的AndroidManifest.xml中,是不存在的。 – DavidGuaita

+0

它在那裏。你使用什麼工具從apk中提取清單? – Blackbelt

+0

我使用apktool d myapkfile.apk – DavidGuaita

0

的gradle這個文件是不會被編譯到APK,它只是爲獲取依賴實際的Android Studio項目。無法從APK獲取gradle文件

如果您已在AppManifest.xml和build.gradle中編寫了versionCode和versionName,則用build.gradle編寫的版本將取代AppManifest中的版本。 xml當你編譯你的應用程序,並在這裏指向

如果你沒有在你的AppManifest.xml中編寫它們,當你編譯你的應用程序並構建它時,你的build.gradle中寫入的versionCode和versionName將自動寫在你的AppManifest.xml中。

在AndroidManifest