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();