Jak pisałem poprzednio wczoraj zabrałem się za wykonanie aktualizacji do Gingerbread nieszczęsnego Swift2x od LG, generalnie udało się prawie bez problemów, tylko raz narzędzie do aktualizacji stwierdziło że jest problem z połączeniem z telefonem. Dałem Ponów i poszło dalej gładko. Telefon długo się podnosił do wykonaniu aktualizacji jednak obserwacja $ adb logcat
ujawniła że to częściowo z winy sporej ilości nie zawsze używanych a jednak zainstalowanych aplikacji.
Największy problem ujawnił się później, była to fatalna praca GPS który dla mnie to jedna z podstawowych funkcjonalności i działać musi.
Na początek rozpocząłem odyseję po forach dyskusyjnych jednocześnie starając się znaleźć regularność, polskie android.com.pl, popularne XDA i Modaco, wszędzie aż kipi od postów na temat wyczekiwanej przez wszystkich aktualizacji, nie brakuje też narzekań co specjalnie nie zaskakuje!.
A teraz o samym problemie, wyglądało na to że moduł GPS typowo włączany kiedy jest taka potrzeba z jakiegoś powodu nie był utrzymywany przy życiu mimo poprawnego złapania “fix’a”. Działo się tak niezależnie od aplikacji (sprawdzałem na Google Maps, My Tracks i Sport Tracker). Kiedy nie udało mi się uzyskać pomocy na forach (pewne głosy o problemach z GPS się pojawiły) i osiągnąłem stan rezygnacji pomyślałem że po coś producent pozostawił tajemnicze Hidden menu (wywoływane za pomocą dialera 1809#*990#
) i jak tam zadziała to musi wszędzie działać.
Po żmudnych próbach i błędach doszedłem do kombinacji ustawień która przywróciła pełną sprawność GPS. Nie gwarantuję że jest to rozwiązane ostateczne i niezawodne, za mało testowałem aby to określić ale to lepsze niż nic!
Oto te ustawienia (działamy w menu: GPS Test
)
1. GPS Test
–> System Settings
2. SUMP Setting
–> SLP Server Setting
Tu dodałem nowy serwer (Nokia) – Menu –> Add
* Name: Nokia
* slp address: supl.nokia.com
* port 7275
* ostatnie pole puste i TLS Setting
NIE zaznaczone
Menu –> Save
3. Wracamy o jeden poziom menu, sprawdzamy APN Setting
4. Tam musimy mieć zaznaczony wybrany do połączeń z Internetem APN
5. Zaznaczamy SPL Auto Provision
6. Wracamy do System Setting
i wybieramy menu C-Plane Setting
7. Tu zaznaczamy Loc Estimate
8. Na koniec w menu Misc
zaznaczyłem:
Log Enable
Auto Cold Start
Notification type
Te ostatnie pewnie nie są potrzebne, pozostawiłem w takiej postaci aby później dopracować ustawienia kiedy upewnię się że rozwiązanie działa.
Na koniec możemy przetestować czy zmiany coś dały:
1. Z poziomu głównego menu: LocMgrPD
wybieramy Get Position
2. Do testu z menu --> settings
wybrałem:
* Session Type
–> Tracking
* oper Mode
–> Standalone
* Fix Num
–> 5
3. Na koniec nie pozostaje nic innego niż wykonanie testu z poziomu Get Position
menu –> Start
Testując w oknie uzyskuję FIX w czasie ok. 6s nie jest to stała wartość, test zwraca listę satelit i komplet innych informacji, między innymi TTFF, domyślam się że oznacza to Time To First Fix.
Zobaczę jeszcze jak rozwiązanie sprawuje się w warunkach rzeczywistych czyli na wolnym powietrzu :-). Jak znajdę dopiszę również gdzie znalazłem info że warto dodać serwer A-GPS Nokii.