unsigned APK can not be installed

AndroidApkSelf Signed

Android Problem Overview


I am trying to distribute my application to some people for testing. I have installed it on my Desire directly from eclipse and it works fine.

To create an APK-file, I choose "Export Unsigned Application Package" directly from eclipse, and then an APK file was created. I emailed it to myself and downloaded the file to the SD-card. But when I try to install it (using ES File Browser), I get a message saying "Application not installed".

(I have already checked the "Allow installation of non-Market application" on my phone) Any ideas?

Yeah I found the problem, see my answer below:

I did not know that even with the "Allow Installation of non-Marked application", I still needed to sign the application. I self-signed my application, following this link self-sign and release application, It only took 5 minutes, then I emailed the signed-APK file to myself and downloaded it to SD-card and then installed it without any problem.

Android Solutions


Solution 1 - Android

I did not know that even with the "Allow Installation of non-Marked application", I still needed to sign the application.

I self-signed my application, following this link self-sign and release application, It only took 5 minutes, then I emailed the signed-APK file to myself and downloaded it to SD-card and then installed it without any problem.

Solution 2 - Android

You cannot install an unsigned application on a phone. You can only use it to test with an emulator. If you still want to go ahead, you can try self-signing the application.

Also, since you are installing the application from an SD card, I hope you have the necessary permissions set. Do go through stackoverflow.com and look at questions regarding installation of applications from an SD card - there have been many and they have been asked before.

Hope that helps.

Solution 3 - Android

You can test the unsigned-apk only on Emulator. And as its step of application deployment and distribution, you should read this article atleast once, i suggest: http://developer.android.com/guide/publishing/app-signing.html.

For your question, you can find the below line in above article:

>All applications must be signed. The system will not install an application that is not signed.

so you have to have signed-apk before the distribution of your application.

To generate Signed-apk of your application, there is a simple wizard procedure, click on File -> Export -> Android -> Export Android application.

enter image description here

Solution 4 - Android

Just follow these steps to transfer the apk onto the real device(with debugger key) and which is just for testing purpose. (Note: For proper distribution to the market you may need to sign your app with your keys and follow all the steps.)

  1. Install your app onto the emulator.
  2. Once it is installed goto DDMS, select the current running app under the devices window. This will then show all the files related to it under the file explorer.
  3. Under file explorer go to data->app and select your APK (which is the package name of the app).
  4. Select it and click on 'Pull a file from the device' button (the one with the save symbol).
  5. This copies the APK to your system. From there you can copy the file to your real device, install and test it.

Good luck !

Solution 5 - Android

I cannot install an apk build with "Export Unsigned Application Package" Android SDK feature, but i can install an apk browsing the bin directory of my project after the project buid. I put this apk on my sd on my HTC Wildfire phone, select it and the application install correctly. You need to allow your phone to install unsigned apk. Good Luck.

Solution 6 - Android

You could also send your testers the apk that is signed with your debug key. You can find that in the bin folder of your project after building in debug mode.

Solution 7 - Android

An unsigned application cannot be installed. When we run directly from eclipse, that apk is signed with debugger key and can be found in bin\ folder of the project. You can use that for test purpose distribution also.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestiontheAlseView Question on Stackoverflow
Solution 1 - AndroidtheAlseView Answer on Stackoverflow
Solution 2 - AndroidSriramView Answer on Stackoverflow
Solution 3 - AndroidParesh MayaniView Answer on Stackoverflow
Solution 4 - AndroidBasher51View Answer on Stackoverflow
Solution 5 - AndroidPola SilvioView Answer on Stackoverflow
Solution 6 - AndroidBrian ChristensenView Answer on Stackoverflow
Solution 7 - AndroidFahad IshaqueView Answer on Stackoverflow