I have just published my first Android app for BETA testing. The minimum required Android version is 4.4.x which is indicated in the AndroidManifest.xml as:
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="24" />
It seems supported devices are filtered out accordingly, but on the Google Play store page as says
Required Android:
1.6 and up
This seems quite misleading.
Is there a way to fix that?
Update:
This seems to be correct ones the app is published as a production version.
Related
Amazon app store app rejected my app publishing because it is not installing on android virtual device 4.0
I need some help I am new on amazon app store, same app is running on play store and ios app store.
What should I do and how should I test, any help will be appreciated.
issue screenshot -
below is my APK file screenshot -
I have got the issue, we need to add min and max supported sdk versions in the main/AndroidManifest.xml file.
because amazon app store does not get it from build.gradle file.
<uses-sdk android:minSdkVersion="21"
android:targetSdkVersion="29"
android:maxSdkVersion="29" />
The app has used the embedded wear APK distribution model, but since this distribution method is no longer supported since January, the app has been migrated to use a separate Wear APK.
Followed the guides to set the wearAppUnbundled true flag in the mobile APK and set the <uses-feature android:name="android.hardware.type.watch"/> along with <meta-data android:name="com.google.android.wearable.standalone" android:value="false" /> in the Wear APK.
The only question is what app version code to use when uploading the Google Play?
Let's say version 100 is the legacy version with the embedded wear APK. (minsdk 19)
Version 300 is the new mobile APK without the wear APK, this has been uploaded to the Play Store. (minsdk19)
Now, what version code to use for the Wear APK? (minsdk 25)
If it's set to version code 200 then when preparing the release the Play Console accepts it. However, it says that 300 will not be included in this release. And this is what is scary as one might think that the mobile APK will not be visible on the Play Store if it's released as is based on this message.
Should the "Include" option next to the 300 version APK in the "Not Included" section be used to force the Play Console to keep that one active?
Based on the Multi-APK versioning guide:
This scenario might be "shrinking" since the Wear APK is more restricted (due to the min SDK level and the uses-feature declaration).
However, since the Wear APK uses a lower version code, the capable devices should still receive 300 by default? This is what is confusing, as based on this I'd assume that the 300 version should not be affected at all by uploading a more restricted lower code APK.
The most important thing is to have the new mobile APK as is, and it shouldn't disappear from the Play Store.
As it turns out, it's easy to solve this. In this case, the Wear OS APK had to be uploaded with a higher version code, version code 400, for instance. On the release page, the Include button had to be used to include the 300 version (phone APK).
It kind of make sense, but if one is new to Multi-APK release the messaging is not straightforward and if the app has many installs one thinks twice before taking such actions.
(Probably should have uploaded both APKs in the first place when released the new phone APK)
Im trying to submit my newly created Android Wear watch face through Google Play Developer Console. The problem is checkbox "Distribute your app on Android Wear" in pricing and distribution section is disabled. I cant understand why.
What I did:
1) Uploaded screenshot for Android Wear
2) Uploaded 2 APK files in closed Beta releases. Both files are signed with one key, have different version names. First is phone apk with embedded wear apk (minSdkVersion 23), second - standalone wear apk (minSdkVersion 25) has meta-data android:name="com.google.android.wearable.standalone" android:value="true" in manifest file.
Everythings seems fine and app is ready to publish in production, except the "Distribute your app on Android Wear" checkbox which remains disabled.
What Im missing?
I stumbled upon the exact same issue.
I had <uses-feature android:name="android.hardware.type.watch" /> in my manifest
I had <meta-data
android:name="com.google.android.wearable.standalone"
android:value="true" /> in my manifest
minSdk was set to 25
But still the checkbox for Wear distribution was disabled.
For fun I tried editing the HTML with Chrome's inspection tools, and removed the "disabled" attribute from the checkbox. Sure enough, the setting stuck after enabling the checkbox, and now Wear distribution is enabled. Give it a try!
You may want to check Packaging and Distributing Wear Apps and see if you've missed something.
As discussed, aside from specifying APK's version code (standalone Wear and embedded Wear), also check if you've updated your Wear module's build.gradle file to include the following if an existing embedded app has a minimum SDK version of 23:
android {
// Allows you to reference product flavors in your
// phone module's build.gradle file
publishNonDefault true
...
defaultConfig
{
// This is the minSdkVersion of the Wear 1.x embedded app
minSdkVersion 23
...
}
buildTypes {...}
productFlavors {
wear1 {
// Use the defaultConfig value
}
wear2 {
minSdkVersion 25
}
}
}
Also, check Distribute to Android Wear for more information.
I've received the email from Google support saying that they worked on the issue and changed something. They noted that my manifest file for mobile was missing line <uses-feature android:name="android.hardware.type.watch"/>
I only had this line in Wear module manifest.
I've added this line, uploaded a new version with 2 apk files for wear 2.0 and 1.0 and after that checkbox became enabled.
Currently, the official docks for Wear 2.0 don't clearly say that this line should be added to both manifest files.
Also strange that before the problem with this project I managed to successfully upload another Wear 2.0 project to Developer Console (with checkbox enabled), and the line was only in Wear module manifest.
I actually emailed Google about this - it was an issue on their side and they have now fixed it...
If you add <uses-feature android:name="android.hardware.type.watch"/> to your mobile manifest (not wearable manifest) your apk will be distributed only for WEARABLE devices! Don't do it if you want to distribute also for mobile phones.
I have the same problem. Checkbox "Distribute your app on Android Wear" is grey out. I have followed all instructions in App Distribution, added all wearable screenshots and still cannot check the box.
I have contacted support. First they said, that in my wearable manifest in need to replace:
android.hardware.type.watch
with:
android.hardware.type.WATCH
That didn't help. Next they told me, that there is a bug in developer console and it should be resolved by Tuesday May 9th. Unfortunately, they didn't fix anything or they didn't do anything at all.
Next they told me, that I need to add <uses-feature android:name="android.hardware.type.watch"/> to my mobile manifest file. I cannot do it, because apk would then be distributed only for wearable devices.
I have send them my manifest.xml and build.xml for mobile and wearable and waiting for the response.
Before april I have added about 10 wearable apps (also with 2.0 support) and there was no problem.
In my point of view they doesn't know what the problem is and cannot help us. Moreover they instructions App Distribution are out of date and In one place there is info, that minimum SDK should be 23, and few pages below there is sample code with minimum SDK 21.
Your APK requires both tags below as called out in other answers.
However, you still won't be able to check the box if the original APK (without the tags) was uploaded for the release. You must delete that APK and make sure only the APK with all those fields is left.
I made this mistake and had to hack the solution above but couldn't publish afterwards until I deleted the original APK I uploaded without the standalone tag. I asked support and they seemed to verify this.
Anyway, try that before hacking, hope that helps.
Required in your Wear manifest:
Requirement 1:
<uses-feature android:name="android.hardware.type.watch" />
Requirement 2:
<meta-data
android:name="com.google.android.wearable.standalone"
android:value="true" />
Getting warning while uploading any apk on Play Store.
You uploaded an APK that uses Google Play services version 4452000.
This will only work with Android API levels of 9 and above. It is
discouraged to use this Google Play services version unless you have
set the minSdkVersion in your manifest to 9 or higher
What is the actually problem here?
This version of Google Play services that you use in your app is compatible with android device that runs android 2.3(API level 9) or higher. if you want support android 2.2(API level 8), install Google Play services for Froyo from SDK manager and use that version in your project. you can set minSdkVersion to 9 if you want to use current Google Play services that you have.
Yes actual problem is with minSdkVersion
you might have used
<uses-sdk android:minSdkVersion="8"/>
change it to
<uses-sdk android:minSdkVersion="9"/>
you could try this code.
<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="16"/>
My app uses maps v2, and has been working great. My device has the latest version of Google Play Services. And the SDK Manager shows Rev 11 for the library. I updated to adt 22.2 yesterday, and since, I get this in LogCat:
Google Play services out of date. Requires 3264100 but found 3225132
And the app prompts with "This app won't run unless you update Google Play services". Not so bad, except that there's no way to update, given the device already has it installed. I uninstalled, and reinstalled Google Play service, and confirmed it's running the latest from the store, 3.2.25 Again, this had been working great ever since implementing maps several months ago.
My sdk settings in manifest:
<uses-sdk
android:minSdkVersion="12"
android:targetSdkVersion="17" />
I've tried various combinations of min/target in desperate attempts to resolve this.
In code, I used GooglePlayServicesUtil to verify; system thinks the app needs to update to 3264100
I've searched quite a bit, but most everything I've found relates to issues when running on an avd. What can I to do to fix this?
Ha, got it. Issue was related to updating, but I hadn't updated the tools in a while, so Rev11 of google play services is no good. See this bug
In short, rev 11 requires a version of the app not yet released, and google had pulled it, and I didn't realize that. So, in case anybody else hits this:
Launch SDK Manager
Check google play service, and check it if it's Rev 11
Delete the package
Reload the manager via menu
Install Rev 10, which they've reverted to in the meantime