Publish Multiple APK with different android version - android

Is it possible Publish 2 apk for different android version?
I using cordova to build to apps and I need to use crosswalk to build when android version below v4.4.
Higher than v4.4 android just use normal build.

Yes, you can publish multiple APKs to the Play Store.
Each APK must be signed with the same key and must use a different version code. The version that supports a higher minimum SDK version must have the higher version code.
By have two different APKs with differed minSdkVersions defined, users will receive whichever version has the highest support API level.
For full documentation regarding this feature, read the Multiple APK Support documentation.

Related

Android Same app bundle for multiple os versions

How to use the same app bundle & based on minimum SDK & target SDK versions for the old API version it would be a very lite version of the app with less Gradle dependencies & code.
The old way to implement this to have two projects with one key store signing & to upload multiple Apks.
Is there a difference while using the app bundle or I have to generate multiple app bundles & upload them on google play?
Please note the core library is not applicable here because the full project is up & running.
You have basically two options:
Use of conditional delivery which supports serving parts of your app above or below a certain API version.
Publish two separate Android App Bundles with a different minSdkVersion and different versionCodes (similarly to how you published multiple APKs).
Hope that helps.

How to publish Project Tango and no-Tango versions in one application?

I want to publish an application with two apk versions:
for devices with Project Tango support;
for rest devices.
But when I try to publish them as is, I get Fully shadowed APK error on tango version (This APK will not be served to any users because it is completely shadowed by one or more APKs with higher version codes).
Is it possible to publish application as I want?
Assign the higher versionCode to the Tango build.

Xamarin Google play publish

In recent update Xamarin made it possible to publish android apps straight to the Google play (before you had to generate apk and upload it manually). More info
These are my version numbers. I was at version 10437 when the update came, I made some changes and raised version number to 10438 and tried the new way of publishing. What happened is that my version number became 141510 for some reason and when I tried to do it again it became 207046. After that I set the number to 320000 and started uploading manully again.
I suspect that the reason for this is that I had Multiple supported architectures and xamarin was uploading multiple apks and I was getting some errors about that. Since then I changed supported architectures to armeabi-v7a only.
Question is:
Can I somehow tell google to forget about these screwed up numbers so I can continue with my 10438 (it won't let me now, I get an error that version number must be bigger then the last one)? Also all versions after 10437 are private and this is the current version on beta (image is from beta channel).
Also do I lose mobile devices if I set my supported architecture as armeabi-v7a only?
versionCode vs. versionName:
The versionCode is not shown to the user:
An integer used as an internal version number. This number is used only to determine whether one version is more recent than another, with higher numbers indicating more recent versions. This is not the version number shown to users
Ref: https://developer.android.com/studio/publish/versioning.html
ABI Architecture:
Google does not breakdown the CPU Information/ABI Architectures in a Dashboard like they do for API level or screen resolution. You can get a device breakdown for your app install:
Ref: https://developer.android.com/distribute/googleplay/developer-console.html#app-stats
Assuming your app is not dependent on a 3rd-party NDK library that only supports a subset of all the ABIs, there is no general reason not to support multi-ABIs as you are just pre-limiting your applications available user-based.
Current API and Screen Sizes and Densities Distributions:
Ref: https://developer.android.com/about/dashboards/index.html

What is the purpose of android:minSdkVersion and android:targetSdkVersion in the AndroidManifest.xml with respect to phoneGap/Cordova?

There is a line in the AndroidManifest.xml
android:minSdkVersion="10" android:targetSdkVersion="19"
Does it mean that if I include minimum and maximum SDK version in the AndroidManifest.xml file and build the APK using phonegap/cordova CLI (Command Line Inteface),
than a SINGLE APK file generated can be installed on ALL Android Devices ranging from Android 2.3.4 to Android 4.4
I have read posts that developing using Android SDK(native APP) it enables the APP to work on the range of devices.
Is it true for PhoneGap/Cordova generated APK file as well? (Note: I am not planning to use Google Play services for distributing the APP.)
Do we need to generate APK file for each SDK version?
The implications of these two variables is the same for both native apps and PhoneGap/Cordova apps.
minSdkVersion will set the minimum version of Android required to run your application. If a user is running any version below this, they will not be able to install your application (regardless of whether or not you are distributing via the Play Store).
targetSdkVersion specifies the latest version of Android that you have tested for. It will not change who can install your app, but it will change the behavior of your application. For example, if this is less than 14, you won't have an action bar. If it is less than 19, then users running KitKat and above will not see your content in a Chrome-backed WebView (it will be the older WebView implementation).
Generally you just set targetSdkVersion to the latest available version of Android.
Do we need to generate APK file for each SDK version?
No. You need one APK with mindSdkVersion set to the minimum version you support and targetSdkVersion to the latest version of Android you have tested against.
You can specify a maxSdkVersion, which will actually limit the maximum version you support, but you generally should not do this unless you have a good reason to.
android:minSdkVersion is the minimum API level that device needs for run your app.
android:targetSdkVersion is the latest tested API that works with your app, and you should set there the latest API version.
Following useful data about the number of devices running API versions: https://developer.android.com/about/dashboards/index.html?utm_source=ausdroid.net

Could I submit multiple apk file on google play for multiple target?

I'm tending to release and submit to GooglePlay two apk files of the same application. One with android sdk 7 for android version lower than 4.0, one with android sdk 14 for android 4.0 and upper. Is it possible?
Yes you can. But, it might be tricky.
http://developer.android.com/guide/google/play/publishing/multiple-apks.html
There will be some problems, when you different apks for devices, which are close to each other. But, you can get started with the above link.
It's recommended though, to have a single apk.
Note: You should generally use multiple APKs to support different device configurations only when your APK is too large (greater than 50MB).

Categories

Resources