android 杀不死的服务

来源:互联网 发布:网络语水鱼是什么意思 编辑:程序博客网 时间:2024/04/30 00:42

最近,在inter教育版本的项目中,实现了后台杀不死的服务。

1、前台服务

2、主进程fork()子进程。

(1)Android.mk:声明c文件

(2)xxx.h:声明native方法

(3)xxx.c:

a:fork子进程(1),再fork子进程,再杀死子进程(1)

b:AllocObject(env, clazz);初始化应用成对象

c:(*env)->SetObjectField(env, subprocess,
(*env)->GetFieldID(env, clazz, "mContext",
"Landroid/content/Context;"), context);把上下文环境传给应用层



d:jni调用java层,初始化监听,并且主线程wait(),

d:利用FileObserver监听:onEvent事件,当为不可写文件被 close时。


/proc/+pid (杀不死)    

"/data/data/"+pkgName;  卸载反馈

e:            Runtime.getRuntime()
                    .exec("am start --user 0 -n com.polysaas.emmlite/com.polysaas.emmlite.ui.FragmentHomeActivity");重启应用

0 0
原创粉丝点击