转自:http://quanminchaoren.iteye.com/blog/1107560

Systemproperties类在android.os下,但这个类是隐藏的, 上层程序开发无法直接使用。其实用java的反射机制是可以使用这个类。何谓java反射机制,请自行研究学习,在此不做介绍,放到后续文章中。用JNI 的方式,可以绕过Systemproperties这个类,直接本地调用来实现创建、获取及修改系统属性。在此也不做介绍,也放到后续文章中。

这篇文章主要介绍android系统属性的命名方式:

创建与修改android属性用Systemproperties.set(name, value),

获取android属性用Systemproperties.get(name),

需要注意的是android属性的名称是有一定的格式要求的,

前缀必须用system\core\init\property_service.c中定义的前缀

进行系统属性设置的程序也必须有system或root权限,

如何将android程序的权限提升到system权限?方法是这样的:

1、在AndroidManifest.xml中,在manifest加入android:sharedUserId="android.uid.system"。

2、在Android.mk中,將LOCAL_CERTIFICATE := XXX修改成LOCAL_CERTIFICATE :=platform

经过以上两步就可以把ap的权限提升到system权限了。但是用这种方法提升权限有两个弊端,如下:

1、程序的拥有都必须有程序的源码;

2、程序的拥有都还必须有android开发环境,就是说自己能make整个android系统。

一般能做这两点的,基本上都是开发人员!

更多相关文章

  1. Android中的文件权限操作
  2. 实验1:第一个Android程序
  3. Google Android应用开发04 Android应用程序结构
  4. 不需要任何权限获得Android设备的唯一ID
  5. Android中的windowSoftInputMode属性详解
  6. Android属性动画AnimatorSet源码简单分析
  7. Android控件TextView中ellipsize属性(设置当文字长度超过textview

随机推荐

  1. Android序列化学习
  2. 序列化原理(二):从源码理解Parcelable
  3. 11.GridView、ListView等的OnItemClick事
  4. productFlavors 用法
  5. Android之SurfaceView(六)
  6. Android入门第三篇之RelativeLayout、Fra
  7. [Android]Fragment源码分析(二) 状态
  8. Android(安卓)使用ViewPager实现广告条滚
  9. Android(安卓)Studio Mac环境下的使用
  10. Android(安卓)!No Launcher activity foun