Android中的sharedUserId是什么,它是如何使用的?

我在sharedUserID困惑。什么是使用sharedUserId?如何使用?在Android中使用?

SharedUserId用于在两个或多个应用程序之间共享数据,进程等。 它是在AndroidManiFest.xml中定义的,

manifest xmlns:android="http://schemas.android.com/apk/res/android" android:sharedUserId="android.uid.shared" android:sharedUserLabel="@string/sharedUserLabel" 

并在Android.mk中定义该应用程序的共享参数,

LOCAL_CERTIFICATE:=共享

希望对你有所帮助..

默认情况下,Android将一个用户ID分配给一个应用程序。 这是您的应用程序的唯一ID,意味着除了具有此ID的用户之外没有人可以访问您的应用程序的资源。 您不能访问其他应用程序的数据或在当前进程中运行它。 当一个activity被调用的时候,另一个应用的activity被调用,android把控制权交给了被调用的新activity,并且他们运行在完全不同的进程中。

但是,在您的清单文件中,您可以明确地标识您的应用程序的用户标识。 当您为多个应用程序声明相同的用户标识时,他们可以访问彼此的资源(数据字段,视图等)。 您可以显示来自其他应用程序的数据或在您的过程中运行它。

这是你如何使用它:从http://developer.android.com/guide/topics/manifest/manifest-element.html

  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="string" android:sharedUserId="string" android:sharedUserLabel="string resource" android:versionCode="integer" android:versionName="string" android:installLocation=["auto" | "internalOnly" | "preferExternal"] > . . .</manifest>