docomo/au 端末を海外で使うときに Assisted GPS を有効にする

docomo モデルは SP モード接続、au 端末は LTE-NET 接続を前提としているので、 他の APN に接続すると SUPL (Secure User Plane Location) サーバにアクセスできず、 位置情報の取得に時間がかかることが知られています。
このままでは海外で使いにくいので、 Assisted GPS の設定をグローバルモデルに合わせます。

前提条件


変更作業

Xperia の USB デバッグを有効にして PC に接続し、 gps.conf を PC にコピーします。

E:\> adb pull /system/etc/gps.conf

gps.conf を編集します。

Xperia Z3 SO-01G の場合

--- /system/etc/gps.conf.orig	2015-08-05 12:06:34.000000000 +0900
+++ /system/etc/gps.conf    	2015-03-31 02:09:30.000000000 +0900
@@ -1,13 +1,8 @@
-SUPL_HOST=dcm-supl.com
-SUPL_PORT=7275
-SUPL_VER=0x20000
-CAPABILITIES=0x17
-
 #Uncommenting these urls would only enable
 #the power up auto injection and force injection(test case).
-#XTRA_SERVER_1=http://xtrapath1.izatcloud.net/xtra3grc.bin
-#XTRA_SERVER_2=http://xtrapath2.izatcloud.net/xtra3grc.bin
-#XTRA_SERVER_3=http://xtrapath3.izatcloud.net/xtra3grc.bin
+XTRA_SERVER_1=http://xtrapath1.izatcloud.net/xtra3grc.bin
+XTRA_SERVER_2=http://xtrapath2.izatcloud.net/xtra3grc.bin
+XTRA_SERVER_3=http://xtrapath3.izatcloud.net/xtra3grc.bin
 
 #Version check for XTRA
 #DISABLE = 0
@@ -46,6 +41,7 @@
 #GPS_LOCK = 0
 
 # supl version 2.0
+SUPL_VER=0x20000
 
 # Emergency SUPL, 1=enable, 0=disable
 SUPL_ES=1
@@ -60,7 +56,7 @@
 #config.xml.
 #MSA=0X2
 #MSB=0X1
-SUPL_MODE=3
+#SUPL_MODE=
 
 # GPS Capabilities bit mask
 # SCHEDULING = 0x01
@@ -69,6 +65,7 @@
 # ON_DEMAND_TIME = 0x10
 # GEOFENCE = 0x20
 # default = ON_DEMAND_TIME | MSA | MSB | SCHEDULING | GEOFENCE
+CAPABILITIES=0x13
 
 # Accuracy threshold for intermediate positions
 # less accurate positions are ignored, 0 for passing all positions
@@ -79,6 +76,8 @@
 ################################
 
 # FOR SUPL SUPPORT, set the following
+SUPL_HOST=supl.sonyericsson.com
+SUPL_PORT=7275
 
 # FOR C2K PDE SUPPORT, set the following
 # C2K_HOST=c2k.pde.com or IP

Xperia Z3 SOL26 の場合

--- /system/etc/gps.conf.orig	2015-10-01 17:07:54.000000000 +0900
+++ /system/etc/gps.conf	2015-03-31 02:09:30.000000000 +0900
@@ -1,9 +1,3 @@
-SUPL_HOST=182.248.165.210
-SUPL_PORT=7275
-SUPL_VER=0x20000
-CAPABILITIES=0x37
-LPP_PROFILE=1
-
 #Uncommenting these urls would only enable
 #the power up auto injection and force injection(test case).
 XTRA_SERVER_1=http://xtrapath1.izatcloud.net/xtra3grc.bin
@@ -47,6 +41,7 @@
 #GPS_LOCK = 0
 
 # supl version 2.0
+SUPL_VER=0x20000
 
 # Emergency SUPL, 1=enable, 0=disable
 SUPL_ES=1
@@ -61,7 +56,7 @@
 #config.xml.
 #MSA=0X2
 #MSB=0X1
-SUPL_MODE=3
+#SUPL_MODE=
 
 # GPS Capabilities bit mask
 # SCHEDULING = 0x01
@@ -70,6 +65,7 @@
 # ON_DEMAND_TIME = 0x10
 # GEOFENCE = 0x20
 # default = ON_DEMAND_TIME | MSA | MSB | SCHEDULING | GEOFENCE
+CAPABILITIES=0x13
 
 # Accuracy threshold for intermediate positions
 # less accurate positions are ignored, 0 for passing all positions
@@ -80,6 +76,8 @@
 ################################
 
 # FOR SUPL SUPPORT, set the following
+SUPL_HOST=supl.sonyericsson.com
+SUPL_PORT=7275
 
 # FOR C2K PDE SUPPORT, set the following
 # C2K_HOST=c2k.pde.com or IP
@@ -100,6 +98,7 @@
 # 1: Enable LPP_User_Plane on LTE
 # 2: Enable LPP_Control_Plane
 # 3: Enable both LPP_User_Plane and LPP_Control_Plane
+LPP_PROFILE = 0
 
 ################################
 # EXTRA SETTINGS
@@ -115,7 +114,7 @@
 # 0x1: RRC CPlane
 # 0x2: RRLP UPlane
 # 0x4: LLP Uplane
-A_GLONASS_POS_PROTOCOL_SELECT = 0
+A_GLONASS_POS_PROTOCOL_SELECT = 0x2
 
 ###########################################
 # Enable/Disable reading H-SLP address and

Xperia Z Ultra SOL24 の場合

--- /system/etc/gps.conf.orig        2015-09-18 08:26:10.000000000 +0900
+++ /system/etc/gps.conf             2016-06-25 17:30:21.000000000 +0900
@@ -1,14 +1,15 @@
-SUPL_HOST=182.248.165.210
-SUPL_PORT=7275
-SUPL_VER=0x20000
-CAPABILITIES=0x17
-LPP_PROFILE=1
-
 #Uncommenting these urls would only enable
 #the power up auto injection and force injection(test case).
-#XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
-#XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
-#XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
+#XTRA_SERVER_1=http://xtrapath1.izatcloud.net/xtra2.bin
+#XTRA_SERVER_2=http://xtrapath2.izatcloud.net/xtra2.bin
+#XTRA_SERVER_3=http://xtrapath3.izatcloud.net/xtra2.bin
+
+#Version check for XTRA
+#DISABLE = 0
+#AUTO    = 1
+#XTRA2   = 2
+#XTRA3   = 3
+XTRA_VERSION_CHECK=0

 # Error Estimate
 # _SET = 1
@@ -32,7 +33,30 @@
 # Intermediate position report, 1=enable, 0=disable
 INTERMEDIATE_POS=0

+# Below bit mask configures how GPS functionalities
+# should be locked when user turns off GPS on Settings
+# Set bit 0x1 if MO GPS functionalities are to be locked
+# Set bit 0x2 if NI GPS functionalities are to be locked
+# default - non is locked for backward compatibility
+#GPS_LOCK = 0
+
 # supl version 1.0
+SUPL_VER=0x10000
+
+# Emergency SUPL, 1=enable, 0=disable
+SUPL_ES=1
+
+#Choose PDN for Emergency SUPL
+#1 - Use emergency PDN
+#0 - Use regular SUPL PDN for Emergency SUPL
+USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL=1
+
+#SUPL_MODE is a bit mask set in config.xml per carrier by default.
+#If it is uncommented here, this value will over write the value from
+#config.xml.
+#MSA=0X2
+#MSB=0X1
+#SUPL_MODE=

 # GPS Capabilities bit mask
 # SCHEDULING = 0x01
@@ -41,6 +65,7 @@
 # ON_DEMAND_TIME = 0x10
 # GEOFENCE = 0x20
 # default = ON_DEMAND_TIME | MSA | MSB | SCHEDULING | GEOFENCE
+CAPABILITIES=0x13

 # Accuracy threshold for intermediate positions
 # less accurate positions are ignored, 0 for passing all positions
@@ -51,11 +76,21 @@
 ################################

 # FOR SUPL SUPPORT, set the following
+SUPL_HOST=supl.sonyericsson.com
+SUPL_PORT=7275

 # FOR C2K PDE SUPPORT, set the following
 # C2K_HOST=c2k.pde.com or IP
 # C2K_PORT=1234

+# Bitmask of slots that are available
+# for write/install to, where 1s indicate writable,
+# and the default value is 0 where no slots
+# are writable. For example, AGPS_CERT_WRITABLE_MASK
+# of b1000001010 makes 3 slots available
+# and the remaining 7 slots unwritable.
+#AGPS_CERT_WRITABLE_MASK=0
+
 ####################################
 #  LTE Positioning Profile Settings
 ####################################
@@ -63,6 +98,7 @@
 # 1: Enable LPP_User_Plane on LTE
 # 2: Enable LPP_Control_Plane
 # 3: Enable both LPP_User_Plane and LPP_Control_Plane
+LPP_PROFILE = 0

 ################################
 # EXTRA SETTINGS
@@ -78,4 +114,12 @@
 # 0x1: RRC CPlane
 # 0x2: RRLP UPlane
 # 0x4: LLP Uplane
-A_GLONASS_POS_PROTOCOL_SELECT = 0
+A_GLONASS_POS_PROTOCOL_SELECT = 0x2
+
+###########################################
+# Enable/Disable reading H-SLP address and
+# certificates from the SIM card
+###########################################
+# 0: Disable (Default)
+# 1: Enable
+ENABLE_READ_FROM_SIM = 0

編集した gps.conf を端末にコピーします。

E:\> adb push gps.conf /storage/sdcard1/gps.conf
E:\> adb shell
shell@SOL26 $ su
# cd /system/etc
# cp -p gps.conf gps.conf.orig
# cp /storage/sdcard1/gps.conf gps.conf

再起動します。


補足

ファイルの編集環境がない場合は、 エンジニアの休日の ドコモなXperiaでGPSの測位が遅くなる問題の解決方法から twrp-gps-conf-updater-skeleton.zip をダウンロードし、 グローバルモデルの gps.conf を system/etc にコピーし、 ZIP で圧縮して TWRP からインストールする方法もあります。


Xperia