20115 月19
Android:设置APN为cmnet源码
public class APNActivity extends Activity { public static final Uri APN_URI = Uri.parse("content://telephony/carriers"); public static final Uri CURRENT_APN_URI = Uri.parse("content://telephony/carriers/preferapn"); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); int _cmnetId = addAPN(); SetAPN(_cmnetId); }
public void checkAPN(){ // 检查当前连接的APN Cursor cr = getContentResolver().query(CURRENT_APN_URI, null, null, null, null); while (cr != null && cr.moveToNext()) { // APN id String id = cr.getString(cr.getColumnIndex("_id")); // APN name String apn = StringUtils.null2String(cr .getString(cr.getColumnIndex("apn"))); // Toast.makeText(getApplicationContext(), // "当前 id:" + id + " apn:" + apn, Toast.LENGTH_LONG).show(); } //新增一个cmnet接入点 public int addAPN() { int id = -1; ContentResolver resolver = this.getContentResolver(); ContentValues values = new ContentValues(); values.put("name", "cmnet"); values.put("apn", "cmnet"); Cursor c = null; Uri newRow = resolver.insert(APN_URI, values); if (newRow != null) { c = resolver.query(newRow, null, null, null, null); int idIndex = c.getColumnIndex("_id"); c.moveToFirst(); id = c.getShort(idIndex); } if (c != null) c.close(); return id; } //设置接入点 public void SetAPN(int id) { ContentResolver resolver = this.getContentResolver(); ContentValues values = new ContentValues(); values.put("apn_id", id); resolver.update(CURRENT_APN_URI, values, null, null); } }
本文地址:https://wizzer.cn/archives/1775 , 转载请保留.