FileLine 安卓移动端版本
FileLine-Android
项目地址:https://github.com/tanxuekiang/FileLine-Android
https://gitcode.com/weixin_41447544/FileLine-Android
FileLine 安卓移动端版本,是一款主打点对点高速传输的轻量文件交互工具,支持安卓设备间、安卓与桌面端跨平台文件收发与即时聊天,适配内网穿透方案,无需公网 IP 即可实现跨网络设备互联。
核心功能
跨端文件传输:支持局域网内安卓设备直连、安卓与桌面版 FileLine 互通,可发送单文件、多文件与文件夹,实时展示传输进度与速率
即时文本聊天:气泡式聊天界面,文本消息与文件消息融合展示,支持消息状态回执
内网穿透互通:适配 frp 内网穿透方案,跨网段、跨地域设备可通过公网中继建立连接,实现远距离文件传输
文件管理能力:内置系统文件选择器,支持自定义接收目录,可直接查看、分享已接收文件
连接管理:支持历史连接记录保存、IP 快速直连,断开自动重连
技术栈
开发语言:Kotlin / Java
UI 框架:Android 原生 View / Jetpack 组件
网络通信:TCP Socket 自定义传输协议,JSON 格式封装指令与数据
异步架构:Kotlin 协程 + 线程池,保障大文件传输不阻塞主线程
文件处理:Android SAF 存储访问框架,兼容 Android 11+ 分区存储规则
项目目录结构
plaintext
FileLine-Android/
├── app/ # 应用主模块
│ ├── src/main/
│ │ ├── java/com/fileline/
│ │ │ ├── ui/ # 界面层:聊天页、文件页、设置页
│ │ │ ├── net/ # 网络层:连接管理、文件收发、协议解析
│ │ │ ├── file/ # 文件层:文件选择、读写、目录管理
│ │ │ └── utils/ # 工具类:JSON封装、权限处理
│ │ ├── res/ # 布局、图标、字符串等资源
│ │ └── AndroidManifest.xml # 应用清单配置
│ └── build.gradle # 模块构建配置
├── frp-android/ # 安卓端 frp 内网穿透适配模块
├── gradle/ # Gradle 构建工具
├── build.gradle # 项目全局构建配置
├── settings.gradle # 模块管理配置
└── README.md
环境要求
Android Studio 2023+
MinSdkVersion 21(兼容 Android 5.0 及以上系统)
TargetSdkVersion 34
JDK 17 及以上
编译运行
克隆仓库到本地
bash
git clone https://github.com/tanxuekiang/FileLine-Android.git
cd FileLine-Android
使用 Android Studio 打开项目,等待 Gradle 依赖同步完成
连接安卓真机或启动 Android 模拟器
点击运行按钮,即可安装并启动应用
使用说明
- 局域网直连传输
两台设备连接同一 WiFi 网络
在快传页面查看本机 IP,输入对方设备 IP 建立连接
选择文件或输入文本,点击发送即可完成传输 - 跨网穿透传输
自行部署 frp 服务端,配置端口映射规则
在应用设置页填写 frp 服务端地址、端口与认证信息
开启内网穿透后,通过公网地址与远端设备建立连接,实现跨网文件传输 - 跨桌面端互通
确保桌面端 FileLine 与安卓端使用同一版本通信协议,输入桌面端 IP 地址即可建立连接,支持文件与消息双向互通。
开源说明
本项目为开源学习项目,可自由用于个人学习、二次开发与非商用场景。项目内置的第三方组件均遵循其原有开源协议。
