Termux在Android native开发中的使用

在 Android 手机上安装 termux 可以在不用 root 的情况下把手机打造成一台小的 linux 服务器,基本上可以做任何我们能在 linux 上做的事情。现在我们要在 turmux 上测试一下我们开发的 sdk

termux 的快捷键

首先了解一下 termux 的一些快捷键,这会方便我们后边的操作。快键键需要音量+-键配合输入法进行操作。

按键 模拟的按键
音量-键(Ctrl)+L 清除屏幕内容
音量-键(Ctrl)+C 终止当前操作
音量-键(Ctrl)D 退出当前会话session
音量+键+D Tab键(可自动补全命令或文件名)
音量+键+W 方向键 上(可显示前一条命令)
音量+键+S 方向键 下(可显示后一条命令)
音量+键+A 方向键 左(可左移动光标)
音量+键+D 方向键 右(可右移动光标)
音量+键+Q 显示或关闭扩展键(ESC、插入链接CTR、ALT、TAB、-、/、 以及左滑扩展键一栏可切换到全功能支持手机输入法的输入框)

安装termux并进行配置

  1. 安装 termux, 到这里 下载并安装到手机上
  2. 在手机上打开 termux, 输入下面的命令

    1
    2
    3
    4
    5
    apt update

    apt upgrade

    apt install openssh

  3. 确保在~/.ssh目录里面已经有公私钥的文件,如果没有请先创建,创建过程可以参考 github 上的说明

  4. 运行下面命令将公钥文件复制到手机上

    1
    adb push ~/.ssh/id_rsa.pub /sdcard/authorized_keys
  5. 在 termux 里输入下面的命令

    1
    2
    3
    4
    5
    mkdir .ssh
    cd .ssh
    mv /sdcard/authorized_keys .
    chmod 400 authorized_keys
    sshd
  6. 在电脑的命令窗口里输入下面的命令来连接到手机

    1
    2
    adb forward tcp:8022 tcp:8022 
    ssh localhost -p 8022
  7. 如果手机插在一台远程服务器上,想远程启动 termux 的话, 可以在 android bashrc 里加入

    1
    pgrep sshd > /dev/null || sshd

    然后在外面运行

    1
    adb shell monkey -p com.termux 1

将文件传输到 termux

如果要将测试程序等文件传输到 termux,可以使用下面的命令

1
scp -P 8022 filsToPush localhost:~

文件会被传输到 termux 的根目录下,然后就可以像在 linux 上执行文件来测试了。