特定のAndroid端末でGPSでの測距離がスムーズに行かない話

最近運動不足が酷いため,adidasのランニングアプリを入れて定期的に走ろうかなと企てていたところ,標題の問題が起きてしまったため問題の詳細な説明と具体的な解決方法を紹介していきます.

GPSで測距離ができない

まず僕の使用している端末/アプリの説明から.

使用端末はXperia XZ(docomoのSO-01J,Android OS 8),simロックを解除したため現在はBIGLOBEの格安simを使っている.

使用しているアプリは「adidas Running GPSランニング&ウォーキング距離計測フィットネス記録アプリ」(Google Play 原文ママ)である.製作元は「Runtastic」.

このアプリはGPSでリアルタイム測位を行うことによって,端末の移動状態から端末の所有者が歩いたり走ったりした距離を測ることができる.こう聞くととりあえず位置情報を扱えるandroid,つまりはほぼ全ての端末で問題なく測距離ができる...

はずなのだが僕の端末では「GPSが微弱です.(的な音声通知)」とともに,全く測距離が行われなかった.

上の画像でもGPSの状態があまりよろしくないらしいことが視覚的にもわかる.何でやねん.

原因

検索して調べてみた所,どうやらdocomo端末でをMVNO(≒格安sim)で運用していると起きる問題らしいです.

実はそもそも,GPSの測位というのは普通に時間がかかる行動らしくて,普通のandroid端末は時間を短縮するためにSUPLサーバからGPSのアシスト情報(A-GPS)を取得しているらしいです.ですが,docomoキャリアのandroid端末はdocomoのSPモード以外からではアクセスできないSUPLサーバーにアクセスを試みるため,この時点でdocomoのSPモード情報が無い端末はGPSの測位のために上手くSUPLサーバにアクセスできず,測位ができないそうです.[1][2][3]

参考文献や似たような他の記事の一部には「simフリーのスマホは大丈夫」みたいなことが書かれておりますが,以上の原因を考えるとSPモードによるサーバへの接続試行とsimフリーは恐らく無関係だと思っています.(現に僕のXZはsimフリーだが普通に測距離できておらんし,simフリーだからと言ってdocomoキャリアの性質が消えるわけではないため.)

解決策

解決策は

等が参考文献で紹介されていますが,1つ目は私の端末では効力を感じることができなかったり,2つ目はXperia端末ではうまく行かないとか,rootが必要なだとか,3つ目はSPモードが原因であることを考えるとこれだけで改善するかは怪しかったり,adbでdocomo要素を取っ払った僕のスマホでまたdocomo関係のサービスを稼働させたくないとかでイマイチうまく行かないとか試す気が起きませんでした.AngryGPSも効力はなかったです.

結局うまく行った方法が

という方法だったので,こちらについて紹介します.

(あくまで個人の環境での結果ですので,皆様は他の方法も試せるだけ試したほうがよろしいと思います.)

 

GPS Keeper

こちらから GPS Keeper をインストールしてください.

その後は起動するだけでOK.(画像はPROバージョンになっていますがLiteで問題ないです,あと大声で言うつもりはないですが有料認証判定無いです.払戻...ボソ)

これを起動した後はこのままadidasアプリを開いて,移動しながら少し時間を置くと

こんな感じでGPSのステータスが向上します.これは自宅の中でなので黄色とやや細そうに見えるんですが,外では緑になります.

GPS keeperは具体的に何をやっているアプリなのかというと,GPS測位を常に行うようにする(≒測位頻度を上げる),といったものらしいです.バッテリーの都合上,常にGPSで測位を行うのはよろしくないため,androidではGPSの測位頻度が抑えられているのですが,GPS keeperは測位頻度を上げることによって測位にかかる時間を短縮することが出来るようです.

これでGPSの測距離が正しくできるようになりました.ただ,欠点としては依然として測距離できるようになるまで時間が少しかかることが難点ですね...

参考文献

[1] MVNOの格安SIMだとGPS測位が遅くなるケースがある?

[2] 格安SIMでGPSの測位ができない問題の解決方法

[3] A-GPSデータを強制ダウンロードしてGPSを高速化する方法【MVNOなど】

[4] 残った”Xperia Z2”にOCNのSIMを入れたらGPSを拾えなかった件orz… 

[5] Runtasticの「GPSシグナル微弱」を解決する方法(Android端末向け)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください