首页
社区
课程
招聘
[求助]在root下app_process启动的java进程怎么获取context
2023-3-14 13:16 6598

[求助]在root下app_process启动的java进程怎么获取context

2023-3-14 13:16
6598

最近在写一个root下的服务进程 。本来想获取下设备的一些基础信息 。看到好多信息都是要拿到context才可以获取 。。但是用app_process启动的进程没有这个东西 。。有没有什么办法拿到这个呢。


[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

收藏
点赞1
打赏
分享
最新回复 (11)
雪    币: 478
活跃值: (1666)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
seeeseee 2023-3-14 13:39
2
0

只能拿一点点

https://github.com/Genymobile/scrcpy/blob/master/server/src/main/java/com/genymobile/scrcpy/Workarounds.java

最后于 2023-3-14 13:39 被seeeseee编辑 ,原因:
雪    币: 18
活跃值: (2069)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
Troy 1 2023-3-14 16:39
3
1
seeeseee 只能拿一点点https://github.com/Genymobile/scrcpy/blob/master/server/src/main/java/com/genymobile/scrcpy/Wo ...

感觉这个办法拿到过后 好多东西还是用不了 要异常。。

其实我主要是想拿到屏幕的分辨率 。但是自己并没有app。就一个root服务和app_process启动的服务。。很蛋疼。看了下scrcpy代码。感觉他获取分辨率都是通过adb传进来的参数。不知道是不是。

最后于 2023-3-14 18:07 被Troy编辑 ,原因:
雪    币: 1651
活跃值: (8461)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
你瞒我瞒 2023-3-15 09:53
4
0
你想要系统属性的信息,可以通过Runtime.exec方法执行getprop获取,包括上面说的分辨率
雪    币: 4527
活跃值: (1949)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hekes 2023-3-15 09:54
5
0
我也研究了几天,好像是拿不到的,反射调用也拿不到
雪    币: 478
活跃值: (1666)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
seeeseee 2023-3-15 10:49
6
0
Troy seeeseee 只能拿一点点https://github.com/Genymobile/scrcpy/blob/master/server/sr ...
所以我说只能拿一点点,很多东西是拿不到的。有root建议把自己注入到system_server或者Settings中去。
雪    币: 4527
活跃值: (1949)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hekes 2023-3-15 11:18
7
0
你瞒我瞒 你想要系统属性的信息,可以通过Runtime.exec方法执行getprop获取,包括上面说的分辨率
分辨率倒是可以通过反射获取到
雪    币: 18
活跃值: (2069)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
Troy 1 2023-3-15 13:11
8
0
其实我是想抓个图片。分辨率我抄scrcpy 反射android.hardware.display.DisplayManagerGlobal可以拿到了 。抓图手机屏幕过后。。Bitmap 我要传走。转换成2进制bmp.compress(Bitmap.CompressFormat.PNG, 100, stream); 这一句居然执行了1秒 。什么情况。我记得现在的CPU 抓屏到把数据传走也就毫秒级的 。这个玩意这么慢么。
雪    币: 239
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
t1n9 2023-3-15 15:32
9
0
Troy 其实我是想抓个图片。分辨率我抄scrcpy 反射android.hardware.display.DisplayManagerGlobal可以拿到了 。抓图手机屏幕过后。。Bitmap 我要传走。转换 ...
shell执行 wm size 
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_ootltcss 2023-5-11 22:23
10
0
我做过一个跟楼主几乎完全一样的事情,甚至抄的也是scrcpy,传图片用内存映射就可以做到几十毫秒了。
但是我遇到那个代理进程我不知道怎么保活,在一些虚拟机上面经常被杀。如果楼主知道告诉我一下。
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_ootltcss 2023-5-11 22:40
11
0
seeeseee 所以我说只能拿一点点,很多东西是拿不到的。有root建议把自己注入到system_server或者Settings中去。[em_27]
老大能不能讲讲app_process启动的进程如何做保活
雪    币: 3330
活跃值: (1827)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
WindStormy 3 2023-5-13 16:20
12
0
1. 反射调用ActivityThread的getSystemContext获取到systemcontext;
2. 反射调用Context的createPackageContext方法,传入包名,获取到指定包的context对象
然后你就可以愉快的屏幕分辨率了。
游客
登录 | 注册 方可回帖
返回