android Superuser.apk源码分析
发布日期:2021-06-29 15:28:13
浏览次数:2
分类:技术文章
本文共 966 字,大约阅读时间需要 3 分钟。
下载位置:
关于Superuser,这边分析一个接收su程序发送过来的广播以及处理过程
SuRequestReceiver 这个类进行处理的接收过程。(可直接去查看AndroidManifest.xml) onReceive里面进行判断,首先读取是否存储过,有默认选择。否则走到 showPrompt,这个函数启动了SuRequestActivity 界面。即是我们操作的对话框。 SuRequestActivity 这个类启动了对话框,通过 ((Button)findViewById(R.id.allow)).setOnClickListener(this); ((Button)findViewById(R.id.deny)).setOnClickListener(this); 注册了选择按钮的回调函数。 查看此类的onClick函数,我们来看 case R.id.allow: case R.id.pin_ok: 这个允许的操作。 执行sendResult语句,此语句里面 OutputStream os = mSocket.getOutputStream(); Log.i(TAG, "Sending result: " + resultCode + " for UID: " + mCallerUid); os.write(resultCode.getBytes("UTF-8")); os.flush(); os.close(); mSocket.close(); 向su创建的socket fd反馈结果。su的socket fd通过参数在onCreate里面可以看到。 onCreate里面的: String socketPath = intent.getStringExtra(SuRequestReceiver.EXTRA_SOCKET); 以及创建连接 mSocket = new LocalSocket(); mSocket.connect(new LocalSocketAddress(socketPath, LocalSocketAddress.Namespace.FILESYSTEM)); Credentials creds= mSocket.getPeerCredentials(); 分析完毕。转载地址:https://codegg.blog.csdn.net/article/details/9140267 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年05月01日 22时34分31秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
软件包应用分享|基于RT-Thread的百度语音识别(一)
2019-04-29
12月8日 RCEA - RT-Thread能力认证考试考前通知
2019-04-29
论坛热贴 | RT-Thread音频驱动开发(一)
2019-04-29
基于 Keil MDK 移植 RT-Thread Nano
2019-04-29
【报名截至今晚】12月14日深圳嵌入式与音频开发专题会议预告
2019-04-29
移植 RT-Thread Nano 到 RISC-V
2019-04-29
软件包应用分享|基于RT-Thread的百度语音识别(二)
2019-04-29
在 RT-Thread Nano 上添加控制台与 FinSH
2019-04-29
一站式开发工具:RT-Thread Studio 正式发布
2019-04-29
留言有礼|谢谢你悄悄点了小星星,让我们跃居GitHub RTOS Star榜第一
2019-04-29
功能更新!C 函数也能在 MicroPython 中被调用啦
2019-04-29
东软载波携ES32+RT-Thread走进海尔集团
2019-04-29
今晚8点直播预告:RT-Thread Studio等相关主题答疑
2019-04-29
物联网 20 年简史大揭秘!
2019-04-29
开源项目|RT-Thread 软件包应用作品:水墨屏桌面台历
2019-04-29
珠联璧合!基于i.MX RT和RT-Thread的物联网云接入方案
2019-04-29
基于RTT-MicroPython制作自带BGM的新型肺炎晴雨表
2019-04-29
开源项目|RT-Thread 软件包应用作品:小闹钟
2019-04-29