在android上怎么通过c程序守护android应用程序,如:检测到android程序奔溃,c程序马上将其打开?

 我来答
4443248866c59
推荐于2016-02-19 · 知道合伙人数码行家
4443248866c59
知道合伙人数码行家
采纳数:4064 获赞数:87696
本人热心公益,喜欢帮助他人解决问题。

向TA提问 私信TA
展开全部
1.提高优先级
这个办法对普通应用而言,应该只是降低了应用被杀死的概率,但是如果真的被系统回收了,还是无法让应用自动重新启动。

2.让service.onStartCommand返回START_STICKY
通过实验发现,如果在adb shell当中kill掉进程模拟应用被意外杀死的情况(或者用360手机卫士进行清理操作),如果服务的onStartCommand返回START_STICKY,在eclipse的进程管理器中会发现过一小会后被杀死的进程的确又会出现在任务管理器中,貌似这是一个可行的办法。但是如果在系统设置的App管理中选择强行关闭应用,这时候会发现即使onStartCommand返回了START_STICKY,应用还是没能重新启动起来。

3.android:persistent="true"
网上还提出了设置这个属性的办法,通过实验发现即使设置了这个属性,应用程序被kill之后还是不能重新启动起来的。

4.让应用成为系统应用
实验发现即使成为系统应用,被杀死之后也不能自动重新启动。但是如果对一个系统应用设置了persistent="true",情况就不一样了。实验表明对一个设置了persistent属性的系统应用,即使kill掉会立刻重启。一个设置了persistent="true"的系统应用,在android中具有core service优先级,这种优先级的应用对系统的low memory killer是免疫的。
mkowenhuang
2012-07-27 · TA获得超过1337个赞
知道小有建树答主
回答量:435
采纳率:0%
帮助的人:279万
展开全部
c程序,你确定是想用C而不是java?不是很明白你的需求。

众所周知android开发是用java语言,不过这并不表示不能用c语言,可以通过谷歌发布的NDK用c语言开发,不过即便如此,用c语言写的函数也终将在顶层被java语言调用。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shenjielinger
2012-08-02 · 贡献了超过551个回答
知道答主
回答量:551
采纳率:0%
帮助的人:120万
展开全部
交话费刚回家
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式