System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种多策略拉活Android进程的方法技术_技高网

一种多策略拉活Android进程的方法技术

技术编号:40098235 阅读:4 留言:0更新日期:2024-01-23 17:16
本发明专利技术公开了一种多策略拉活Android进程的方法,包括以下步骤:S1、在安装应用程序时,采用账号同步机制进行拉活进程;S2、应用程序安装完成后,在设备启动时,采用联系人目录机制进行拉活进程;S3、应用程序被查杀时,采用Native层进程间文件锁监听机制进行拉活进程;该发明专利技术集成了多种拉活技术手段,在安装应用程序时采用账号同步机制进行拉活进程,在设备启动时采用联系人目录机制进行拉活进程,在应用程序被查杀时采用Native层进程间文件锁监听机制进行拉活进程,大大提高了应用程序被查杀后,重新拉活的速度和成功率,无论是在兼容性、可用性,还是效率上都有大幅提高,能在应用程序被查杀后,用最短的时间进行有效拉活,使用效果好。

【技术实现步骤摘要】

本专利技术涉及应用程序拉活,具体涉及一种多策略拉活android进程的方法。


技术介绍

1、在android系统中,应用程序的生命周期管理是由系统自动完成的。当系统资源紧张时,系统会根据一定的策略杀死一些后台运行的应用程序,以释放资源。这就导致了应用程序在后台运行时可能会被系统杀死,从而影响应用程序的稳定运行。为了解决这个问题,android开发者通常会使用一种被称为“拉活”的技术。“拉活”就是通过一些技术手段,使得应用程序在被系统杀死后能够自动重启,从而保证应用程序的持续运行。

2、申请号为cn202011194366.9的中国专利公开了应对应用程序被查杀的保活拉活方法,该方案在守护进程正常工作的前提下,利用守护进程来监测应用程序是否被终止,当应用程序被终止时,由守护进程重新启动应用程序,以实现应用程序的持续运行和重启,从而在一定程度上解决相关技术中存在的问题。但是该方案仍然存在以下几点不足之处:一、容易失效,双服务守护进程的技术方案只在android8.0及以下版本有效,android8.0后的版本无效,因为操作系统为了节省电池和内存,会限制后台服务的运行,如果服务被系统杀死,双服务守护进程无法正常工作;二、局限性大,不支持设备开机和软件安装后拉活,并且该方案依赖广播通知守护进程进行拉活,而广播的实现前提是,软件安装后必须启动进入进行注册和发送;三、检测滞后,该方案通过系统查杀时通知守护服务进程被关闭,来检测应用程序是否被查杀,系统查杀后是通过binder机制通知远程服务被关闭,由于跨进程通信存在耗时,会导致检测滞后,守护进程未能在最短时间内拉活。


技术实现思路

1、本专利技术为一种多策略拉活android进程的方法,该多策略拉活android进程的方法集成了多种拉活技术手段,在安装应用程序时采用账号同步机制进行拉活进程,在设备启动时采用联系人目录机制进行拉活进程,在应用程序被查杀时采用native层进程间文件锁监听机制进行拉活进程,大大提高了应用程序被查杀后,重新拉活的速度和成功率,无论是在兼容性、可用性,还是效率上都有大幅提高,能在应用程序被查杀后,用最短的时间进行有效拉活,使用效果好。

2、为实现上述目的,本专利技术采用以下技术方案:

3、一种多策略拉活android进程的方法,包括以下步骤:

4、s1、在安装应用程序时,采用账号同步机制进行拉活进程;所述账号同步机制的拉活过程为:

5、s11、安装应用程序;

6、s12、分别注册内容提供者、注册同步适配器服务和注册账号认证服务;

7、s13、启动应用程序;

8、s14、创建自动同步账号:指定自动同步账号的名称和类型,在程序清单文件中声明权限android.permission.write_sync_settings,通过调用contentresolver的setissyncable方法来开启账号自动同步功能;

9、s15、添加定期同步账号:在创建完同步账号后,通过调用账号管理器accountmanager的addaccountexplicitly方法,添加一个新同步账号到系统中;

10、s16、账号程序定期进行拉活:新创建的同步账号被添加到系统中后,通过调用contentresolver的addperiodicsync方法来通知系统的账号程序开始自动同步,系统账号程序定期进行同步拉活;

11、s2、应用程序安装完成后,在设备启动时,采用联系人目录机制进行拉活进程;

12、s3、应用程序被查杀时,采用native层进程间文件锁监听机制进行拉活进程。

13、优选地,步骤s12中所述注册内容提供者的过程为:在应用程序的清单文件中,注册账号内容提供者,用于在系统进行账号同步时,查找对应账号的内容提供者,用来执行账号相关查询操作。

14、优选地,步骤s12中所述注册同步适配器的过程为:在应用程序的清单文件中,注册同步适配器服务,同步适配器服务通过binder通信机制与系统账号程序进行关联,并由账号程序定期进行拉活。

15、优选地,步骤s12中所述注册账号认证服务的过程为:在应用程序的清单文件中,注册账号认证服务,该账号认证服务用于设置同步账号的类型、名称和图标。

16、优选地,步骤s2中所述联系人目录机制的拉活过程为:

17、s21、安装应用程序:设备上的包管理器负责安装应用程序,并对应用程序的清单文件进行扫描处理;

18、s22、注册内容提供者:在应用程序的清单文件中,注册联系人目录内容提供者contactdirectory,该内容提供者用于和系统的联系人程序进行关联;

19、s23、设备启动:设备启动后,联系人进程服务android.process.acore负责拉活程序;

20、s24、联系人目录进行检测:系统的联系人程序进行实时检测具有联系人目录内容提供者contactdirectory的程序;

21、s25、自动拉活程序:系统的联系人自动拉活有联系人目录内容提供者contactdirectory的程序。

22、优选地,步骤s3中所述native层进程间文件锁监听机制的拉活过程为:

23、s31、安装应用程序;

24、s32、注册监视器:在应用程序的清单文件中,注册监视器,该监视器用于指定被拉活的目标程序和被拉活的目标进程;

25、s33、启动应用程序;

26、s34、应用程序分别在java层创建服务进程1和服务进程2;

27、s35、应用程序在服务进程1中调用native层方法,通过两次fork创建子进程,即得孤儿进程1;应用程序在服务进程2中调用native层方法,通过两次fork创建子进程,即得孤儿进程2;

28、s36、创建共享文件锁:应用程序在native层的孤儿进程1和孤儿进程2中创建彼此共享的共享文件锁;

29、s37、感知进程查杀:应用程序在native层中通过感知共享文件锁的状态,来判断彼此孤儿进程是否被系统查杀;

30、s38、孤儿进程彼此拉活:孤儿进程1和孤儿进程2通过共享文件锁建立关联,其中一个孤儿进程被系统查杀后,会被另一个孤儿进程立刻感知,然后通过调用context.startinstrumentation启动监视器,进行拉活目标程序中的进程。

31、采用上述技术方案后,本专利技术与
技术介绍
相比,具有如下优点:

32、1、本专利技术兼容性好:经测试在最新android14的设备上能进行有效的拉活,这得益于账号同步机制accountsyncadapter,可在现有的任何android版本的设备上进行拉活。

33、2、本专利技术可用性强:本专利技术支持在设备开机和程序安装后进行拉活,这得益于联系人目录机制,当程序被安装或设备开机后,系统的联系人提供程序会自动拉活包含本文档来自技高网...

【技术保护点】

1.一种多策略拉活Android进程的方法,其特征在于,包括以下步骤:

2.如权利要求1所述的多策略拉活Android进程的方法,其特征在于:步骤S12中所述注册内容提供者的过程为:在应用程序的清单文件中,注册账号内容提供者,用于在系统进行账号同步时,查找对应账号的内容提供者,用来执行账号相关查询操作。

3.如权利要求1所述的多策略拉活Android进程的方法,其特征在于:步骤S12中所述注册同步适配器的过程为:在应用程序的清单文件中,注册同步适配器服务,用于同步适配器服通过Binder通信机制与系统账号程序进行关联,并由账号程序定期进行拉活。

4.如权利要求1所述的多策略拉活Android进程的方法,其特征在于:步骤S12中所述注册账号认证服务的过程为:在应用程序的清单文件中,注册账号认证服务,该账号认证服务用于设置同步账号的类型、名称和图标。

5.如权利要求1所述的多策略拉活Android进程的方法,其特征在于:步骤S2中所述联系人目录机制的拉活过程为:

6.如权利要求1所述的多策略拉活Android进程的方法,其特征在于:步骤S3中所述Native层进程间文件锁监听机制的拉活过程为:

...

【技术特征摘要】

1.一种多策略拉活android进程的方法,其特征在于,包括以下步骤:

2.如权利要求1所述的多策略拉活android进程的方法,其特征在于:步骤s12中所述注册内容提供者的过程为:在应用程序的清单文件中,注册账号内容提供者,用于在系统进行账号同步时,查找对应账号的内容提供者,用来执行账号相关查询操作。

3.如权利要求1所述的多策略拉活android进程的方法,其特征在于:步骤s12中所述注册同步适配器的过程为:在应用程序的清单文件中,注册同步适配器服务,用于同步适配器服通过binder通信机制与系统账...

【专利技术属性】
技术研发人员:黄天财黄俊杰黄海波阮争志叶木森吴松源郑颖罗浩邓冬瑞李庆勇
申请(专利权)人:厦门她趣信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1