是否有任何应用程序可以为 shell 脚本创建主屏幕快捷方式(所以我只需单击它即可运行脚本)?
如果该应用程序是开源的,那就太好了,并且允许我将脚本保存到有根设备的内部存储中。
是否有任何应用程序可以为 shell 脚本创建主屏幕快捷方式(所以我只需单击它即可运行脚本)?
如果该应用程序是开源的,那就太好了,并且允许我将脚本保存到有根设备的内部存储中。
回答:您的问题的答案应该是 GScript(开源并在有根设备上“保存在任何地方”),但是当脚本完成时,谁想盯着那个模态终端输出屏幕?详情如下。
SManager(免费版)可让您将自定义脚本存储在设备上的任何位置,如果您使用的是有根设备,甚至是您的内部存储。它可以让您设置不同的自动启动触发器:启动(当然)、网络启动/关闭等。可以触发通知以让您了解脚本的运行和/或退出状态等。但是,它不会让您创建一个将直接执行您的脚本的主屏幕快捷方式。它首先启动到自己的 UI,然后您可以从那里执行您的脚本。SManager(无广告版本)确实可以让您从主屏幕快捷方式干净地在后台执行您的脚本,尽管对于某些脚本我构建了 GUI 弹出视图。我使用这个应用程序编写shell 和 python(参见SL4A/android-scripting )。
GScript Lite(也是Gscript(捐赠版))是一个开源解决方案。您可能希望与源代码库同步并重新编码/改进它以更好地满足您的需求。就像现在(v1.1.2)一样,它需要对 ICS+ 进行一些改进,因为它的 UI 退出时会出现一个无害的错误(一个限制其有用性的弹出窗口)。此解决方案将允许您通过主屏幕快捷方式(两个版本)直接启动脚本,但您必须盯着一个免费的终端输出屏幕 20 整秒,或者直到您手动关闭/关闭它。
另一个答案中提到了SL4A/android-scripting 。为您的脚本创建主屏幕快捷方式很容易。这是一个开源解决方案,但它不允许您将脚本保存到设备的内部存储中。该解决方案使用模块化 apk 插件支持 Lua、BeanShell(Java)、Bash shell、Python、Perl、JRuby、Tcl 和 JavaScript。
SL4A 脚本启动器是 TaskBomb 自动化/调度实用程序的附加组件。TaskBomb 提供的脚本执行触发器基本上涵盖了 Android API 公开的每个 Content Provider,而且数量很多。完整的 SL4A 语言支持适用于此应用程序。如果您只需要简单的 shell 脚本,您可能会发现它有点臃肿。您的脚本可以通过主屏幕快捷方式启动,但这不是开源解决方案。
所以我发现最好的选择是 GScript。
G.Play 上的 GScript 版本已损坏,我已向 bugtracker 发送了一个补丁,但我没有看到任何活动。该项目似乎被遗弃了,所以我在这里做了一个分叉:https ://bitbucket.org/Equidamoid/gscript 。该 apk 位于下载部分。
也许有人会发现我这样做的方式很有用:我使用 ConnectBot(可在 Play 商店中获得,并且开源https://code.google.com/p/connectbot/)。它是一个允许连接到手机本身的 SSH 客户端。您可以为此创建本地脚本的快捷方式:
我发现了允许创建快捷方式的 SL4A 项目。不幸的是,所有脚本都必须放在 sdcard 上。
终端模拟器应用程序本身(与 cyanogenmod 等捆绑在一起)允许您创建一个快捷方式(通过小部件窗口),它打开终端窗口运行给定的命令(在创建快捷方式时输入)。
使用此工具执行脚本非常容易(使用别名;使用 && 链接命令;实际创建和执行脚本)。
这可以被认为是内置选项。