問題タブ [safari-app-extension]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xcode - Safari アプリ拡張機能が 2 回目に読み込まれない
Safari アプリの拡張機能を 2 回目に実行すると、Safari に表示されないという奇妙な問題が発生しています。
- Xcode を開きます。
- 新規 > プロジェクト。
- [その他] で、[Safari 拡張アプリ] を選択し、[次へ] をクリックします。
- この「商品名」画面に好きなように入力し、「次へ」をクリックします。
- 「作成」をクリックします。
- Xcode の左上にある再生アイコンをクリックして、プロジェクトを実行します。
- 下部に「Safari拡張機能設定で開く」というテキストが表示された単一のボタンがある小さなアプリが開きます。
- おそらく現れないでしょう。その場合は、10 にスキップします。
- Safari のタイトル メニューで [開発] に移動し、[署名されていない拡張機能を許可する] をクリックします。
- 表示されたら、チェックボックスをオンにして有効にします。
- 左上の停止アイコンをクリックして、Xcode の実行を停止します。
SFSafariWebsiteAccess.Level
「一部」から「すべて」に変更するなど、プラグインの Info.plist の値を変更します。- Xcode で再生アイコンをクリックします。
- Safari は、拡張機能のアクセス許可が変更されたことを通知します。これらの変更を承認すると、拡張機能は表示されなくなります。
他の値を変更しても同じことが起こります。拡張コードと設定を完全に変更しないままにしておくと、問題は発生しません。しかし、値を変更するとすぐに、それらの設定を元に戻しても完全に壊れます。
これは、最新の Xcode を使用した 10.13 と 10.14 の 2 つの異なる Mac で発生します。
safari-app-extension - Safari アプリ拡張機能: 挿入されたスクリプトはアプリ バンドルからリソースをロードできますか?
ホスト ページにスクリプトを挿入する Safari アプリ拡張機能があります。その挿入されたスクリプトから、メインのアプリ バンドルから画像やスタイルシートなどのリソースを読み込むことは可能ですか? (つまり、2 つの間でメッセージを送信せずに、直接という意味です。)
javascript - POPOVER ツールバー アクションなしで SSO を safari-app-extension に実装する方法
SSO
で認証を行おうとしていsafari-app-extension
ます。そして、私が見つけた唯一の方法はWKWebView
、内部から安全な Cookie を作成して取得することです。しかし、2 つの問題があります。WKWebView
safari は Cookie ストレージを分離しているため、これは実際には SSO ではないことが最初にわかりました。2 つ目は、POPOVER の tollbar アイテム アクションは必要ありません (すべての UI はページ内で構成されます)。Safari ページから保護された Cookie を取得する方法はありますか? または、少なくとも条件付きでポップオーバーを呼び出す/呼び出さない方法はありますか? ブラウザーの Cookie がバックグラウンド部分と共有されていたため、古いサファリ拡張機能では同じ問題は発生しませんでした。