Вопросы по расширению Safari

Я нахожусь в процессе создания моего первого расширения Safari - очень простого - но я столкнулся с парой проблем. Расширение сводится к одному внедренному сценарию, который пытается обойти встроенный обработчик каналов и перенаправить на http: // URI. Мои проблемы на данный момент имеют два аспекта:

«Белый список» работает не так, как я ожидал. Так как все каналы отображаются по протоколу «feed: //», я попытался зафиксировать это в белом списке как «feed: // * / *» (в чёрном списке ничего нет), но в итоге получаю запрос цикл, который я не могу понять. Если я установлючерный список значения "Http: // * / *" а также "https: // * / *"все работает как положено.Я не могу понять, как получить доступ к моим настройкам из моего скрипта. Скрипт создаетbeforeload обработчик событий, но не могу получить доступ к моим настройкам, используяsafari.extension.settings путь указан в документации.

Я не нашел ничего в документации Apple, чтобы указать, что настройки не должны быть доступны из моего скрипта. Поскольку расширения являются такой новой функцией, даже Google возвращает ограниченные релевантные результаты, и большинство из них из официальной документации.

Чего мне не хватает?

Благодарю.

ОБНОВИТЬ Поэтому я надеюсь, что документация неполная, потому что она ужасна, но я немного узнал о настройках. Оказывается, что из сценариев внедренияSafariExtensionSettings объект недоступен Сценарии инъекций имеют доступ только кSafariContentExtension объект (который вообще не полезен), но псевдоним точно таким же образом (safari.extension.settings) - плохая идея, ИМО. Как указано вдокументация по сценарию внедрения:

Важное замечание: Когда вы используете safari.extension из внедренного скрипта, вы не обращаетесь к классу SafariExtension. Вы обращаетесь к классу SafariContentExtension.

Вы должны использовать систему обмена сообщениями для общения с глобальным HTML-файлом, который имеет доступ к настройкам. Это немного странно, но у меня есть сообщение, отправленноеglobal.html файл, который извлекает настройки и отправит сообщение обратно в мой скрипт инъекции, как только я пойму, как это сделать.

Так как я делаю всю свою работу до загрузки документа, все методы, которые я нашел для отправки сообщенияназад полагаться на объект страницы, которого у меня нет.

Ответы на вопрос(4)

Ваш ответ на вопрос