基于Android的远程视频监控系统.doc
基于android的远程视频监控系统(已开放源码)
基本过程是android作为socket客户端将采集到的每一帧图像数据发送出去,PC作为服务器接收并显示每一帧图像实现远程监控。图片如下(后来PC端加了个拍照功能)。。。
(PS。刚学android和java不久很多东西还不懂,高手若是知道哪些地方可以继续优化的话还请多多指点下啊)
系统代码如下:
一、android手机客户端
(1)AndroidManifest.xml文件。添加camera和socket权限,并设置了程序开始执行的activity、
?xmlversion=1.0?encoding=utf-8?
manifestxmlns:android=
package=org.wanghai.CameraTest
android:versionCode=1
android:versionName=1.0?
uses-sdkandroid:minSdkVersion=15?/
!--授予程序使用摄像头的权限--
uses-permissionandroid:name=android.permission.CAMERA?/
uses-featureandroid:name=android.hardware.camera?/
uses-featureandroid:name=android.hardware.camera.autofocus?/
uses-permissionandroid:name=android.permission.INTERNET/
uses-permissionandroid:name=android.permission.KILL_BACKGROUND_PROCESSES/
uses-permissionandroid:name=android.permission.RESTART_PACKAGES/
application
android:icon=@drawable/ic_launcher
android:label=@string/app_name?
activity
android:name=.GetIP
android:screenOrientation=landscape
android:label=@string/app_name?
intent-filter
actionandroid:name=ent.action.MAIN?/
categoryandroid:name=ent.category.LAUNCHER?/
/intent-filter
/activity
activity
android:name=.CameraTest
android:screenOrientation=landscape
android:label=@string/app_name?
/activity
/application
/manifest
(2)main.xml设置surfaceview用于摄像头采集图像的预览
?xmlversion=1.0?encoding=utf-8?
LinearLayoutxmlns:android=
android:layout_width=fill_parent
android:layout_height=fill_parent
android:orientation=vertical?
SurfaceView
android:id=@+id/sView
android:layout_width=fill_parent
android:layout_height=fill_parent
android:scaleType=fitCenter/
/LinearLayout
(3)login.xml登录界面,用于输入服务器IP
?xmlversion=1.0?encoding=utf-8?
TableLayoutxmlns:android=
android:id=@+id/loginForm
android:orientation=vertical
android:layout_width=fill_parent
android:layout_height=fill_parent
TableRow
TextView
android:layout_width=fill_parent
android:layout_height=wrap_content
android:text=IP:
android:textSize=10pt
/
!--输入用户名的文本框--
EditText
android:id=@+id/ipedittext
android:layout_widt