"файловая система" разрешена только для упакованных приложений, и это устаревшее упакованное приложение
мне нужно использовать разрешения файловой системы в манифесте.js, поэтому я могу читать / писать файлы из моего расширения Chrome.
когда я загружаю свое расширение с помощью кнопки "Загрузить распакованное расширение", Chrome отображает:
'fileSystem' is only allowed for packaged apps, and this is a legacy packaged app.
Итак, для Chrome мое расширение-это устаревшее упакованное приложение.
мой вопрос в том, как технически преобразовать "устаревшее упакованное приложение" в "упакованных приложений " таким образом, я могу проверить API файловой системы ?
вот мой манифест:
{
"name": "MyApp",
"version": "1.0",
"manifest_version": 2,
"app": {
"launch": {
"local_path": "index.html"
}
},
"icons": {
"128": "favicon.ico"
},
"permissions" : [
"fileSystem"
]
}
действительно, я уже использую "manifest_version": 2
.
2 ответов
упакованные приложения имеют другую структуру в разделе" приложение " манифеста. Ваш манифест.json будет что-то вроде:
{
"name": "MyApp",
"version": "1.0",
"manifest_version": 2,
"app": {
"background": {
"scripts": [
"main.js"
]
}
},
"icons": {
"128": "favicon.ico"
},
"permissions": [
"fileSystem"
]
}
и Вам также понадобится фоновый скрипт ("main.js" в этом примере), который открывает ваш индекс.html когда пользователь нажимает на значок приложения:
chrome.app.runtime.onLaunched.addListener(function() {
chrome.app.window.create('index.html', {
bounds: {
width: 500,
height: 300
}
});
});