您的位置:首页 > 其它

安卓Socket开发注意事项

2014-03-09 19:03 239 查看
如果要在安卓app里用到Socket通信,要满足:

1、在写代码的activity里import进Socket相关的包,这个很easy,如果你不知道要import什么包,也可以先不指定,可 以直接写例如"Socket sokt = new Socket();"这样的话,由于没有导入Socket的package,所以编译器会自动提示 你需要import某个包,然后按照提示点就ok了。

2、修改项目的"mamanifest.xml",这一点很容易被人忽视,尤其是初次在安卓里用Socket的童鞋,竟然会一头雾 水“我代码没问题,就是不知道为何运行不对?!!”网上很多教程都教你怎么在安卓里写Socket代码,很少有人 提出要设置manifest.xml才能开启安卓app网络权限,过程如下:

2.1双击选择AndroidManifest.xml



2.2在<manifest>标签后加入<uses-permission android:name="android.permission.INTERNET" />这句话,如下图 所示



完成上述两步之后,就可以在安卓app里用到internet权限,使用Socket了!

代码可以参考下面的:

//申请Socket相关的变量
String Serverip = "172.18.8.124";
int Serverport = 9050;
static Socket server;

//在发送/接收数居前,先建立socket链接
server = new Socket(Serverip, Serverport);

//发送内容(字符串s)
public void send(String s)
{
PrintWriter out = null;
try
{
out = new PrintWriter(server.getOutputStream());
}
catch (IOException e)
{
e.printStackTrace();
}
out.print(s);
out.flush();
}

//接收内容(存入字符串line)
public void client_output() throws UnsupportedEncodingException, IOException
{
BufferedReader in = null;
in = new BufferedReader(new InputStreamReader(server.getInputStream(), "GB2312"));
String line = null;
line = in.readLine();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: