Android设备FTP服务器搭建

目 录
1 前言…
1.1设计背景…
1.2搭建方案简述…
2 搭建服务器流程…
2.1创建新项目…
2.2添加相应jar包…
2.3添加相应依赖…
2.4获取设备IP…
2.5开启FTP服务器…
2.6关闭FTP服务器…
3 注意事项…

1 前言

1.1 设计背景

因压力测试抓Log文件过大,可能造成设备的内存空间溢出,所以需要搭建Android设备的FTP服务器,以便于计算机或者其他设备利用FTP服务器通过访问该测试设备获取Log文件。

1.2 搭建方案简述

本文在Android设备上搭建FTP服务器主要通过Apache FtpServer来实现,最后实现的功能是计算机可以通过与Android设备WiFi连接同一个局域网,利用FTP访问服务器指定的目录,并对该目录下的进行文件的读写操作。

2 搭建服务器流程

2.1 创建新项目

打开AndroidStudio,创建一个新项目,填入Application name和Package name。
点击Next,选择合适的Android版本。
然后选择合适的Android模板。

2.2 添加相应jar包

需要的jar包可以去Apache FtpServer下载地址:
http://mina.apache.org/ftpserver-project/index.html
下载完后解压,解压后在app/libs文件夹添加需要的jar包,如图2-1。

图2-1 添加jar包

2.3 添加相应依赖

在app/build.gradle 添加相应依赖,如图2-2

图2-2 添加依赖

2.4 获取设备IP

添加获取设备IP地址的方法getLocalIpAddress(),代码如图2-3。

图2-3 获取设备IP
其中调用了判断是否为正确IP地址的方法 Isipv4(),代码如图2-4。

图2-4 判断IP地址合法

2.5 开启FTP服务器

开启服务器方法主要包括三个部分:
1.设置FTP服务器的端口和hostIP,hostIP从上文方法中获取。
2.设置访问FTP服务的账户信息,包括但不限于账户名称,密码,访问权限,可以访问服务器的地址路径等。
3.开启FTP服务器。
代码如图2-5。

图2-5 开启FTP服务器

2.6 关闭FTP服务器

关闭服务器主要判断该服务器是否已经关闭,未关闭则直接关闭服务器。
代码如图2-6。

图2-6 关闭FTP服务器

3 注意事项

1.在app/build.gradle添加相应依赖时要注意jar包版本和jar包冲突问题。
2.在调用startFtpServer()方法开启FTP服务器前,应先做判断:FTP是否已经开启。对不同情况进行不同处理。例如:已开启则不做修改,未开启则直接开启。
3.对FTP服务器的账户进行配置,除了直接在代码中配置,也可以使用配置文件配置。在values目录下新建xml文件,便于在代码中引用,相应的配置信息可以从网络上查找,这里只是部分信息。要注意的是,末尾的换行符不可以删除。
配置文件例子如图3-1。

图3-1 账户配置文件

4.如果需要在服务器搭建代码中设置客户端访问路径目录需要在AndroidManifest.xml设置权限,如图3-2。


图3-2 设置服务器权限

更多相关文章

  1. android获取正在运行的应用程序
  2. android + red5 + rtmp
  3. android + red5 + rtmp
  4. Android与服务器端数据交互(http协议整合struts2+android)
  5. Django服务器与App(Android)客户端的简单实现
  6. Android解析WindowManagerService(二)WMS的重要成员和Window的添加
  7. Android(安卓)开发者的 Flutter(二) —— Flutter 中的 Layout 及
  8. Freescale IMX6 Android(安卓)(4): 基于TQIMX6 给Toolbox添加LED
  9. android为HttpClient和HttpURLConnection添加中国移动代理

随机推荐

  1. Android(安卓)打开软键盘
  2. Android(安卓)添加书签(二)
  3. android下拉菜单——选择星座
  4. android 开源项目(城市定位)
  5. Android(安卓): upload Image using Mult
  6. Android中获取当前进程名称
  7. 关于Android中xstreamjar冲突
  8. Android(安卓)关于XmlResourceParser
  9. android studio 53 mp3
  10. Android(安卓)自定义时间选择器