【问题标题】:Android Screenshot and Screencap PermissionsAndroid 截图和截图权限
【发布时间】:2013-07-21 15:27:00
【问题描述】:

我正在尝试通过以 root 身份登录的 adb 截屏,但出现“Permission Denied”错误。

screenshot -i /sdcard/screen.png
error: writing file /sdcard/screen.png: Permission denied

但如果我使用 screencap 就可以了。

screencap -p /sdcard/screen.png

为什么会这样?

【问题讨论】:

    标签: android linux permissions screenshot adb


    【解决方案1】:

    根据source codescreenshot在写入文件之前将UID设置为AID_SHELL(shell用户):

    /* switch to non-root user and group */
    gid_t groups[] = { AID_LOG, AID_SDCARD_RW };
    setgroups(sizeof(groups)/sizeof(groups[0]), groups);
    setuid(AID_SHELL);
    
    png = fopen(outfile, "w");
    if (!png) {
        fprintf(stderr, "error: writing file %s: %s\n",
                outfile, strerror(errno));
        exit(1);
    }
    

    【讨论】:

      【解决方案2】:

      你只是修改目录'/sdcard'的属性

       chmod 777 /sdcard
      

      这适用于我的手机。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-02-11
        • 2017-06-26
        • 1970-01-01
        • 2011-06-11
        • 1970-01-01
        • 1970-01-01
        • 2017-10-04
        相关资源
        最近更新 更多