微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > AGPS SUPL服务器客制化

AGPS SUPL服务器客制化

时间:10-02 整理:3721RD 点击:

[DESCRIPTION]

通过AgpsProfileManager这个类中封装的接口告知客户实现客制化

[Version]

适用于android2.3/4.0
[SOLUTION]
1,获取当前有效AGPS配置接口
AgpsProfileManager mProfileMgr =
AgpsProfileManager.getProfileManager(context);
mtkAgpsProfile profile = mProfileMgr.getCurrentProfile();
String name = profile.name; // 进行查询或者设置的依据
String slpName = profile.slpName; // 在AGPS设置中的UI显示
String backupsName = profile.backupSlpNameVar; // 只是个备份名字,暂无其他作用
String addr = profile.addr; // SUPL IP地址
int port = profile.port; // SUPL 端口
int tls = profile.tls; // 是否要安全认证,0不需要,1需要
int showType = profile.showType;
// 显示类型,0表示总是显示,1表示工厂模式下显示,2根据运营商码显示
2,获取系统内其他AGPS配置接口
MtkAgpsProfile profile = mProfileMgr.getProfile("name");
// name 在实际使用中只能用已经成功在数据库中保存的profile code 进行代替(如GOOGLE,
NOKIA或者自己配置成功的)。
3,设置当前有效AGPS接口
mProfileMgr.setCurrentProfile("GOOGLE");
// GOOGLE 可以用NOKIA或者自己修改后的profile code 代替。
mProfileMgr.switchAgpsProfile(); // 这个函数调用后才可以使得刚才设置项立即生效。
4,修改系统内的AGPS配置接口
// updateItem(String profile_name, String item_name, String value)
mProfileMgr.updateItem(mProfileMgr.getCurrentProfileCode(), //当前有效AGPS服
务器
mProfileMgr.PROFILE_PORT, "7275");
// 这种更改的方法profile_name可以是所有已经写入到系统的profile.name,
// item_name只能是mProfileMgr.PROFILE_NAME/mProfileMgr.PROFILE_ADDRESS/
// mProfileMgr.PROFILE_PORT/mProfileMgr.PROFILE_TLS中的一个
5,新增一个有效Agps服务器接口
ContentValues values = new ContentValues();
values.put(AgpsProfileColumns.PROFILE_CODE, "NewServer");
values.put(AgpsProfileColumns.PROFILE_IP_ADDRESS, "173.173.173.173");
values.put(AgpsProfileColumns.PROFILE_SLP_NAME, "NewServerName");
values.put(AgpsProfileColumns.PROFILE_BACKUP_SLP_NAME_VAR,
"NewServerNameBackup");
values.put(AgpsProfileColumns.PROFILE_PORT, "7275");
values.put(AgpsProfileColumns.PROFILE_TTL, "1");
values.put(AgpsProfileColumns.PROFILE_SHOW_TYPE, "0");
profile_manager.insertOrUpdateProfile(profileCode, values);
6,为了达到恢复出厂设置,可以采用以下接口实现:
AgpsProfileManager mProfileMgr =
AgpsProfileManager.getProfileManager(context);
mProfileMgr.resetAllProfile();

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top