Software Archive
Read-only legacy content
17061 Discussions

Android: Multiple APK Support for Distribution

Danny_B
Beginner
349 Views

By default, the Intel XDK's build process gives you two APKs. Each supports a different CPU Architecture. The steps for publishing both are located here:

https://software.intel.com/en-us/articles/walkthrough-google-play-store-submission-for-crosswalk-android-apk-files

However, the built APKs do not work "as is" for publish to the Google Play Store. According to Android's source for using Multiple APK ( https://developer.android.com/google/play/publishing/multiple-apks.html ), the APKs must be built using different version codes. This requires you to increment the version code and build a second set of APKs. If you don't do this, you receive an error.

As a feature request, can a 2nd field be added to specify a different version code for each CPU architecture? This would eliminate the requirement of building twice (and the confusion around it)

0 Kudos
3 Replies
Diego_Calp
Valued Contributor I
349 Views

Hi Danny,

Did you try to upload both apk from same build using the advanced mode? I have no problem, the store adds a number to the version code.

playstore.png

My version code is 2, the upload set it to 22 and 24.

Regards

Diego

0 Kudos
Danny_B
Beginner
349 Views

Interesting. I did attempt to upload the 2nd APK while in advanced mode, but I received an error saying the version code needed to be incremented.

It's entirely possible I messed something up. The next time I need to push an update I'll attempt this again using APKs from the same build and see if the issue occurs again.

0 Kudos
PaulF_IntelCorp
Employee
349 Views

The two APK files you get do have different version codes (the x86 APK should have a higher version code than the ARM APK file). If you are updating an existing multi-APK app you may have to redo your version codes. See this doc for details > https://software.intel.com/en-us/xdk/articles/android-and-crosswalk-cordova-version-code-issues <

0 Kudos
Reply