Chrome 如何设置权限以在Android 12手机上的浏览器中打开本地文件?

juzqafwq  于 2023-05-11  发布在  Go
关注(0)|答案(1)|浏览(371)

如何设置权限以在Android 12手机上的浏览器中打开本地文件?
我女儿有一部谷歌Pixel 5/Fi手机,我也有一部Android手机。
在以前的Android版本中(例如9)你可以让Chrome打开本地文件,方法是进入设置>应用程序>Chrome>权限>并选择“存储”。
在Android 12中,如果您进入“设置”>“应用程序”>“Chrome”>“权限”,则该项目现在称为“文件和媒体”,并具有3个选项:
允许管理所有文件
仅允许访问介质
不允许
第一个选项做我想要的,就像Android 9中旧的“存储”选项一样。
除非此选项不在Chrome(或任何其他浏览器)的列表中。是否有更高级别的开关,例如:“允许浏览器访问所有文件”?
我猜这是某种沙盒保护,大多数人都希望默认为“仅允许访问媒体”。但是我确实希望Chrome访问本地文件。
我也可以在我的三星手机上重现这一点,但由于我女儿的Pixel手机(Pixel 5/Google Fi/Build SP2A.220505.002)完全是一个Google堆栈,我想我会指出这一点,以表明这不是其他供应商的问题。

rqmkfv5c

rqmkfv5c1#

在FF中有一个非常简单的解决方案。但不工作,在标准也不夜间播放建设现在。
但能够重用几年前的HTM页面与本地文件在FF:

about:configsecurity.fileuri.strict_origin_policy True -> False
(此处为https://dev.to/dengel29/loading-local-files-in-firefox-and-chrome-m9f
当前文件夹中的已知bin文件将通过相同的简单 AJAX 重新加载。

function load(n) {
    var oReq = new XMLHttpRequest();
    oReq.open("GET", n + ".bin", true);
    oReq.responseType = "arraybuffer";

    oReq.onloadend = function (oEvent) {
        var arrayBuffer = oReq.response;
        if (arrayBuffer) {
            bufs.push(arrayBuffer);
        }
        if(bufs.length == sl) {
            var any = false;
            for(var b in bufs) {
                if(bufs[b].byteLength) {
                    any = true;
                    process(bufs[b], pos);
                    delete bufs[b];
                }
            }
            if(any) ...
        }
    }
    oReq.send();
}

相关问题