PC服务端,用于发送图片
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) {
try {
ServerSocket server = new ServerSocket();
server.bind(new InetSocketAddress(33336));
Socket socket = server.accept();
//socket.getInetAddress();
DataOutputStream dos = new DataOutputStream(socket.getOutputStream());
FileInputStream fis = new FileInputStream("E:/workspace/android/Server/test.png");
int size = fis.available();
byte[] data = new byte[size];
fis.read(data);
dos.writeInt(size);
dos.write(data);
dos.flush();
dos.close();
fis.close();
socket.close();
server.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Android客户端用于接收图片并展示
package com.tw;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.net.Socket;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Bitmap.CompressFormat;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
public class TestActivity extends Activity {
private ImageView imageView = null;
private Bitmap bmp = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imageView = (ImageView) findViewById(R.id.imageView1);
Button btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Thread t = new Thread() {
@Override
public void run() {
super.run();
Socket socket = null;
try {
socket = new Socket("192.168.102.67", 33336);
DataInputStream dataInput = new DataInputStream(
socket.getInputStream());
int size = dataInput.readInt();
byte[] data = new byte[size];
// dataInput.readFully(data);
int len = 0;
while (len < size) {
len += dataInput.read(data, len, size - len);
}
ByteArrayOutputStream outPut = new ByteArrayOutputStream();
bmp = BitmapFactory.decodeByteArray(data, 0,
data.length);
bmp.compress(CompressFormat.PNG, 100, outPut);
//imageView.setImageBitmap(bmp);
myHandler.obtainMessage().sendToTarget();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
};
t.start();
}
});
}
private Handler myHandler = new Handler(){
public void handleMessage(android.os.Message msg) {
imageView.setImageBitmap(bmp);
};
};
}
分享到:
相关推荐
- 平台支持:PC端、WEB端、iOS端、Android端 - 源码大小:2.4G - 网盘链接与提取码:文件中提供了用于下载源码的网盘链接和提取码 2. 系统功能特点: - 灵活的配置:功能可自定义配置以满足不同用户需求 - ...
通过3G网络,系统能将图像数据实时传送到服务器,PC端的客户端软件可随时查看和分析这些图像,从而实现远程监控。 5. 硬件设计与软件实现 硬件设计包括ZigBee节点的电路设计、震动传感器与CMOS传感器的集成以及ARM...
PC端用户通过浏览器访问Android设备上的HTTP服务器地址,实现文件的上传。浏览器支持HTTP协议,因此可以直接与运行在Android设备上的HTTP服务器通信。用户只需在浏览器的URL栏输入设备的IP地址和指定端口号,即可...
Android客户端负责实现用户界面与远程监控的交互,通过网络与服务器端进行数据交换。服务器端负责视频数据的接收、处理与存储,并响应客户端的请求。此外,系统的设计还体现了模块化与可重用性的设计理念,以便于...
系统通过Android平台开发的外业数据采集软件和基于PC的内业数据处理软件,实现了从数据采集到处理再到资料归档的全生命周期管理。 Android作为一种开源的移动操作系统,由于其开放性,已成为移动终端市场中的主流...
GGTalk开源即时通讯系统(简称GG)是QQ的高仿版,同时支持局域网和广域网,包括客户端(PC客户端、android移动端)、服务端、数据库。 (01)注册、登录、查找用户、添加好友、好友列表。 (02)自拍头像。 (03)...
为了实现手机与监控端(通常是PC)之间的通信,系统依赖于Wi-Fi局域网连接,并基于IP地址和端口的socket通信协议。只要手机和监控设备在同一Wi-Fi网络环境下,就能实现数据传输。 在Android客户端,通过实现Camera....
该系统设计方案可以应用于实验教学中,帮助学生掌握如何使用Android客户端进行数据的发送,以及如何在单片机中使用WiFi模块和异步串行通信进行数据传输。学生还可以通过这个实验学习到如何利用TCP Socket通信和网络...
1.1 面向新PC的全新平台 1.2 Android的历史 1.3 Dalvik VM剖析 1.4 理解Android软件栈 1.5 使用Android SDK开发最终用户应用程序 1.5.1 Android模拟器 1.5.2 Android UI 1.5.3 Android基础...
1.1 面向新PC的全新平台 1.2 Android的历史 1.3 Dalvik VM剖析 1.4 理解Android软件栈 1.5 使用Android SDK开发最终用户应用程序 1.5.1 Android模拟器 1.5.2 Android UI 1.5.3 Android基础...
PC端的实现可能涉及多线程技术,以同时处理多个文件传输请求,提高整体性能。此外,为了确保数据安全,该工具可能支持加密传输,如SSL/TLS,以保护文件在传输过程中不被窃取或篡改。 手机端的应用(通常适用于...
GG即时通讯系统GGTalk,包括客户端、服务端、数据库,可在广域网部署使用。支持:文字/语音/视频聊天,文件传送,离线文件,离线消息,视频会议,性能稳定,绝不是一个玩具或demo。 GG即时通讯系统GGTalk 6.2 部署...
GG是QQ的高仿版,包括客户端(PC客户端、android移动端)、服务端、数据库,可在广域网部署使用。我想写一个类似汇总的文章,通过这篇文章,大家可以了解到GG的全貌和最新进展,以及关于一些常见问题的解答也汇总在...
传统的数据监控系统通常依赖于专用设备,如安捷伦DSO9000和日本BITS的HM-2G,这些设备虽然性能强大,但便携性差、成本高昂,且需通过USB或WiFi等连接方式与PC配合使用。然而,随着Android智能移动终端的普及,一种新...
GGTalk开源即时通讯系统(简称GG)是QQ的高仿版,同时支持局域网和广域网,包括客户端(PC客户端、android移动端)、服务端、数据库。 开发环境及GGTalk即时通讯源码说明: 服务端和PC端 :VS2010 ,开发语言:C#, ...
Air Playit 无线视频流媒体应用知识点总结 ...Air Playit 的使用需要你在电脑上安装服务器端(支持 Windows 与 Mac),然后再在移动设备上安装客户端(支持 iOS 与 Android),目前它们均是免费软件!
GG即时通讯系统GGTalk,包括客户端、服务端、数据库,可在广域网部署使用。支持:文字/语音/视频聊天,文件传送,离线文件,离线消息,视频会议,性能稳定,绝不是一个玩具或demo。 GG即时通讯系统GGTalk 6.2 源码...
客户端支持全平台(Windows、Android、iOS、H5),通过EasyDSS提供的HTTP服务接口和EasyPlayer播放器实现视频直播播放和录像回放等功能。 **特点:** - **轻量高效**:采用优秀的流媒体框架设计,运行轻量、高效、...