問題タブ [android-runonuithread]

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 投票する
2 に答える
101 参照

java - runInUiThread での setText の使用エラー

しばらく待ってから TextView のテキストを変更するスレッドが必要です。私の検索では、runOnUiThread の使用方法が見つかりました

最初の答えを理解してコードで使用しようとしましたが、スレッドで setText を呼び出すとエラーが発生します。

これが私のコードです(開始はボタンのonClick関数です):

これが私のエラーです

よろしくお願いいたします。

0 投票する
5 に答える
325 参照

android - AndroidでUIスレッドを長時間更新している場合に使用するもの

アクティビティに 1000 個を超えるボタンがあるプロジェクトがあります。データベースから色情報を取得した後、これらのボタンの背景色を更新しています。このプロセス全体は非常に大きなプロセスであり、アクティビティを読み込むのに 8 秒かかりました。そのために Asynctask を実装しましたが、「ビュー階層を作成した元のスレッドのみがそのビューに触れることができる」ため、問題はこの例外にあります。私の長い操作は、UI要素を更新している部分にあるためです

その後、UI要素を更新するためにUIthreadで実行されるスレッドを実装しました。これはその機能に従って正常に機能し、このスレッドはUIを更新しますが、アプリケーションを5〜6秒間スタックさせます。そして、その 5 ~ 6 秒間、進行状況ダイアログを実装することを考えました。しかし、runOnUiThread(new Runnable(){} で進行状況ダイアログを実装すると機能しません。UI の更新と進行状況ダイアログが同時に実行されるためです。進行状況ダイアログは数ミリ秒間点滅します。アクティビティはそれと同じままです。更新に時間がかかった場合、UI の更新に使用するかどうかはわかりません。

これは、データベースから ui 要素で更新するコードです。

どんな助けでも大歓迎です。ありがとう。!!

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

android - Android他のプロセスからアクティビティを終了する方法

A と B を呼び出すだけの別のアプリがあります。B からプロバイダー呼び出しを取得するときに、A でアクティビティを終了する必要があります。直接終了すると、アクティビティが終了しないことがあります。

PS: 呼び出しスレッドは B メイン UI スレッドからのもので、A UI スレッドの終了アクションを次のようなコードで処理しようとします。

しかし、コードも機能しRunnableません。

誰かが助けることができますか?

0 投票する
0 に答える
65 参照

java - asynctaskを実行しているJavaアンドロイド

他のデバイスからのデータを画面に表示する、変更された Bluetooth チャット プログラムがあります。arduinoを使用してデータを送信する場合、これはうまく機能します。画面に「EMPTYING」というメッセージが表示されると、それを検出して asynctask を実行する機能を追加したいと思いますが、機能させることができません。

データを取得して画面に表示する部分です。

`public void run() { byte[] buffer = new byte[1024]; int バイト;

これは、サーバーに ssh する部分です。

誰かヒントを教えてください。コードの最初の部分で ssh コードが見つからないのですか? :S

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

android - Android : runOnUiThread が機能しない、ユーザーが画面に触れると機能する

バックグラウンド スレッドで何らかの処理を行い、runOnUiThread() を使用して UI を更新したい場合、関数内のコードはエラーなしで正常に実行されますが、ユーザーが画面に触れた場合にのみ UI がレンダリングされます。それ以外の場合は、一貫してレンダリングされます。

画面に触れた後にのみレンダリングされるのはなぜですか?

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

java - runOnUIThread で looper.prepare() エラー メッセージが表示されるのはなぜですか

Libgdx ゲーム エンジンを使用する Android ゲームがあります。Libgdx の AndroidApplication クラスを拡張する Android アクティビティ (mAndroidLauncher) があります。Android アラート ダイアログを作成するメソッドがあります。

次のように、Google Play Developer Console でクラッシュが発生しました。

これは、アプリ内で AlertDialog を使用する唯一の場所です。そのため、これがクラッシュの原因であると確信しています。runOnUiThread でこのエラーが発生するのはなぜですか? AlertDialog がルーパーを使用してスレッドから構築されていることを確認するために、他に何かする必要がありますか?

編集: CommonsWare に感謝します。エラーは確かにGoogle Play Servicesから来ています. 具体的には、runOnUiThread() にラップされていない gameHelper.beginUserInitiatedSignIn() への呼び出しがありました。奇妙なことに、これはすべての電話でエラーを引き起こしませんでした

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

android - Android で通話アプリがタスク リスト (別名、概要画面) から削除された場合、通話アプリはどのように機能しますか?

以下がオーバービュー画面だということを知りました。

ここに画像の説明を入力

ダイヤラーをクリックして番号をダイヤルし、ダイヤラーを右にスワイプしました。

しかし、それでも電話はこのように続いています。

ここに画像の説明を入力

これはどのように行われますか?

私はAndroidプログラミングの初心者です。誤って殺されないように、バックグラウンドスレッドや別のサービスなどを使用したかどうかを考えています。これはどのように行われますか?

私を助けてください。ありがとう。