找不到合适的软件,那我就用JS自己开源了一个

MIB

MIB是一款基于Node.jsADB的开发的备份工具,根据你的配置自动将移动设备上的数据文件迁移备份至电脑上,支持增量备份

故事起因

不知道大家有没有一种习惯,比如说今天去外边游玩看到了一些有趣的事件,景色会拿起手机将这一瞬间拍下来,等游玩结束后会将这些图片、视频移动到云端或者存储设备上

我是有这个习惯,但是每次都要自己手动来拉取这些拍摄数据有点繁琐,而且有些时候还会遇到个问题,这个图片我本地磁盘有了吗,我这次还要不要拉取它?

3xdqY.gif

琢磨开发

前面也找了一些备份数据,但找了一圈没有发现适合我的

于是,我自己开始琢磨我能不能写一个小工具实现我的这个需求

通过了一些资料查询,我可以通过ADB的方式与手机设备进行互动,其中就包括了实现文件之间的传输功能pull / push

adb pull [安卓设备文件地址] [本地地址]

ADBAndroid调试桥,它允许开发人员通过USB/Wi-Fi连接与Android设备通信。可用于安装和调试应用程序,访问设备的文件系统,运行shell命令等等

编写第一版

在知道了这个指令之后,我使用node.js开始编写第一版MIB,那个时候还不是图形化界面的,而是像vue-cli一样通过命令行方式信息交互进行的

mib-cli_backuping

可视化的开始

经过一段时间的使用MIB后,我逐渐开始思考如何将其扩展到图形化方面,让其使用起来更加方便~

b201j

我将技术栈选中了React+Electron,那个时候对react+ts并还不是很熟悉,在开发的过程也遇到挺多的小问题,但也是这些小问题让我在前端开发的路上认识到更多的知识点~

经过了一段时间的开发,现在图形化版本基本是开发完成了,主界面如下

20230627174134

在图形化中的优化

配置文件更改

通过从命令行方式转变为图形化界面,已将之前繁琐的手动修改配置文件的操作变得更加直观

现在可以通过可视化的界面来完成这些配置参数的设置,并且在这个过程中还增加了约束机制,以防止无效参数的填写,降低出错的风险

20230614195157

任务执行状态

当在命令行中运行程序时,有时可能会出现程序看起来停滞不前的情况,可能导致用户感到困惑和不安

为了提高用户体验,在图像化界面中,使用loading效果的动画来告知用户,当前任务正在进行处理

这样一来,用户就能够清楚地知道程序正在工作,而不是被卡住了

mib_backuping

Animation

文件类型分析

另外,我还将写了个小功能,可以帮助识别备份目录中各种文件类型的占比情况,并且绘制成直观的饼状图

能更容易了解备份目录中不同类型文件的占比,有助于更好地管理备份数据

20230627180035

项目地址

GITHUB:mib

码云:mib

如果您也有和我这样子的需求,该软件体验可以在release中下载哦~

最后,如果觉得这个项目不错,可以帮我点一个小小star,支持一下这个项目,感激不已!!

© 版权声明
THE END
喜欢就支持一下吧
点赞0

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYckr0E1' (Errcode: 28 - No space left on device) in /www/wwwroot/583.cn/wp-includes/class-wpdb.php on line 2345
admin的头像-五八三
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

图形验证码
取消
昵称代码图片