V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
moodasmood
V2EX  ›  Android

android 如何后台截屏?

  •  
  •   moodasmood · 2019-05-12 15:22:14 +08:00 · 11441 次点击
    这是一个创建于 2031 天前的主题,其中的信息可能已经有所发展或是发生改变。

    手机已经获取 root 权限了,尝试调用系统命令截屏 os = Runtime.getRuntime().exec("su").getOutputStream(); os.write(cmd.getBytes()); os.flush(); 这样确实拿到图片了,但是在安卓里面打开是黑的,在电脑上打开能看,安卓里面用 opencv 打开,尺寸是 0*0

    有没有大佬知道后台截屏有什么好的实现方案?另外,我截屏最好不保存磁盘,我程序里面还要对截屏图片进行处理,有办法吗?

    8 条回复    2019-05-13 10:53:58 +08:00
    Davidwg
        1
    Davidwg  
       2019-05-12 15:27:35 +08:00
    这能把 android 用户艹成什么样了
    chenoe
        2
    chenoe  
       2019-05-12 16:04:06 +08:00 via Android
    不能先保存再处理么
    qq292382270
        3
    qq292382270  
       2019-05-12 16:19:44 +08:00
    1.root 情况下可以用 "/system/bin/screencap -p filepath"获取截图. 执行成功后再读取到内存中, 然后删掉图片即可. 不过不建议.
    2.安卓 5.0+可以用 MediaProjectionManager 获取
    ZhangSanAleph
        4
    ZhangSanAleph  
       2019-05-12 16:43:25 +08:00
    可以用 screencap 截图,不需要 root,adb 进入手机就行。
    iwtbauh
        5
    iwtbauh  
       2019-05-12 20:41:57 +08:00 via Android
    @chenoe
    @qq292382270

    完全没有必要,输出到标准输出然后读就行了。写入闪存即慢( IO )又影响闪存寿命
    cuzfinal
        6
    cuzfinal  
       2019-05-13 10:23:46 +08:00
    你想干什么
    moodasmood
        7
    moodasmood  
    OP
       2019-05-13 10:53:25 +08:00
    @iwtbauh 能贴个 demo 吗,我尝试不输出到文件,但是拿不到返回
    moodasmood
        8
    moodasmood  
    OP
       2019-05-13 10:53:58 +08:00
    @cuzfinal 入坑手游,想自己写个挂机脚本而已。。。。按键精灵广告太多,不想用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1008 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 20:11 · PVG 04:11 · LAX 12:11 · JFK 15:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.