I'm trying to use Google Maps in my App. I created an debug certificate which is saved in debug.keystore. I registered it at code.google.com (with correct project package) and copied the api key to the android manifest. I have all needed Permissions, i use
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
and i have
<meta-data android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
I still get an error when i install the app on my device with ADB (using the eclipse android plugin and the start button). How can i fix that (i checked the certificate and the api key already multiple times)?
Thanks for the comments. I instantly found the error when trying to copy the log. (after 1 h searching)
The problem was that i changed my package name. In logcat i saw that in the Android manifest, a different package name was contained.
Related
When building an .apk of my flutter app and installing on my android device the data created is only locally saved not saved online. When using in the android emulator it works perfectly with no errors, even when switching the signing configs to use debug.
There are no firebase rules set, everyone can read and write. There is no fingerprint/sha1 hash set. All android settings have stayed the same since the build version has worked on android correctly.
If there is anything code etc. i can give please ask, not sure what is helpful here as all settings were the same when it was working.
You have not granted internet permission to access the application
Open the AndroidManifest.xml file located at ./android/app/src/main and add the following line:
<manifest xmlns:android="...">
<uses-permission android:name="android.permission.INTERNET"/> <!-- Add this -->
</manifest>
Refer here
i have a flutter app that has firebase and firestore as backend,
it works fine on the emulator when i changed it into apk, but on the real device on the log in page the loading circle get stuck and the app wont proceed the log in procedure.
i don't why does this happen? it works fine as normal flutter on the device but when its apk it only works on emulator.
here is the pic of the laading being stuck
the pic of the mobile
Did you put the internet permission in your androidManifest.xml?
<uses-permission android:name="android.permission.INTERNET" />
The permission is on by default in a debug build, but not in a release build
go to your flutter project and go /android/app/src/main and open AndroidManifest.xml and add this line under the package tag
<uses-permission android:name="android.permission.INTERNET" />
I am new to android development. recently i have uploaded my app to playstore and couldnt download it from there because i faced this issue "your device isnt compatible with this version". on further analysis I could found out that I have used feature "android.hardware.type.watch" along with android.hardware.faketouch, android.hardware.telephony. which is why i could see only watch devices in supported devices list on console (this was mistakenly ignored during rollout).
now to correct this mistake, I have removed watch feature, built apk with incremented version code. I need to replace live app on playstore with newly built apk. I have used 2 methods ( creating release in production and creating beta release )but everytime I am facing below issue "You can't rollout this release because it doesn't allow any existing users to upgrade to the newly added APKs.
i tried many time by increasing version code from 3 to 40 but same error is occur please help me
In my case, it happened because I accidently added android wear support.
Removing the following line in the manifest solved my problem
<uses-feature android:name="android.hardware.type.watch" />
Lets go in detail, Firstly as new developer i confused between Empty
Activity and Blank Activity in android while creating Activity.
Well
in my case i choose blank activity instead empty activity, then in
blank activity i get some watch and wear dependency in gradle file as
implementation 'androidx.wear:wear:1.0.0' and in manifest file
<meta-dataandroid:name="com.google.android.wearable.standalon android:value="true"/>
<uses-feature android:name="android.hardware.type.watch" />
If you publish this apk file or app bundle then you will get error as
Your device is not compatible with this version
Then i read it some where..
Your android project you have 2 apps:
1.Mobile 2.Wearable
Mobile app should be installed on mobile device (phone/tablet) and Wearable app should be installed on Android Wear device.
This message No, missing feature: WATCH means that you're trying to install Wearable app on mobile phone - you shouldn't do that, your mobile device is not a WATCH. So once again: just launch Mobile app on mobile and Wearable app on Android Wear.
After this i remove the line from manifest
<uses-feature android:name="android.hardware.type.watch" />
And upload again to the google play console then i got new error as
You can't rollout this release because it doesn't allow any existing users to upgrade to the newly added APKs
if i add this line again in manifest file then this error is gone and old error is come
Your device is not compatible with this version
Solution:
Create new application in google play console with different package name and make your change your package name in gradle file and all over.
and remove all dependencies related to watch n wear and remove line from manifest file
<meta-dataandroid:name="com.google.android.wearable.standalon android:value="true"/
<uses-feature android:name="android.hardware.type.watch" />
And publish again and check compatible device that your app is support before rollout , after publish you will get mail from google as report of tested application.
In my app I use the FingerprintManager.
In the manifest I have declared the uses-feature and the permission:
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<uses-feature android:name="android.hardware.fingerprint" android:required="false" />
It all works fine on devices with fingerprint hardware. It also works fine if I install the app by AndroidStudio on a device without the fingerprint hardware.
The problem is when I try to install the .apk on a device without fingerprint hardware I get either a parsing error or a simple message "App was not installed."
What can I do to fix this ?
Finally I found the solution.
I had to check V1 (JAR signature) on the second page of 'Build signed APK' in AndroidStudio.
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" />