现在要设置手机cmwap上网方式,现在代码可以设置指定_id的相关参数,但是不知如何获得默认接入点的_id?求解,
我看Carriers这个类里没有哪个参数与默认接入点的有关系

解决方案 »

  1.   

    我在公司写过设置APN的代码。周一再告诉你吧。
      

  2.   

    你参考一下吧,希望能帮到你。    public static final String RESTORE_CARRIERS_URI =
                "content://telephony/carriers/restore";
            public static final String PREFERRED_APN_URI =
                "content://telephony/carriers/preferapn";
            public static final String APN_ID = "apn_id";
            public static final String APN_ID_ONE = "apn_id.0";
            public static final String APN_ID_TWO = "apn_id.1";
        private static final Uri PREFERAPN_URI = Uri.parse(PREFERRED_APN_URI);
        private static final String ChinaUnionPLMN = "46001";
        private static final int ID_INDEX = 0;
        private static final int NAME_INDEX = 1;
        private static final int APN_INDEX = 2;
        private static final int TYPES_INDEX = 3;    private ApnInfo getSelectedApn() {
            ApnInfo selectedApn = new ApnInfo();
            Cursor cursor = mContext.getContentResolver().query(PREFERAPN_URI, new String[] {"_id", "name", "apn", "type"},
                    String.valueOf(1), null, Telephony.Carriers.DEFAULT_SORT_ORDER);
            if (cursor.getCount() > 0) {
                cursor.moveToFirst();
                String id = cursor.getString(ID_INDEX);
                String name = cursor.getString(NAME_INDEX);
                String apn = cursor.getString(APN_INDEX);
                String type = cursor.getString(TYPES_INDEX);
                selectedApn.setId(id);
                selectedApn.setName(name);
                selectedApn.setApn(apn);
                selectedApn.setType(type);
            }
            cursor.close();
            return selectedApn;
        }
      

  3.   


    String.valueOf(1),这段不是很理解呀,请兄弟解释下。。
      

  4.   

    这句意思是,取_id为1的那一行。这段代码的意思是,获取当前的apn信息。
      

  5.   


    我查看了carriers表,第一个apn的_id是1,第二个apn的_id为2,但是如果用户手动把第二个apn设置成了默认的apn,String.valueOf(1),那岂不是还是获得第二个apn的信息。。??