android的root权限问题

原创 2012年03月22日 14:12:12

  今天终于把android的apk正常调用/sys下的bind与unbind。

  现象:

    插入鼠标后,会在/sys下面生成一个usb设备,其中就会有unbind与unbind。由于项目中需要走自己的usb采集,因此要用到绑定与解绑定。自己写的测试程序,可以正常绑定与解绑定,但是apk调用测试程序后就会出现解绑定失败。

  分析过程:

    出现这种现象,人的第一反应就会认为是android的apk的权限问题,我也是这么认为的。

    因此我尝试了以下几种办法:

    1,在java代码中加入chmod 的命令,具体见我的博客。

    2,在android的工程中,修改xml的uses-permission android::name所对应的属性。

    3,修改init.rc

    4,修改sdk下面的build/core/main.mk,把其中的ro.seure修改为0,还有persist修改为1。详细见我的另一篇博客。

    但是这几种办法都没有成功。

    我之后就/sys所生成的usb设备下查看unbind属性,发现其属性为-w- --- ---,因此我就chmod 777 bind,使其为777属性,发现apk可以正常调用其属性。

    唉,这时候其实才解决了问题的一半,因为在终端输入命令不能从根本上解决这个问题,我们不可能让用户在终端输入命令。

    之后正常思维就是在jni的C代码中加入system("chmod *****");*****是我要修改的属性。又回到了起点,脱离apk的test代码可以成功,但是通过apk调用的test,无法修改其属性。

    人生无常,但要锲而不舍才能自强不息。

    system无法正常使用,我就又想到了方法四,但是试试了不行。

    这时候我就跳出去想,应该与驱动有关系,而与android没有关系,因为usb驱动生成的bind与unbind属性为-w- --- --- ,这时候为什么不修改驱动文件,使其生成时就是777属性呢?

    经过修改尝试,发现成功。修改文件为kernel/drivers/base/bus.c文件中的

          static DRIVER_ATTR(unbind, 0777, NULL, driver_unbind);

    static DRIVER_ATTR(bind, 0777, NULL, driver_bind);

    至此问题彻底解决。


Android系统system用户权限和root权限的获取

在Android系统中,系统为每一个应用程序(apk)创建了一个用户和组。这个用户和组都是受限用户,不能访问系统的数据,只能访问自己的文件和目录,当然它也不能访问其他应用程序的数据。这样设计可以尽可能...
  • koozxcv
  • koozxcv
  • 2016年03月10日 15:56
  • 12870

android下dev设备的权限问题

目录(?)[-] initrcdevicecinitc本节小结 转自:http://blog.csdn.net/yiyaaixuexi/article/details/6803...
  • richu123
  • richu123
  • 2016年04月20日 20:54
  • 3531

【Android】—— DDMS开发工具获取ROOT权限查看手机文件、导出数据库文件等

在这之前首先手机要打开ROOT权限,可以借助安卓刷机精灵等一键ROOT软件 其次像魅族、小米等手机拿到ROOT以后不能执行su命令,所以无法给手机中的文件授权,需要下载一个SuperSU权限管理器 ...
  • u012386696
  • u012386696
  • 2016年07月26日 16:37
  • 1950

[Android开发常见问题-4] RunTime.exec()如何以root权限执行多条指令?

RunTime.exec()这个接口可以说是给我们开发者提供了一个很好的直观操作底层操作系统的机会,但是这个接口的使用还有很多需要注意的问题。由于要完整的介绍这个接口需要较大的篇幅,我在这里只针对一点...
  • shishengshi
  • shishengshi
  • 2013年06月22日 15:39
  • 11288

关于前篇Android编程获取root权限问题的最终解决与分析 .

为了方便给出前一篇地址:http://blog.csdn.net/weiyirong/article/details/7380651  调了几天这个root权限获取问题终于搞定了,各种百度谷歌,各种方...
  • weiyirong
  • weiyirong
  • 2012年03月27日 18:59
  • 5448

Android编程获取root权限问题

为了方便给出前一篇地址:http://blog.csdn.net/weiyirong/article/details/7380651  调了几天这个root权限获取问题终于搞定了,各种百度谷歌,各种方...
  • l241002209
  • l241002209
  • 2012年03月31日 11:41
  • 1112

Android程序获取root权限问题的最终解决与分析

为了方便给出上一篇上一篇地址:  http://blog.csdn.net/up1up2up3/article/details/7380651,调了几天这个root权限获取问题终于搞定了,各种百度谷歌...
  • weiyirong
  • weiyirong
  • 2012年07月23日 16:16
  • 7240

Android 6.0 ROOT 后部分程序无法检测 ROOT 权限问题

Android 6.0 部分程序在使用第三方 Recovery 刷入 SuperSU 后,提示授权通过 SuperSU APP 允许后还是无法获取 ROOT 权限。 例如 SELinuxModeCha...
  • maxsky
  • maxsky
  • 2017年02月26日 13:32
  • 909

Android手机root权限必用命令

  • 2012年10月20日 09:47
  • 79KB
  • 下载

Android上获得系统root权限的方法

  • 2013年10月09日 09:57
  • 46KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android的root权限问题
举报原因:
原因补充:

(最多只允许输入30个字)