我正在从源代码编译Android ROM,我有一个应用程序,我希望它预先安装并让它以root权限运行.

如何在不支持整个ROM的情况下授予对此特定应用程序的root访问权限?

解决方法:

希望你不需要root …

典型的股票Android ROM为很少的东西提供root权限,与principle of least privilege一致.相反,应用程序被授予他们所需的精确权限.

为什么你需要这个应用程序拥有root权限?您应首先查看all the internal unpublished Android permissions列表,看看其中一个是否符合您的要求.由于您正在构建系统应用程序,因此您甚至可以使用其他应用程序通常无法使用的签名权限.您只需要确保您的应用程序是由构建Android ROM的密钥签名的 – 然后您可以使用ROM或单独分发它,它仍然可以访问您需要的权限.

这样做的好处是:

>如果您的应用程序遭到入侵或出错,则效果有限.

>您的实际Java代码具有这些权限,因此无需制作繁琐的命令行.

所以如果你可以用这种方式完成你的任务,那就行了.

但如果你真的这样做……

如果你确实需要root,那么事情会变得棘手.

你有三个选择.按优先顺序排列:

>添加新的系统服务.

>添加一些替代的setuid-root二进制文件,它可以满足您的需要.

>修改su二进制文件以确切地检查是谁调用它.

如果你确实需要root,那么我会add a new system service.这可以以root身份运行.然后,您将添加适当的额外API,以便您的应用可以调用它 – 并且权限可以是签名级别,以便只有您的系统应用程序才能调用它.这是在Android-land中进行这种架构的“正确”方式.

第二个或第三个选项涉及创建一些命令行工具,它可以执行您想要的操作,但我不知道这种工具检查谁调用它的安全方法.允许任何应用程序调用此功能可能是可以接受的.如果是这样,可能是一个新的setuid-root可执行文件.但是,正如我所说,我不知道如何阻止运行它的其他应用程序.

标签:android,root

来源: https://codeday.me/bug/20191004/1852216.html

android程序root权限,android – 如何从源代码授予对特定应用程序的root访问权限而不是root权限?...相关推荐

  1. android应用程序如何获取root权限,Android获取ROOT权限的实例代码

    获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了. // 获取ROOT权限 public void get_root(){ if (is_ ...

  2. android开发获取权限,Android开发程序代码获取root权限

    把apk放到/system/app文件夹下,作为系统项目,就可以保证项目有root的权http://限. root权限的app可以申请很多一般用户无法申请的权限. 可以查看哪些权限是需要root才能申 ...

  3. android u盘读写权限,Android 外部SD卡/U盘无法写入解决方法(需要root)

    但今天我遇到一个问题,就是我买了只TF卡装上去以后发现:一般程序无法写入TF卡,而系统自带的文件工具能够写入. 什么原因呢? 好在这个平板已经是root的,马上调出rootexplorer文件管理器查 ...

  4. android 6 编译 root权限,Android应用获得Root权限

    要让Android应用获得Root权限,首先Android设备必须已经获得Root权限. 应用获取Root权限的原理:让应用的代码执行目录获取最高权限.在Linux中通过chmod 777 [代码执行 ...

  5. android jar包 权限,Android系统启动执行jar程序

    看雪里有人问到android是不是只能执行apk程序? 除了原生程序和脚本外,android是可以启动执行封装java程序的jar包的. 实现流程如下: 第一步新建java程序 public clas ...

  6. adb为Android的root方法,Android 实现永久性开启adb 的root权限

    adb 的root 权限是在system/core/adb/adb.c 中控制.主要根据ro.secure 以及 ro.debuggable 等system property 来控制. 默认即档ro. ...

  7. android 程序a启动程序b的权限,android app微信分享

    android app微信分享 积分: 22 智慧币 积分: 2 智慧币 [0.67元 ] 包含内容: 源码,全套工具 详情描述 如遇视频不清晰,请最大化观看演示 以下仅列出部分功能,全部功能请至官网 ...

  8. android_secure写权限,android - android.permission.WRITE_SECURE_SETTINGS,系统应用程序中的权限拒绝 - 堆栈内存溢出...

    我知道android.permission.WRITE_SECURE_SETTINGS应该在系统应用程序中调用,所以我将我的应用程序推入/ system / app并安装它,但错误信息显示: java ...

  9. android apk 永久root,将android应用转成系统应用后,如何能使其直接获得ROOT权限

    可以试试一键root, 该软件目前适用于Android2.2-Android5.0系统的手机获取root权限.用一键root获取权限操作简单稳定,基本上适配所有Android手机,一键root目前已经 ...

最新文章

  1. python安装不了jieba_python安装jieba失败怎么办?_后端开发
  2. Oracle中 的 DBMS_CRYPTO加密包
  3. 验证E-mail是否正确
  4. python网络通信的几种方式_python网络-计算机网络基础(23)
  5. Modbus RTU 通信应用案例
  6. IOS基础之使用UICollectionView纯代码创建
  7. 持续集成之应用容器化及自动化部署
  8. 收藏 | 彻底搞懂机器学习中的正则化
  9. one hot 编码的实现
  10. XE7 Unit scope names
  11. 12.卷2(进程间通信)---共享内存区介绍
  12. 二叉树的前中后序遍历的三种实现(java)以及一些小习题
  13. 微信小程序名片版需要服务器吗,【微信小程序】壹脉智能名片小程序源码V3.5.0+前端+后端+无插件【包更新】...
  14. 微信新功能曝光:定时发送消息
  15. 3.1 使用ZIO测试,写一些简单的程序
  16. 直律云所——让法律变得简单
  17. 【java】高尔顿瓶
  18. 我的运动、通勤好搭档,南卡Runner Pro 4骨传导耳机深度测评
  19. 华为交换机常用命令大全
  20. 瓦片地图面面观之投影

热门文章

  1. android mvp 作用,Android MVP与MVC的区别和理解
  2. android tab 点击,TabLayout.Tab点击事件
  3. oracle nowday,Java MonthDay now()用法及代码示例
  4. Fliptile(状压+思维)
  5. 小程序开发学习(5)---实现天气预报小程序
  6. 高级语言程序设计(c )试卷,《高级语言程序设计C》试卷
  7. java架构分层_java分层架构概念
  8. 局域网屏幕共享软件 推荐_局域网共享软件,详细教您局域网共享软件如何使用...
  9. solr定时实时重建索引和增量更新
  10. 理解奈奎斯特定理和香农定理