旧安卓手机的第二春——基于Termux和NodeJS搭建的本地视频服务器
1. Termux
Termux是一个可以运行linux环境的安卓软件。当然它不能100%的实现全部的linux功能。但是,有它,我们可以运行Node、php、python等环境了。为什么选择Termux而不是linuxdeploy?主要是因为我的那部旧手机是华为的,现在已经没必要root了。当然Termux虽然不能提供完整的linux环境,但对于我们的项目而言已经足够了。
- Termux的安装与设置
1. 官方下载地址:官方下载地址
2. 从应用宝或其他手机市场里下载
下载并安装后,打开软件,看到linux的黑色的命令行终端,不会使用linux的小伙伴们不用慌,因为我也不太会,但是,只要会照着命令输入字母就可以了:
# 更新软件包列表
pkg update & pkg upgrade
# 安装nodejs
pkg install nodejs
# 申请使用存储权限
termux-setup-storage
# 查看本机IP,请记住这个IP,方便你通过IP访问
ifconfig
2. node-mobile-server项目
这个项目是本人写的,用于读取视频文件、播放视频的基于nodejs的前端服务器。因为功能很少,没有使用数据库,信息的存储是通过一个json文件实现的。
下载项目:https://gitee.com/jansonKDF/node-mobile-server
下载并解压后,请务必将项目的目录(文件夹)改名为server。因为我的gitee上有其他项目,所以,项目名称不能直接使用server,否则会让我搞不清楚项目,所以请各位多多包涵。
如果你想二次修改这个项目,请遵照readme里面的说明自行探索。如果你只想直接使用的话,可以将这个项目复制到你手机的内部存储--download文件夹下(再次强调,请务必将项目的目录改名为server)。当然,如果你想节省一些手机内存,请删除项目中的:readme文件和storage文件夹,这些是为了方便你在电脑上运行项目而留下的。
再次回到手机上,在手机的termux的命令行中输入下面的命令:
# 进入到server的目录
cd storage/download/server
# 安装项目运行的依赖,这个命令只需要首次运行即可
npm install
# 运行服务器,如果你的这个手机关机了,或者termux被进程干掉了,还是需要运行这个命令,不过请确保你当时正牌server目录下
node server
通过上面的操作,当你的手机上出现了:服务器运行在 http://localhost:3000时,证明你的服务已经启动成功。此时,你就可以通过你的手机访问:服务器IP:3000访问项目了(请将你的手机和服务器处于同一个网段/wifi下),请注意,这个:是英文符号的,而不是中文的符号。
项目启动成功了,但是,你的这个手机上可能还没有视频可以看,不着急,你可以找一些视频,将它们放到:手机内部存储>movies目录下。再通过浏览器,查看首页,点击"同步视频",你的这些视频就出现了。如果你修改了项目的一些代码,需要重新部署项目时,请记得备份手机上server/file-info.json文件,否则你以前修改过的内容会被覆盖掉。
注意事项:
1. Movies里面的视频不要再使用文件夹,否则其内部的视频将不会展示出来,因为在代码中过滤掉了。
2. 如果你的视频在浏览器中不播放,可能是因为编码不支持,你可以使用格式工厂转码一下。
3. 视频存放在存储卡上为什么没有显示?因为目前暂没有读取存储卡上数据的代码实现。后期如果时间充足了,再实现该功能。
4. 能不能实现远程访问该服务?从技术上说是可以的,你需要安装nat,配置网络穿透等一系列操作,具体可以百度搜索。








