上一篇文章写了利用Termux来启动Shizuku,比较繁琐,有些人用起来不方便或者出错导致无法启动Shizuku,今天有一点点点的空闲时间.来处理这么问题,并且得到一个更有效的解决方案.但还是需要改包,不过这里我已经修改好了.
公众号聊天界面回复 "shizuku" 即可获取下载链接.
如果您不放心我修改的安装包,请按照下面的方法自行修改一下即可使用了
修改方法:
<activity android:label="@string/0_resource_name_obfuscated_RES_2131820740"
android:name="moe.shizuku.manager.starter.StarterActivity"
android:exported="true" />
6. 编辑完成,保存退出,这里会提示你文件已被修改,是否更新, 选择确定
7. 最后,会生成一个新的apk包, 给这个包进行签名后安装,就完工了.
**最重要的一步: ** 别忘记了给手机开启无线ADB的功能, 手机连上数据线,电脑命令行中输入: adb tcpip 5555 这个端口你可以随意指定,最好是比5555大.
准备好了以后,上代码
Autojs Code
//adb tcpip 5555 这条命令你设置的什么端口,下面的5555就用什么端口
var port = new java.lang.Integer(5555)
app.startActivity({
packageName : "moe.shizuku.privileged.api",
className : "moe.shizuku.manager.starter.StarterActivity",
extras : {
"moe.shizuku.manager.extra.HOST" : "localhost",
"moe.shizuku.manager.extra.PORT" : new java.lang.Integer(5555),
"moe.shizuku.manager.extra.IS_ROOT" : false
},
// root : true
})
Android Code
intent = new Intent();
intent.setClassName("moe.shizuku.privileged.api", "moe.shizuku.manager.starter.StarterActivity");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("moe.shizuku.manager.extra.HOST", "localhost");
intent.putExtra("moe.shizuku.manager.extra.PORT", new java.lang.Integer(5555));
intent.putExtra("moe.shizuku.manager.extra.IS_ROOT", false);
context.startActivity(intent);
Shell Code
am start -n moe.shizuku.privileged.api/moe.shizuku.manager.starter.StarterActivity \\
--es moe.shizuku.manager.extra.HOST localhost \\
--ei moe.shizuku.manager.extra.PORT 5555 \\
--ez moe.shizuku.manager.extra.IS_ROOT false
shell的方式无法启动 , 我已经使用--ei 来指定PORT的值为 int类型了,但传入进去后,shizuku接收intent的方法依旧识别为未知参数,然后指定一个0端口(可能必须是Integer类型,它才能识别为正确的吧)...这就有点蛋疼了.我觉得他这里应该指定 5555位默认端口,而不是0.
全部0条评论
快来发表一下你的评论吧 !