

Android终端模拟器Termux的强大功能:应用调用Termux执行命令
source link: https://www.51cto.com/article/786150.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Android终端模拟器Termux的强大功能:应用调用Termux执行命令
Termux介绍
Termux是一款开源的Android终端模拟器,使用apt和dpkg作为包管理工具,可以轻松安装、升级和管理各种软件包。
Termux为多种编程语言提供了支持,包括Python、Ruby、Node.js、PHP、Perl等,简单配置后可以在Android设备上编写和运行代码。还提供了丰富的命令行工具,如grep、awk、sed以及各种文本处理和网络诊断工具。
Termux允许用户访问和管理Android设备上的文件,包括内部存储和外部存储。同时包含SSH客户端和服务器,允许用户远程连接到其他计算机或者让其他计算机连接到Termux。此外还支持版本控制系统如Git和Subversion,用户可以在其设备上进行版本控制操作。
调用Termux执行命令
自Termux 0.95版起,第三方应用程序可以通过向RunCommandService发送intent或成为termux-tasker插件客户端的插件,在Termux应用程序上下文中运行命令。
- 配置Termux允许外部应用调用: 打开Termux,修改~/.termux/termux.properities文件,添加一行:
allow-external-apps = true
对于安卓版本>=10.0,需要给Termux启用关联应用权限,否则将不允许第三方应用直接后台启动Termux,而是当Termux在后台运行时才能调用。
启用「关联应用」权限:【应用信息】 -> 【应用】 -> 【Termux】 -> 【权限】 -> 【关联应用】。
- 应用配置: 在AndroidManifest.xml文件中请求com.termux.permission.RUN_COMMAND权限,在代码中给RunCommandService发送Intent。
<uses-permission android:name="com.termux.permission.RUN_COMMAND"/>
代码中Intent构建:
intent.setClassName("com.termux", "com.termux.app.RunCommandService");
intent.setAction("com.termux.RUN_COMMAND");
intent.putExtra("com.termux.RUN_COMMAND_PATH", "/data/data/com.termux/files/usr/bin/top");
intent.putExtra("com.termux.RUN_COMMAND_ARGUMENTS", new String[]{"-n", "5"});
intent.putExtra("com.termux.RUN_COMMAND_WORKDIR", "/data/data/com.termux/files/home");
intent.putExtra("com.termux.RUN_COMMAND_BACKGROUND", false);
intent.putExtra("com.termux.RUN_COMMAND_SESSION_ACTION", "0");
startService(intent);
相关参数说明:
- com.termux.RUN_COMMAND_PATH:调用的ELF文件;
- com.termux.RUN_COMMAND_ARGUMENTS:调用命令参数;
- com.termux.RUN_COMMAND_WORKDIR:工作目录;
- com.termux.RUN_COMAND_BACKGROUND:是否后台运行。如果为true则不会进入TermuxActivity;
- com.termux.RUN_COMMAND_SESSION_ACTION:会话动作。
此处调用的是top命令:/data/data/com.termux/files/usr/bin/top
</article
Recommend
-
28
作者: HelloGitHub-ChungZH 当你逐渐厌倦了 cmd 的枯燥黑屏、powershell 的单调蓝底,可以来尝...
-
16
终端模拟器下使用双倍宽度多色Emoji字体 2017年8月更新。 多色Emoji字体 Cairo支持 较新的FreeType支持多色,但cairo-1.14.6没有默认开启支持。
-
9
折腾完https://maskray.me/blog/2016-03-13-terminal-emulator-fullwidth-color-emoji后发现canonical mode下emoji字符退格只后退了一列,后发现所有宽字符都有问题...
-
12
在安卓手机上通过 Termux 运行编译/运行 .NET 应用 Termux 简介 Termux 可谓安卓上的开发神器, 注意, 不是开发安卓应用, 是在安卓手机上做开发的神器, 它的官方简介如下: Termux i...
-
31
termux-api让你的Termux访问手机系统功能 Termux可以让你的手机变成一台Linux服务器,这很好玩。但是另一方面手机拥有某些特殊的能力是一般Linux服务器所不具备的,比如打电话、发短信、照相等。 Termux 默认可以调用的手机功能不多,只有...
-
10
Termux 高级终端安装使用配置教程 | 国光 使用黑莓手机看来要记一下这些快捷方式了。 实用快捷键Ctrl键是终端用户常用的按键 – 但大多数触摸键盘都没有这个按键。为此,Termux使用音量减小按钮来模拟Ctrl键。例如,在触摸键盘上按音量减...
-
11
1 万 Star!基于 Android 平台的开源 Linux 终端模拟器-51CTO.COM 1 万 Star!基于 Android 平台的开源 Linux 终端模拟器 2022-02-14 10:29:40 Termux[1] 是一款基于 Android 平台的开源 Linux 终端模拟器...
-
9
七个 GNU 工具,命令行的强大功能与终端亲密接触的必备工具-51CTO.COM 七个 GNU 工具,命令行的强大功能与终端亲密接触的必备工具 作者:Linux公社 2022-04-11 10:21:35 在 GNU 命令中的进步就是...
-
9
超越iTerm! 号称下一代终端神器,功能贼强大! 程序员的一生,用的最多的两个工具,一个...
-
6
超级强大的终端模拟器-rust开发的支持gpu渲染采用lua配置的多路复用模拟器 对于后端开发人员来说,每天接触最多的就是终端了,而一款趁手的工具对于工作效率来说至关重要,可以起到事半功倍的效果。 wezterm就是一款不可多得非常好用的终端模...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK