之前一篇文章提到了说电信脑残阉割了网络定位。。。然后用了一个办法勉强启用了。。。可是了解我的人都知道我是有强迫症的。。。而且还是晚期,这样一个勉强能用的办法对我来说肯定是不够的。。。所以我就动手了。。。
祭出神器Beyond Compare:
不得不说一句这个软件真是业界良心,试用版可以不连续的30天。。。
由于25i水货是有网络定位的,因此先把两个官方ROM的Settings.apk都拆了,第一步去/res/values/public.xml瞅了一眼,赫然看到这么几行:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<public type="string" name="location_title" id="0x7f0b03ed" />
<public type="string" name="location_network_based" id="0x7f0b03ee" />
<public type="string" name="location_neighborhood_level" id="0x7f0b03ef" />
<public type="string" name="location_neighborhood_level_wifi" id="0x7f0b03f0" />
<public type="string" name="location_gps" id="0x7f0b03f1" />
<public type="string" name="location_street_level" id="0x7f0b03f2" />
<public type="string" name="assisted_gps" id="0x7f0b03f3" />
<public type="string" name="assisted_gps_enabled" id="0x7f0b03f4" />
<public type="string" name="assisted_gps_disabled" id="0x7f0b03f5" />
<public type="string" name="use_location_title" id="0x7f0b03f6" />
<public type="string" name="use_location_summary" id="0x7f0b03f7" />
<public type="string" name="location_access_title" id="0x7f0b03f8" />
<public type="string" name="location_access_summary" id="0x7f0b03f9" />
<public type="string" name="location_sources_heading" id="0x7f0b03fa" />
|
所以说,本来settings.apk里面就是有网络定位的选项的!只是被奸人所害。。。
我一定要为你讨回公道!
一开始我以为是在/res/xml/location_settings.xml里面被动了手脚,但是打开一看,一切正常的样子。。。和25i的文件比较了一下,果然是一样的,这就奇怪了。。。然后这句话吸引了我的眼球:
1
|
<com.sonymobile.settings.preference.IncludePreference settings:include="@xml/somc_add_location_settings" />
|
what the fxxk is xml/somc_add_location_settings?
果断去/res/xml/somc_add_location_settings.xml瞅了一眼。。。呵呵,呵呵呵呵。。。你能不能告诉我这句话是干嘛的?
1
|
<com.sonymobile.settings.preference.RemovePreference settings:dependOnResource="true" settings:targetKey="location_network" />
|
果然这个文件和25i的同名文件的差异就是这句话。。。
接下来就好办了,替换掉/res/xml/somc_add_location_settings.xml。
然后有图有真相
搞定!