如何配置Dedicated APN
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
Dedicated APN功能打开的背景:
Orange等运营商要求手机在使用tethering业务时,
必须要使用运营商指定的另外一组APN而非手机默认上网的APN。
基于这个需求mtk开发了Dedicated APN功能。
[SOLUTION]
客户配置Dedicated APN需要做如下事情:
KK之前的branch:
1)首先去mediatek\config\工程名\ProjectConfig.mk 文件中将MTK_DEDICATEDAPN_SUPPORT这个
option设置为yes.
2)在 alps/packages/apps/Settings/res/values/mtk_arrays.xml中的apn_type_generic item 加
入tethering type:
<string-array name="apn_type_generic" translatable="false">
<item>default</item>
<item>MMS</item>
<item>supl</item>
<item>wap</item>
<item>tethering</item>
</string-array>
3)alps\php?mod=tag&id=6090" target="_blank" class="relatedlink">Frameworks\base\services\java\com\android\server\connectivity\Tethering.java
} else if (FeatureOption.MTK_DEDICATEDAPN_SUPPORT) {
改为:
} else if (FeatureOption.MTK_DEDICATEDAPN_SUPPORT && (mPreferredUpstreamMobileApn ==
ConnectivityManager.TYPE_MOBILE_DUN)) {
4)确定哪个国家的哪种卡需要单独使用APN,那么可以在
frameworks\base\core\res\res\values-mcc***-mnc**(*号即为对应要的卡的mcc,mnc)中添加
config.xml,然后在该文件里面添加数组
<integer-array translatable="false" name="config_tether_upstream_types">
<item>1</item>
<item>4</item>
<item>7</item>
<item>9</item>
</integer-array>
5)在Apns-conf.xml文件添加对应卡的type=dun的apn,用来进行tethering时建立PDP的APN
KK开始的Branch:
1)确定哪个国家的哪种卡需要单独使用APN,那么可以在
frameworks\base\core\res\res\values-mcc***-mnc**(*号即为对应要的卡的mcc,mnc)中添加
config.xml,然后在该文件里面添加数组
<integer-array translatable="false" name="config_tether_upstream_types">
<item>1</item>
<item>4</item>
<item>7</item>
<item>9</item>
</integer-array>
2)在Apns-conf.xml文件添加对应卡的type=dun的apn,用来进行tethering时建立PDP的APN
另外需要注意的是:
1.请务必保证打开这个feature时,手机中至少有两组apn配置,一个default,一个
tethering或者dun,否则可能不预期的出现错误,这是这个feature的限制。
2.在frameworks/base/core/res/res/values-mccxxx-mncxx中会有一些
config_tether_apndata的配置,这部分是google默认加的,但是配置可能不正确
,即如果从这里获取到APN再去激活可能会失败。目前我们设计是apn都从apnsconf.
xml文件里读取,建议客户在使用DEDICATED APN功能时能去掉这些原生的配置