android 程序防止被360或者系统给kill掉

关于如果和防止android 程序防止被360kill掉之后重启的问题,肯定大家也搜索了好多方法,都不好使,对不对,什么增高权限了,什么进程优先级了,这些东西都不是我们可控的,所以有没有一些非常保险的方法,让程序被kill掉之后自动重启呢。

大家发现没有,当我们使用360进行程序清理的时候,有些应用自己快速的启动起来了,他们是怎么实现的呢?其实我们没有见过他们的源码,也不好说是怎么实现的。

我在下面将为大家提供一些思路,也许会对你有所帮助:

windows上流氓软件和病毒特别多,有时候你根本查杀不掉他们,除非你把电源拔掉,才能不让其去继续耍流氓。他们是怎么做到不能被杀死呢,就是通过守护进程进行操作的,

比如,1.exe ,2.exe 这两个程序,当杀死1.exe的时候,把2.exe给启动,如果再去杀2..exe的时候再去启动1.exe,所以根本就杀不死他。其实也只是简单的举个小例子,应该要比这要复杂的多,病毒和流氓软件是要和杀毒软件对着干的。

我们在android中也可以使用这个思路:

(1)创建两个Service,Service1和Service2

(2) 在Service1的onDestory方法里写上启动Service2的代码

在Service2的onDestory方法里写上启动Service1的代码

这样就保证了非系统的进程杀死自己程序重启的方法

当时如果是系统程序,比如在系统自带的程序管理里面强制kill掉程序怎么么办呢?我们还有好的办法吗

当然有了,哈哈,其实也很简单,

我们就是把那些常用的系统广播全注册了,比如锁屏的广播等,收到广播之后就检查service是否已经启动,如果没有就启动那连个其中一个service即可

以上的方法根本不需要什么系统的更高的权限之类的东西,也可以让自己的程序成为不死之身。

时间: 2024-09-29 07:27:10

android 程序防止被360或者系统给kill掉的相关文章

如何让自己的Android程序、Service永不被系统kill

具体做法如下: 1. 设置FLAG_PERSISTENT:在AndroidManifest.xml文件中,加入android:persistent="true" : 2. 设置FLAG_SYSTEM:将你写的应用程序放到/system/app/目录下即可.具体操作如下: A. 使用Cygwin或cmd进入你工程所在的bin目录中,然后执行如下两条命令: adb remount adb push yourpackage.apk /system/app/ 命令adb remount是为了获

Android下写一个永远不会被KILL掉的进程/服务

Android 系统对于内存管理有自己的一套方法,为了保障系统有序稳定的运信,系统内部会自动分配,控制程序的内存使用.当系统觉得当前的资源非常有限的时候,为了保 证一些优先级高的程序能运行,就会杀掉一些他认为不重要的程序或者服务来释放内存.这样就能保证真正对用户有用的程序仍然再运行.如果你的 Service 碰上了这种情况,多半会先被杀掉.但如果你增加 Service 的优先级就能让他多留一会,我们可以用 setForeground(true) 来设置 Service 的优先级. 为什么是 fo

如何让自己的Android程序永不被系统kill

如何让自己的Android程序永不被系统kill 相关知识: 一般来说,在Android系统中,当某进程较长时间不活动,或系统资源比较紧时,该进程可能被系统kill掉,以此来回收一些资源.Android系统会根据进程的优先级来选择性地杀死一些进程,优先级从高到低依次是: 1. 前台进程(Foreground Process) 2. 可视进程(Visible Process) 3. 服务进程(Service Process) 4. 后台进程(Background Process) 5. 空进程(E

Android程序Crash时的异常上报

转载请注明来源:http://blog.csdn.net/singwhatiwanna/article/details/17289479 前言 大家都知道,android应用不可避免的会发生crash,无论你的程序写的多完美,总是无法完全避免crash的发生,可能是由于android系统底层的bug,也可能是由于不充分的机型适配或者是糟糕的网络状况.当crash发生时,系统会kill掉你的程序,表现就是闪退或者程序已停止运行,这对用户来说是很不友好的,也是开发者所不愿意看到的,更糟糕的是,当用户

Android - Mac系统Android程序位置

Mac系统Android程序位置 本文地址: http://blog.csdn.net/caroline_wendy Mac系统是类Unix系统,Android程序直接安装至文件夹,可以使用"显示包内容"打开: 位置:  cd /Applications/Android\ Studio.app/sdk/platform-tools/

如何处理android程序变为后台程序,系统回收资源,再次打开时,程序因为null指针等崩溃

home键等原因,程序会变为后台程序,系统会更具需要,可能回收资源,再打开时候,就会因为资源回收,再调用oncreate,没有Intent参数而导致程序崩溃.   这种情况,我们可以处理的方式有两种,一是用: @Override     protected void onSaveInstanceState(Bundle outState) {      // TODO Auto-generated method stub      super.onSaveInstanceState(outSta

Android中如何像 360 一样优雅的杀死后台服务而不启动

Android中,虽然有很多方法(API或者shell命令)杀死后台`service`,但是仍然有很多程序几秒内再次启动,导致无法真正的杀死.这里主要着重介绍如何像 360 一样杀死Android后台服务,而不会再次启动. 一.已知的 kill 后台应用程序的方法 android.os.Process.killProcess(pid); activityManager.killBackgroundProcesses(pkgName); kill -9 pid 这三种方法都可以“杀死”后台应用程序

【Bugly干货分享】手把手教你逆向分析 Android 程序

很多人写文章,喜欢把什么行业现状啊,研究现状啊什么的写了一大通,感觉好像在写毕业论文似的,我这不废话,先直接上几个图,感受一下. 第一张图是在把代码注入到地图里面,启动首页的时候弹出个浮窗,下载网络的图片,苍老师你们不会不认识吧? 第二张图是微信运动步数作弊,6不6?ok,那我们从头说起 1.反编译 Android 的反编译,相信大家都应该有所了解,apktool.JEB 等工具我们先看一下 Apk 文件的结构吧,如下图: 1.META-INF:签名文件(这个是如何生成的后面会提到)2.res:

@Android程序员,请掌握这些核心生存技能!

大佬你好,作为一个Android开发者,在学习过程中有什么需要注意的? 这个问题其实也不太好回答,因为要注意的问题蛮多的,多得就像雾霾中的颗粒.不过,有趣的是,流年似水这两次的提问中,对我的称呼大有不同. 再说,我也不是什么"大佬",无非比较接地气一点,喜欢和大家交流分享的感觉而已. 那么接下来,我就针对这个提问,做一些回答.希望对有类似问题的同学起到一个参考的作用.将以以下几个方面做出回答: 1.不断学习2.分享一下我的学习方法3.移动开发者核心生存技能(高能!) 为什么要不断学习