永发信息网

怎样让android应用永远不退出或者退出后有通知

答案:6  悬赏:70  手机版
解决时间 2021-04-05 04:36
怎样让android应用永远不退出或者退出后有通知
最佳答案
要想永远不被系统kill掉,那你只能是升级成系统应用。
你的这个需求其实我也做过但是也不是%100 保证 Service 永远不被 Kill.
说一下我的思路吧
1,定义一个服务在后台运行,让这个服务单独一个进程,不要和你的应用程序共享一个进程。
2.在你的service的onDestroy()方法中调用 onStart() 方法。
3.定义一个接口开机广播的接收器,开机就启动你的服务。
4.根据的业务需求是需要定位,那肯定是需要网络的,你可以再写一个接收网络广播的接收器,当网络设置从断网到联网,就启动你的服务,开始定位。
全部回答
正在开发一款基于android 的定位软件,需要在后台不断的监听并上报地理位置信息。

我的问题是:

1:了解到android的机制是当系统资源不足时会自动kill掉一些程序。那么,有没有办法保证我这个应用永远不会被kill掉? (有人建议用service ,但是service 貌似当系统资源不足时也会被kill掉啊)

2: 从网上查了很多资料,说永远不被kill掉是不可能的,因为这是android Linux系统的特性, 但是我看到预装的360卫士为什么就能永远在后台运行而不被kill掉?

3:如果不能实现永远不被杀死的效果, 那么, 至少给个被kill掉的通知吧, 怎样让应用监听自己被kill掉的事件,让应用自己在被kill掉之前运行一段代码(比如给用户做出自己已退出的提示)。
360是监听很多的广播啊,当监听到系统发来的这些广播就启动我们的程序(如电量的改变,网络的切换等等)
可以设置一个定时器,让其每个一定时间判定一次系统是否运行,若未运行就重启后台service ,设定时间越短,被kill掉的时间越短
没人能保证自己程序不被KILL的吧,要是能这样,Google他不哭才怪。
应该都是实现了很多广播监听,在被Kill后。网络状态改变,充电,重启手机.....都可发送一次广播启动程序
1,调高应用的级别,这样只能减少被Kill的可能,但不可能完全无视被Kill的可能性。
2.360应该是有一个监听,过一段时间就检查程序是否正在运行,如果没有运行就启动程序。
3.不知道。但你可以试试抓取全局异常试试,有一大部分可能不会好用。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
一不小心想起你,我们说好不再联系。原来忘记
陕西与四川高考录取分数线一样吗
购房合同编号是什么,签订购房合同需要注意什
公交车广告投放有哪些需要注意的?
成都鲍豪斯美发学校具体位置在那?
细胞中含有两类物质:一类是分子比较小的,一
云天化公司是传销吗
农村自建钢筋混凝土框架结构的3层楼房,梁柱内
开发区顺丰快递在什么位置
喉咙发红,充血,是什么原因引起的,我吃
F1发车位置不一样,为什么终点一样?
潮人们2011都在用什么品牌的手机?
机械维修与制造累不累挣得多吗
中国经济最繁荣的是哪十个城市?
dnf怎么看时装好坏
推荐资讯
vivoy23l照相的时候了一闪一闪的,那是怎么了
已知二次函数的图象(-0.7≤x≤2)如图所示、
冷小莫亚索极限1v3反杀视频10分钟的时候那首
Dr胶是什么胶?
吃什么保护子宫和卵巢,保护子宫和卵巢吃什么
短期美国留学 一个月 需要多少
单选题下列不属于穆罕默德·阿里改革土地制度
员工自评怎么写
上海去广州到番禺到哪个机场
王伯伯卖出80000元的股票,缴纳印花税80元。
恶战怎么是黑白的
填空题求值:sin(-270°)=________.
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?