4 回答

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊
盡量不要直接使用傳感器 API。要測(cè)試接近傳感器,只需獲取使用PROXIMITY_SCREEN_OFF_WAKE_LOCK參數(shù)創(chuàng)建的喚醒鎖即可。
獲取測(cè)量的距離無(wú)濟(jì)于事,但是當(dāng)您將手掌放在傳感器上時(shí),屏幕將開(kāi)始關(guān)閉/打開(kāi)。
class ProximityMgr(context: Context) {
private val powerManager: PowerManager = context.getSystemService()!!
private val wakeLock: PowerManager.WakeLock
init {
wakeLock = powerManager.newWakeLock(
PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK,
"lock:proximity_screen_off")
}
fun acquire() {
if (powerManager.isWakeLockLevelSupported(PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK)) {
if (wakeLock.isHeld) {
wakeLock.release()
}
wakeLock.acquire(WAKE_LOCK_TIMEOUT_MS)
} else {
Log.w(TAG, "not supported")
}
}
fun release() {
if (wakeLock.isHeld)
wakeLock.release()
}
companion object {
private const val TAG = "ProximitySensor"
private const val WAKE_LOCK_TIMEOUT_MS: Long = 2 * 3600 * 1000
}
}
這個(gè)片段取自這個(gè)答案。

TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個(gè)贊
下面介紹如何打開(kāi)和測(cè)試接近傳感器。
撥打 *#77692# 您將獲得兩個(gè)傳感器進(jìn)行測(cè)試:
1:光傳感器 2:接近傳感器
您無(wú)法將其打開(kāi)并保持打開(kāi)狀態(tài)。我們可以通過(guò)打開(kāi)它來(lái)測(cè)試它,然后它進(jìn)入關(guān)閉模式。三星非常奇怪。
也許下一次更新將提供保持它的可能性。因此,屏幕不會(huì)在口袋中解鎖。希望這可以幫助你。

TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超8個(gè)贊
簡(jiǎn)單來(lái)說(shuō)(非程序化)方法1星形哈希零星形哈希(#0#)在撥號(hào)器上 選擇接近傳感器時(shí)將出現(xiàn)一個(gè)選項(xiàng)塊(紅色,綠色,藍(lán)色,振動(dòng),相機(jī))現(xiàn)在它將顯示勒克斯(發(fā)光強(qiáng)度)量更多光更勒克斯.方法2 做一個(gè)電話。在通話過(guò)程中,顯示屏本身的右上方區(qū)域(相機(jī)左側(cè))將出現(xiàn)一個(gè)白點(diǎn)閃爍。(看起來(lái)像一個(gè)像素點(diǎn)).現(xiàn)在懸停并檢查。
添加回答
舉報(bào)