問題タブ [android-looper]

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.

0 投票する
1 に答える
386 参照

android - E/AbstractTracker とは: Looper.prepare() を呼び出していないスレッド内でハンドラを作成できない?

私は過去にこの問題を抱えていましたが、IDE で実験しただけだったので、あまり考えていませんでした。ただし、新しいアプリケーションを作成したときにもエラーが表示されることに気付きました。独自のコードを追加していない場合でも、このエラーが発生します。この問題を解決するために助けていただければ幸いです。

これまでのところ、UI スレッドと非同期スレッドでメソッドを実行しようとしましたが、まだ運がありません。

エラー:

E/AbstractTracker: Looper.prepare() を呼び出していないスレッド内でハンドラーを作成できません

D/AppTracker: アプリ イベント: 停止

E/AbstractTracker: Looper.prepare() を呼び出していないスレッド内でハンドラーを作成できません

D/AppTracker: アプリ イベント: 開始

0 投票する
2 に答える
652 参照

android - 子スレッド生成ハンドラの役割は?

1.子スレッドでのハンドラーの作成に問題があります

お気に入り

上記のコードはクラッシュします。

2. メイン スレッドで ui を更新し、メイン スレッドでハンドラーを作成して作成し、子スレッドでメッセージをハンドラーに送信して Ui を更新することを知っています。

3.私の質問は、子スレッドで作成されたハンドラーの役割は何ですか? いつそれをする必要がありますか?シーンの使用は何ですか?

誰かが私の混乱を解決してくれることを願っています!</p>

0 投票する
1 に答える
622 参照

android-ndk - ALooper_pollAll が ALOOPER_POLL_TIMEOUT を返すのはいつですか?

対応するコールバックを持ついくつかのファイル記述子がルーパーに追加され、 ALooper_pollAll()が 1000 ミリ秒のタイムアウトで呼び出されると仮定しましょう。その後すぐに、いくつかのファイル記述子が利用可能になり、ルーパーはそれらに対してコールバックを呼び出し始めます。最後に呼び出されたコールバックが、ALooper_pollAllの開始から 200 ミリ秒経過した直後に終了したとします。さて、どちらの記述子にもデータがなくなった場合、関数はいつ ALOOPER_POLL_TIMEOUT を返すのでしょうか? 800ms (コールバックが終了した後の残りのタイムアウト時間) 後ですか、それとも 1000ms (初期タイムアウト) 後ですか?

0 投票する
1 に答える
541 参照

android - Looper クラスの loop() が複数回呼び出される理由

インテントを開始する単純なコードがありますが、デバッグするとさまざまなクラスを通過するため、これらのクラスが毎回呼び出される理由と、通常の実行に戻る前にどのようなタスクを実行しているのか疑問に思うことがよくあります。

ここに画像の説明を入力

その後、実行の制御はViewクラスに移行し、呼び出しますperformClick() ここに画像の説明を入力

その後、Handlerクラスに移動して呼び出しdispatchMessage(Message msg) ここに画像の説明を入力 、最後にloop()Looperクラスを何度も呼び出してから通常の流れに戻ります。 ここに画像の説明を入力 誰かがここで何が起こっているのか、なぜこの loop() が複数回呼び出されるのかを理解するのを手伝ってもらえますか?