我正在编写一个Chrome扩展程序,它会将自定义图像添加到网页中。我希望用户将所有图像放入"背景"文件夹,我希望我的扩展能够检索"背景"中的每个文件的文件名。 extensions文件夹中的目录。似乎没有办法在chrome扩展中执行此操作。当我尝试使用chrome fileSystem API时,我收到此错误:
There were warnings when trying to install this extension:
'fileSystem' is only allowed for packaged apps, but this is a extension.
我该怎么做?
答案 0 :(得分:4)
您可以使用chrome.runtime.getPackageDirectoryEntry
获取对您的扩展程序文件夹的只读访问权限,您可以使用HTML5 FileSystem API使用该文件夹。
然而,这不允许你做你想做的事。
在您开发扩展程序时,它会正常运行,因为Chrome不介意更改扩展程序的文件夹 - 它们是预期的。
但是,当扩展程序部署到用户时,Chrome将维护扩展文件夹内容的加密哈希值。如果对文件进行任何外部修改,则扩展名被视为已泄露并被强制禁用。
所以你应该考虑其他方法,例如:
blob:
中的data:
/ chrome.storage
个URI;