Yesterday I created an Android app using Delphi XE6, built it with Release configuration and targeted App Store, and ran deployment without installing to any device.
I then uploaded the resulted APK to Google Play Store with success, but when the app downloaded and installed on my device (ZTE N986D), it crashed.
THE SAME APK downloaded to the device via http server running on my laptop was fine and working without any error/crash.
I did triple checks everything (debug/release mode, provisioning, deployment files, etc.) with no luck. I also did try on 3 differend Android devices with exactly same result.
For now I believe that this is not a bug on Delphi XE6.
Is an APK getting changed when uploaded to Google Play Store?
Here is link to the app:
https://play.google.com/store/apps/details?id=org.cenadep.pnup.qrkasir
Any help and thought would be appreciated.
1) You need to generate a keystore for sign your APK.
Please follow this link to create a keystore: http://docwiki.embarcadero.com/RADStudio/XE6/en/Creating_a_Keystore_File
2) After, follow this: http://docwiki.embarcadero.com/RADStudio/XE6/en/Deploying_Your_Signed_Android_Application
Related
I uploaded an aab to the play console and finally got it listed on the play store. This app was written in Python and Kivy, and I was able to generate the aab by first running buildozer then running the script through Android Studio by following various instructions around the net.
I can download an apk from the play console which is generated from the aab, and it works just fine. However, when I install the app from the play store it closes as soon as it opens. However, I dont get a true crash report.
This is my first real app, and I'm a little lost on how to proceed.
Questions:
Any idea what's going on here?
What's the difference between the apk generated from the play console vs whatever is installed from the play store?
How can I diagnose this issue if I don't have access to the apk with the issue?
I got it to work by using a dev version of Buildozer to create the aab instead of using Android Studio.
The instructions can be found here by scrolling down to Release Builds:
https://github.com/Android-for-Python/Android-for-Python-Users#how-to-create-a-release-bundle-aab
Use Firebase Crashlytics, it logs crashes in the firebase console. You can use it in cases you can't access the apk. It requires some setup but is pretty easy. In your case, however, I think you can see the stacktrace in Android Studio if you set no filter and manually search for your app in LogCat.
Rather than aab upload file in .apk it will properly run.It is not good scenario to use apk bcz it increase the app size.When we use aab file to upload some files are not working bcz of this crash occurs.
I install my create signed apk in some other device, it gets installed once only. After I uninstall it and install again the same apk, then it shows error 'app not installed'.
Also, the user login work only on localhost but not on development server/apk.
I have tried cleaning the gradlew every time and regenerating new apk, but nothing works.
Kindly help to resolve the issue.
Installation fails if you try the same file if it is not an app added to Google Store in Android
The first option is to re-install the APK with the same code under a different name,
or
Your device is protected from harmful apps with Google Play Protection. This is why you must release the check.
Open the Google Play Store app Google Play on your Android device.
Next to Menu, Play Protect tab the following settings:
Disables the scanning feature for security threats on the device.
You should use your computer's ip address instead of using 10.0.2.2 if you are running on local device. PS: the codes are still running native in the end. There is a better explanation here. [explained][1]Android Localhost?
About the installation failing, I have not experienced. But maybe it's was already published in Google Play as hong described?
I made an Android app using Android studio, deployed and ran it directly by using my mobile running Oreo.
It installed successfully. But later I tired to share the APK from my mobile to other mobiles. But none of them are able to Install it.
However, if I build the APK and share the app-debug.apk to other mobiles. It Installs successfully.
I can't build APK and share app-debug.apk it everyone.
I usually deploy it in my mobile, share APK(which used to work before)
Can anyone please help
Please excuse typos, I have typed from mobile.
There might be a signing issue. Is your app signed? The default signing is the debug signing. When you just build and deploy or run it on a connected device, it is signed by default as a debug sign.
If it is not uniquely signed, then running or installing on other devices might not be possible. Look at the app signing instruction and guide by Google, here, if you wish to distribute your app on other devices.
Another problem might be in the security authorization of other devices. Your device on which you are building has the developer options turned on. To run and install unsigned apps you'll need to activate the developer options in the device you want to run it on. Look at this link about Developer Options and how to turn it on.
by default the Android Studio packages just the needed files and installs the app in your mobile. If you share to other mobiles, the app will not install in few devices due to a few reasons like OS version, files mismatch, SHA keys mismatch, etc.
However, if you build the APK and share, the APK is equipped to be installed in any device starting from the minimum SDK version to the target SDK version.
I've successfully created a keystore to sign system apps to be tested on android emulators. I can install the apk on a 6.0 image but got no luck on a 8.0 image. It fails with the message:INSTALL_FAILED_SHARED_USER_INCOMPATIBLE Package xxx.yyy.zzz has no signatures that match those in shared user android.uid.system. The keys that i used were the ones available on aosp-mirror github. Is there a way to sign an apk as a system app to be used on a 8.0 android emulator?
You should try to use an Emulator without Google API's or Google Play Services.
So, I have an app which I am running on real device. When running the app the following dialog is shown.
Clicking Yes is followed by error in Console
- google-play-services_lib] Installation error! The package already exists.
- Launch failed on device:
I have tried uninstalling app from my phone but didn't work.
Any idea how to fix it?
You dont need to reinstall google-play-services. It's updating automatically by Play Market.
I had problems like yours and let me guess:
when you debuging app from eclipse - google play services doesnt sign in, but when u release it and download from play market - it works fine.
If its true, so mark your google-services as a library and delete from "java build path" in your app.
right click on project-> Properties -> Java Build Path -> Projects
Delete google-play-services from there
Now, you have to obtain debug certificate SHA1
in Eclipse go to Window->Preferences
Andoid->Build
(there you can find debug certificate SHA1 for debuging)
Go to Android Developper Console https://play.google.com/apps/publish
Select your game in Play service
Go to "linked applications"
Create a NEW linked application android and put it your debug certificate SHA1
Wait a few to changes be deployed
You will get two similar links, but with different SHA1 ( one for debugging, second for releasing)
Now, you need to clear the Android Application cache before trying to connect
Clear cache of your application
Launch your app
I solved my problem like this
That's caused by attempting to install an apk maybe from the ide with debug keystore on a device that has the production apk with the production keystore. Just go into the phones app settings and uninstall the app. I get a few of these after I test the upgrade path from the beta store and then go back to developing with the ide.
try doing it through command prompt use:
adb uninstall PACKAGE_NAME
and see if it works
also try renaming the package name just to be sure.
I feel you are trying to install google-play-services.You don't need to update google play services.From the docs:
The Google Play services APK
The Google Play services APK contains the individual Google services
and runs as a background service in the Android OS. You interact with
the background service through the client library and the service
carries out the actions on your behalf. An easy-to-use authorization
flow is also provided to gain access to the each Google service, which
provides consistency for both you and your users.
The Google Play services APK is delivered through the Google Play
Store, so updates to the services are not dependent on carrier or OEM
system image updates. In general, devices running Android 2.3
(Gingerbread) or later and have the Google Play Store app installed
receive updates within a few days. This allows you to use the newest
APIs in Google Play services and reach most of the devices in the
Android ecosystem (devices older than Android 2.3 or devices without
the Google Play Store app are not supporte