Shizuku-API 项目使用教程

Shizuku-API 项目使用教程

Shizuku-APIThe API and the developer guide for Shizuku and Sui.项目地址:https://gitcode.com/gh_mirrors/sh/Shizuku-API

1. 项目的目录结构及介绍

Shizuku-API 项目的目录结构如下:

Shizuku-API/
├── api/
├── demo/
├── gradle/
│   └── wrapper/
├── provider/
├── rish/
├── server-shared/
├── shared/
├── .gitignore
├── LICENSE
├── README.md
├── build.gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── manifest.gradle
├── settings.gradle

目录介绍

  • api/: 包含 Shizuku API 的核心代码。
  • demo/: 包含示例应用程序的代码。
  • gradle/: 包含 Gradle 构建工具的配置文件。
  • provider/: 包含提供者的代码。
  • rish/: 包含 rish 相关的代码。
  • server-shared/: 包含服务器共享代码。
  • shared/: 包含共享代码。
  • .gitignore: Git 忽略文件。
  • LICENSE: 项目许可证。
  • README.md: 项目说明文档。
  • build.gradle: 项目的构建脚本。
  • gradle.properties: Gradle 属性文件。
  • gradlew: Gradle 包装器脚本(Unix)。
  • gradlew.bat: Gradle 包装器脚本(Windows)。
  • manifest.gradle: 清单文件配置。
  • settings.gradle: 项目设置文件。

2. 项目的启动文件介绍

Shizuku-API 项目的启动文件主要是 ShizukuService 类,位于 server-shared/src/main/java/moe/shizuku/server/ShizukuService.java。这个类是 Shizuku 服务的核心,负责处理来自应用程序的请求并将其转发到系统服务器。

ShizukuService 类介绍

  • ShizukuService: 这是 Shizuku 服务的主类,负责接收和处理应用程序的请求。
  • transactRemote 方法: 用于处理远程事务,将请求转发到系统服务器并返回结果。

3. 项目的配置文件介绍

Shizuku-API 项目的主要配置文件包括 build.gradlegradle.properties

build.gradle

build.gradle 是项目的构建脚本,包含项目的依赖、插件和其他构建配置。

// build.gradle 示例
plugins {
    id 'com.android.application'
}

dependencies {
    implementation 'dev.rikka:shizuku:12.0.0'
}

gradle.properties

gradle.properties 包含 Gradle 构建工具的属性配置,如版本号、编译选项等。

# gradle.properties 示例
shizuku_version=12.0.0

以上是 Shizuku-API 项目的基本使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望对您有所帮助!

Shizuku-APIThe API and the developer guide for Shizuku and Sui.项目地址:https://gitcode.com/gh_mirrors/sh/Shizuku-API

  • 11
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Shizuku 是一个 Android 上的 Root 权限管理工具,可以让用户以非特权用户身份运行需要 Root 权限的应用程序。在 Auto.js 中使用 Shizuku 可以让你的脚本获得 Root 权限,从而执行一些需要 Root 权限才能完成的操作。 以下是在 Auto.js 中使用 Shizuku 的步骤: 1. 在手机上安装 Shizuku。你可以从官方网站(https://shizuku.rikka.app/)下载 APK 文件并安装。 2. 在你的脚本中导入 shizuku 模块。你可以使用以下代码: ```javascript var shizuku = storages.create("shizuku"); var suProcess = null; var suOutputStream = null; var suInputStream = null; if (!shizuku.contains("service")) { shizuku.put("service", "shizuku"); } if (!shizuku.contains("package")) { shizuku.put("package", "moe.shizuku.privileged.api"); } if (!shizuku.contains("version")) { shizuku.put("version", 3); } var serviceIntent = new Intent(); serviceIntent.setComponent(new ComponentName(shizuku.get("package"), "moe.shizuku.api.ShizukuApiService")); serviceIntent.putExtra("version", shizuku.get("version")); context.startService(serviceIntent); while (!context.getSystemService("statusbar").expandNotificationsPanel()) { sleep(100); } var shizukuApi = null; while (shizukuApi == null) { shizukuApi = Java.use("moe.shizuku.api.ShizukuApi").getInstance(); sleep(100); } var suExecutor = shizukuApi.newProcessBuilder().command(["su"]).start(); suProcess = suExecutor.process(); suOutputStream = suProcess.getOutputStream(); suInputStream = suProcess.getInputStream(); function executeCommand(command) { suOutputStream.write(command.concat("\n").getBytes()); suOutputStream.flush(); var bufferedReader = new BufferedReader(new InputStreamReader(suInputStream)); var output = ""; while (true) { var line = bufferedReader.readLine(); if (line == null) { break; } output += line + "\n"; } return output; } ``` 3. 在你的脚本中使用 `executeCommand` 函数来执行需要 Root 权限的命令。例如,以下代码可以让你获取 /data/data/com.example.app 目录下的所有文件列表: ```javascript var result = executeCommand("ls /data/data/com.example.app"); toastLog(result); ``` 请注意,使用 Shizuku 需要你的手机已经获取了 Root 权限。此外,使用 Shizuku 执行命令的速度可能比直接在终端中执行要慢一些。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苏承根

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值