我的應用程序使用接近傳感器與下面的代碼:約接近傳感器logcat的很多錯誤信息
public class WakeLockHelper {
static final String WAKE_LOCK_STR = "My.WakeLockHelper";
static final int PROXIMITY_SCREEN_OFF_WAKE_LOCK = 32;
private static WakeLock mScreenLock = null;
private static WakeLock doWakeLock(final WakeLock inputWl, int flags, boolean lock) {
try {
WakeLock wl = inputWl;
if (lock) {
if (wl == null) {
PowerManager pm = (PowerManager) SJPhone.getContext().getSystemService(Context.POWER_SERVICE);
wl = pm.newWakeLock(flags, WAKE_LOCK_STR);
wl.setReferenceCounted(false);
wl.acquire();
}
}
else {
if (wl != null) {
wl.release();
if (!wl.isHeld()) {
wl = null;
}
}
}
return wl;
}
catch (Exception e) {
Log.e(e);
}
return null;
}
public static synchronized void screenLock(boolean lock) {
mScreenLock = doWakeLock(mScreenLock, PROXIMITY_SCREEN_OFF_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, lock);
}
}
一切工作正常,但只能在一臺設備,聯想平板K1我收到了很多logcat的錯誤像這樣:
04-17 15:11:34.450 E/Sensors ( 162): proximity file handle not opened
04-17 15:11:34.450 E/Sensors ( 162): proximity file handle not opened
有誰知道這是什麼以及如何避免它?
是,「傳感器」沒有登錄我的應用程序的標籤,這些消息對設備的一些3 - 第三方組件生產。當這些信息的數量很大(24小時壓力測試大約10^4)時,這只是可疑的。我只是希望那些健忘的開發者可能會閱讀這篇文章=) – 2012-07-31 12:16:31