Termux 资料
个人 Termux 软件资源备份:
通过百度网盘分享的文件:Termux
链接:https://pan.baidu.com/s/1ouhSs68coGcndMep6zioOg
提取码:user
Android 文件系统目录 结构 初步认识
Android系统的内核使用的是Linux内核, 所以Android的文件目录结构和Linux系统的文件目录结构类似。
Android系统使用虚拟文件系统(VFS), VFS的目录是以/为根节点,根节点下又有不同的节点。而我们的物理存储设备就是挂载都这些节点上,如下图所示:
粗略了解一下,然后打开MT模拟器上手看看:
(机型:Redmi Note12 Tubro)
/data/app/ apk的安装目录。注意:该目录需要获取root权限才能查看
/system/app/ 存放系统必要应用的apk文件
- /storage/ 该节点是内置存储卡和外置SD卡的挂载点,/storage/emulated/0/是内置存储卡挂载点, /storage/sdcard1是外置SD卡挂载点(不同的设备挂载节点不一样,有些设备可能会挂载到/mnt/节点)。
就先了解这三个。
接下来看看opencv试试(逝世)
Android跑OpenCV-Python
我们将使用termux
最好在f-droid上下载termux而不是在GooglePlay(GooglePlay上是已不受支持的旧版本)
termux介绍:
termux本体包括termux中所作所有内容全部储存在/data/data/com.termux/files/home下,能够直接整体卸载
直接进入termux,开始敲代码:
1 | # Python环境 |
1 | # python下opencv环境 |
1 | # 使用termux内置的nano编辑器 (新建)进入first.py文件 |
1 | # first.py 内容 |
1 | # 文件编辑完成后,Ctrl+O保存,再回车确认,再Ctrl+X退出编辑 |
打开文件后,下方有一堆文字,那就是快捷键说明。例如:^G 即为 Ctrl+G ,功能为显示帮助文本。
- Ctrl+G,显示帮助文本
- Ctrl+O,保存当前文件
- Ctrl+R,读取其他文件并插入光标位置
- Ctrl+Y,跳至上一屏幕
- Ctrl+K,剪切当前一行
- Ctrl+C,显示光标位置
- Ctrl+X,退出编辑文本
- Ctrl+J,对其当前段落(以空格为分隔符)
- Ctrl+W,搜索文本位置
- Ctrl+V,跳至下一屏幕
- Ctrl+U,粘贴文本至光标处
- Ctrl+T,运行拼写检查
- Ctrl+_,跳转到某一行
- ALT+U,撤销
- ALT+E,重做
- ALT+Y, 语法高亮
- ALT+#,显示行号
1 | # 运行 first.py |
这个时候无法打开摄像头:
1 | # 安装termux api接口 |
使用如下命令行替换官方源为 TUNA 镜像源
1 | sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/apt/termux-main stable main@' $PREFIX/etc/apt/sources.list |
因为Android14对于data/data文件夹的访问以及操作限制,折腾了半天,
退出交互式Python:exit()
对于import cv2 报错问题的解决:
[Bug]: OpenCV is not working · Issue #20334 · termux/termux-packages (github.com)
1 | pkg install x11-repo |
1 | pkg install matplotlib |
1 | pkg install opencv |
termux-api-start
启动termux-api
1 | # root 权限 |
termux 安装 ubuntu
1 | # proot-distro,是一段bash脚本,用于在Termux中管理与安装proot下Linux发行版。 |
1 | # 查看可安装的linux系统 |
1 | # 安装 ubuntu 22.04 lts |
1 | # 进入 ubuntu 22.04 lts 环境 |
1 | # 退出环境 |
1 | # Linux 创建普通用户example |
1 | # 密码示例 |
配置 Ubuntu 桌面
1 | apt-get update && apt-get install wget -y && wget https://raw.githubusercontent.com/EXALAB/AnLinux-Resources/master/Scripts/DesktopEnvironment/Apt/Xfce4/de-apt-xfce4.sh --no-check-certificate && bash de-apt-xfce4.sh |
1 | 安装好--初始化 |
1 | vncserver-start |
1 | The VNC Server will be started at 127.0.0.1:5901 |
最后会出现设置输入桌面系统密码,该密码用于连接VNC Viewer软件。
按照提示会输入四次
1 | You will require a password to access your desktops. |
当出现 root@localhost:~# 即代表安装桌面系统完成。
注意:
生成的 localhost:1是VNC Viewer软件连接Ubuntu桌面系统的Address。
转到 VNC Viewer –
– VNC Viewer:New connection
– Address:localhost:1
– Name:Ubuntu
–connect–ok
点击右上角的 叉号,即可退出VNC Viewer,但注意此时并未完全退出,需要在 Termux的linux系统 (即root@localhost:~# 后 )输入:
1 | vncserver-stop |
才可以彻底的退出VNC Viewer。(为再次进入做好前提条件)
然后在需要在 Termux的linux系统 (即root@localhost:~# 后 )输入:
1 | vncserver-start |
才具备再次进入VNC Viewer桌面的前提条件。
Termux Linux 环境
启动!
1 | # 进入 ubuntu 22.04 lts 环境 |
1 | # (如果需要图形化界面)进入 vnc 桌面 |
退出
1 | # 退出 vnc 桌面 |
1 | # 退出 linux |
任务:用opencv从摄像头获取视频流
1 | root下 |
1 | cd /root/Desktop |