2012-06-07 4 views
4

배경 :안드로이드 MotionEvent 데이터 갤럭시 탭 누락 II

난 그냥 화면에 모든 데이터를 앱이 화면을 터치 모든 손가락에 대한 감지 할 수를 표시 안드로이드에 약간의 테스트 애플 리케이션을 만들고 있어요. this one과 비슷하지만, 모든 터치에 대해 하나가 아니라 비슷합니다. Android 터치 이벤트에는 위치, 방향, 압력, 크기 및 타원 축 길이를 비롯한 많은 데이터 (this doc)가 포함되어 있습니다.

문제 :

모든 MotionEvent 내 응용 프로그램은 모든 포인터 인덱스 나는 대한의 getSize (I), getTouchMajor (I), 및 getTouchMinor (I)에 대한 보고서 0 (영)을 받는다. 그러나 현명한 0이 아닌 위치 및 압력 값을보고하므로 제대로 작동합니다. 문서 으로 보이는데 이는 하드웨어가 해당 정보를 지원하지 않는다는 것을 의미하지만 두 가지 이유로 그 정보에 회의적입니다.

  1. 내가 테스트하는 장치는 갤럭시 탭 II입니다.이 장치는 꽤 환상적이라고 생각했습니다. (나는 다양한 안드로이드 장치가 MotionEvents를 지원하지만, 그러한 목록을 찾지 못했던 기능 목록을 찾을 수 있는지 웹을 검색했다.)
  2. 자바 메서드 인 InputDevice.getMotionRanges()를 사용하여 장치 크기와 장/부축을 지원하고 그 결과는 이 축을 지원함을 나타냅니다 (크기 : 0.0-1.0, 주/부 : 각각 0.0-1509.437).

질문 :

  1. 내가 갤럭시 탭 II 크기와 MotionEvent의 주/축 기능을 지원하는 결론에 수정 있나요, 그렇다면, 내가 왜 그 데이터를 얻을 수 없다 실제 MotionEvents에서? (내 코드는 매우 위의 링크 된 코드와 같습니다.)이 태블릿 실제로 그 축을 지원하지 않는 경우
  2. , 당신은 내가 나에게 MotionEvent 크기를 줄 것이라고 에이 일을 할 수 있는지 안드로이드 태블릿 추천 할 수 있습니다 타원 축 길이?

미리 도움을 청하십시오!

편집 : 나는 모든 데이터, 아무도가 누락되지 얻을 갤럭시 탭에서 응용 프로그램을 테스트 동료. 기기간에 설정/설정에 차이가 있습니까? 갤럭시 탭이 I에서 II로 다운 그레이드하는 것은 매우 이상한 것 같습니다 ...

+0

저는 갤럭시 탭 2에서 동일한 문제가 있습니다. 심지어 개발자 옵션 "포인터 위치"가 이벤트 크기에 대해 0을보고하고 있습니다. Nexus 7을 사용해보세요. 올바른 값을보고하고 있습니다. – user1070051

+0

나는이 권리를 강조하고 있습니까?MotionEvent 클래스를 통해 getSize(), getTouchMajor(), getTouchMinor() 및 getOrientation()과 같은 메서드를 사용할 수 없습니다. 삼성 갤럭시 탭 2를 사용하는 경우. 하지만 삼성 갤럭시 탭 1을 사용하면 가능합니까? 내 프로젝트 그룹과이 기능을 지원하는 장치를 찾고 있습니다. :) – Sonaten

+0

또한이 게시물에서 Kmulla와 함께 일하고 있습니다. http://stackoverflow.com/questions/22050028/android-finger-detection-orientation-and-ellipse. 그리고 Nexus 7을 포함하여 약 4 개의 기기를 사용해 보았습니다. No Luck. getOrientation()은 항상 0이고 getTouchMajor() = getTouchMinor()이며 축은 항상 동일합니다. – Sonaten

답변

1

나는 이와 비슷한 질문에 답했습니다. 우리의 연구 결과에서

onTouch MoitonEvent getTouchMinor and getTouchMajor alwasys the exact same number result, why? 우리는 타원에 대해 서로 다른 크고 작은 길이를 준 어떤 장치를 찾을 수 없습니다, 또는 같은 타원의 방향을 줄 수 있습니다.

우리가 테스트 한 대부분의 장치는 우리가 대각선이라고 생각했던 값 하나만을 제공했습니다.

관련 문제