用户ID

    在应用程序安装时,Android赋予每个包一个唯一且不变的Linux用户ID(在不同设备上,同一个包可能有不同的UID)。因为进程级别的安全限制,任意两个包通常不能运行在同一个进程,因为它们是作为不同的Linux用户启动的。
    可以使用AndroidManifest.xml中manifest元素的sharedUserId属性,赋予不同的包相同的UID。为了安全起见,两个包会被看做同一个应用程序,拥有相同的UID和文件权限。同时为了保持安全性,这两个应用程序必须具有相同的签名和UID。

 sharedUserId的属性值不能以数字开头,所以该值并不是Uid的值,获取所在进程的Uid可以通过android.os.Process.myUid()方法获取。

PackageManager.getPackagesForUid
    获取与指定用户ID相关联的所有包名。
Context.createPackageContext
    返回指定应用程序名称的Context对象
Context.getClassLoader
    返回该Context的ClassLoader  

posted on 2011-04-28 14:09  爱吃草莓的维尼  阅读(514)  评论(0编辑  收藏  举报

导航