問題タブ [android-handler]

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 に答える
1681 参照

android - Androidで別のクラスからハンドラーを呼び出す方法は?

私のアプリケーションでは、別のクラスでハンドラーメソッドを呼び出すことができないタイムアウト関数を設定しようとしています。

私のタイムアウトクラス

メイン クラス メイン クラスではこの方法でメソッドを呼び出しますが、実行時にエラーが表示され、

メインクラスでメソッドを呼び出す方法.誰でもこの問題を解決するのを手伝ってください.

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

android - Android でのマルチスレッド ハンドラーのベスト プラクティスは何ですか?

HTTPRequestsたとえば、いくつかを使用するアプリがあります

  • セッション ID を取得する

  • 位置データを取得する

  • 既存のカテゴリを取得する

  • (...) その他

HTTPRequestHandler基本的にすべての for each Request を管理するを作成しましたAsynTasks...これはうまく機能しますが、私の問題は、さまざまな を管理するための良い方法がわからないことAsynTasksです。たとえば、 をSessionId Task開始する前にを取得する必要があります。GetSomeLocationData Task

だから私の中には、次のようHTTPRequestHandlerに依存して始まるキューがありますAsyncTasks:

ただし、これは問題なく動作しますが、(接続によっては) このキューに時間がかかり、AsynTasks最初のデータがまだロードされていないため、ユーザーが失敗する他のキューを開始できるという問題があります。

ブール値のようなものを設定isSessionIdLoadedしたり、ユーザーの UI をブロックしたりできますが、もっと良い解決策があるかどうか疑問に思っています。

だから私の質問は次のとおりです。連続して実行されるある種のキュー(ArrayList、Map ..)に非同期タスクを入れる方法はありますか?

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

android - Android バックグラウンド サービスの問題から現在の場所を取得する

位置情報に基づくリマインダー アプリを開発したい。したがって、アプリが実行されていなくても、現在の場所を取得するために Android サービスを使用したいと考えています。しかし、私はしませんでした。Android サービス クラスでタイマーを設定しましたが、サービス クラスで現在の位置を取得する方法がわかりません。何が問題ですか ?次のようなエラーが発生しました。

looper.prepare() を呼び出していないスレッド内でハンドラーを作成することはできません

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

android - Android Handler 更新インターフェースのエラー

実行するたびに、setText行にエラーが発生します。理由がわかりません。

ご協力いただきありがとうございます。

ここに画像の説明を入力

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

android - 指定されたメッセージ キュー同期バリア トークンがポストされていません

バインドされたサービスとしてのアプリがあります。サービスにメッセージを送信していますが、次のエラーが発生することがあります。

E/AndroidRuntime(28216): java.lang.IllegalStateException: 指定されたメッセージ キュー同期バリア トークンがポストされていないか、既に削除されています。

代わりに次のエラーが表示されることがあります。

android.util.AndroidRuntimeException: { what=888 when=0 } このメッセージは既に使用されています。

ときどき UI がフリーズすることがあります。ハンドラーを介して、サービスからアクティビティへ、およびその逆に通信しています。

これは、2回目に呼び出されたときに一貫してフリーズするメソッドです。

私はスレッディング、メッセンジャー、ハンドラーを初めて使用するので、助けていただければ幸いです:)

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

android - タイマー時間は変数として変化しませんか?

ここに私のコードがあります、

V_time は、Web サービスから返されるものを変更します。ログでは正しいように見えますが、毎分実行されます。Webサービスから来るものをプログラムで設定するにはどうすればよいですか? Ps:試してみました private long V_Time = 1;private static long V_Time = 1;など...

編集:cancel() run()などを使用できますか?どこかで?

0 投票する
6 に答える
21849 参照

android - Android Studio から android.os.handler オブジェクトが見つからない

アプリケーションでハンドラー スレッドを作成しようとしていますが、Android Studio はテキストを赤としてマークし、Android SDK バージョンではなく、ハンドラーの java.util バージョンのみをインポートしようとします。手動でインポートしようとすると、HandlerThread は問題なく見つかりますが、通常のハンドラーのインポートが欠落しているようです。

理由はありますか?

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

android - Android:ハンドラーがランナブルを投稿するのはなぜですか?

ハンドラーがランナブルを投稿する理由を誰かが説明できますか? handleMessage のオーバーライドとメッセージの送信は同じことを行いますか?

これら 2 つの方法がどのように実装されるかを示すために、未テストのコードをいくつか書きました。私のアプローチが間違っている場合は、修正してください。

ポストを持つハンドラー:

handleMessage を持つハンドラー:

0 投票する
4 に答える
30036 参照

android - Android: How to use a Handler handleMessage and access the reference to the MainActivity

I have a service which receives a command from the Internet and launches a background thread. This thread is passed a handler from the service (the service is bounded and passed the handler) and sends a message to the handler to take a picture. I'm stuck on the implementation of the handler.

Questions:

  • Does Handler need to be static? Without static, I get "This Handler class should be static or leaks might occur"
  • Does mCamera need to be static? I've been told to make mCamera static, but why is this necessary? Is there a way to setup takePicture without making mCamera static?
  • What's the proper way to pass the reference to MainActivity? Right now I get the error: "No enclosing instance of the type MainActivity is accessible in scope"
0 投票する
2 に答える
1562 参照

android - サービス クラスで bindService を呼び出した後に startService を呼び出すとどうなりますか?

Service MessengerService で bindService を呼び出しています。それは正常に動作します。その後、startService を呼び出します。

The code is exactly same as this link Remote messenger service example section http://developer.android.com/reference/android/app/Service.html except I add a startService in activity

This is client code: Intent intnt = new Intent(context, MessengerService.class); intnt.putExtra("msg", "String from activity to service to handler 11");

In Service code: In onStartCommand, whatever message i receive in intent which is passed in startService, I send it back to client handler.

I am getting index out of bound exception in line mClients.get(0).send(msg1). mClients is the array of clients attached to this service and stored during binding process.

The code is exactly same as this link Remote messenger service example section http://developer.android.com/reference/android/app/Service.html except I am adding a onStartCommand in Service