77范文网 - 专业文章范例文档资料分享平台

Android APN开发流程分析(4)

来源:网络收集 时间:2019-04-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

Toast.makeText(ApnNew.this, \is unsuccess\Toast.LENGTH_SHORT).show(); } };

private OnClickListener existlis = new OnClickListener(){

@Override

public void onClick(View v) { int ri = checkAPN(); if(ri == -1)

Toast.makeText(ApnNew.this, \Toast.LENGTH_SHORT).show(); else

Toast.makeText(ApnNew.this, \Toast.LENGTH_SHORT).show(); } }; /*

* 入口

* 设置指定的APN接入点 * */

public void setCmwapAPN() { try {

if (!isCmwap()) {

int net_type = getNetWorkType(); m_oldNetWorkType = net_type;

if ((phoneSettedApnID = checkAPN()) != -1) {

SetDefaultAPN(phoneSettedApnID); } else {

InsetAPN();

SetDefaultAPN(apnd_id); }

不存在存在此APN\此APN\

Thread.sleep(8000L); } }

catch (Exception e) {

Log.i(\ } }

private int apnd_id = 0; int m_oldApnId = -1; int m_oldNetWorkType = -1;

private int phoneSettedApnID = -1;//当前APNid private static final Uri APN_TABLE_URI = Uri.parse(\

private static final Uri PREFERRED_APN_URI = Uri.parse(\ private String getMCC() {

TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String numeric = tm.getSimOperator(); String mcc = numeric.substring(0, 3); Log.i(\ return mcc; }

private String getMNC() {

TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String numeric = tm.getSimOperator();

String mnc = numeric.substring(3, numeric.length()); Log.i(\ return mnc; }

private String getSimOperator() {

TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);

String SimOperator = tm.getSimOperator(); return SimOperator; }

public ApnNode getDefaultAPN() {

String id = \ String apn = \ String proxy = \ String name = \ String port = \ String type = \ String mcc = \ String mnc = \ String numeric = \

ApnNode apnNode = new ApnNode(); // Uri uri = Uri.parse(\

Cursor mCursor = getContentResolver().query(PREFERRED_APN_URI, null, null, null, null); if (mCursor == null) {

// throw new Exception(\ return null; }

while (mCursor != null && mCursor.moveToNext()) {

id = mCursor.getString(mCursor.getColumnIndex(\ name = mCursor.getString(mCursor.getColumnIndex(\ apn = mCursor.getString(mCursor.getColumnIndex(\ proxy = mCursor.getString(mCursor.getColumnIndex(\ port = mCursor.getString(mCursor.getColumnIndex(\ mcc = mCursor.getString(mCursor.getColumnIndex(\ mnc = mCursor.getString(mCursor.getColumnIndex(\

numeric = mCursor.getString(mCursor.getColumnIndex(\ Log.d(\apn + \ }

phoneSettedApnID = Integer.valueOf(id); apnNode.setName(name); apnNode.setApn(apn); apnNode.setProxy(proxy);

apnNode.setPort(port); apnNode.setMcc(mcc); apnNode.setMnc(mnc);

apnNode.setNumeric(numeric); return apnNode; }

public boolean isCurretApn() {

ApnNode apnNode = new ApnNode(); apnNode.setName(\中国电信CTNET\ apnNode.setApn(\

apnNode.setProxy(\ apnNode.setPort(\ apnNode.setMcc(getMCC()); apnNode.setMnc(getMNC());

apnNode.setNumeric(getSimOperator()); ApnNode checkApn = getDefaultAPN(); if ((apnNode.getApn().equals(checkApn.getApn()) && apnNode.getMcc().equals(checkApn.getMcc()) && apnNode.getMnc().equals(checkApn.getMnc()) && apnNode.getNumeric().equals( checkApn.getNumeric())) && (checkApn.getType() == null || \|| \

(apnNode.getApn().equals(checkApn.getApn()) && checkApn.getProxy().equals(\ {

return true; }

m_oldApnId = phoneSettedApnID; return false; }

/**

* 获得网络连接管理 *

* @return */

private ConnectivityManager getConnectManager() {

ConnectivityManager m_ConnectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

return m_ConnectivityManager; }

/**

* 获得当前联网类型wifi or mobile *

* @return */

private int getNetWorkType() {

if (getConnectManager() != null) {

NetworkInfo networkInfo getConnectManager().getActiveNetworkInfo(); if (networkInfo != null)

return networkInfo.getType(); return -1; } else {

return -1; } }

private boolean isCmwap() {

int net_type = getNetWorkType();

if (net_type == ConnectivityManager.TYPE_MOBILE) {

return isCurretApn(); }

else if (net_type == ConnectivityManager.TYPE_WIFI) {

return false; }

return false; }

public boolean setDefaultApn(int apnId) {

boolean res = false;

ContentResolver resolver = getContentResolver(); ContentValues values = new ContentValues(); values.put(\

try

=

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Android APN开发流程分析(4)在线全文阅读。

Android APN开发流程分析(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/622189.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: