如何通过adb将电脑本地文件夹共享给Android设备供应用访问?
实现Linux/macOS本地目录共享给Android应用的方法
下面提供几种无需将大文件推送到手机存储,直接共享电脑目录给Android应用访问的实用方案:
方案1:adb反向转发+SSHFS(适合有终端操作能力的场景)
- Android端准备:安装Termux(或其他支持SSHFS的终端工具)
- 开启电脑SSH服务:
- Linux:启动sshd服务,执行
sudo systemctl start sshd(Debian/Ubuntu系) - macOS:打开「系统偏好设置」→「共享」,勾选「远程登录」
- Linux:启动sshd服务,执行
- adb反向端口转发:在电脑终端执行
adb reverse tcp:2222 tcp:22,将手机的2222端口映射到电脑的SSH默认端口22 - 挂载电脑目录:
- 在Termux中先安装SSHFS:
pkg install sshfs - 创建手机端挂载点:
mkdir -p /data/local/tmp/mounted-dir - 执行挂载命令:
sshfs 你的电脑用户名@localhost:~/要共享的目录路径 /data/local/tmp/mounted-dir -p 2222
- 在Termux中先安装SSHFS:
- 应用访问:Android应用可直接访问
/data/local/tmp/mounted-dir路径,需确保应用已获取存储访问权限(或通过adb授予特定目录权限)
方案2:WebDAV共享(无需终端操作,通用性强)
- 电脑端搭建WebDAV服务:
- 通用方法:用Python快速启动,先安装依赖
pip install wsgidav,再执行python3 -m wsgidav --host 0.0.0.0 --port 8080 --root /要共享的目录路径 - Linux/macOS也可通过Apache/Nginx配置,或使用第三方工具(如macOS的RaiDrive)
- 通用方法:用Python快速启动,先安装依赖
- 确认局域网IP:电脑端执行
ip addr show(Linux)或ifconfig(macOS),获取局域网内的IP地址 - Android端挂载:安装支持WebDAV的文件管理器(如Solid Explorer),添加WebDAV服务器,填入电脑IP、端口(如8080)及共享路径,完成挂载
- 应用访问:应用可通过文件管理器暴露的挂载路径访问共享文件,部分应用支持直接输入WebDAV地址访问
方案3:NFS共享(仅适合Linux电脑)
- Linux电脑配置NFS:
- 安装NFS服务:
sudo apt install nfs-kernel-server(Debian/Ubuntu) - 编辑
/etc/exports文件,添加:/要共享的目录路径 手机局域网IP(rw,sync,no_subtree_check) - 生效配置并启动服务:
sudo exportfs -a && sudo systemctl start nfs-server
- 安装NFS服务:
- Android端挂载:
- 方法1:用支持NFS的文件管理器(如Solid Explorer)直接添加NFS服务器并挂载
- 方法2:Termux中安装nfs-utils:
pkg install nfs-utils,执行mount -t nfs 电脑局域网IP:/要共享的目录路径 /data/local/tmp/nfs-mount
- 应用访问:同方案1,访问手机端的挂载路径即可
注意事项
- 所有方案要求电脑与手机处于同一局域网(WiFi连接或USB共享网络),USB共享时电脑IP通常为
192.168.42.1 - Android 10及以上版本,应用需申请
MANAGE_EXTERNAL_STORAGE权限才能访问公共挂载目录;若挂载到应用私有目录,权限限制更宽松
内容的提问来源于stack exchange,提问作者Majal
相关产品推荐
相关产品推荐

