我有以下问题:
我想从Java源代码调用Android本机二进制文件(在我的情况下是PING)。 所以我知道这可以通过创建一个新进程并监听其OutputStream来实现 - 但我想知道是否有可能不能使用JNI。
我考虑过创建一个名为JNIPING的新二进制文件,它提供了一个可以从java调用的方法。此方法可以执行PING二进制文件并将其输出返回给JNI调用者...
所以对我来说这听起来很有可能 - 但我的C很差,所以我想问你是否有人可以告诉我怎么做 - 或者如果不可能,所以我不需要花很多时间......
非常感谢您的回复!
PS:我在JNIPING中试过类似的东西:
#include<stdio.h>
#include<stdlib.h>
int main() {
char str[256], buf[256];
printf("myshell-> ");
scanf("%s", str);
sprintf(buf, "ping www.google.de\n", str);
system(buf);
return 0;
}
那么如何从二进制文件中获取输出以将其发送回java?