私たちはカスタム開発ボードに取り組んでおり、現在はAndroid 7.1に "Sensor HAL"を実装しています。Android HALはpoll()関数でシステムをスタックさせます
私たちはAndroidセンサーサービス要件(sensor.h)に従って "Sensor HAL" APIを実装しており、.soファイルを同じように構築することができます。 (一部のカスタム修正のため、すでに利用可能なHALは使用できません)
「Sensor HAL」を統合した後、Androidはハング状態になり、Androidのロック画面まで到達できません。
私たちの観測WRT Androidのセンサーのサービス動作
SensorService:nuSensorService ...
を開始する "センサーHALは、" センササービスによって読み込ま
"センサーHAL" オープン呼び出しに成功
「センサーHAL」get_sensor_list呼び出し成功
"Sensor HAL"ポーリング関数が毎回成功して呼び出しを呼び出します。 58:48.258 1461 1461 D SensorService:nuSensorService は...
を開始Androidのブートは "Bootanimation" 画面でREFERENCE
01-01 00 FOR
LOGSを立ち往生01-01 00:58:48.260 1461 1461 D Sensor_HAL:OpenSensors:name = poll
01-01 00:58:48.260 1461 1461 D Sensor_HAL:終了しています... OpenSensors:name = poll
01-01 00:58:48.260 1461 1461 D Sensor_HAL:58:48.260 1461 1461 D Sensor_HAL:の終了@GetSensorList
01-01 00:58:48.261 1461 1461 D Sensor_HAL:@GetSensorList
01-01 00の入力@SensorDeviceActivateは、0を扱う入ると、0を有効に
01-01 00:58:48.261 1461 1461 D Sensor_HALは:@SensorDeviceActivateは、1を扱う入ると、0
01-01 00有効:58:48.262 1461 1461 D Sensor_HALを:入力@ SensorDeviceActivateは、2ハンドル0
01-01 00有効:58:48.262 1461 1461 D Sensor_HALを:入力@GetSensorList
01-01 00:58:48.262 1461 1461 D Sensor_HAL:の終了@GetSensorList
01-01 00:58:48.262 1461 1461 D Sensor_HAL:入力@GetSensorList
01-01 00:58:48.262 1461 1461 D Sensor_HAL:の終了@GetSensorList
01-01 00:58:48.264 1461 1463 D SensorService :nuSensorServiceスレッド 開始...
01-01 00:58:49.953 1461 1462 D SensorService:システムがハングアップする原因となっている新しいスレッドSensorEventAckReceiver
=>上記コールポーリング機能。
=>ここでAndroidが起動しました。
現在のpoll()コマンドの実装では、タイムスタンプ付きのダミーAccelerometerイベントが上位レイヤに返されています。戻り値は、コピーされたデータイベントの数です。
何かが不足しているか間違っていることがわかったら私を修正してください。
私たちはまだこの問題に直面しています。これまでにこの問題に直面した人はいますか?事前にあなたの助けを感謝しました。 – Harshit