Я использую browser.runtime.setUninstallURL в моем расширении Firefox. Однако я обнаружил проблему, когда это расширение работает на Android. В Windows Firefox открывает новую вкладку с указанным URL, загруженным для меня. Но в Android Firefox не открывает новую вкладку при удалении моего расширения.
Я упростил свой код background.js до следующего:
function onSetURL() {
console.log("set uninstall URL");
}
function onError(error) {
console.log(`Error: ${error}`);
}
function handleInstalled(details) {
var settingUrl = browser.runtime.setUninstallURL('http://www.google.com');
settingUrl.then(onSetURL, onError);
}
browser.runtime.onInstalled.addListener(handleInstalled);
Редактировать: добавить manifest.json
{
"name": "Firefox T",
"description": "Firefox T.1.0",
"version": "1.0",
"manifest_version": 2,
"developer": {
"name": "firefoxt@firefoxt.firefoxt"
},
"applications": {
"gecko": {
"id": "firefoxt@firefoxt.firefoxt",
"strict_min_version": "58.0"
}
},
"browser_action": {
"default_title": "Firefox T.1.0"
},
"background": {
"scripts": ["background.js"]
},
"permissions":["<all_urls>","http://*/*","https://*/*","webNavigation","webRequest","webRequestBlocking","cookies","tabs","activeTab","storage","management"]
}
Затем подписал его на AMO и протестировал на Windows и Android. В Windows все работает как положено. Я нашел проблему только на Android.
Я даже пытаюсь использовать WebIDE, чтобы увидеть, запускается ли onSetURL () во время установки. Я удалю его менее чем через минуту. Я нашел следующий журнал в WebIDE и консоли браузера.