I created a simple app and uploaded to Amazon store. The problem is it is only downloadable on non-Amazon Android devices. The app is simple with only one activity. The activity contains only one web view which loads up the following URL - www.myromancereads.com . If I directly install/debug/run the app on a real kindle device, it works fine. Below is my manifest file:-
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.brian.romancereads"
android:versionCode="2"
android:versionName="2.0" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/CustomTheme" >
<activity
android:name="com.brian.romancereads.Main"
android:configChanges="orientation|keyboardHidden|screenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Here are two screenshots from amazon appstore:-
1> http://www.greenbean.in/images/rr1.jpg
2> http://www.greenbean.in/images/rr2.jpg
I have followed all guidelines for Kindle fire development, but still the app is not available for Kindle devices. I fail to understand what is the problem. Any help will be much appreciated.
Thanks...
This may be your device targetting settings in the portal itself and not a code issue. Screenshot rr2 is showing its not available for those devices on the Appstore. Screenshot rr1 is part of the Appstore Developer Select Program which requires targeting Kindle devices. I did a post on our developer blog that has more program details here.
Can you go to your dashboard here under Apps and Services, select My Apps and then click on the App name in question. You should see a "Binary Files" tab and a section for "Device Support". Can you verify that you have checked off Kindle Devices there?
Here is a screenshot
My hunch is that you may only have "All non-Amazon Android devices based on my manifest" checked currently.
Related
Ok, I recently started dabbling in Android development, and made a simple watch face. I don't own an Android watch (or any other Android device), so I'm using the emulator.
Well, the watch face works great through the emulator. So I put it up on Google Play, and asked a couple of friends to "beta" test it for me.
Unfortunately, none of them could get it working on their watches. They reported to me that they got the "not compatible" message, and therefore couldn't install the watch face.
I developed it under API 21 (Lollipop), using Android Studio. That could be one issue.
To be clear: When I set up the project, I only did it as a "wear" app, not as one you put on your phone, too. Perhaps that is another mistake on my part.
I've done a good bit of searching, and can't really find anything about what I need to do in my code to fix this, and I'm not really sure how to re-compile under a different SDK if that's what I need to do.
Any ideas on this?
EDIT:
Per request, here is the manifest:
<?xml version="1.0" encoding="utf-8"?>
<uses-feature android:name="android.hardware.type.watch" />
<!-- Required to act as a custom watch face. -->
<uses-permission android:name="com.google.android.permission.PROVIDE_BACKGROUND" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:theme="#android:style/Theme.DeviceDefault" >
<service
android:name=".MorseWatchFace"
android:label="#string/my_digital_name"
android:permission="android.permission.BIND_WALLPAPER" >
<meta-data
android:name="android.service.wallpaper"
android:resource="#xml/watch_face" />
<meta-data
android:name="com.google.android.wearable.watchface.preview"
android:resource="#drawable/preview_digital" />
<meta-data
android:name="com.google.android.wearable.watchface.preview_circular"
android:resource="#drawable/preview_digital_circular" />
<intent-filter>
<action android:name="android.service.wallpaper.WallpaperService" />
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
</intent-filter>
</service>
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
</application>
If your users are installing your apk from their phones (which they are, if they're using Google Play store on their phone), you must be uploading a phone APK.
Your wearable APK would only support roughly 19 devices, that makes sense -- that's about how many devices there are matching the criteria. Google Play will provide the APK to devices that have the same features defined (see https://developer.android.com/google/play/publishing/multiple-apks.html). So if you defined the wearable feature, it'll only target watches.
I recommend creating a new phone module. All it really needs is a basic manifest (just an <application> block) and a gradle dependency on your wearable module (e.g. add the line wearApp project(':your-wearable-module') to your phone module gradle file's dependencies block). Then just publish that module to Google Play. This phone apk will essentially just host your wearable apk inside of it, to allow it to be installed on phones.
I'm desperately trying to setup an android game to use Google Play Game Services SDK.
After following the official documentation, I based my code on this example. Calling the login results in this error, in the logs:
01-31 12:06:54.580: E/Volley(1853): [6153] qt.a: Unexpected response code 403 for https://www.googleapis.com/games/v1/players/110100128023441368674
01-31 12:06:54.612: E/SignInIntentService(1853): Access Not Configured. Please use Google Developers Console to activate the API for your project.
Alas, the API for my project exists in the API console ( https://cloud.google.com/console/project ), it contains the correct SHA1 footprint of my certificate, and it has been created automatically when I registered my project in the Android Dev Console here ( https://play.google.com/apps/publish ).
I've checked what is suggested in the SO question here, to no avail...
I don't know if it is related, but i have a weird bug where the Terms&Conditions acceptation popup keep reappearing sporadically (even after a full browser cache cleanup), like it didn't register my acceptation or something.
For reference, this is my android manifest (I made sure that #string/app_id matches the App ID in the Developper Console (147029020397), and that the sdk version is included in the metadatas) :
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.pokware.jb"
android:versionCode="2"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name" android:debuggable="false">
<meta-data android:name="com.google.android.gms.version" android:value="#integer/google_play_services_version" />
<meta-data android:name="com.google.android.gms.games.APP_ID" android:value="#string/app_id" />
<activity
android:name="com.pokware.jb.MainActivity"
android:label="#string/app_name"
android:screenOrientation="landscape"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
So, after a couple of dozen attempts, I finally managed to make it work.
There was no error in my setup, but I suspect my many previous failed attempts introduced bad data in the application cache of my phone.
I cleared the cache of the Google Play Service app (in the Settings android system menu), manually installed my production APK (instead of running the dev version signed with the debug certificate in eclipse), ran it once, and then launched the dev version again inside Eclipse (overwriting the manually installed prod app). The miraculous "Welcome" popup then appeared !
I recently published my Android app to the market and everything seemed fine.
I tried to download it on a particular phone (Samsung epic 4g (SPH-D700)) and it was not available. It looks like it is being filtered, along with most the other Samsung galaxy s phones.
Should I change something in my manifest so it doesn't become filtered?
Im also trying to search for it on my computer and it doesnt even show up when i do that. Does this mean it didnt actually upload it to the market?
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="send.text.fast"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="5" />
<uses-permission android:name="android.permission.SEND_SMS"> </uses-permission>
<uses-permission android:name="android.permission.READ_CONTACTS"> </uses-permission>
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name" >
<supports-screens android:smallScreens="true"
android:normalScreens="true" android:largeScreens="true"
android:anyDensity="true">
</supports-screens>
<activity
android:name=".Main"
android:label="#string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
i'm having the same problem too. the Market (now goes by a different name) has this recently new (long awaited, they claim) feature to filter out apps that are not compatible with your device.
did you try setting minSdkVersion to your phone's particular version? try lowering it. one thing i did not know is that you can set minSdkVersion down but still target a higher version.
my app works on my android phone upon side-loading. but since i've published my app, i still can't find it on my phone when using the Market app. when i go to my app's webpage, i get a little message saying this app is not compatible with your device, which is wrong. of course, my phone has been rooted among other things (i.e. non-stock kernel/roms/launchers/etc...).
the joy of fragmentation.
I'm having issues trying to put my own apps on my phone. I've looked around and no one has been able to help me so far. A bit of background information, I'm using the latest version of eclipse IDE, trying to get apps onto my galaxy s. I tried installing apps through gmail. When I go to install the app I get a parse error and it doesn't install. I have also tried using this method to install my app onto a htc wildfire s however I get the same issue. Is there a quick fix for this? Thanks for your time; any insight into what the problem is will be great.
Things I've tried: Ok I still have a parse error when I try installing my app. The min sdkversion was set to 9 which seems right to me as that is the api level for gingerbread which galaxy s uses (i think). I haven't set a target sdkversion yet as according to the android developer guide it if not stated it defaults to the minsdkversion. I also tried setting the minsdkversion to 1 and still no luck. Any ideas?
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.guitartunergreatness.jj"
android:versionCode="1"
android:versionName="7" >
<uses-sdk android:minSdkVersion="7" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:debuggable="true">
<activity
android:name=".GuitarTunerActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Parse error usually occurs if your app supports a higher version of Android than the version of OS on your phone. Egs: your phone has 2.1 and application supports 2.2 onwards
Our last update for our application caused it to be filtered out for Android 1.5 and Android 1.6 devices. We did not change anything in our manifest (aside from the updated version code).
These similar questions did not help:
Android App no longer visible by Android 1.5 on devices
Android app not appearing in Market for 1.5&1.6 devices, Bluetooth is android:required="false"
We created a test app with a stripped down manifest and compiled it with the Android 1.5 SDK. Even this basic app is filtered out. We tried contacting Android Market support five days ago but Google makes it pretty clear they don't want to provide support to developers and say that it's unlikely we'll get a reply.
Here is the full AndroidManifest.xml for the test app:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.highwaynorth.test"
android:versionCode="6"
android:versionName="6.0">
<uses-sdk android:minSdkVersion="3" />
<application android:icon="#drawable/icon" android:label="#string/app_name">
<activity android:name=".MainActivity"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Why is this being filtered?
Our app came back this week after Google posted this announcement to the Market on October 25th:
25 October 2011 - Recently published apps not appearing in Android Market
We're disappointed that our app was gone from the Market for 6 weeks and all we get at the end in the way of an explanation is basically to say "it's fixed now"