android客户端利用sokcet通信和向Java服务端发请求,Java服务端把文件发给android客户端
调试时需要将 android端 连接的 ip地址 改为您服务器的ip地址 即可
服务端截图:
android端截图
android端源码如下:
package com.yqq.SocketClient;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.view.View;
import android.widget.Toast;
public class SocketClient extends Activity {
private Socket socket;
InputStream inputStream;
OutputStream outputStream;
Handler mHandler=new Handler(){
public void handleMessage(Message msg) {
if(msg.what==0x123){
Toast.makeText(SocketClient.this,"文件下载完毕", 0).show();
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(com.example.socketclient.R.layout.main);
}
public void downFile(View v){
new Thread(new Runnable() {
@Override
public void run() {
try {
socket=new Socket(InetAddress.getByName("172.20.113.1"), 20000);
inputStream=socket.getInputStream();
outputStream=socket.getOutputStream();
outputStream.write("askForFile".getBytes());
outputStream.flush();
//socket.shutdownOutput();
Thread.sleep(3000);
byte[] buffer=new byte[1024];
File file=new File(getCacheDir(),"测试");
FileOutputStream fileOutputStream=new FileOutputStream(file);
while(inputStream.read(buffer)!=-1){
fileOutputStream.write(buffer);
}
Looper.prepare();
Message message=Message.obtain();
message.what=0x123;
mHandler.sendMessage(message);
Looper.loop();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}).start();
}
}
资源文件列表
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/.classpath , 475
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/.project , 848
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/AndroidManifest.xml , 870
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/AndroidManifest.xml , 870
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/R.txt , 30533
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/SocketClient.apk , 830850
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$anim.class , 629
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$attr.class , 5136
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$bool.class , 763
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$color.class , 594
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$dimen.class , 1530
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$drawable.class , 5191
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$id.class , 2556
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$integer.class , 445
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$layout.class , 1629
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$string.class , 1141
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$style.class , 9582
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R$styleable.class , 6541
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/android/support/v7/appcompat/R.class , 1015
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/BuildConfig.class , 357
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$anim.class , 617
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$attr.class , 5124
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$bool.class , 751
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$color.class , 582
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$dimen.class , 1518
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$drawable.class , 5214
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$id.class , 2575
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$integer.class , 433
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$layout.class , 1645
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$string.class , 1161
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$style.class , 9638
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R$styleable.class , 6713
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/example/socketclient/R.class , 959
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/yqq/SocketClient/SocketClient$1.class , 926
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/yqq/SocketClient/SocketClient$2.class , 2449
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes/com/yqq/SocketClient/SocketClient.class , 1382
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/classes.dex , 1403960
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/dexedLibs/android-support-v4-c9a715eed21afbcd9a7d526b2b05b51f.jar , 273766
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/dexedLibs/android-support-v7-appcompat-fda349de6a1d9a4dc638dcfa44c2cf05.jar , 150574
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/dexedLibs/appcompat_v7_4-736f191b3a059f4ed14eb1f4956d8b2d.jar , 166
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/jarlist.cache , 374
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/res/crunch/drawable-hdpi/ic_launcher.png , 5964
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/res/crunch/drawable-mdpi/ic_launcher.png , 3112
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/res/crunch/drawable-xhdpi/ic_launcher.png , 9355
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/res/crunch/drawable-xxhdpi/ic_launcher.png , 17889
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/bin/resources.ap_ , 384827
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/gen/android/support/v7/appcompat/R.java , 41086
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/gen/com/example/socketclient/BuildConfig.java , 166
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/gen/com/example/socketclient/R.java , 180800
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/ic_launcher-web.png , 51394
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/libs/android-support-v4.jar , 758727
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/proguard-project.txt , 781
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/project.properties , 609
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/drawable-hdpi/ic_launcher.png , 7658
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/drawable-mdpi/ic_launcher.png , 3777
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/drawable-xhdpi/ic_launcher.png , 12516
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/drawable-xxhdpi/ic_launcher.png , 24777
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/layout/main.xml , 471
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/values/strings.xml , 82
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/values/styles.xml , 699
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/values-v11/styles.xml , 331
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/res/values-v14/styles.xml , 388
Socket═¿╨┼╧┬╘╪╬─╝■/SocketClient/src/com/yqq/SocketClient/SocketClient.java , 1994
Socket═¿╨┼╧┬╘╪╬─╝■/SocketFileTest/.classpath , 232
Socket═¿╨┼╧┬╘╪╬─╝■/SocketFileTest/.project , 390
Socket═¿╨┼╧┬╘╪╬─╝■/SocketFileTest/bin/com/yqq/socketTest/SocketTest$ReadThread.class , 3206
Socket═¿╨┼╧┬╘╪╬─╝■/SocketFileTest/bin/com/yqq/socketTest/SocketTest.class , 931
Socket═¿╨┼╧┬╘╪╬─╝■/SocketFileTest/src/com/yqq/socketTest/SocketTest.java , 3917
