android apk获取权限,Android apk 获取系统权限的方式
Android系统中,权限等级分为
["normal" | "dangerous"| "signature" | "signatureOrSystem"]
normal 、dangerous是一般apk都在Mainifest中声明即可获取的
signature必须要有系统级别的签名才能够获取到
signatureOrSystem 有系统级别签名或者有系统权限
以SET_PREFERRED_APPLICATIONS为例
使用signapk为APK签名
addPreferredActivity需要权限 android.permission.SET_PREFERRED_APPLICATIONS(权限等级为【signature】)
使用该权限需要signapk进行签名,所需要的工具
源码包中
1)..\out\host\linux-x86\framework\signapk.jar
2)..\build\target\product\security\platform.pk8
3)..\build\target\product\security\platform.x509.pk8
将以上3个文件以及需要签名的APK放到同一个目录中
cmd -> java -jar signapk.jarplatform.x509.pem platform.pk8 LauncherDemo.apk Launcher_sign.apk
该权限以需要具有系统权限的应用,所以需要使用源码编译该应用
完成后可使用普通install方法安装应用,并可使用zipalign对APK进行优化
zipalign目录 android-sdk\tools\zipalign.exe
l 优化对齐APK
cmd ->zipalign -v 4 old.apk new.apk
l 验证对齐
cmd ->zipalign -c -v 4 new.apk
以上最张输出 Verification succesful 则表示优化对齐成功
源码编译APK共享系统UID
这种方法无需声明权限SET_PREFERRED_APPLICATIONS
1)在Mainfest文件中增加
android:sharedUserId="android.uid.system"
2)Android.mk文件中增加
LOCAL_CERTIFICATE := platform
编译完成后,使用push方式安装应用
Android.mk:
#Copyright 2007-2008 The Android Open Source Project
LOCAL_PATH:=$(call my-dir)
include$(CLEAR_VARS)
LOCAL_SRC_FILES:= $(call all-java-files-under, src)
LOCAL_PACKAGE_NAME:= LauncherDemo
LOCAL_CERTIFICATE:= platform
include$(BUILD_PACKAGE)
# Use thefolloing include to make our test apk.
include$(call all-makefiles-under,$(LOCAL_PATH))
原文:http://blog.csdn.net/weiwei5910/article/details/38531725
android apk获取权限,Android apk 获取系统权限的方式相关推荐
- 通过apk签名使应用程序有系统权限
问题: 系统预装软件,需要访问一些配置文件,配置文件的owner都是设置为system.所以应用程序需要有授权才可以读写. google搜索找到以下文章,解决了这个问题. 以下内容解释了: andro ...
- 【Android 逆向】Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )
文章目录 一.Linux 权限简介 二.系统权限 / 用户权限 / 匿名用户权限 1.系统权限 2.用户权限 3.匿名用户权限 一.Linux 权限简介 Linux 是基于文件的系统 , 内存 , 设 ...
- Android 系统(80)---Android 8.0 7.0 6.0 动态权限管理
Android 8.0 7.0 6.0 动态权限管理 1.Android6.0之后运行时权限策略变化 从Android6.0(API23)开始,对系统权限做了很大的改变,在之前用户安装app前,只是把 ...
- Android 7.0上app所需高级权限的解除限制的方法
---- by Shengwen.Wei 一. 概述 随着移动互联网的发展,用户对于自身的信息安全越来越重视,基于此,android系统对于用户自身的信息安全特别是android M(6.0)以 ...
- 获取比Administrator还高的权限——SYSTEM权限
获取比Administrator还高的权限--SYSTEM权限 设置PsTool环境 常用命令 以系统权限打开cmd 以系统权限打开explorer(其实也是桌面) 首先,我们会用到PsTool中的P ...
- Android车载嵌入式操作系统(Android Automotive)
摘要: 大家最熟悉的Android系统应该是手机和平板设备上的,大部分人可能没想过Android系统和汽车有什么关系.但实际上,Android系统在四年前就在布局汽车这个平台.我最近对相关内容做了一些 ...
- android手机桌面管理,Android桌面管理
Android_launcher 最近在研究安卓桌面管理,顺便写个小桌面管家demo 下面是效果图: image image 桌面管家是对设备上的App进行定制动态管理,屏蔽所有系统设置入口,根据权限 ...
- Oracle 数据库查看具有sysdba系统权限用户,设置、重置sys用户密码
sysdba 是系统权限,dba 是用户对象权限. 用 sysdba 系统权限身份登录后再用 show user 命令即可看到哪个用户有系统权限了. alter user 用户 identified ...
- oracle对象权限 函数,oracle的系统和对象权限
alter any cluster 修改任意簇的权限 alter any index 修改任意索引的权限 alter any role 修改任意角色的权限 alter any sequence 修改任 ...
最新文章
- 禅道 php api,禅道 Rest API 开发
- 小明分享:8ms平台入门教程
- 代码 控制unity 暂停 编辑器_Unity3D 报错解决方案及常用功能收集
- 高斯混合模型(Gaussian Mixture Model)
- 装修仿720VR全景平台网站源码
- 产品经理应该mysql_数据库对产品经理的重要性
- RedAlert简介
- java ajax 进度条_java使用ajax实现进度条
- Python爬虫编程实践Task 01
- django前后端数据交互
- Windows下VB6.0开发——VB程序断点调试与顺序执行不一致问题(通信原因)
- 第4章 最基础的分类算法-k近邻算法 kNN 学习笔记 下
- MySQL 新增、修改、删除 字段 sql语句
- 人工智能标记语言AIML聊天机器人:产生、种类、应用、实例、AIML概述、知识库、公司、业界(20k字经典收藏版)
- 【读点论文】ViTGAN: Training GANs with Vision Transformers 将视觉transformer和gan结合起来
- Linux/Unix下Shell快捷键操作大集合
- 不想用百度云,那就教你自建属于自己的云盘!
- 2020年度个人总结--一个前端技术LD的年终盘点
- python爬虫selenium-前程无忧
- 超详细的Spring Boot教程,搞定面试官!
热门文章
- 自然语言处理NLP-100例 | 第三篇:骚扰短信识别 MultinomialNB实现(内附源码)
- 如何求解问题--数据结构与算法入门
- Python编程基础:第四十九节 鸭子类型Duck Typing
- 深入理解Python字符编码--转
- Understanding JVM Internals---不得不转载呀
- Lesson 16.4 卷积遇见深度学习
- 暴富、投机,金钱、欲望、人性,一个叫 Fomo3D的游戏正在刷新你的世界观
- 深度研究 | 区块链在征信业的应用探讨:切中了痛点,但也面临四大挑战
- mysql 有always on么,mysql 关于时间类型的刨坑之路
- Redis - Spring Data Redis 操作 Jedis 、Lettuce 、 Redisson