[英]What API level is needed to get KEYCODE_HOME KeyEvent in AccessibilityService?
按兩個測試設備的物理主頁按鈕導致僅在其中一個設備上獲得我的AccessibilityService
的KEYCODE_HOME
KeyEvent
。 相同的制造商,不同的型號,不同的 API 級別。 獲取物理主頁按鈕的KeyEvent
是否需要某個 API 級別?
@Override
protected boolean onKeyEvent(KeyEvent event) {
if (event.getKeyCode() == KEYCODE_HOME)
Log.d(TAG, "The event works on this device.");
return super.onKeyEvent(event);
}
我在 Android Emulator 中創建並測試了 2 個具有不同 API 級別的虛擬設備。 只要使用虛擬設備的物理主頁按鈕, API 級別似乎無關緊要。 因此,如果設備沒有在AccessibilityService
獲得KEYCODE_HOME
KeyEvent
,則罪魁禍首可能不是 API 級別。
問題提到不僅 API 級別不同,模型也不同。 物理主頁按鈕不會在某些設備上導致KeyEvent
。 例如,三星 Galaxy S8 、 S8+ 、S9、S9+、 Note10、Note10+ 和 Fold設備的主頁按鈕被官方視為壓力傳感器,而不是按鈕。 要使用此壓力傳感器(主頁按鈕),請參閱此問題:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.