adb 用shell push 把一个native文件放到了/data/什么的目录下面。
然后又用shell chomd 0777 提升了native的权限。最后再shart 了native我现在是想有没有什么方法 我把这个native添加到一个APP里面打包成一个APK。然后在手机上安装APK后。 让应用程序执行 adb执行的那些动作我的想法是 可不可以在manifest.xml里面配置一些东东。然后让APP具有一定的权限能把native放到/data/下,然后提升他的权限成0777,在运行他。

解决方案 »

  1.   

    哥们,你滴想法很好,但是唯一的问题是APP不可能有权限把native放到/data/目录下,除非别个手机root了,而你的程序也获得了root权限。
      

  2.   

    native本身的777权限毛用没用...
      

  3.   

    多谢各位。。
    777只是可执行权限吧。 关键是要放到/data下面。
    我现在想是不是可以搞一个so库文件。然后APP去掉用。
    因为我是要去做抓屏的破事情去抓framebuffer。。
    吼吼。。
      

  4.   

    伙计,抓屏方面的我有一定研究,JNI方式基本不可行,除非你是做系统应用的
      

  5.   

    APP没权限搞这个的,除非root过
      

  6.   

    伙计,抓屏方面的我有一定研究,JNI方式基本不可行,除非你是做系统应用的哈哈,大哥我试过
    确实是不可行。/dev/graphics/fb0这个设备文件 一般来说是有root权限的APP是可写入读取的。
    其次是加入graphics组的用户是可以进行写入读取的。 其他用户是没有权限的。在manifest.xml里面设置读取FrameBuffer的权限会报不是系统APP不能获取。Android上面的权限这些限制太烦了。
    如果现在又人要做Android截屏传输到PC客户端。有一个可行的方法是,PC端调用ADB程序把fb0这个设备文件的权限改成其他用户可以进行读写操作。然后你就可以写一个native原生程序或者写一个SO库 去读取FrameBuffer了。
      

  7.   

    伙计,抓屏方面的我有一定研究,JNI方式基本不可行,除非你是做系统应用的哈哈,大哥我试过
    确实是不可行。/dev/graphics/fb0这个设备文件 一般来说是有root权限的APP是可写入读取的。
    其次是加入graphics组的用户是可以进行写入读取的。 其他用户是没有权限的。在manifest.xml里面设置读取FrameBuffer的权限会报不是系统APP不能获取。Android上面的权限这些限制太烦了。
    如果现在又人要做Android截屏传输到PC客户端。有一个可行的方法是,PC端调用ADB程序把fb0这个设备文件的权限改成其他用户可以进行读写操作。然后你就可以写一个native原生程序或者写一个SO库 去读取FrameBuffer了。
    “PC端调用ADB程序把fb0这个设备文件的权限改成其他用户可以进行读写操作”兄弟,这个可以实现吗?能否指点一二?