Android笔记:AndroidManifest.xml属性详解(一)之sharedUserId

一、sharedUserId

android:sharedUserId="com.rongqin"


userid的特点:

1. 作为APK身份的标识

2. userid对应一个Linux用户,所以不同APK(用户)间互相访问数据默认是禁止的.

不同APK之间如何通过userid进行数据互访?

在android系统中,apk之间可以相互读取数据的条件是:有同样的签名,并且AndroidManifest.xml文件中配置的android:sharedUserId属性值相同,那么两个apk运行在同一个进程中,可以互相访问任意数据。

通过userid访问其他apk资源的方法:

1.应用程序和插件(比如皮肤)程序的AndroidManifest.xml中配置相同的sharedUserId:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.lonshine.skin"
    android:versionCode="1"
    android:versionName="1.0"
    android:sharedUserId="com.rongqin" >

2.访问apk中的资源:

Context context = createPackageContext("com.lonshine.skin", Context.CONTEXT_IGNORE_SECURITY);

获取到com.lonshine.skin对应的Context,通过返回的context对象就可以访问到com.lonshine.skin中的任何资源。

例如,应用apk要获得插件apk中的bg.png:

Drawable drawable = context.getResources().getDrawable(R.drawable.bg);

这样就得到了图片的引用,其他xml资源文件的获取方式也是类似的。


时间: 2024-08-24 02:34:16

Android笔记:AndroidManifest.xml属性详解(一)之sharedUserId的相关文章

AndroidManifest.xml文件详解(uses-permission)

语法(SYNTAX): <uses-permissionandroid:name="string"/> 被包含于(CONTAINED IN): <manifest> 说明(DESCRIPTION): 这个属性用于给应用程序授予正确的操作的所必须的权限.这些权限是在应用程序安装时被授予的,而不是在运行时授予的. 有关更多的权限信息,请看<AndroidManifest.xml文件详解(三)>文档中“权限”介绍(http://blog.csdn.net/

[转]AndroidManifest.xml文件详解

转自:http://www.cnblogs.com/greatverve/archive/2012/05/08/AndroidManifest-xml.html AndroidManifest.xml文件详解(一) 每个应用程序在它的根目录中都必须要有一个AndroidManifest.xml文件.这个清单把应用程序的基本信息提交给Android系统,在应用程序的代码能够运行之前,这个信息系统必须建立.以下是清单文件要做的一些事情: 1. 用Java包给应用程序命名.这个包名是应用程序的唯一标识

AndroidManifest.xml配置文件详解(转载)

AndroidManifest.xml配置文件详解 2013-01-05 10:25:23 分类: Android平台 AndroidManifest.xml配置文件对于Android应用开发来说是非常重要的基础知识,本文旨在总结该配置文件中重点的用法,以便日后查阅.下面是一个标准的AndroidManifest.xml文件样例.     [html] view plaincopy <?xml version="1.0" encoding="utf-8"?&g

Android笔记(七十四) 详解Intent

我们最常使用Intent来实现Activity之间的转跳,最近做一个app用到从系统搜索图片的功能,使用到了intent的 setType 方法和 setAction 方法,网上搜索一番,发现实现转跳只是Intent功能的九牛一毛,现在对Intent功能做一个总结,以作备忘. 我们经常使用如下方法实现一个转跳: Intent intent = new Inent(MainActivity.this,SecondActivity.class); startActivity(intent); 其实这

Android TextView和EditText属性详解

TextView属性详解: autoLink设置 是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接.可选值(none/web /email/phone/map/all) android:autoText如果设置,将 自动 执行输入值的拼写纠正.此处无 效果 ,在显示输入法并输入的时候起作用. android:bufferType指定getText()方式取得的文本类别.选项editable 类似于StringBuilder可追加字符,也就是说getText后可调用

Android中View自定义XML属性详解以及R.attr与R.styleable的区别

为View添加自定义XML属性 Android中的各种Widget都提供了很多XML属性,我们可以利用这些XML属性在layout文件中为Widget的属性赋值. 如下所示: <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" /> 我们可以通过TextView所提供

android AndroidManifest.xml uses-feature 详解

如果你是一个Android用户,而且你有一个老旧的安装有android 1.5 的android设备,你可 能会注意到一些高版本的应用没有在手机上的Android Market 中显示.这必定是应用使用 了<uses-feature>的结果. Android Market会根据uses-feature过滤所有你设备不支持的应用.通过使用<uses- feature>元素,一个应用可以指定它所支持的硬件型号,举个例子,有些设备不支持多点触 控或者OpenGL ES 2.0,那么过滤器

AndroidManifest.xml文件详解

AndroidManifest.xml 是每个android程序中必须的文件,它位于整个项目的根目录.我们每天都在使用这个文件,往里面配置程序运行所必要的组件,权限,以及一些相关信息.但是对于这个文件,我们真正又了解多少了,还是只是停留在只会简单的配置,而不明白其中的具体含义,以及为什么要这样设置?今天就让我们来详细的学习一下这个文件里各项参数的具体含义,因为它是整个应用的入口,所以有助于我们更加深入的理解Android. 一.概述: AndroidManifest.xml是Android应用的

Android开发之EditText属性详解

1.EditText输入的文字为密码形式的设置 (1)通过.xml里设置: 把该EditText设为:android:password="true" // 以"."形式显示文本 (2)在代码里设置: 通过设置EditText的setTransformationMethod()方法来实现隐藏密码或这显示密码. editText.setTransformationMethod(PasswordTransformationMethod.getInstance());//设