Android需要提升权限的操作方法
发布时间:2021-07-17 11:25:47
权限提升方法:
一种方法:
1、在AndroidManifest.xml中的manifest节点中添加android:sharedUserId="android.uid.system"。
2、添加后程序在虚拟机上是不可以直接用的。但可以用eclipse编译成apk。
3、(这一步经验证不执行即可)编译成apk后用压缩工具打开apk,把META-INF目录中的CERT.SF、CERT.RSA两个文件删除。
4、使用android自带的签名工具signapk.jar 以及源码中的platform.x509.pem,platform.pk8对apk进行重新签名。
执行:java -jar signapk.jar platform.x509.pem platform.pk8old.apk new.apk执行后new.apk即为签名后的文件。
(注:执行命令时所有文件这里放在同一目录下,如果不在同一目录请修改路径)。
文件platform.x509.pem和platform.pk8我们可以在源码的build/target/product/security中找到。signapk.jar 可以编译build/tools/signapk/ 得到。
5、签名后就可以安装使用了
第二种方法:
1、在AndroidManifest.xml中的manifest节点中添加android:sharedUserId="android.uid.system"。
2、直接在源码中编译,Android中加入LOCAL_CERTIFICATE := platform
两法方法签名后可能会导致不能操作sdcard目录下的文件。
需要提升权限的操作:
1、系统重启:
PowerManager pManager=(PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
pManager.reboot("");
2、向cache分区/cache中写入文件
3、修改系统时间
……


猜你喜欢
- 目前 Android 已经不推荐使用下列方式创建 Notification实例:Notification notification = ne
- /** * Gets the number of cores available in this device, across all pr
- 参考 java查找无向连通图中两点间所有路径的算法,对代码进行了部分修改,并编写了测试用例。算法要求:1. 在一个无向连通图中求出
- 先略看题目:1 请简述async函数的编译方式2 请简述Task状态机的实现和工作机制3 请简述awai
- 在android开发中,有时候我们想获取手机的一些硬件信息,比如android手机的总内存和可用内存大小。这个该如何实现呢?通过读取文件&q
- cc3利用链如下:TrAXFilter(Templates templates) TemplatesImpl-&a
- 在java中如果我们需要遍历集合并删除其中的某些元素时,例如对于List来说,我们有三种办法。1. 普通的for循环遍历并删除public
- 由C#转入Java一段时间了,总结下个人认为的Java同C#语法之间的不同之处,有不同意见之处还望各位海涵 刚学Java时觉得语法同C#大致
- HttpServletRequest介绍HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HT
- mysql实现配置中心本公司配置数据的管理是通过mysql进行配置管理,因为已经搭建好了,所以自己动手重新搭建一遍,熟悉整个流程。有关项目源
- Code CacheJVM生成的native code存放的内存空间称之为Code Cache;JIT编译、JNI等都会编译代码到nativ
- 基本概念:类加载的过程大致分为三个阶段1、加载阶段:本阶段主要把class的二进制代码加载进入JVM,并且进行常量池(类名,方法名,字段名)
- 本文实例讲述了C#根据反射和特性实现ORM 映射的方法。分享给大家供大家参考。具体如下:(一)关于反射什么是反射?反射就是在运行时,动态获取
- 前言之前我们探讨过一个.class文件是如何被加载到jvm中的。但是jvm内又是如何划分内存的呢?这个内被加载到了那一块内存中?jvm内存划
- 使用@Tolerate实现冲突兼容使用Lombok能够减少程序员的重复工作提高工作效率,而Lombok的注解基本是基于标准的(如,标准的Bu
- in查询 <foreach>循环问题当我在做in查询的时候,发现在网上有很多种写法:接口public List<CaseR
- android开发中有时候碰到切换语言的需求,这时候需要通过代码动态改变当前运行语言。package com.example.android
- 一、LockSupport类的属性private static final sun.misc.Unsafe UNSAFE; &
- 1. 我们可以通过将字符强转为int型进行输出那么在控制台中我们将会得到字符的ascii值,这里我们使用nextLine()方法来接收字符串
- 本人刚参加工作,面试的时候遇四道笔试题,其中就有这道多线程有序读取文件的题目,初看时拿不准,感觉会,又感觉不会。于是放弃了这道题,今天闲下来