幾個月來,由於用戶投訴我們的應用程序的主要部分無法與之交互,因此我們的應用程序已經越來越差。我們的應用程序使用支持庫和一個操作欄。根據這些用戶,操作欄是應用程序響應用戶觸摸的唯一部分。操作欄下面的所有內容(除了Android主頁,後退等按鈕)都沒有響應。Lux的SYSTEM_ALERT_WINDOW權限使我們的應用程序部分無法運行
在我們嘗試重現問題的最後,我們終於發現安裝應用程序Lux會導致此問題。當安裝Lux時,唯一響應用戶觸摸的是操作欄。
望着力士的權限,我看到:
其他應用程序UI
在其他應用
其中,尋找它之後,相當於這個Android權限:
android.permission.SYSTEM_ALERT_WINDOW
用戶已經確認Lux應用程序是導致問題的原因。
我的問題是,如何解決這個問題而不告訴用戶卸載Lux?這是一個android bug,還是我們的?有沒有什麼我們可以做,讓我們的應用程序沒有反應,但不是其他人?
我的下一步我想是發送一封電子郵件給Lux團隊,看看他們是否知道可能導致這種情況(與我們自己的調查一起)。我的直覺是也向Android團隊發送電子郵件,因爲在我看來,沒有外部應用程序應該能夠如此戲劇性地影響另一個應用程序的行爲。
出於好奇,有什麼事情沒有發生?你沒有得到觸摸事件嗎? –
@GabeSechan,我剛剛在我們的活動中覆蓋了'onTouchEvent()',我可以確認這個斷點正在被觸發(我們正在接觸觸摸事件,但它們並沒有傳播到子視圖)。我現在正在爲'onInterceptTouchEvent'測試一個自定義視圖對象。 –
您是否曾經確定過勒克斯爲此做了什麼?我測試了一些應用程序,其中大部分都能正常工作。我發現的唯一突破性應用程序是Lux和GridWichterle(https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle)。 –