问题
I have created a signed apk using Android Studio and I'm now going to zipalign it, I have read this: http://developer.android.com/tools/help/zipalign.html but I'm still not sure where to add the lines of code, is it in the Gradle file and where in the file do I add the lines?
回答1:
Inside you main module's build.gradle
file you can have multiple build types along with your debug one.
You can specify zipAlign characteristic inside any of your buildType by using
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
zipAlignEnabled true
}
}
Note: Older versions use zipAlign
, instead of zipAlignEnabled
Default gradle tasks always created for debug and release buildTypes whether you define or not. Debug is for debugging purpose and Release for Signed Application (Build >> Generate Signed Apk). You must define your signingConfig for release builds.
Check Build Types section in below mentioned link for other properties that you can use in your buildTypes
http://tools.android.com/tech-docs/new-build-system/user-guide
回答2:
If you have created an .apk
file (release mode) from Android Studio, your APK is already aligned. The zipalign
step is part of the Build Process in Android Studio.
You can check an APK with:
zipalign -c -v 4 {APP}.apk
To align an APK, run:
zipalign -v 4 {APP}.apk {ZIPALIGNED_APP}.apk
回答3:
Set classpath from 'com.android.tools.build:gradle:2.2.0-alpha3' to
classpath 'com.android.tools.build:gradle:2.1.2'
回答4:
zipalign is in ADT/sdk/build-tools/android4.4W
Copy
android4.4W
folderPaste it in
yourproject/platforms/android/build/outputs/apk
Now, copy
yourkey.keystore and your project.apk
Paste them into
android4.4W
full pathyourproject/platforms/android/build/outputs/apk/android4.4W
then,
$ zipalign -v 4 project.apk wowdone.apk
.
Visit for more details: http://prehow.com/convert-wordpress-to-android-app-tutorial.html
Thats all, hope this answer will help you.
回答5:
For complete signing process do follow steps. (Zip align manually after build- signed apk)
Step 0: Before sign apk add code in your app module.gradle file : set zippAlignEnable and minifyEnable true.
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
//zipAlignEnabled true
//uncomment for automatically zip aligned by studio
}
}
Step 1: Sign your APK, relese mode more info
Step 2: find location : .\your sdk\build-tools\24.0.0
Step 3: copy your .jks keystore file and signed APK then paste it here.
Step 4: open command prompt (For windows). set path. of your location where you paste stuff.
Step 5: type command: zipalign -f -v 4 infile.apk outfile.apk
here infile is my signed apk and outfile is file which is uploaded on play store.
Done...!
If cmp will got BUILD failed.
See here for more about error (Zipalign build failed) do following
1) Restart and open Android Studio,
2) close cmd, then reopen it.
3) Now do above process.
Edit: resources.arsc BAD-1 error found
set classpath 'com.android.tools.build:gradle:2.2.0-alpha3'
to
classpath 'com.android.tools.build:gradle:2.1.2'
Happy Release :)
回答6:
This works for me:
Copy the last version folder 22.0.1 to yourproject/platforms/android/build/outputs/apk (like version 22.0.1 is my last version)
Copy yourkey.keystore and your project.apk into this verison folder 22.0.1.
Under the path yourproject/platforms/android/build/outputs/apk/22.0.1, run this command:
zipalign -v 4 name_of_current.apk name_of_wanted.apk
The name_of_wanted.apk should be located under yourproject/platforms/android/build/outputs/apk/22.0.1
来源:https://stackoverflow.com/questions/21242678/android-studio-how-to-zipalign-apk