37
votes

I am working on Android application which will share the database. For that, I'm using android:sharedUserId in both application's Manifest file. When I am trying to run the application after adding that sharedUserId it shows me following errors in console.

[2013-03-04 19:37:32 - MainActivity] Installation error: INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
[2013-03-04 19:37:32 - MainActivity] Please check logcat output for more details.
[2013-03-04 19:37:32 - MainActivity] Launch canceled!

Please help me to resolve this problem.

10
Have you signed them with the same key? - Raghav Sood
I Tried to assign the same key But I found that we can assign keys to apk only... But I want to debug both applications - Hemantwagh07
So sign them both with the debug key. - Raghav Sood
you need to use the same signature for both - njzk2
"I using android:sharedUserId in both application's manifest file" -- this is a bad idea. Please use standard means for sharing data between applications, such as a ContentProvider. - CommonsWare

10 Answers

41
votes

I followed these steps:

  1. Removed existing application (if it is already installed )
  2. Removed share user ID from android manifest
  3. Bulid the application.
  4. Now enter share user ID again
  5. build the application 1 more time
9
votes

This means something about your app was not correctly uninstalled. This steps help to force uninstall from internal commands:

  1. Connect your phone to PC with usb
  2. From your shell launch:
    $ adb shell
    shell@android:/ $ su
    shell@android:/ # pm list packages | grep <part of package>
    package:com.android.providers.applications
    package:com.android.providers.calendar
    package:com.android.providers.contacts
    package:com.android.providers.downloads
    ...
    shell@android:/ # pm uninstall <package>
    shell@android:/ # exit
    shell@android:/ $ exit
    $

Basically, you log into android shell, become superuser, find problematic packages, and uninstall it

5
votes

In my case, the two app was signed with differents signatures. Using the same signature fix my problem

3
votes

The solution for me was to select the "Build > Clean Project" menu option. It took a long time but the application deployed once it was complete.

2
votes

Although you have accepted answer, I also want talk my situation which I met this error. My project is a Launcher which just happen to use some system grant like, Manifest.xml have two item:

<uses-permission android:name="android.permission.STATUS_BAR" />
 or
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />

and console log out:

Error using StatusBarManagerService - java.lang.SecurityException on android.permission.STATUS_BAR

Lastly, my colleague give me a hint using "platform debug key", I am not sure this will be suitable for you, but for another guys possibility for this kind question. The below picture is my solution: screenshot from project structure you might also notice 'Signing Config' of "Flavors" and "Build Types", you might choose 'Name:' of "Signing".

0
votes

In my case, I had two build variants (one specific for a device, and one general).

I was running the device-specific build on an emulator when this error showed up.

0
votes

I did a slightly different approach.

My work involves using a modified Android OS along with a modified adb tool. The app (app1) I am working on "shares a user" with another app (app2) by another team. In order for me to get the Android Studio debugger to work, I had to follow these steps in order:

  1. use the Build (from Android Studio Menu) -> Generate Signed APK
  2. build a debug version of apk (app1) with the key store information used by (app1 and app2)
  3. use adb to uninstall the previous apk
  4. use adb to install the signed debug-apk
  5. use adb to launch the app in debug mode
  6. connect the Android Studio debugger to the app
0
votes

I have encountered the same problem. I tried out everything, but unfortunately, nothing works for me. As it's a testing device no hesitated to do a factory reset. Oops. sucks didn't work either. Invalidate Cache/ Restart did the trick eventually. Looks like it's an Android Studio 3.5 bug.

Thanks.

0
votes

I was using Emulator and the solution for me was to select the "AVD Manager" and Wipe all data from my Emulator device. After that application was installed.

0
votes

Simply delete the existing application from mobile and reinstall using run.