Tmap for UX999

네이버에 ux999를 입력하면.
ux999 : 네이버 통합검색 (naver.com)
많은 결과가 나온다.

바로 애플카플레이 프토토콜로 안드로이드를 사용하는 AI BOX라고도 불리는 장치이다.

얼마전에 이것을 구입해서 잘 활용하고 있는데.. 문제점이 있는 것이
TMAP에서만 GPS가 끊기는 현상이 있다. 장치 내부 GPS를 이용하면 괜찮은데, 애플카플레이 프로토콜로 GPS를 받으면 달리다가 끊기는 현상이다. 즉 자동차 외부 GPS를 사용하면 장치를 눈에 안 보이는 곳에 숨길수 있는데, 장치 내부 GPS를 쓰면 GPS를 수신할수 있게 꺼내 놓아야 한다. 그렇다고 외부 GPS연동에 문제가 있는가 하면 ‘카카오 내비’는 잘 작동 한다는 것이다.

그래서 TMAP 고객센터에 문의 했더니 GPS신호를 1초마다 수신해야 하는데 그렇지 못해서 그런것이고, GPS 모듈 문제라는 회신을 받았다. 카카오내비도 잘되고 GPS 좌표도 정상적으로 받는다고 아무리 이야기 했지만 그냥 내 GPS 문제라고.

그래서 카카오내비를 썼는데.. 아무래도 불편하다. 그래서 tmap을 동작하게 해야 겠다고 생각했다.

TMAP을 리버싱해서 확인해보니.. 역시 역사가 느껴지는 코드이다. 예전 장비들은 GPS 오류가 많았던것으로 추측이 되고.. 그에 대해서 다양한 방법으로 그 GPS오류를 회피하게 해놓았다.
GPS가 갑자기 튀거나, 터널을 들어가거나, 교차로를 지나가는 등등.. 상황을 예상해서 필터를 걸고,
이러한 로직중에 나의 환경과 충돌나는 부분이 있었는데.,
난 카플레이 프토토콜로 GPS를 사용하기 떄문에 사용가능한 GPS 개수는 0개이다. 그냥 좌표값만 나온다.
그러나 TMAP의 로직은 사용가능한 GPS가 0개이면 그냥 아웃시켜 버린다. 그결과 달리다가 GPS가 끊기는 결과가 나왔다.

이런 문제를 회피하는 방법은 사용가능한 GPS를 여러개 있다고 가짜로 알려 주면 된다. 그러면 여기서 안드로이드 Framework를 수정하거나 Tmap을 수정해야 하는데, Framework를 수정하는게 맞는 방향이기는 하나, 귀찮다.; 그래서 그냥 Tmap을 수정하기로 했다. 그냥 GPS가 항상 언제나 0x10개라고 return 하게 해주었다. 이렇게 하면 단점이 진짜로 GPS신호를 잃었을 때도 있다고 잘못된 정보가 나가는 것인데…

나의 환경으로 봐서는 GPS가 있는데 없다고 하는것 보다, 없는데도 있다고 하는게 더 좋다. 실제로 GPS가 고장날 가능성은 낮고, 이런 경우 금방 문제가 눈에 보일 것이고.. 현재 프로토콜상 실제 GPS개수를 알수도 없기 때문이다. 아래 코드가 반영된 APK은 아래와 같다.

Tmap이 처음 안내처럼 GPS가 1초마다 변하면 GPS 신호를 인정해주거나…
이런 새로운 장비도 지원을 해 주었으면 좋겠는데…

diff --git a/smali_classes4/com/skt/tmap/engine/navigation/location/GpsStatusListener.smali b/smali_classes4/com/skt/tmap/engine/navigation/location/GpsStatusListener.smali
index aca1d41d..dbcbb64e 100644
--- a/smali_classes4/com/skt/tmap/engine/navigation/location/GpsStatusListener.smali
+++ b/smali_classes4/com/skt/tmap/engine/navigation/location/GpsStatusListener.smali
@@ -107,6 +107,7 @@

     .line 1
     iget v0, p0, Lcom/skt/tmap/engine/navigation/location/GpsStatusListener;->fixedSatelliteCount:I
+    const v0, 0x10

     return v0
 .end method

4 thoughts on “Tmap for UX999”

  1. 감사합니다
    잘쓰겠습니다

    혹시 최신버전들이 계속해서 출시될텐데
    해당코드를 수정해주면 최신버전도 사용할수 있을까요?

    1. 안녕하세요.

      최신버젼에서는 완전히 로직이 바뀔수도 있고. 컴파일 방법에 따라 완전히 바뀔수도 있습니다.

      사운드 문제만 좀 해결되면 최신버젼에 적용하려고 하고 있습니다.

  2. 2. 누구, kakao i 는 사용이 가능하십니다. 다만 “이름을 불러 대화 시작하기”는 사용이 불가하십니다 (이경우 누구 사용을 위해서는 화면에 누구 아이콘을 터치해주셔야합니다). 해당 옵션을 선택시 항상 마이크 채널이 열려있게 됨으로서 카링킷 프로가 핸즈프리 모드로 인식합니다. 이때문 음성재생시, 모노문제가 발생하는 것입니다 (전화는 모노입니다).

    3. OEM GPS 옵션은 기본값은 OFF 이며, 해당 설정대로 사용 권장 드리고 있습니다. 해당 설정 ON 시 티맵에서 GPS 문제가 발생합니다, 해당 문제는 최신 티맵 버전에서 발생하는 문제로 기기에 기본 탑재되어있는 버전 사용시 문제되지 않습니다. 이는 티맵 개발진쪽에서 고쳐줘야하는 문제이며, 현재로서 해당 문제 우회 가능한지 확인중입니다.

    1. 1번이 없는데.. 혹시 다시 적어 주실수 있을까요?
      3번을 해결하려고 한게, 이번 포스팅의 리버싱 입니다. ~

Leave a Reply

Your email address will not be published. Required fields are marked *