gpt4 book ai didi

java - 授予 Android 应用程序 (.apk) 文件根访问权限

转载 作者:行者123 更新时间:2023-11-30 02:17:00 24 4
gpt4 key购买 nike

我开发的应用程序在其中执行需要 root 访问权限的命令。

我也使用 java Process 来执行命令,但它也不起作用。

为此,我使用了使用 JNI ( NDK ) 的 c api,但它也没有 root 访问权限。因为它与应用程序具有相同的权限。

我的设备作为 root 访问权限,这就是它在 adb shell 中执行命令的原因。但不是来自应用程序。

有没有办法给应用程序root权限?

请给出解决方案...

最佳答案

用于授予应用程序系统权限。

您需要使用平台签名对应用程序进行签名。您需要使用位于 <root-of-android-source-tree>/build/target/product/security/ 中的 key 并添加 android:sharedUserId="android.uid.system"在您的 AndroidManifest.xml 文件中。

步骤:

sign application with the platform certificate and run it with the system sharedUserId. These are the steps:

  • Build and flash to your Dream your own Android using http://source.android.com/documentation/building-for-dream. Use the mkkey.sh script on http://pdk.android.com/online-pdk/guide/release_keys.html to create new certificates, including x509 certificates before you do 'make'.
  • In the AndroidManifest.xml of your application: under the <manifest> element, add the attribute android:sharedUserId="android.uid.system".
  • Export an unsigned version of your Android application using Eclipse: right-click on the project >> Android Tools >> Export Unsigned Application Package.
  • Use <root-of-android-source-tree>/out/host/<your-host>/framework/signapk.jar to sign your app using platform.x509.pem and platform.pk8 in <root-of-android-source-tree>/build/target/product/security generated earlier:

    java -jar signapk.jar platform.x509.pem platform.pk8 YourApp-unsigned.apk YourApp-signed.apk.
  • Install the app to your device:

    adb install YourApp-signed.apk
  • Run your app
  • Use adb shell ps to confirm that your app is running as system.

关于java - 授予 Android 应用程序 (.apk) 文件根访问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29138454/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com