x86_64 APK is not created
i-no opened this issue · 2 comments
For some reason you removed productFlavors definition for x86_64 architecture in platforms/android/xwalk.gradle
file. And now APK file for x86_64 platform is not created with $ cordova build --release --xwalk64bit
command. Probably you should return it back.
Also there is a version code conflict. APK file for arm64 platform has the same version number as APK file for x86 platform:
// your xwalk.gradle file
if (xwalk64bit != null) {
flavorDimensions "default"
productFlavors {
arm64 {
versionCode defaultConfig.versionCode*10 + 4
ndk {
abiFilters "arm64-v8a", ""
}
}
}
}
// android/app/build.gradle file
productFlavors {
armeabi {
versionCode defaultConfig.versionCode*10 + 1
ndk {
abiFilters = ["armeabi"]
}
}
armv7 {
versionCode defaultConfig.versionCode*10 + 2
ndk {
abiFilters = ["armeabi-v7a"]
}
}
arm64 {
versionCode defaultConfig.versionCode*10 + 3
ndk {
abiFilters = ["arm64-v8a"]
}
}
x86 {
versionCode defaultConfig.versionCode*10 + 4
ndk {
abiFilters = ["x86"]
}
}
x86_64 {
versionCode defaultConfig.versionCode*10 + 5
ndk {
abiFilters = ["x86_64"]
}
}
}
Probably version codes in Crosswalk gradle script should match version codes in cordova-android scripts:
if (xwalk64bit != null) {
flavorDimensions "default"
productFlavors {
arm64 {
versionCode defaultConfig.versionCode*10 + 3
ndk {
abiFilters "arm64-v8a", ""
}
}
x86_64 {
versionCode defaultConfig.versionCode*10 + 5
ndk {
abiFilters "x86_64", ""
}
}
}
}
Thanks, I ll check the mismatch. Also, what device is using x86_64 ? I think x86 is quite rare in android device portfolio.
Yes, x86 is quite rare in Android world. But we still need to support those devices. Also Android emulators mostly require x86 APKs.