导航:首页 > 操作系统 > android开发apn

android开发apn

发布时间:2023-01-30 23:13:23

⑴ 安卓手机APN如何设置

我列出的是最全的版本。。
设置前最好把"菜单-设置-无线控件-移动网络设置-接入点名称"中的APN全部删除。
首先待机情况下-菜单-设置-无线控件-移动网络设置-接入点名称
进去以后,按MENU
"新APN"
一、
名称:CMWAP
(这个名字不重要,叫什么都行)
APN:cmwap
代理:010.000.000.172
(注意是三位数的)
端口:80
MCC:460
MNC:00
APN类型:default
(这个要自己输入的)
按MENU保存
二、
名称:CMNET设置
(这个名字不重要,叫什么都行)
APN:cmnet
MCC:460
MNC:00
APN类型:default
(这个要自己输入的)
按MENU保存
三、
名称:彩信
APN:cmwap
(这个名字不重要,叫什么都行)
MMSC:mmsc.monternet.com
(不能有http://出现,要直接写网址)
彩信代理:010.000.000.172
(注意是三位数的)
彩信端口:80
MCC:460
MNC:00
APN类型:mms
(这个要自己输入的)
按MENU保存
最终说明:
1、没写的地方不用设置。
2、最好先把WIFI关掉。
3、全部设置完后,接入点名称下能看到这3个设置项,点击激活CMWAP。这时如果出现绿色的小E和上下两上箭头,就设置成功了。如果不行就照
下面的做:
说明一下:“激活CMWAP的话QQ
和UCWEB可以用,激活CMNET,自带浏览器和android市场就正常工作了。
4、上面的都设置完后,进入手机拨号:输入*#*#4636#*#*——点“手机信息”——拉倒屏幕最下面找到“切换DNS”,并点击它,旁边显示会
“0.0.0.0
allowed”,到这步就算OK啦。冲浪去吧!
5、理论上这个设置在android是通用的。测试机器G4
TATTOO,版本Android1.6。

⑵ 教你如何开关Android的APN网络

由于Android对于APN的网络API没有公开,不过我们可以阅读源代码,然后进行数据库操作,系统会自动监听数据库的变化,从而实现开启或者关闭APN。

大家可以研究一下frameworks/base/core/java/android/provider/Telephony.java这个类,
比较重要的就是 URI 和数据库字段: content://telephony/carriers
字段可以在Telephony.java中找到。

其实原理很简单 :
1 、 当开启APN的时候,设置一个正确的移动或者联通的APN
2、 关闭的时候设置一个错误APN就会自动关闭网络

请看代码:Activity:

Java代码
package cc.mdev.apn;

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;

/**
* 这里是Activity
* @author SinFrancis wong

* @since 2010-01-08
*/
public class Main extends Activity {
/** Called when the activity is first created. */
Uri uri = Uri.parse("content://telephony/carriers");
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

Button open= (Button) findViewById(R.id.open);
Button close= (Button) findViewById(R.id.close);

open.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
openAPN();
}
});

close.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
closeAPN();
}
});

}

public void openAPN(){

List<APN> list = getAPNList();
for (APN apn : list) {
ContentValues cv = new ContentValues();
cv.put("apn", APNMatchTools.matchAPN(apn.apn));
cv.put("type", APNMatchTools.matchAPN(apn.type));
getContentResolver().update(uri, cv, "_id=?", new String[]{apn.id});

}
}

public void closeAPN(){
List<APN> list = getAPNList();
for (APN apn : list) {
ContentValues cv = new ContentValues();
cv.put("apn", APNMatchTools.matchAPN(apn.apn)+"mdev");
cv.put("type", APNMatchTools.matchAPN(apn.type)+"mdev");
getContentResolver().update(uri, cv, "_id=?", new String[]{apn.id});

}
}

private List<APN> getAPNList(){
String tag = "Main.getAPNList()";

//current不为空表示可以使用的APN
String projection[] = {"_id,apn,type,current"};
Cursor cr = this.getContentResolver().query(uri, projection, null, null, null);

List<APN> list = new ArrayList<APN>();

while(cr!=null && cr.moveToNext()){
Log.d(tag, cr.getString(cr.getColumnIndex("_id")) + " " + cr.getString(cr.getColumnIndex("apn")) + " " + cr.getString(cr.getColumnIndex("type"))+ " " + cr.getString(cr.getColumnIndex("current")));
APN a = new APN();
a.id = cr.getString(cr.getColumnIndex("_id"));
a.apn = cr.getString(cr.getColumnIndex("apn"));
a.type = cr.getString(cr.getColumnIndex("type"));
list.add(a);
}
if(cr!=null)
cr.close();
return list;
}

public static class APN{
String id;
String apn;
String type;
}

}

APNMatchTools.java

Java代码
package cc.mdev.apn;

/**
* 这里是APN匹配,用于匹配移动或者联通的APN
* @author SinFrancis wong

* @since 2010-01-08
*
*/
public final class APNMatchTools {

public static class APNNet{
/**
* 中国移动cmwap
*/
public static String CMWAP = "cmwap";

/**
* 中国移动cmnet
*/
public static String CMNET = "cmnet";

//中国联通3GWAP设置 中国联通3G因特网设置 中国联通WAP设置 中国联通因特网设置
//3gwap 3gnet uniwap uninet

/**
* 3G wap 中国联通3gwap APN
*/
public static String GWAP_3 = "3gwap";

/**
* 3G net 中国联通3gnet APN
*/
public static String GNET_3="3gnet";

/**
* uni wap 中国联通uni wap APN
*/
public static String UNIWAP="uniwap";
/**
* uni net 中国联通uni net APN
*/
public static String UNINET="uninet";
}

public static String matchAPN(String currentName) {
if("".equals(currentName) || null==currentName){
return "";
}
currentName = currentName.toLowerCase();
if(currentName.startsWith(APNNet.CMNET))
return APNNet.CMNET;
else if(currentName.startsWith(APNNet.CMWAP))
return APNNet.CMWAP;
else if(currentName.startsWith(APNNet.GNET_3))
return APNNet.GNET_3;
else if(currentName.startsWith(APNNet.GWAP_3))
return APNNet.GWAP_3;
else if(currentName.startsWith(APNNet.UNINET))
return APNNet.UNINET;
else if(currentName.startsWith(APNNet.UNIWAP))
return APNNet.UNIWAP;
else if(currentName.startsWith("default"))
return "default";
else return "";
// return currentName.substring(0, currentName.length() - SUFFIX.length());
}

}
最后不要忘记加上修改APN的权限:

Xml代码
<uses-permission android:name="android.permission.WRITE_APN_SETTINGS"></uses-permission>
经过测试在G1 上联通和移动卡均是成功的。

安卓系统如何设置APN

我列出的是最全的版本。。x0dx0a设置前最好把"菜单-设置-无线控件-移动网络设置-接入点名称"中的APN全部删除。x0dx0a首先待机情况下-菜单-设置-无线控件-移动网络设置-接入点名称x0dx0a进去以后,按MENU "新APN"x0dx0a一、 名称:CMWAP (这个名字不重要,叫什么都行)x0dx0aAPN:cmwapx0dx0a代理:010.000.000.172 (注意是三位数的)x0dx0a端口:80x0dx0aMCC:460x0dx0aMNC:00x0dx0aAPN类型:default (这个要自己输入的)x0dx0a按MENU保存x0dx0a二、 名称:CMNET设置 (这个名字不重要,叫什么都行)x0dx0aAPN:cmnetx0dx0aMCC:460x0dx0aMNC:00x0dx0aAPN类型:default (这个要自己输入的)x0dx0a按MENU保存x0dx0a三、 名称:彩信x0dx0aAPN:cmwap (这个名字不重要,叫什么都行)x0dx0aMMSC:mmsc.monternet.com (不能有http://出现,要直接写网址)x0dx0a彩信代理:010.000.000.172 (注意是三位数的)x0dx0a彩信端口:80x0dx0aMCC:460x0dx0aMNC:00x0dx0aAPN类型:mms (这个要自己输入的)x0dx0a按MENU保存x0dx0a最终说明:x0dx0ax0dx0a1、没写的地方不用设置。x0dx0a2、最好先把WIFI关掉。x0dx0a3、全部设置完后,接入点名称下能看到这3个设置项,点击激活CMWAP。这时如果出现绿色的小E和上下两上箭头,就设置成功了。如果不行就照 下面的做:x0dx0a说明一下:“激活CMWAP的话QQ 和UCWEB可以用,激活CMNET,自带浏览器和android市场就正常工作了。x0dx0a4、上面的都设置完后,进入手机拨号:输入*#*#4636#*#*——点“手机信息”——拉倒屏幕最下面找到“切换DNS”,并点击它,旁边显示会 “0.0.0.0 allowed”,到这步就算OK啦。冲浪去吧!x0dx0a5、理论上这个设置在android是通用的。测试机器G4 TATTOO,版本Android1.6。

⑷ 安卓系统如何设置APN

我列出的是最全的版本。。
设置前最好把"菜单-设置-无线控件-移动网络设置-接入点名称"中的APN全部删除。
首先待机情况下-菜单-设置-无线控件-移动网络设置-接入点名称
进去以后,按MENU "新APN"
一、 名称:CMWAP (这个名字不重要,叫什么都行)
APN:cmwap
代理:010.000.000.172 (注意是三位数的)
端口:80
MCC:460
MNC:00
APN类型:default (这个要自己输入的)
按MENU保存
二、 名称:CMNET设置 (这个名字不重要,叫什么都行)
APN:cmnet
MCC:460
MNC:00
APN类型:default (这个要自己输入的)
按MENU保存
三、 名称:彩信
APN:cmwap (这个名字不重要,叫什么都行)
MMSC:mmsc.monternet.com (不能有http://出现,要直接写网址)
彩信代理:010.000.000.172 (注意是三位数的)
彩信端口:80
MCC:460
MNC:00
APN类型:mms (这个要自己输入的)
按MENU保存
最终说明:

1、没写的地方不用设置。
2、最好先把WIFI关掉。
3、全部设置完后,接入点名称下能看到这3个设置项,点击激活CMWAP。这时如果出现绿色的小E和上下两上箭头,就设置成功了。如果不行就照 下面的做:
说明一下:“激活CMWAP的话QQ 和UCWEB可以用,激活CMNET,自带浏览器和android市场就正常工作了。
4、上面的都设置完后,进入手机拨号:输入*#*#4636#*#*——点“手机信息”——拉倒屏幕最下面找到“切换DNS”,并点击它,旁边显示会 “0.0.0.0 allowed”,到这步就算OK啦。冲浪去吧!
5、理论上这个设置在android是通用的。测试机器G4 TATTOO,版本Android1.6。

阅读全文

与android开发apn相关的资料

热点内容
udp命令字 浏览:659
app服务端java源码 浏览:798
电脑用文件夹玩大型游戏 浏览:254
安卓耳塞失灵怎么办 浏览:765
华三交换机保存命令 浏览:605
命令方块怎么调键盘 浏览:841
不把密码存在服务器上怎么办 浏览:398
怎么让指令方块的命令消失 浏览:543
用单片机做plc 浏览:404
云服务器进入子目录命令 浏览:795
服务器机柜如何配电 浏览:578
怎么删除iphone资源库里的app 浏览:940
pdf鱼 浏览:648
单片机pcf8591什么作用 浏览:805
sql命令学院 浏览:283
加密软件在电脑那个盘 浏览:988
android获取外部存储 浏览:573
怎么查自己家的服务器地址 浏览:858
编程c语言工作好不好 浏览:569
单片机焊接地怎么连接 浏览:694