#google-chrome-extension
#google-chrome-расширение
Вопрос:
Я создаю расширение, которое может сохранять все текущие вкладки, когда пользователь нажимает на кнопку «сохранить этот сеанс». Вызов функции запускает этот код:
// Go through all tabs in current window
chrome.tabs.query({ currentWindow: true }, function (tabs) {
// Iterate through each tab
tabs.forEach(function (tab) {
// Gets tab.url, tab.title, tab.favIconURL
});
});
Я больше нигде не вызываю эту функцию, и она запускается ТОЛЬКО жестом пользователя. В SO есть похожие вопросы, но они четко не объясняют, почему при запросе разрешений на вкладки отображается предупреждение «Прочитать историю посещенных страниц», когда в их документации четко указано, что он должен показывать «Доступ к вашим вкладкам и активность в браузере», что имеет гораздо больше смысла.
Если бы мне пришлось установить расширение, которое должно сохранять мои вкладки, но вместо этого запрашивает чтение моей истории посещенных страниц, я бы ему вообще не доверял. Как я могу завоевать доверие пользователей? Есть ли другой способ обойти это?
Даже если я удалю весь chrome.tabs
код или использую chrome.windows
вместо него, я все равно получаю это предупреждение. Может ли быть так, что у них есть ошибка, и она показывает неправильное предупреждающее сообщение?
Заранее спасибо за ваше время.
Ответ №1:
Цитирование https://developer.chrome.com/extensions/permission_warnings какой правильный URL-адрес:
«вкладки»: чтение истории посещенных страниц
Технически это разрешение позволяет просматривать историю через chrome.tabs.onUpdated, но не читать ранее существующую историю, поэтому формулировка, строго говоря, не совсем корректна.
Что касается пользовательского жеста activeTab, он предоставляет доступ только к вкладке, на которой произошел жест, а не ко всем вкладкам.
Комментарии:
1. Я не знаю, как я оказался на «appspot.com » документация, я предполагаю, что это были старые документы, потому что они перенаправляют на cloud.google.com . Спасибо, что указали мне правильные. Похоже, что обойти это невозможно, верно? Лучший вариант — заранее четко предупредить пользователя и, возможно, даже открыть исходный код my code для тех, кто хочет быть более уверенным.
2. Да, объяснение всех используемых разрешений в настоящее время является довольно распространенным явлением для расширения readme.