問題タブ [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 に答える
1121 参照

android - Looper を入手するためのベスト プラクティスは何ですか?

私は試してみmContext.getMainLooper()ましLooper.getMainLooper()た。どちらも同じ結果を返しますが、どちらが適切な方法なのか知りたいですか?

私はまた、これこれのAndroid開発者リンクからこれを読みました:

Looper.getMainLooper() の場合:

Looper getMainLooper () アプリケーションのメイン スレッドに存在する、アプリケーションのメイン ルーパーを返します。

mContext.getMainLooper() の場合:

Looper getMainLooper () 現在のプロセスのメイン スレッドの Looper を返します。これは、アプリケーション コンポーネント (アクティビティ、サービスなど) への呼び出しをディスパッチするために使用されるスレッドです。定義上、このメソッドは Looper.getMainLooper() を呼び出して得られる結果と同じ結果を返します。

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

java - 非アクティビティ クラスのハンドラー

実行できますか

Activityクラスから?

私はコントローラークラスを持っています。それをアダプターと見なします。そこで使えますHandlerか?

ブレークポイントを使用してアプリをデバッグしようとしましたが、コントロールが到達しません

誰でもこれに関して私を助けることができますか?

実際に私はOCRを使用しています。特定の一致が発生した場合は、自動的にメインのアクティビティに戻りたいと考えています。ルーパーだと思います。私もそれの写真をキャプチャする必要があります。そのためには、ハンドラーを使用する必要があります。

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

java - GoogleApiClient を使用して null オブジェクト参照で android.os.Looper を呼び出そうとしています

アプリケーションをサービスに変換しようとしています。これにより、アプリケーションが簡単に破棄されず、実行され続けることができなくなります。使いやすいように正しい場所を見つけようとして、コードを何度か移動しましたが、今では

java.lang.NullPointerException: null オブジェクト参照でインターフェイス メソッド 'android.os.Looper com.google.android.gms.common.api.GoogleApiClient.getLooper()' を呼び出そうとしています

このコード ブロック内で発生します。

具体的には、「try」ブロックの下の最初の行です。関数は、このサービスの onCreate で呼び出される唯一のものなので、そこで呼び出されます。mGoogleApiClient が初期化されるその他の背景情報は次のとおりです。

MainActivity を Service と通信させてこの問題を解決する適切な方法を誰かが知っていれば、それは素晴らしいことです! 正確な問題を扱う答えが見つからないようです。前もって感謝します。

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

java - クラスの実行時にアプリが MainActivity に移動する

このスクリプトを実行しようとしていますが、doInBackground() のどこかで開始アクティビティに戻っています。

(私がやろうとしているのは、利用可能なすべてのSSIDをスキャンしてデータベースでチェックすることです)

これが私のコードです:

そして、ここに私が得るエラーがあります:

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

android - Android プロジェクトのハンドラー: スレッドセーフ

Android プロジェクトで Handler を使用して、メイン/UI スレッドにコールバックを渡しています。

ハンドラーオブジェクト、つまり mHandler を作成しているとき、ハンドラーが既に存在するかどうかを確認しています。そうでない場合は、ハンドラーを作成しています。つまり、シングルトン パターンを使用しています。私の質問は: ハンドラー オブジェクトの作成はスレッド セーフですか?

ありがとう。

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

android - ハンドラースレッドで通知を停止する方法

4 つの RemoteView TextView を持つカスタム通知があります。onPause() が呼び出されたら、通知を投稿し、画面がオンになっている間は毎秒更新します。onResume() が呼び出されたら、通知をキャンセルしたいと思います。これまでのところ、onPause() が呼び出されると true に設定され、onResume() が呼び出されると false に設定される揮発性ブール値を持つように設定しました。HandlerThread を開始し、揮発性ブール値をチェックするメソッドがあります。ブール値が true の場合は通知を更新し、false の場合は通知をキャンセルして HandlerThread をシャットダウンします。

通知を開始して毎秒更新する限り、すべてが正常に機能しているようです。ただし、 onResume() が呼び出されると、通知は停止しません。

先に進む前に、通知と HandlerThread をシャットダウンする方法を見つけようとしていたため、コード化されたものの画面はまだありません。

これまでの私のコードは次のとおりです。

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

android - Producer-Consumer パターンに Looper を使用する利点はありますか?

私のアプリには、処理する非常に単純なオブジェクト メッセージ (パイプライン アーキテクチャ) 用のwhile-on-volatile-booleanループとs を持つスレッドがほとんどありません。BlockingQueue

最近android.os.Looper、同じ仕事をしているように見える友人とのクラスに遭遇しましたが、それらはAPIに配置されているため、明示的なキューを使用した手書きのループの代わりにそれらを使用する利点(特にパフォーマンス)はありますか? それとも、ある種の「APIシュガー」ですか?