作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个自定义手机应用程序,我尝试实现的功能之一是在手机靠近脸部时关闭屏幕以避免意外触摸。
我在 android 文档中阅读了有关接近传感器的信息,并看到这个确切的功能是通过 PROXIMITY_SCREEN_OFF_WAKE_LOCK
实现的。唤醒锁。
我创建了一个测试应用程序来单独测试此功能,其中包括两个按钮:一个用于要求唤醒锁定,一个用于释放它。
class MainActivity: AppCompatActivity() {
private lateinit var mPowerManager:PowerManager
private lateinit var mWakeLock:PowerManager.WakeLock
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
mPowerManager = getSystemService(Context.POWER_SERVICE) as PowerManager
mWakeLock = mPowerManager.newWakeLock(PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK, "TEST_PROXIMITY_SENSOR_TAG:wake_lock_tag")
button_activate.setOnClickListener {
if (!mWakeLock.isHeld)
mWakeLock.acquire()
}
button_deactivate.setOnClickListener {
if (mWakeLock.isHeld)
mWakeLock.release()
}
}
}
AndroidManifest.xml
<uses-permission android:name="android.permission.WAKE_LOCK" />
override fun onCreate(savedInstanceState: Bundle?) {
...
mSensorManager = getSystemService(SENSOR_SERVICE) as SensorManager
mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY)
mSensorManager.registerListener(
this as SensorEventListener,
mSensor,
SensorManager.SENSOR_DELAY_NORMAL
)
}
override fun onSensorChanged(event: SensorEvent?) {
Log.d(TAG,"${event?.values?.get(0)}")
}
最佳答案
关于android - 接近唤醒锁并不总是重新打开屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58672669/
我是一名优秀的程序员,十分优秀!