問題タブ [sensormanager]
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 - Android onSensorChanged バグ: 修正方法
そのため、Android デバイスの次のバグ/機能に関する多くのスレッドと質問があります。
Android 開発で SensorManager から SensorEvents を登録すると、デバイスの画面がオフになるまで、アプリケーションにのみ通知されます。その後、SensorManager はイベントの配信を停止します。
問題のリンク:
https://code.google.com/p/android/issues/detail?id=3708回避策の可能 性
: http://nosemaj.org/android-persistent-sensors オフ(受け入れられた回答を参照)
残念ながら、提案された回避策はすべてのデバイスで機能するとは限りません。この動作は、カスタム rom またはカーネルを除いて、アクセス/変更が困難なドライバー/ファームウェア コードに関連していると想定されます。
私の質問: この動作を修正するカスタム カーネルまたは ROM を構築する可能性があると思います。ただし、そもそもカーネルをいじったことはありません。したがって:
- この問題にすでに対処している可能性のある既知の rom/カーネルはありますか? 同じ考え/問題を抱えている人がたくさんいることを願っています.
- そうでない場合、これを自分で修正できる可能性はどれくらいですか? カーネルをアンパックして再構築することについてではなく、正確なコード スポットを見つけて修正することについて話します (たとえば、画面ロックの分離 <-> センサーイベントのリッスンなど)?
私は数年前から開発者であり、高度なスキルを持っています。しかし、一部のカーネル開発者や特に経験豊富なユーザーがここで洞察を提供できるかもしれません。
ご意見をお寄せいただきありがとうございます。
android - Android センサー リスナーが登録解除されないか、センサーが引き続き値を取得する
SensorManager.unregisterListener に問題があります。それらはAndroidと似ています。しかし、私は私の答えを見つけることができませんでした!また、SensorManager のドキュメントの例http://developer.android.com/reference/android/hardware/SensorManager.html#SENSOR_DELAY_UIに従いました。
問題は、アクティビティが終了した後、リスナーの登録を解除しますが、アプリケーションが完全に破棄されるまでセンサーが値を送信し続けることです。
これは私のコードです:
私の SensorController は SensorEventListener を実装します
コンストラクタ:
アクティビティの onResume コールバックが呼び出されると、私の SensorController onResume メソッドが呼び出されます。
アクティビティの onPause コールバックが呼び出されると、私の SensorController onPause メソッドが呼び出されます。
そして、SensorChanged に、センサー イベントを監視するためのログを置きます。
そのため... Activity onPause メソッドの後、 onSensorChanged(SensorEvent event) は引き続きセンサー イベントを取得します。どうして??SensorController.onPause() 関数で登録解除します。センサーは適切な値を取得しますが、送信を停止できません。私は何を間違っていますか?
事前にどうもありがとうございました!私はすべての小さなヒントに感謝します:)
android - SensorManager TYPE_STEP_COUNTER イベントをトリガーせずに値を取得
このコードを使用して、Android 4.4.2 デバイスで手順を取得します。
アプリの実行中に EventListener を使用して値を取得します。今、私は自分のアプリを起動したときに init step 値を取得したいと考えています。カウンターは、デバイスの再起動でのみ 0 から開始されるためです。したがって、私の場合、値は常に0です。計算のために、開始値を知る必要があります。
これは、変更時に値を取得するために実行時に使用するコードです。
ステップを模倣するために電話を1回振ってイベントをトリガーせずに、値をキャッチする方法はありますか?
ありがとう。
java - コンパス アクティビティのアクティビティをインスタンス化できません
私はコンパスアプリケーションに取り組んでいます。メソッドSensorManager
で初期化され、onCreate()
メソッドを使用して移動またはアニメーション化されていましたonSensorChanged()
。
アプリは何も出力せずに実行およびクラッシュします。私LogCat
もチェックしましたが、主な問題を解決できませんでした。ガイダンスが必要です。
MainActivity.JAVA
またTextView
、ユーザーの現在の見出しを表示するために使用されます。には、のImageView
コードを使用してコンパスのようにアニメーション化されているコンパス イメージが含まれていますMainActivity.java
。
activity_main.xml
エラー報告は次のLogCat
とおりです。
どんな助けでも大歓迎です。ありがとう!
また、Manifest.XML
android - Android でダミー データを使用して SensorManager データをバイパスする方法
Android でセンサーマネージャー データ (特に加速度計データ) をバイパスする方法を見つけなければなりません。私はAndroidに比較的慣れていないため、続行する方法がわかりません。実際のセンサー マネージャー データを置き換えるには、(できれば SD カードのテキスト ファイルから) ダミーのセンサー データをフィードする必要があります。
私の最終的な目標は、加速度計データを使用して決定を下すアプリのテストにこれを使用することです。
センサー データを要求するすべてのアプリにダミー データをフィードできるはずです。任意のヘルプまたはガイダンスをいただければ幸いです。
PS: Nexus-5 Android Phone でこれを達成したいと思います。
android - iOSのXArbitraryZVerticalに相当するAndroidは何ですか
iOS では、モーション センサーを設定するときに、開発者は初期化設定 (XArbitraryZVertical) を渡すことができます。これにより、基本的に、現在の位置にあるセンサーからのすべてのデータがゼロになります。Androidに相当するものがあるのだろうか?
ありがとうございました。
c# - センサー データ オブジェクトをバイト配列に変換する (C#)
コンピューター #1 からすべてのセンサー データを取得するプログラムがあります。
そして、DataUpdated 関数では、ソケットを使用してすべてのデータをコンピューター #2 に送信したいと考えています。そこで、すべてのデータを含むクラスを作成しました:
DataUpdated 関数は次のとおりです。
私の問題は、クラス オブジェクトをバイト配列に変換する方法がわからないことです。シリアル化しようとすると、SensorDataReport オブジェクトをシリアル化できないため失敗しました。
それを行う方法はありますか??