package com.yarin.android.Examples_08_05;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import javax.security.auth.PrivateCredentialPermission;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class Activity01 extends Activity
{
private final String DEBUG_TAG = "Activity01";
private static final String SERVERIP = "192.168.0.103";
private static final int SERVERPORT = 54321;
private Thread mThread = null;
private Socket mSocket = null;
private Button mButton_In = null;
private Button mButton_Send= null;
private EditText mEditText01 = null;
private EditText mEditText02 = null;
private BufferedReader mBufferedReader = null;
private PrintWriter mPrintWriter = null;
private String mStrMSG = "";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mButton_In = (Button)findViewById(R.id.Button_In);
mButton_Send = (Button)findViewById(R.id.Button_Send);
mEditText01=(EditText)findViewById(R.id.EditText01);
mEditText02=(EditText)findViewById(R.id.EditText02);
//登陆
mButton_In.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
try
{
//连接服务器
mSocket = new Socket(SERVERIP, SERVERPORT);
//获取输入输出流
mBufferedReader = new BufferedReader(new InputStreamReader(mSocket.getInputStream()));
mPrintWriter=new PrintWriter(mSocket.getOutputStream(), true);
}
catch (Exception e)
{
// TODO: handle exception
Log.e(DEBUG_TAG, e.toString());
}
}
});
//发送消息
mButton_Send.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
try
{
//获取编辑框中输入的内容
String str = mEditText02.getText().toString() + "\n";
//发送至服务器
mPrintWriter.print(str);
mPrintWriter.flush();
}
catch (Exception e)
{
// TODO: handle exception
Log.e(DEBUG_TAG, e.toString());
}
}
});
mThread = new Thread(mRunnable);
mThread.start();
}
//线程:监听服务器发送来的消息
private Runnable mRunnable = new Runnable()
{
public void run()
{
while (true)
{
try
{
if ( (mStrMSG = mBufferedReader.readLine()) != null )
{
//消息换行
mStrMSG+="\n";
mHandler.sendMessage(mHandler.obtainMessage());
}
// 发送消息
}
catch (Exception e)
{
Log.e(DEBUG_TAG, e.toString());
}
}
}
};
Handler mHandler = new Handler()
{
public void handleMessage(Message msg)
{
super.handleMessage(msg);
//刷新
try
{
//添加聊天记录
mEditText01.append(mStrMSG);
}
catch (Exception e)
{
Log.e(DEBUG_TAG, e.toString());
}
}
};
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
android聊天室.rar (43个子文件)
郭嵘 聊天室
Activity01
.project 850B
project.properties 648B
hs_err_pid3416.log 4KB
src
com
yarin
android
Examples_08_05
Client2.class 1KB
Server.class 2KB
Activity01.java 3KB
Server.java 3KB
Server$ThreadServer.class 2KB
Client2$Sender.class 1KB
AndroidManifest.xml 784B
res
drawable-ldpi
drawable-hdpi
drawable
icon.png 3KB
ic_launcher.png 2KB
drawable-mdpi
layout
main.xml 1KB
drawable-xhdpi
values
strings.xml 175B
.settings
org.eclipse.jdt.core.prefs 177B
org.eclipse.core.resources.prefs 198B
assets
gen
com
yarin
android
Examples_08_05
BuildConfig.java 174B
R.java 978B
hs_err_pid3252.log 4KB
default.properties 120B
hs_err_pid1652.log 4KB
.classpath 364B
bin
resources.ap_ 9KB
classes
com
yarin
android
Examples_08_05
R$layout.class 436B
BuildConfig.class 373B
R$drawable.class 477B
R$attr.class 382B
Activity01$4.class 2KB
Server.class 2KB
Activity01$3.class 2KB
Server$ThreadServer.class 3KB
Activity01.class 3KB
R$id.class 532B
R.class 629B
R$string.class 469B
Activity01$1.class 2KB
Activity01$2.class 1KB
AndroidManifest.xml 784B
dexedLibs
res
drawable-ldpi
drawable
icon.png 3KB
ic_launcher.png 2KB
classes.dex 9KB
Activity01.apk 15KB
Server.java 3KB
共 43 条
- 1
资源评论
- all4coding2014-10-21运行不起来,应该是自己的问题
guorong19901105
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 人工智能ai相关教学课程快
- Suno的冲击-AI音乐来了-学习备用.pdf
- KIMI大模型浏览器插件
- b61fa64a08a02de0e0d49d53bb84c444.amr
- 分布式系统中Java后端开发技术及其应用实践.pdf
- 5ffd9193f6aec31bbf16030a46680dc7.avi
- DA14531-蓝牙传感器连接传输数据固件
- 极限存在准则与两个重要极限
- logisim实验MIPS运算器(ALU)设计(内含4位先行进位74182、四位快速加法器、32位快速加法器)-Educoder_logisim里面连线,实现4位先行进位74182和4位快速加法器-C
- 高等数学第一章第二节数列的极限
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功