My application won't install on jellybean phones - android

I've been building an application, and it works fine on all the ICS phones I've tried to install it on. However, when I try to install the apk on my friend's new Jelly Bean phone, it just says "Application not installed". I've set his device to not verify installs and I've made sure his install applications not from google play option is checked.
In the actual code, I have the minimum api set to 14, and the target set to 17. Still I can't get it to install.
Does anyone have any idea what could be causing this?

The apk needs to be signed. You can do this from Eclipse: right click on your project -> Android -> Export Signed Application package. More info here: http://developer.android.com/tools/publishing/app-signing.html.

For others still wondering why this is happening.
Please note that if you are using android studio 2.3 or above and have
used signature versions v2(full apk signature) then your app may cause
installations problems on previous versions.
Solution use traditional jar signature scheme v1 while Generating APK.
for more info hit this link

Related

Android third party causes "app not installed" error

I have created with the use of android studio a small project and then I generated the signed apk. Then I tried to install it in three phones and in the first one (which has android 8) the app was installed successfully but in the second one (which has android 4.2) and third one (which has android 5) I got the "app not installed" error. This is my second app (project) and my first one has been installed successfully in all these three phones. The minimum SDK version of the app is Android 4.0.3 (API level 15), so that's not causing the problem. Can anyone guess where the problem is?
Sign the apk with both v1 and v2 signatures. this is the most likely culprit given your scenario. apk will not get installed on devices with less than marshmallow if you only sign with v2
Well you can try following:
Change install location of app on the phones it's creating problem.
Try resetting app preferences
Clear Data and Cache of Package Installer
Allow Apps from Unknown Sources (Go to Settings → Security → Unknown Sources. Enable Unknown Sources. And then try installing App)
Try Deleting .android_secure/smdl2tmpl.asec file from your SD Card if using SD card
Resign the app.
Try changing app codes by using some apk editor app

Can't Install after sharing it another mobile

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.

Can not install my own generated apk

I updated my app and tested it on my device. Everything works fine if I test the app via the run button in eclipse but if I export it into an apk and try to install the apk it fails.
There is no error code or anything else, it just says the app has not been installed.
Any idea why this happens? I only changed a few things in my app: I removed the basegameutils lib from my app and migrated to the new api without basegameutils. Thats it (except for some bugfixes but that can not be the cause).
I did already restart eclipse and cleaned all projects mutiple times.
The target sdk is 22 and I am using newest system images and so on for that api level (my divce is a stock nexus 6 with 5.1.1 running). I also updated my build tools to 23.0.1 from 22.0.1 and removed the 22 version. Is this the cause?
I also tried to upload the apk in the dev console and there were no erros.
Thank you for your help.
EDIT:
The logcat output says the signature does not match the previously installed version.
If i try to install the current live version via the play store there is also an error message saying i can not install this app because another user already installed an incompatible version on this device (but i dont have it installed and i dont have multiple users on the device).
If i got to the app menu in the settings my app is shown at the bottom of the list but there is a note saying the app is not installed for the users. If i click on it all buttons are unclickable (so i can not uninstall it).
What is happening?
For me, selecting Signature Version v1 and v2 both solved the problem
Your signature changed, so as you mentioned you must uninstall the previous version. You tried to uninstall from the device UI and that fails - so try it from the command-line:
adb uninstall your_package_name
Seen on Nexus devices, occasionally only command-line uninstalls work.
I found a solution but I still have no idea what caused the problem.
somewhere on my device my app was still installed even though it didnt show up in the app drawer and the play store told me the same. In the settings/apps menu my app was still present (as i mentioned in the edit of my original post) so i clicked on it. If you click on the menu button you can chose unisntall for all users which did the trick. now I can install my apk again.
I have no idea how this happened but there you go, i hope this helps.
EDIT:
I had the same problem as this guy had. the accepted answer over there is much nicer than my poorly foramtted text ;)
"You cannot install this app because another user has already installed an incompatible version on this device"
I was facing same problem And I solved it this way, For Current Updated Android Studio 2.3
Build > Generate Signed apk.
Create Keystore path.
Put Password, alias, key password.
Build type select accordingly(eg to release in playstore use release).
Signature Version select both V1 and V2 checkboxes.
Finsih.
Go to the apk from explorer and use it for your playstore or in devices as Signed and Certified apk file.
For me the solution was to disable Play Protect on device.
You can not run signed apk directly in your android device .
I you want to run your apk then follow below steps :
1) Go to your device settings
2) In setting you find applications
3) In application checked unknown sources
This will allow you to run your signed apk without downloading from play store.
or
try this link :
"You cannot install this app because another user has already installed an incompatible version on this device"
The problem is because you have a version of your testing app. So, you're not really upgrading the app! Those are two different apps. You must first uninstall previous version (testing) so you can install the release (signed) version of your app.
I encountered this problem today and tried a few suggestions here, and this is how I solved the issue: I cleared my phone's caches / junk files and also uninstalled the test versions of the app and their APKs, and then reinstalled the new APK. Try this first before getting worried. 🙂
I got the save Error just incase someone faces this. For me it was because i have multiple projects for the same app on the phone. you need to delete older versions of the app from your phone.
If you have two options (V1 (jar signature) and V2 (Full APK Signature)) before generation signed apk. you should use V1 jar signature now, because there is no backward compatibility and all android phones with version < 7 won't accept this signature. Backward compatibility will be added in some next N Developer Preview.
There are also explanations on this developer.android in this link :
https://developer.android.com/about/versions/nougat/android-7.0#apk_signature_v2
In my case it was the proguardFiles path in build.gradle that caused this problem
Currently PlayStore performs regular checks for apps and device for harmful behavior. Installing signed APK manually is treated like unusually behavior so is preventend.
So turn off play protect feature temporary and your install will work as charm!
step one - open play store and select play protect
step two - click play protection setting button
step three - disable
step four - close and install your APK manually

Unsigned Android apk file won't install

I created an unsigned APK file from my eclipse project to demo my app on another device. It runs fine on the emulator and on a connected phone.
When I emailed it and downloaded the apk file ( I have allow apps from unknown locations ticked on ) but the install fails with message. "Installation failed" and not much more info.
Any ideas what I can check?
Make sure that the o.s. version of phone on which you trying to install the app is meet the minSdkVersion that you declared in your manifest file. Or if that app is already installed then unistall that and install again. May be it works.
I had the same problem. It was solved by uninstalling the version I had installed via usb from Eclipse. Once that version was off my phone I could email myself APK's and they would load fine.
All your apps need to be signed. Read here:
http://developer.android.com/tools/publishing/app-signing.html
Sign it with something like jarsigner
On the device, go to Settings->Applications->Unknown Sources and make sure that is ticked.
Make sure that there is enough space on the phone, and that the phone is running on the right version of Android.
Finally, if this still doesn't work, then sign your .apk file.
I had the same problem and in the end just signed apks which let them install perfectly. Alternatively if you use something like astro of the play store to backup your apk from the phone running it and send it over to the other phone - this also works. I think it might not be packed right or for some reason it requires a signature to install. It could also be that conflicting signatures are found on the new phone.

App installed from google play then new version reinstalled locally causes UnsatisfiedLinkError

We have an app on google play, and we are about to publish update, but testing update on JB device resulted in UnsatisfiedLinkError when calling System.loadLibrary("ourlib") in our code. ourlib is library compiled by us using NDK. This error shows only on 4.1 devices.
I suspect that it has something to do with new security on JB, app was first installed with Google Play with lets say version 1, and then reinstalled with version 2 using adb or from device using apk.
I could not find anything related to that on google, what could be the problem?
this problem
http://code.google.com/p/android/issues/detail?id=35962
looks similar but it appears that it was an error in google play actually.
Does that mean that you are trying to use standard/system library? Maybe the version of the library that you are trying to load does NOT contain particular functionality that you intend to use. Check android docs when the functionality became or stopped being available.
The solution is to use:
$ adb install -r -l my.apk
this makes apk to be reinstalled with use of forward-lock (aka. copy protection), I supose that because apk was upladed to google play with copy protection enabled then also forward-lock option in adb had to be added. I know JB introduced some changes with forward lock so this might be the case. I dont know internals of what really caused this problem, but above seems to work.

Categories

Resources