作者hungys (hungys)
看板AndroidDev
標題[問題] 關閉螢幕後怎麼維持Sensor開啟狀態
時間Wed Feb 8 18:56:53 2012
為了解決關螢幕之後無法偵測的問題
我參考網路用Broadcast的方式在偵測到關螢幕時重新註冊Sensor
但至今仍然無解...
public BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// Check action just to be on the safe side.
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
// Unregisters the listener and registers it again.
mSensorManager.unregisterListener(AccelerometerService.this);
mSensorManager.registerListener(AccelerometerService.this,
mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_NORMAL);
}
}
};
後來用eclipse紀錄狀態:Log.v(“Accelerometer Working”, “Accelerometer
Working”, );
發現只要一關掉螢幕Sensor就停掉不再回傳data了
PS.不是Broadcast的問題,因為我試過加入一段倒數10秒的trigger,螢幕確實會自己開
起來
Anyone can help me about this?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.249.198.90
1F:→ mamaya3:很可能是由於kernel的power saving setting 02/09 03:57
2F:→ mamaya3:如果是這樣 幾乎無解 除非你自己弄的全螢幕黑屏偽裝成關螢 02/09 03:57
3F:→ mamaya3:幕...XD 02/09 03:58
4F:→ hungys:無解喔...糟糕 那為什麼揮手開關螢幕的App可以做到? 02/09 10:55
5F:推 qazxcvbn:可能要去get wakelock 強制讓手機不要近入sleep 02/09 12:51
6F:→ hungys:有誰可以提供揮手開螢幕的code嗎? 我有用wakeLock喔~ 02/09 13:08
8F:→ hungys:剛剛實驗證明 Proximity Sensor一切正常...... 02/09 17:15
9F:→ mamaya3:以前有人試過 各sensor情況不一 有些用wakelock有解有些無 02/09 18:14
10F:→ mamaya3:不過那是2.1時期的事了 02/09 18:15
11F:→ hungys:我目前只有測到一台Desire S在接上eclipse時可以 02/09 18:46
12F:→ hungys:另一台HD2刷了好幾種ROM都不行~"~ 02/09 18:46
13F:→ hungys:所以確定Accelerometer目前無解囉@@? 02/09 18:47
14F:→ iincho:睡下去要不要關是driver的事情..... 02/10 00:25
15F:→ iincho:所以應該是說,看搞底層的人怎麼做.... 02/10 00:26
16F:→ WPC001:我來回這篇好了, 一般是無法做到, 除非你能直接改framwork 02/11 09:18
17F:→ WPC001:撥電話時proximity的螢幕開關是所謂的proximity_wake_lock 02/11 09:19
18F:→ WPC001:但一般透過SDK寫出來的程式將無法使用(也沒權限) 02/11 09:19
19F:→ WPC001:只能用偽裝的方是模擬成關螢幕 02/11 09:20
20F:→ WPC001:(不能真的去關喔...關了的話,sensor也會收到要被關掉的訊息 02/11 09:21