我將如何去實現貫穿整個應用程序的線程。我看過服務,但我很確定這不是我想要的。即使應用程序已關閉,我也不希望線程不斷檢查。我只想在應用程序的後臺運行一個線程(即使我在活動之間切換),以便持續檢查用戶是否將電話擡到了他/她的耳邊。如果用戶那麼它會執行一個動作。這樣的事情的任何例子?連續線程來監視硬件接近傳感器
2
A
回答
5
您不需要此線程或服務。請參閱SensorManager的Android API文檔中的示例。另外,請參閱下面的示例:
public class SensorActivity extends Activity, implements SensorEventListener {
private final SensorManager mSensorManager;
private final Sensor mSensor;
public SensorActivity() {
mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);
}
protected void onResume() {
super.onResume();
mSensorManager.registerListener(this, mSensor, SensorManager.SENSOR_DELAY_NORMAL);
}
protected void onPause() {
super.onPause();
mSensorManager.unregisterListener(this);
}
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
public void onSensorChanged(SensorEvent event) {
// TODO: implement your action here.
}
}
1
這是最好的服務。在您的活動開始時綁定到服務,並在活動完成時解除綁定。該服務應該在綁定時開始監聽,並在從未綁定時停止。
相關問題
- 1. 動畫:連續心跳監視器線
- 2. 傳感器到iOS連接
- 3. Android接近傳感器發現時
- 4. 模擬接近傳感器(iPhone)
- 5. C#中的虛擬接近傳感器
- 6. 遠程桌面連接監視器
- 7. 如何使用接近傳感器來調暗手機屏幕?
- 8. 接近傳感器來改變按鈕顏色
- 9. 接近傳感器的建議來檢測手和血液
- 10. 如何將背光android應用程序監視光線傳感器前景
- 11. 線程等待監視器
- 12. 監視線程
- 13. 接近傳感器 - 沉默呼叫應用程序
- 14. 連續線程
- 15. 「自定義」傳感器事件發生率似乎不SensorManager.registerListener(SensorEventListener監聽器,傳感器傳感器,詮釋率)
- 16. 如何連接多個> 10無線傳感器Arduino的
- 17. rasberry pi連接傳感器DHT11
- 18. 錯誤:異常監視器線程同時連接到服務器
- 19. .net線程監視
- 20. 線程監視C#
- 21. 監視.NET線程
- 22. DB連接關閉監視器
- 23. 監視Windows 8應用程序連接
- 24. rpi3,直接連接監視器,無法連接到$ DISPLAY代碼
- 25. 來自傳感器監聽器的意圖在應用程序類
- 26. 傳感器來檢測對象的親近移動
- 27. 監視骨骼連接池
- 28. java線程中的「監視器」
- 29. c#中的線程監視器類#
現在在此服務中,我將運行一個線程來檢查傳感器?如果它識別出這個動作,然後執行某個任務? – 2011-06-13 19:39:56
您不需要運行線程來管理這個線程,只需在加速度計傳感器服務上註冊一個監聽器即可。如果您使用Google SENSOR_ACCELEROMETER,可以使用各種示例(檢測不同的動作類型 - 主要是搖動)。 – mah 2011-06-13 20:28:09