web-dev-qa-db-ja.com

Safari Webインスペクターが切断し続ける

IPadでSafari 8.0.6 with iOS 8.を使用しているとき、Mac(10.10.3)でWeb Inspectorを使用してデバッグしています接続は切断され続けます(切断時に[開発]メニューにデバイス名が表示されません)が、safariを終了してから再起動すると再開でき、更新してリモートで再度検査することができます。

45
user2727195

試してみることがいくつかあります。

1. Xcodeシミュレーターでテストします。

XcodeでiPhoneシミュレーターを開き、Safari Web Inspectorでデバッグします。

Sidenote:たぶん Safari Technology Preview をダウンロードする必要があります

2.デバイスの場所とプライバシー設定をリセットします。

設定>一般>リセット>場所とプライバシーのリセット

3.実デバイスでのデバッグ

この構成では、すぐに動作するようです。

iPhone X、iOSバージョン12.1.3 macOS Mojaveバージョン10.14.2(18C54)Safariバージョン12.0.2(14606.3.4)

2019.08.13を編集

[設定]-> [Safari]-> [詳細]-> [ウェブ情報]がオンになっていることを確認します。

突然オフになり、Web Inspector経由で接続できませんでした。切り替えた後、動作しました。

他のデバイス/バージョンについては、さらに読んでください(ビルドサイズを減らすことができるかもしれません)。


編集:2018.09.20

@Chetが見つけた、Webインスペクターは大きすぎるJSファイルとマップファイルを切断し続けます

https://stackoverflow.com/a/52338231/4641479

Githubの問題:

https://github.com/google/ios-webkit-debug-proxy/issues/275

https://github.com/google/ios-webkit-debug-proxy/issues/274

実稼働ビルド(1.8 MB + 2.4 MBファイル)で実際のデバイスでこれを確認できましたが、Safari Web Inspectorは常に接続されたままです。

enter image description here

開発ビルドの場合:

enter image description here


Webインスペクターが機能することはほとんどありませんでした。サファリの更新後、Webインスペクターはすぐに開閉します。このような問題が発生した場合..

これは動作します:

ステップ1.最新のSafariブラウザーを入手する

Safari:11.1(12605.1.33.1.2)

https://developer.Apple.com/safari/download

macOS SierraおよびOS X El Capitan(macOS High Sierraもサポートされていると思います)

Safari Technology Preview をダウンロードする必要があるかもしれません


ステップ2.場所とプライバシー設定をリセットします

デバイスで次にアクセスします。

設定>一般>リセット>場所とプライバシーのリセット

ソース: https://forums.developer.Apple.com/thread/87181


ステップ3.デバイスを接続する

OS XでSafariを開くiPhoneデバイスをUSBケーブルで接続していた場合は、まず切断します。今すぐ差し込みます。

OS X Safariの場合:

開発>デバイス名>開発の申請

今、あなたの電話には許可の質問があります。信頼を選択すると、デバイスの開いているタブを選択してサファリとデバッグを行うことができます。


ハッピーデバッグ!

これで、Webインスペクターは接続されたままになります。

39
Stefan Rein

ここにリストされている答えのほとんどはしばらくの間私のために働いたが、数時間後に彼らはまた動作を停止し、私のSafariウェブコンソールは開いたときに再び切断し続ける。

私のために働いた他のいくつかのオプション:

オプション1-Safariから空のキャッシュ

Safari on MacOS -> Develop -> Empty Cache

オプション2-信頼済みコンピューターの消去

On iOS Device -> Settings -> Developer -> Clear Trusted Computersその後、USBケーブルを再接続し、デバッグを再試行します

オプション3-デバッガーをバカにする(2019年1月14日現在)

このソリューションは現在長い間機能しています。これはiOSとMac間の接続に関連する問題であるため、Consoleアプリを開き、iPhoneを選択したままにしました。 (これにより、iOSデバイスがMacに接続されたままになります)

その後、Safariで開発者用コンソールを開くと、切断せずに問題なく機能しました。

11

奇妙に聞こえますが、バッテリーがいっぱいになると切断が発生する可能性があります。 https://forums.developer.Apple.com/thread/9229

Iphoneのバッテリーがいっぱいになると、切断が発生するようです。 (そのため、今のところ、フラッシュとカメラをオンにして、検査中にバッテリーを殺します...)

8
David Wheaton

IPhoneで実行されている多くのバックグラウンドアプリがありますか?それらを殺してもう一度やり直してください。

この問題をWWDCのApple開発者に示しましたが、iPhoneのメモリの制約によるものと疑われていました。

5
Rego Sen

これは物理デバイスにのみ必要です。デバイスのバッテリーがいっぱいになると、Safariによって物理デバイスが強制的に切断されます。 (「フルバッテリーですか?それでは、もう充電する必要がないので、切断してみましょう。デバッグセッションも行われます...」)

Develop > [device] Connect via Network を選択し、デバッグしたいページにデバッガーをアタッチします。 Safariに Develop メニューがない場合は、Safari > Preferences > Advancedに移動し、メニューバーに[Develop]メニューを表示を選択します。

enter image description here

これが機能しない場合は、最初にApp StoreからOS/Safariをアップグレードしてみてください。

still が壊れている場合は、iOSデバイスを取り外します。 iOSデバイスの[設定]> [Safari]> [Webインスペクター]に移動し、オフにしてから再びオンにします。 Safariを強制終了します。 iOSデバイスを再接続し、Safariを再度起動して、Safari>開発メニューからiOSデバイスを再接続します。

5
Zac

解決策があるとは言えませんが、正しい方向への一歩です。

ios-webkit-debug-proxy を使用してみたので、Safari Dev Toolsの代わりにChrome Dev Toolsを使用できます。

それを機能させるために、iOSを最新の11.4.1およびMacOS 10.13.65にアップグレードしてから、最新バージョンを再インストールすることができます。

brew update
brew install ios-webkit-debug-proxy
brew reinstall --HEAD libimobiledevice
brew reinstall -s ios-webkit-debug-proxy

ios_webkit_debug_proxy

ios_webkit_debug_proxyを実行した後、chrome://inspectを介して接続を試みることができ、すぐに再び切断されました。

Listing devices on :9221
Connected :9222 to Chet's Phone (6a028994cf281be807bf80c5557c3f2eb3fbb8b0)
Invalid packet header 0x1ffffff91ffffffa0ffffff9d == .... == 26321053
Disconnected :9222 from Chet's Phone (6a028994cf281be807bf80c5557c3f2eb3fbb8b0)

しかし、手がかりがあります! Invalid packet header。どこかに低レベルのバグのように聞こえます。これをどこに送信するかわからないが...

2
Chet

魔法の解決策は私のために働いた:

1)MACを再起動します
2)Iphoneを再起動します
3)動作します

1
olllejik

MacOS Mojave/Catalinaソリューション

私にとって、この問題は新しいmacOS Mojaveにアップグレードした直後に始まりました。これは上記のどこかで言及されたかもしれませんが、私にとってはMojave用に構築された新しい「Safari Technology Preview」アプリをダウンロードするだけでした。

Safariダウンロードページ

https://developer.Apple.com/safari/download/

Mojaveの直接ダウンロード

https://secure-appldnld.Apple.com/STP/041-71285-20190604-6d0dcb17-07e5-40a0-b418-dba732cefe64/SafariTechnologyPreview.dmg

1
Asleepace

これは非常に一貫性のない振る舞いで私を長い間悩ませていました、ここに私が助けになることがわかったいくつかの事柄があります、私はこれに関するブログ投稿も書きました here

  1. Mac safariとiosの両方を更新します-両方のバージョンの最新版が動作し始めた後、Safariの間にデバッグの非互換性がある可能性があります。

  2. IOSのWebインスペクターが有効になっていることを確認します-アップグレード後にこの設定をオフにできることがわかっています。設定> safari>詳細> Webインスペクターで確認してください。

  3. 接続しているポートを確認してください-私は安価なハブに接続しました/ Appleキーボード/モニターハブを使用しており、Macに直接接続するとはるかにうまくいくことがわかりました。

  4. 良質のケーブルを使用していますか? -磨耗していない高品質/公式ケーブルは、デバッグ時の信頼性が高いことがわかりました。

  5. 他の注目すべき観察-Cookieがサファリで有効になっていることを確認し、プライベートモードを有効にし、Xcodeが開いているときに試してみると、この信頼性に影響があるとコメントしています.

1
lindstrom1989

最新のSafariテクノロジープレビューは、私にとってそれを解決したようです。

https://developer.Apple.com/safari/technology-preview/

0
Miles Alden

すでにたくさんの答えがあることは知っていますが、今は誰も役に立たなかったので投稿したかったです。しかし、私の携帯電話のバッテリーは「低モード」でした...しかし、開発のために接続しているので、それは大したことではないと思いました。しかし、携帯電話の設定に入り、低バッテリーモードをオフにすると、問題が解決しました。現在、サファリは切断されません。

誰かがバッテリー不足でこれに遭遇した場合に備えて、それを投稿したかっただけです。

0
TheTC

XCodeを閉じることが最初に役立ちました。

0
S. Roose