2014-03-18 1 views
5

몇 달 동안 우리 응용 프로그램의 주요 부분이 상호 작용할 수 없다는 사용자의 불만으로 인해 응용 프로그램이 좋지 않은 리뷰를 얻고 있습니다. 우리의 애플 리케이션은 지원 라이브러리를 사용하고 작업 표시 줄이 있습니다. 이 사용자들에 따르면, 액션 바는 사용자 터치에 응답하는 앱의 유일한 부분입니다. 작업 표시 줄 아래의 모든 항목 (안드로이드 홈, 백 등 버튼 제외)이 응답하지 않습니다.Lux의 SYSTEM_ALERT_WINDOW 권한으로 인해 일부 응용 프로그램이 작동하지 않습니다.

문제를 재현하기 위해 많은 노력을 기울인 끝에 Lux 앱을 설치하면이 문제가 발생한다는 것을 발견했습니다. Lux가 설치되면 사용자 터치에 응답하는 것은 작업 표시 줄뿐입니다.

다른 응용 프로그램 UI 다른 애플 리케이션을 찾는 후,이 안드로이드 권한에 해당

이상

무승부 : 럭스의 권한을 보면

,이를 볼

android.permission.SYSTEM_ALERT_WINDOW 

사용자가 이미 확인했습니다. Lux 응용 프로그램이 문제를 일으키는 것입니다.

제 질문은 사용자에게 Lux을 제거하라는 메시지를 표시하지 않고 어떻게 해결할 수 있습니까? 이건 안드로이드 버그일까요, 아니면 우리일까요? 우리 앱이 응답하지 않는 것을 우리가 할 수있는 무언가가 있는가?

내 다음 단계로 Lux 팀에 이메일을 보내서 무엇이 문제를 일으키는 지 알 수 있는지 확인합니다. 나의 본능은 안드로이드 팀에게 이메일을 보내는 것이다. 내 생각에 외부 애플리케이션이 다른 애플리케이션의 동작에 그렇게 극적으로 영향을 미칠 수 있어야하기 때문이다.

+0

호기심에서 벗어나서, 무슨 일이 일어나지 않았습니까? 터치 이벤트가 발생하지 않습니까? –

+0

@GabeSechan, 우리의 활동에서'onTouchEvent()'를 그냥 지나쳤습니다. 중단 점에 도달했음을 확인할 수 있습니다 (터치 이벤트가 발생하지만 하위 뷰로 전달되지 않습니다). 이제'onInterceptTouchEvent'에 대한 커스텀 뷰 객체를 테스트하고 있습니다. –

+0

럭스가이 문제를 일으키고 있다고 결정한 적이 있습니까? 몇 가지 앱을 테스트했으며 그 중 대부분은 정상적으로 작동합니다. 내가 발견 한 유일한 깨는 응용 프로그램은 Lux와 GridWichterle (https://play.google.com/store/apps/details?id=eu.inmite.android.gridwichterle)이었습니다. –

답변

6

android:filterTouchesWhenObscured 속성이있는보기를 사용 하시겠습니까? true로 설정하면이 문제가 발생할 수 있다고 생각합니다.

예를 들어, XML, 그것은과 같습니다

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/layout" 
    android:filterTouchesWhenObscured="true" 
    android:layout_height="fill_parent" 
    android:layout_width="fill_parent"/> 

filterTouchesWhenObscured 라인을 제거하고 잘해야합니다.

+0

그게 전부 였어. 그런 무작위적이고 이상한 버그. OS가 럭스 오버레이를 또 다른 뷰로 등록하는 것처럼 보이고 결과적으로 필터가 서랍 레이아웃 (해당 속성이 위치한 곳)에 삽입 된보기로 바뀝니다. –

관련 문제