2

電話ギャップ アプリを開発しており、Safari の Web インスペクターを使用してデバッグしています。このツールは非常に便利ですが、いくつかの非効率的なワークフローがあり、時間がかかっています。

  1. xCode で PhoneGap アプリを停止するたびに、Safari Web Inspector ウィンドウが自動的に閉じてしまい、変更を加えてアプリを再起動するたびにウィンドウを再度開く必要があります。

  2. コンソールで完全に読み取ることができる唯一の方法は、window.location.reload() を入力することです。ここでも、xCode で変更をデプロイするたびに、ワークフローにステップが追加されます。

Safari Web Inspector を開いたままにし、コンソールがアプリを自動的に監視するように設定する方法を知っている人はいますか?

4

3 に答える 3

5

リロードの問題を解決するために、デバッグ時に head セクションにこれを追加します。

<script>
  alert('connect your debugger, if you want')
</script>

アラートはすべての実行を停止します。つまり、(手動で、うーん) デバッガーに接続でき、何も見逃すことはありません。アラート ウィンドウで [OK] をクリックすると、実行が再開されます。

于 2014-10-01T01:05:43.513 に答える
3

私は同じ問題を抱えています。私はまだそれらを解決しておらず、時間がなくなったので、これまでに得たものをお見せします。

Web インスペクターを開く ActionScript を作成します。

https://gist.github.com/amuino/5649177 これはうまくいきます!

Xcodeで起動してください!アクションスクリプトを開くシェルスクリプトを作成しようとしましたが、役に立ちませんでした。これは私が持っているものです:

Xcode が iPhone アプリで codesign を実行した後にスクリプトを実行する方法は?

于 2014-01-07T19:51:36.353 に答える
0

実際、私はこの問題を回避する方法を見つけました。とてもエレガントではありませんが、機能します。

アプリのエントリ ポイントで、次のように setTimeout で遅延を追加しました。

setTimeout(function () {
    app.init();
}, 10000);

これにより、Safari Web Inspector を再度開くのに十分な時間 (10 秒) が与えられ、コンソール全体が読み出されます。

それは私に多くの頭痛を救った。

于 2014-04-22T18:42:12.887 に答える