这里有三个应用程序:
现在UI应用程序调用本机应用程序启动。 那么有没有办法从A开始叫B? 因为B是A的外部部分,所以它需要是个别的过程。
更新: 像这样调用应用程序:
std::system("am start -n com.package.name/.activity")
它在ADB中工作,但在Native应用程序中不起作用。
新想法: 因为B应用程序只需要做一个简单的文件传输工作(OTA文件下载)。 所以我认为我需要让B应用程序成为一项服务。并在系统启动时启动它。然后一个应用程序没有调用B但是向B.广播了一个意图:
std::system("am broadcast -a my_start_action -n com.package.name/.activity")
但仍然无效。
答案 0 :(得分:0)
答案 1 :(得分:0)
由于A
和B
是本机Linux进程,因此您可以使用
system
或fork
/ exec
api。
在A的代码中
system("/path/to/b")
或代码A fork()
代码,exec("/path/to/b", ...)