Что касается расширения chrome, API chrome.runtime.setUninstallURL действительно не работает должным образом.
Предполагается, что он срабатывает только один раз, когда пользователь удаляет расширение Chrome. Но, в моем случае, это срабатывает в трех контекстах, таких как:
Когда хромовое расширение устанавливается впервые
Когда я отключаю расширение, а затем снова включаю его
Когда пользователь удаляет его вручную.
Здесь допустим только контекст 3, остальные 1 и 2 неверны.
Ожидаемое поведение заключается в том, что оно должно срабатывать только один раз, когда пользователь явно удаляет расширение chrome, но определенно не при первой установке или когда пользователь выполняет операции включения и выключения.
FYI:
window.navigator.userAgent => "Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit / 537.36 (KHTML, как Gecko) Chrome / 73.0.3683.103 Safari / 537.36
Пожалуйста, дайте мне знать, если кто-нибудь сталкивался с подобной проблемой и любым решением.
Также сообщается в https://bugs.chromium.org/p/chromium/issues/detail?id=956962
Спасибо