shizuku安装13.5.4版本是一款面向开发者的应用程序,能助力开发者在无需Root权限的情况下,对其应用程序进行调试与测试。该软件的推出,给开发者们带来了极大便利,让开发流程更为高效和顺畅。Shizuku兼容多种编程语言,像Java、Kotlin、Scala等都包含在内,满足了不同开发者的各类需求。
首先,我们要探讨应用程序对系统API的使用方式。打个比方,若应用程序希望获取已安装的应用列表,大家都清楚应当调用PackageManager#getInstalledPackages方法。这本质上是应用程序进程与系统服务器进程之间的进程间通信(IPC)过程,只不过Android框架已经帮我们处理好了底层的实现细节。
Android 用于binder执行这种类型的 IPC。Binder允许服务器端了解客户端的 uid 和 pid,以便系统服务器可以检查应用程序是否有权限执行该操作。
通常,如果有一个“管理器”(例如)供应用程序使用,则系统服务器进程中PackageManager应该有一个“服务”(例如)。我们可以简单地认为,如果应用程序持有“服务”的 ,它就可以与“服务”进行通信。应用程序进程将在启动时收到系统服务的绑定。PackageManagerServicebinder
Shizuku 会引导用户先用 root 或者 adb 运行一个进程 Shizuku server,当应用启动时,binder也会向应用发送 to Shizuku server 的消息。
Shizuku 提供的最重要的功能就像一个中间人,接收来自应用程序的请求,将其发送到系统服务器,并返回结果。您可以transactRemote在rikka.shizuku.server.ShizukuService类和moe.shizuku.api.ShizukuBinderWrer类中查看方法以了解详细信息。
这样,我们就达到了目的,使用权限更高的系统 API。而对于应用来说,这几乎和直接使用系统 API 是一样的。
借助Shizuku与Sam Helper调整安卓设备的分辨率
1、连好WIFI,打开shizuku,点开配对,要求通知那就点击打开。
2、在【配对】界面,点进开发者模式。
3、在【开发者选项界面】打开无线调试。
4、在【无线调试】界面点击使用配对码配对设备。
5、记下六位WLAN配对码。
6、下拉手机通知栏,输入六位配对码。
7、如果显示此页面,点开作者的网页。
8、找到自己的设备,回来按要求做就解决了。
9、打开samhelper的系统设置界面,修改屏幕分辨率,关闭锁定比例。
10、点击【始终允许】samhelper使用shizuku。
11、屏幕分辨率就修改好了。
无需Root权限:可以在没有Root权限的Android设备上运行,这使得开发者可以在任何一款Android设备上进行应用的调试和测试。
支持多种编程语言:支持Java、Kotlin、Scala等多种编程语言,满足了不同开发者的需求。
实时调试:可以实时监控应用程序的运行状态,帮助开发者快速定位和解决问题。
强大的兼容性:可以在各种版本的Android系统上运行,包括最新的Android 13.3版本。
简洁的用户界面:用户界面设计简洁明了,使得开发者可以快速上手并进行操作。
高效的性能:性能优秀,即使在处理大型应用程序时,也能保持流畅的运行。
提高开发效率:可以帮助开发者快速定位和解决问题,大大提高了开发效率。
节省时间和资源:由于Shizuku可以在没有Root权限的设备上运行,开发者无需为了调试而购买新的设备,从而节省了时间和资源。
提升应用质量:通过Shizuku的实时调试功能,开发者可以及时发现并修复应用程序的问题,从而提升应用的质量。
无法启动:这可能是由于设备的Android版本过低或者设备不兼容导致的,建议开发者升级设备的Android版本或者更换设备。
无法连接应用程序:这可能是由于应用程序的网络权限设置不正确导致的,建议开发者检查并修改应用程序的网络权限设置。
无法实时调试:这可能是因为开发者的电脑与设备之间的网络连接不稳定,建议开发者检查并优化网络环境。
适用于 Android 14 QPR 3 beta 2