我的应用程序使用接近传感器,代码如下:
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
有谁知道这是什么以及如何避免?
答案 0 :(得分:1)
快速检查确认。您的应用程序“传感器”的“LOGTAG”是什么? 如果没有,那么有问题的记录来自传感器-HAL。
04-17 15:11:34.450 E/Sensors ( 162): proximity file handle not opened
以上日志似乎是来自传感器-HAL的LOGE(),
(通常开发人员用“Sensors”LOGTAG标记。)
只要您获得适当的接近事件,上述日志就可以安全忽略 开发人员很可能忘记清除传感器-HAL中的调试日志。
答案 1 :(得分:1)
要删除这个令人讨厌的日志 - 取消选中设置中亮屏幕中的自动复选框。