电脑端如何访问手机SD卡中的文件

简介: 基于AndServer所提供的功能,是不是我们就可以以自己的手机做为一个服务器,来部署一个网站呢?这个必须可以,AndServer中已经提供了部署的方式,部署完毕后,无非就是,电脑端访问服务器(也就是自己手机)里的各个文件

看到标题,估计各位看官有点懵,访问SD卡中的文件,你连上数据线不就行了,或者说你想要获取一些数据,你用及时通讯(微信,钉钉,QQ等等),在线传输不就行了,这些都可以的啊,有什么难的吗?哎,各位小老弟,还真有一种情况的出现,我们公司就是一个特例,每个人的电脑,都屏蔽了USB访问设备的权限,也就是说,你是硬盘,U盘,还是数据线,插上后,是没有权限查看文件的,想要从电脑往手机传输东西,或者说从手机往电脑传输东西,依靠的是及时通讯工具或者其它可用的工具。


针对这种情况的出现,不可能每个测试机里,我们都不断的登录一些及时通讯(微信,QQ等)的账号,况且这些传输文件,依赖性太强,也无法满足我们传输到某一个位置的需求,基于这种情况,看到了yanzhenjie开源的AndServer,这是一个基于Android系统的一个服务,可以实现网站的部署,还有动态api形式的访问,是非常强大的,大家可以点击直接看相关文档:https://yanzhenjie.com/AndServer/


基于AndServer所提供的功能,是不是我们就可以以自己的手机做为一个服务器,来部署一个网站呢?这个必须可以,AndServer中已经提供了部署的方式,部署完毕后,无非就是,电脑端访问服务器(也就是自己手机)里的各个文件,目前呢,基于AndServer开发的在线浏览文件及上传下载Demo已经开源,地址是:


https://github.com/AbnerMing888/SdFileManager,大家有需要的可以下载。


具体的效果如下图,电脑和手机必须连接同一网络,运行至手机之后,就可以打开服务,在电脑端输入对应的地址,就可以查看手机SD卡里的文件,也可以进行上传,或者删除。



PC端效果:



目前上传,是上传到你选择的路径下,同样的删除,也需要你在路径后,把文件的名字追加到路径后面。


Demo中重点的逻辑,有两个,一个是获取手机SD卡的各个文件路径,一个是上传和删除文件。


获取文件


/*** 返回文件列表*/@GetMapping(path="/list")
List<FileInfo>getFileList(@RequestParam(name="rootPath", required=false) StringrootPath) {
Filefile;
if (TextUtils.isEmpty(rootPath)) {
file=newFile(Environment.getExternalStorageDirectory().getAbsolutePath());
    } else {
file=newFile(rootPath);
    }
List<FileInfo>fileInfoList=newArrayList<>();
if (!file.isDirectory()) {
returnfileInfoList;
    }
File[] list=file.listFiles();
if (list==null||list.length==0) {
returnfileInfoList;
    }
FileInfofileInfo;
for (Filef : list) {
Stringname=f.getName();
fileInfo=newFileInfo();
fileInfo.setName(name);
fileInfo.setUrl(f.getAbsolutePath());
fileInfo.setDateModified(f.lastModified());
fileInfo.setDateModifiedString(TimeUtils.INSTANCE.formatDateToStr(f.lastModified(), "yyyy/MM/dd aHH:mm:ss"));
if (f.isFile()) {
fileInfo.setIsDir(0);
fileInfo.setSize(f.length());
fileInfo.setSizeString(FileUtils.formatFileSize(f.length()));
        } else {
fileInfo.setIsDir(1);
        }
fileInfoList.add(fileInfo);
    }
returnfileInfoList;
}


上传文件:


@PostMapping("/upload")
StringuploadFile(
@RequestParam(name="path") Stringpath,
@RequestParam(name="file") MultipartFilemultipartFile) {
Filedir=Environment.getExternalStorageDirectory();
if (!"-1".equals(path)) {
//证明为空dir=Environment.getExternalStoragePublicDirectory(path);
    }
try {
StringfileName=multipartFile.getFilename();
StringfilePath=dir+"/"+fileName;
InputStreaminputStream= (multipartFile.getStream());
FileOutputStreamfileWriter=newFileOutputStream(filePath);
byte[] bytes=newbyte[1024];
intlength;
while ((length=inputStream.read(bytes)) >0) {
fileWriter.write(bytes, 0, length);
fileWriter.flush();
        }
inputStream.close();
fileWriter.close();
    } catch (IOExceptione) {
e.printStackTrace();
returne.getMessage();
    }
returnmultipartFile.getFilename();
}


删除文件


@PostMapping("/deleteFile")
StringdeleteFile(
@RequestParam(name="path") Stringpath) {
Filefile=newFile(path);
if (file.exists()) {
file.delete();
    }
return"删除成功";
}


相关文章
|
2月前
|
JSON 安全 JavaScript
怎么保护苹果手机移动应用程序ipa中文件安全?
怎么保护苹果手机移动应用程序ipa中文件安全?
22 1
|
4月前
|
存储 监控 iOS开发
iOS应用崩溃了,如何通过崩溃手机连接电脑查找日志方法
在iOS应用开发过程中,调试日志和奔溃日志是开发者必不可少的工具。当iOS手机崩溃时,我们可以连接电脑并使用Xcode Console等工具来查看日志。然而,这种方式可能不够方便,并且处理奔溃日志也相当繁琐。克魔助手的出现为开发者带来了极大的便利,本文将详细介绍其功能和使用方法。 克魔助手会提供两种日志,一种是实时的,一种的是崩溃的。(由于崩溃日志的环境很麻烦,目前只展示实时日志操作步骤)
|
3月前
|
Web App开发 Go iOS开发
【IOS】教你如何在手机端轻松安装 ipa 文件 -(安装器已失效 21.10)|社区征文
【IOS】教你如何在手机端轻松安装 ipa 文件 -(安装器已失效 21.10)|社区征文
|
4月前
|
Web App开发 Go iOS开发
【IOS】教你如何在手机端轻松安装 ipa 文件 -(安装器已失效 21.10)
【IOS】教你如何在手机端轻松安装 ipa 文件 -(安装器已失效 21.10)
|
2月前
|
开发工具 数据安全/隐私保护 Android开发
ipa文件怎么安装到iPhone手机上?
ipa文件怎么安装到iPhone手机上?
|
3月前
|
Android开发
用Airtest快速实现手机文件读写与删除功能
用Airtest快速实现手机文件读写与删除功能
|
3月前
|
网络安全 开发工具 数据安全/隐私保护
如何把 ipa 文件 (iOS 安装包) 安装到 iPhone 手机上? 附方法汇总
如何把 ipa 文件 (iOS 安装包) 安装到 iPhone 手机上? 附方法汇总
|
3月前
|
开发工具 数据安全/隐私保护 Android开发
ipa 文件怎么安装到 iPhone 手机上?
ipa 文件怎么安装到 iPhone 手机上?
|
4月前
|
Android开发 iOS开发
【教程】如何在苹果手机上查看系统文件?
苹果手机与安卓手机不同,无法直接访问系统文件夹。但是,如果我们想要查看苹果手机的系统文件,可以借助一些工具来实现。本文将介绍一款名为克魔助手的iOS设备管理软件,它能帮助我们轻松查看苹果手机的系统文件。 连接iPhone到电脑,打开克魔助手,用数据线将iPhone连接到电脑上。连接成功后,克魔助手会自动读取iPhone的信息,并显示在软件的主界面上。
【教程】如何在苹果手机上查看系统文件?
|
5月前
利用电脑投放手机声音且可不冲突同时播放电脑声音的方法
利用电脑投放手机声音且可不冲突同时播放电脑声音的方法

热门文章

最新文章