学生做网站教程,Wordpress封面图片自动切换,wordpress 时光轴插件,网络广告有哪些形式PC做服务器#xff0c;安卓做客户端。 安卓获取输入框的内容并发送#xff0c;然后等待接收服务器的消息 服务器先行开启#xff0c;接收到客户端的数据#xff0c;然后回复消息。 实现了对线程类的封装#xff0c;通过按钮启动线程发送并接收 服务器代码#xff08;java…PC做服务器安卓做客户端。 安卓获取输入框的内容并发送然后等待接收服务器的消息 服务器先行开启接收到客户端的数据然后回复消息。 实现了对线程类的封装通过按钮启动线程发送并接收 服务器代码java版 import java.io.*;
import java.net.*;/*
需求定义端点接收数据并打印在控制台服务端
1.创建服务端serversocket对象并指定端口当不指定时使用connect方法指定
2. 获取连接过来的客户端对象通过serversocket的accept方法等待阻塞式无连接一直等待
3.客户端如果发过来数据服务端使用对应连接的读取流获取发过来数据打印在服务台
4关闭服务端可选
*/class tcpServer
{public static void main(String[] args) throws IOException{//建立服务端socket服务并监听端口ServerSocket ss new ServerSocket(30000);
// 采用循环不断接受来自客户端的请求while (true){//通过accept方法获取链接过来的客户端对象(s中有内容端口IP属性Socket s ss.accept();/*接收手机数据*///IPString ip s.getInetAddress().getHostAddress();System.out.println(ip...连接成功 );//内容获取客户端发送过来的数据那么要使用客户端对象sInputStream in s.getInputStream();byte[] buf new byte[1024];int lenin.read(buf);String content new String(buf,0,len);System.out.println(内容content );/*回发给手机数据*/OutputStream os s.getOutputStream();os.write(欢迎回来学安卓您收到了泡泡的祝福\n.getBytes(utf-8));//s.close();//关闭客户端服务器可以控制客户//ss.close();//关闭服务端可选操作
}
}
} tcpServer.java 安卓代码安卓版 后台代码 package com.simpleclient;import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;public class MainActivity extends Activity {private EditText mEditText null; private TextView mTextView null; private Button mButton null;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mButton (Button)findViewById(R.id.mButton); mEditText (EditText)findViewById(R.id.mEditText); mTextView (TextView)findViewById(R.id.mTextView); mButton.setOnClickListener(new StartSocketListener());}//启动按钮监听class StartSocketListener implements OnClickListener{Overridepublic void onClick(View v) {new ServerThread().start();} }class ServerThread extends Thread{// TCP 协议Overridepublic void run(){Socket socketnull;try{/* 指定Server的IP地址此地址为局域网地址如果是使用WIFI上网则为PC机的WIFI IP地址 * 在ipconfig查看到的IP地址如下 * Ethernet adapter 无线网络连接: * Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : 192.168.1.100 */ // 1建立连接到远程服务器的Socketsocket new Socket(192.168.1.108 , 30000); //①Log.d(TCP, C: Connecting...); //2向服务端发送数据 BufferedWriter bufwriter new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));// 把用户输入的内容发送给server String lineWrite mEditText.getText().toString(); Log.d(TCP, C: Sending: lineWrite );bufwriter.write(lineWrite);//向服务端发送数据 bufwriter.newLine(); bufwriter.flush(); //3接收服务器信息 // 将Socket对应的输入流包装成BufferedReaderBufferedReader br new BufferedReader(new InputStreamReader(socket.getInputStream()));// 进行普通IO操作,得到服务器信息String line br.readLine();mTextView.setText(读取到自服务器的数据 line);// 关闭输入流、socketbr.close();//socket.close();}catch(UnknownHostException e) { Log.e(TCP errror, 192.168.1.108 is unkown server!); } catch(Exception e) { e.printStackTrace(); } finally { try { socket.close(); } catch(Exception e) { e.printStackTrace(); } } }}} MainActivity.java 前台代码 ?xml version1.0 encodingutf-8?
LinearLayout xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:orientationverticalandroid:layout_widthfill_parentandroid:layout_heightfill_parent
!-- 获取输入框信息并发送出去 --EditTextandroid:idid/mEditTextandroid:layout_widthfill_parentandroid:layout_height40dpandroid:cursorVisiblefalseandroid:editabletrue android:ems10 /EditTextTextViewandroid:idid/mTextViewandroid:layout_widthfill_parentandroid:layout_height50dpandroid:ems10 /TextViewButtonandroid:idid/mButtonandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:textTCP客户端---发送 //LinearLayout activity_main.xml 权限代码 ?xml version1.0 encodingutf-8?
manifest xmlns:androidhttp://schemas.android.com/apk/res/androidpackagecom.simpleclientandroid:versionCode1android:versionName1.0 uses-sdkandroid:minSdkVersion14android:targetSdkVersion19 /uses-permission android:nameandroid.permission.INTERNET/applicationandroid:allowBackuptrueandroid:icondrawable/ic_launcherandroid:labelstring/app_nameandroid:themestyle/AppTheme activityandroid:name.MainActivityandroid:labelstring/app_name intent-filteraction android:nameandroid.intent.action.MAIN /category android:nameandroid.intent.category.LAUNCHER //intent-filter/activity/application/manifest use_permisson 效果 问题乱码问题还没有解决掉~转载于:https://www.cnblogs.com/shuqingstudy/p/4964057.html