問題タブ [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.
android - Looper を入手するためのベスト プラクティスは何ですか?
私は試してみmContext.getMainLooper()
ましLooper.getMainLooper()
た。どちらも同じ結果を返しますが、どちらが適切な方法なのか知りたいですか?
私はまた、これとこれのAndroid開発者リンクからこれを読みました:
Looper.getMainLooper() の場合:
Looper getMainLooper () アプリケーションのメイン スレッドに存在する、アプリケーションのメイン ルーパーを返します。
mContext.getMainLooper() の場合:
Looper getMainLooper () 現在のプロセスのメイン スレッドの Looper を返します。これは、アプリケーション コンポーネント (アクティビティ、サービスなど) への呼び出しをディスパッチするために使用されるスレッドです。定義上、このメソッドは Looper.getMainLooper() を呼び出して得られる結果と同じ結果を返します。
java - 非アクティビティ クラスのハンドラー
実行できますか
非Activity
クラスから?
私はコントローラークラスを持っています。それをアダプターと見なします。そこで使えますHandler
か?
ブレークポイントを使用してアプリをデバッグしようとしましたが、コントロールが到達しません
誰でもこれに関して私を助けることができますか?
実際に私はOCRを使用しています。特定の一致が発生した場合は、自動的にメインのアクティビティに戻りたいと考えています。ルーパーだと思います。私もそれの写真をキャプチャする必要があります。そのためには、ハンドラーを使用する必要があります。
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 と通信させてこの問題を解決する適切な方法を誰かが知っていれば、それは素晴らしいことです! 正確な問題を扱う答えが見つからないようです。前もって感謝します。
java - クラスの実行時にアプリが MainActivity に移動する
このスクリプトを実行しようとしていますが、doInBackground() のどこかで開始アクティビティに戻っています。
(私がやろうとしているのは、利用可能なすべてのSSIDをスキャンしてデータベースでチェックすることです)
これが私のコードです:
そして、ここに私が得るエラーがあります:
android - Android プロジェクトのハンドラー: スレッドセーフ
Android プロジェクトで Handler を使用して、メイン/UI スレッドにコールバックを渡しています。
ハンドラーオブジェクト、つまり mHandler を作成しているとき、ハンドラーが既に存在するかどうかを確認しています。そうでない場合は、ハンドラーを作成しています。つまり、シングルトン パターンを使用しています。私の質問は: ハンドラー オブジェクトの作成はスレッド セーフですか?
ありがとう。
android - ハンドラースレッドで通知を停止する方法
4 つの RemoteView TextView を持つカスタム通知があります。onPause() が呼び出されたら、通知を投稿し、画面がオンになっている間は毎秒更新します。onResume() が呼び出されたら、通知をキャンセルしたいと思います。これまでのところ、onPause() が呼び出されると true に設定され、onResume() が呼び出されると false に設定される揮発性ブール値を持つように設定しました。HandlerThread を開始し、揮発性ブール値をチェックするメソッドがあります。ブール値が true の場合は通知を更新し、false の場合は通知をキャンセルして HandlerThread をシャットダウンします。
通知を開始して毎秒更新する限り、すべてが正常に機能しているようです。ただし、 onResume() が呼び出されると、通知は停止しません。
先に進む前に、通知と HandlerThread をシャットダウンする方法を見つけようとしていたため、コード化されたものの画面はまだありません。
これまでの私のコードは次のとおりです。
android - Producer-Consumer パターンに Looper を使用する利点はありますか?
私のアプリには、処理する非常に単純なオブジェクト メッセージ (パイプライン アーキテクチャ) 用のwhile-on-volatile-boolean
ループとs を持つスレッドがほとんどありません。BlockingQueue
最近android.os.Looper
、同じ仕事をしているように見える友人とのクラスに遭遇しましたが、それらはAPIに配置されているため、明示的なキューを使用した手書きのループの代わりにそれらを使用する利点(特にパフォーマンス)はありますか? それとも、ある種の「APIシュガー」ですか?