Safari 웹 Extensions에서 iOS 15에서 기존 확장 기능을 사용하는 방법

3153 단어 iOSSafaritech

컨디션


개발 환경: macOS Monterey bata 12.0(public beta)
동작 환경: iOS 15.0beta(public beta)

조작하다


먼저 다음 웹 사이트에서 Xcode13bata를 설치해야 합니다.
https://developer.apple.com/support/beta-software/
Xcode를 설치한 후 다음 명령을 사용하십시오.
xcrun safari-web-extension-converter "/path/to/拡張機能のあるフォルダ"
기존 확장을 Safari용으로 변환합니다.
https://developer.apple.com/documentation/safariservices/safari_web_extensions/converting_a_web_extension_for_safari
명령을 실행하면 확장용 iOS 어플리케이션과 변환된 확장 기능을 확인할 수 있는 Xcode가 자동으로 열립니다.
그리고 사인 정보 등을 자신의 물건으로 집행하면 움직일 것이다.간단하네.

보태다


내가 막은 부분이지만 manifest.json 사파리와 다른 확장 기능이 다른 부분의 지원인 것 같고 제대로 설정되지 않으면 iOS 측의 확장 기능 설정이 켜지지 않을 것 같다.
다음 페이지에는 지원되지 않는 설정manifest.json과 Javascript API가 기재되어 있으니 확인해 보시기 바랍니다.
https://developer.apple.com/documentation/safariservices/safari_web_extensions/assessing_your_safari_web_extension_s_browser_compatibility
특히 주의해야 할 것은 backgroundpersistent부분은 여기에 설치하지 않았거나 사용했다는 것이다.
iOS 측 설정 > Safari > Extensions
의 확장 설정 섹션에서 다음 오류가 발생한 경우ERRORS FOR "アプリ名" Extension on iOS must have a non-persistent background page. manifest.jsonbackground 부분은 다음과 같이 변경해야 한다.
  "background": {
    "persistent": false,
    "scripts": [
      "scripts/background.js"
    ]
    ...
  },
소스 코드가 공개된 OSS 시스템의 확장 기능이 시작된 후의 느낌은 이 근처에서 수정하면 이동할 것 같다.
그나저나 adblocker 시스템에 관해서는 webRequest와 같은 통신 제어를 사용할 수 없기 때문에 일률적으로 움직이지 않아야 한다.webRequest에서 사용할 수 없는 크롬의 manifestV3가 확장된 기능을 따라 이동한다면(safari v14.X로 이동하면 Adgurd for Safari(Mac) 등으로 이동하면 움직이지만 작은 손이 먼저 바뀌면 잘 돌아가지 않습니다.)
나는 포크를 하고 싶다. OSS에 공헌해도 된다.
이상입니다.참고가 됐으면 좋겠어요.

좋은 웹페이지 즐겨찾기