android - 如何使 native C 可执行文件在 Android 中永远运行?

标签 android c android-ndk executable

有没有办法让原生 C 可执行文件在 Android 操作系统中永远(在后台)运行? 我已经在 Android 中移植了 libpcap,我做了一个嗅探器。我有一个 root 的 HTC Hero。我通过以下命令在后台运行嗅探器:

$ su
# mount -o remount,rw -t vfat /dev/block//vold/179:0 /sdcard
# /sdcard/mysniffer &

我同时运行一个以循环方式浏览网页列表的 Android 服务。为了强制我的服务在后台永远运行,我获得了一个 PARTIAL_WAKE_LOCK通过 android.os.PowerManager。

该服务永远在后台运行,但嗅探器在运行一段时间后会从操作系统中终止..

有没有办法让它永远运行?我希望这两个程序始终在后台运行,以便进行一些测量。

最佳答案

我找到了一种方法来做到这一点,并进行了我的实验和测量! :) 我刚刚更改了 PARTIAL_WAKE_LOCKSCREEN_DIM_WAKE_LOCK为我服务! 我不明白原因,但是通过这样做, native 嗅探器不会被杀死 Android.. 如果有人知道更好的解决方案,请告诉我们。

关于android - 如何使 native C 可执行文件在 Android 中永远运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6212894/

相关文章:

安卓全息主题背景

c - 生成随机数的问题

c - 检测到堆栈崩溃并随后出现段错误

c++ - 无法使用ndk for android生成openssl的静态库

java - RecyclerView加载超过n个项目的问题

android - 我应该如何将我的 REST Api 响应从 android 发送回 IBM watson?

android - "Explicit termination method ' 关闭 ' not called"是什么意思?

c - 如何从 AVX 内在函数中获得用于计算基本统计数据的性能提升?

android - 通过信号调用 Android NDK 项目中的 ffmpeg 部分来终止进程

java - 如何以编程方式关闭 Android 手机?