Android的无GUI编程就好像它是一个普通的Linux系统

Android的无GUI编程就好像它是一个普通的Linux系统,android,android-activity,scripting,command-line-interface,Android,Android Activity,Scripting,Command Line Interface,我需要在我的手机上完成一些琐碎的批量任务,我不想为了完成这些任务而跳过使用GUI制作“应用程序”的所有环节(这些任务是你在五分钟内就能在一个理智的系统上在BASH中完成的)。我似乎在网上找不到任何地方可以解释如何简单地制作一个普通的程序(用任何语言,但如果Java可以简化与Android的交互),并访问Android API,只需将其下载到手机中并作为正常过程运行即可。不需要APK包,不需要GUI,什么都不需要。这应该是世界上最简单的事情了,但是每个例子似乎都首先关心的是如何制作一个GUI,如何

我需要在我的手机上完成一些琐碎的批量任务,我不想为了完成这些任务而跳过使用GUI制作“应用程序”的所有环节(这些任务是你在五分钟内就能在一个理智的系统上在BASH中完成的)。我似乎在网上找不到任何地方可以解释如何简单地制作一个普通的程序(用任何语言,但如果Java可以简化与Android的交互),并访问Android API,只需将其下载到手机中并作为正常过程运行即可。不需要APK包,不需要GUI,什么都不需要。这应该是世界上最简单的事情了,但是每个例子似乎都首先关心的是如何制作一个GUI,如何使用Eclipse和SDK,而不是首先做基础工作

有什么建议吗


(我知道这可能是一个边缘超级用户,但在底部还有一个编程问题:如何制作一个普通(Java)程序,可以在Android手机的终端上运行,并且仍然使用API?

我建议在这里做一个研究:

以及:

以及:

以及:

以及:

我似乎在网上找不到任何地方可以解释如何简单地制作一个普通的程序(用任何语言,但如果Java可以简化与Android的交互),并访问Android API,只需将其下载到手机中并作为正常过程运行即可

这是因为它对大多数Android用户或开发者来说并不特别重要

如何制作一个普通(Java)程序,可以在Android手机上从终端运行,并且仍然使用API

欢迎您使用来编写一些脚本,但您对Android SDK的访问权限有限,并且不能“简单地通过手机中的SSHing来运行”。这得到了SL4A团队的支持

欢迎您尝试一下,尽管我记不起它是否可以在生产设备上使用,我也不知道它是否可以“简单地通过在手机上安装SSHing来运行”。而且,请记住,完全不支持使用此选项

欢迎您为ARM(或设备运行的任何CPU架构)编写自己的C/C++代码。这“只需通过在手机上安装SSHing即可运行”,但无法访问Android SDK

我仍然无法相信这种东西没有出现在每一个Android开发介绍的第一页上

安卓设备的用户超过2亿。您认为这些用户中有多大比例希望 “制作一个普通的程序……可以访问Android API,只需将其下载到手机中并作为正常流程运行即可”?0.01%? 0.001%? 我的钱是0.0001%

“每个安卓开发介绍的第一页”应该关注那些对接近100%的用户群很重要的东西。当然,我们欢迎您建立自己的网站,专注于这类内容,以满足对创建此类程序感兴趣的用户。

来自:

虽然我已经有了Android“hello world”可执行文件可以尝试,但我有 还没能运行它们。似乎找不到目录我可以 在Asus Transformer上使用支持 +x位。为了运行简单的二进制文件,你真的需要根安卓吗?我在里面哭

似乎幸运的安卓NDK方式需要制作一个Java 应用程序,该应用程序拉入包含本机代码的共享库。对于 haskell,该库需要包含一个C垫片, 调用Haskell运行时系统的入口点。一旦运行,它就会 可能可以使用FFI与Java端通信。这个 好消息是CJ van den Berg,他曾经救过我一次 开发ghc安卓系统,告诉我他在这方面很努力

以及以下评论中的一些具体建议:

有关中的位置的信息,请参见 您具有写、执行功能的android文件系统

基本上,您在adb shell的/data/local中拥有这些功能(以及 在可调试应用程序的文件夹中使用run as with adb shell),并在 /数据/数据//用于每个应用程序(例如终端仿真器的 数据目录(使用终端仿真器时)

:

多亏了hhm的指点,我已经证实了我的能力 构建在Android上工作的haskell程序

:

KBOX[…]为您提供了终端仿真器 一套合适的Linux实用程序(由busybox提供)、ssh和rsync 客户端和服务器,以及其他一些东西。此外,还有一个 扩展功能的附加程序包数

嗯,这只是在Android上运行一个可执行文件,而不是编写一个可访问Android API的可执行文件

我似乎在网上找不到任何地方可以解释如何简单地制作一个普通程序[…]并访问安卓API,只需将其下载到手机中并作为正常流程运行即可

答案如下:

是一个高级终端仿真器,加上许多类似Unix的软件,带有命令行界面(在APT管理的软件包中)。实际上,不仅是CLI(命令行),还有GUI(尽管GUI软件尚未试用)

与各种流行的“linux部署”方式不同(这种方式类似于容器,至少是chroot,根据传统的文件系统层次结构将东西安装到目录中),Termux的目标似乎是集成到主机系统中。为此,它有一个插件,可以与系统进行大量交互:在本地Android应用程序中打开文件,发送短信,用相机拍照,甚至通过系统TTS引擎说些什么

还有很多插件--请参阅

(A)一方