一种不同品牌终端的eSIM服务保活系统的制作方法

文档序号:17671094发布日期:2019-05-15 23:03阅读:296来源:国知局
一种不同品牌终端的eSIM服务保活系统的制作方法

本发明涉及通信技术领域,尤其是一种不同品牌终端的esim服务保活系统。



背景技术:

esim卡,即embedded-sim,嵌入式sim卡。esim卡的概念就是将传统sim卡直接嵌入到设备芯片上,而不是作为独立的可移除零部件加入设备中,用户无需插入物理sim卡,如同早年的小灵通。这一做法将允许用户更加灵活的选择运营商套餐,或者在无需解锁设备、购买新设备的前提下随时更换运营商。未来通用的esim标准建立将为普通消费者、企业用户节省更多移动设备使用成本,并带来更多的便利、安全性。

esim技术取代传统的实体sim卡,虽然无需增加新的硬件,但需要与终端的操作系统进行深度集成,才能完成与通信基带芯片的交互从而实现通信服务能力。esim应用在手机终端中必须保持长期在线,一旦出现异常,就会导致通信服务的中断,影响客户感知。esim应用转到后台服务一段时间后有可能会被终端系统的清理机制清理掉、esim应用在手机重启后服务中断、esim应用异常停止后无法重启,这些问题都会导致通信服务中断不可用。



技术实现要素:

为了解决上述问题,本发明提供一种不同品牌终端的esim服务保活系统,能够适配不同品牌的终端,并确保在不同品牌的终端中的esim应用服务不会被清理,而且在esim应用出现异常的情况下能自动重启。

为了实现上述目的,本发明采用的技术方案为:

一种不同品牌终端的esim服务保活系统,包括优先级控制模块、esim应用、监听模块及重启修复模块,

所述优先级控制模块包括权限适配模块子模块、进程切换子模块及通知栏显示子模块,所述权限适配模块子模块用于android系统的前台进程、可见进程、服务进程、后台进程及空进程权限的获取,并能够适配于所述esim应用;所述进程切换子模块用于分析不同终端厂商的清理机制、清理行为及清理规则,并将所述esim应用强制切换到所述前台应用;所述通知栏显示子模块用于通过将所述esim应用显示在终端的通知栏中,以使所述esim应用长期保持为所述前台应用;

所述esim应用的服务状态包括掉卡状态及正常状态,所述监听模块(3)用于对所述esim应用服务状态的监听;

所述重启修复模块包括检验子模块、原因分析子模块及重启子模块,

所述检验子模块用于所述esim应用卡槽状态的检验,并通过所述监听模块获得所述esim应用的状态信息,并以检验所述esim应用是否为掉卡状态;

所述原因分析子模块用于通过检验所述esim应用的modem侧状态,分析所述esim应用处于掉卡状态的原因;

所述修复子模块用于通过所述原因分析子模块提供的信息,并根据不同的掉卡状态原因为所述esim应用提供不同的修复方案。

进一步地,所述通知栏显示子模块通过与android系统进行适配,以使所述esim应用成为可见状态,并能够在不同版本的android系统通知栏中显示。

进一步地,所述监听模块通过android系统的动态注册广播接收者和根据所述esim应用的modem侧状态,以监听所述esim应用的服务状态。

进一步地,所述原因分析子模块根据检测所述esim应用的modem侧状态为无异常信息,将所述掉卡状态的原因判断为终端进入了无信号区域,所述修复子模块根据所述原因分析子模块提供的信息,对所述esim应用进行重启修复;

所述原因分析子模块根据检测所述esim应用的modem侧状态为异常信息,将所述掉卡状态的原因判断为通信异常,所述修复子模块根据所述原因分析子模块提供的信息,先关闭所述esim应用的modem,再对所述esim应用进行重启修复。

进一步地,所述原因分析子模块通过将应用协议数据单元发送到所述esim应用的modem侧,并根据所述esim应用的modem侧无回调响应三次,以鉴定所述掉卡状态的原因为通信异常。

进一步地,所述esim应用的重启修复包括下述步骤:

s1.通过将连接事件发送到所述esim应用的modem,并根据回调的应答事件确认连接事件发送成功;

s2.根据回调的连接响应事件,以确定所述esim应用接收到所述esim应用的modem所反馈的所述连接事件;

s3.将自动目标识别的数据与应用协议数据单元进行通讯,使所述esim应用开始重启,在所述esim应用重启的过程中会产生一个imsi值;

s4.当所述监听模块监听到所述esim应用处于正常状态时,所述修复子模块将当前的imsi值与所述esim应用重启的过程中会产生的imsi值进行校验,校验匹配后,所述esim应用启动成功。

进一步地,在所述步骤s2中,当在设定时间内所述连接响应事件没有收到通知时,将所述esim应用的modem之前连接的通道断开,并重新建立新的通道,重新进行步骤s1。

本发明的有益效果是,

1.根据厂商的自定义的清理行为和规则一般有:后台应用静置清理,省电清理,定时清理,午夜清理等,经日志及原理分析,清理的规则主要就是根据运行进程的系统优先级,权限适配模块将android系统各级进程进行获取并与esim应用进行适配,通过进程切换子模块将esim应用切换到优先级最高的前台进程,有效确保在不同品牌的终端中esim应用服务都不会被清理、中断而影响用户体验。通过将esim应用显示在终端的通知栏中,防止用户在切换其它应用的时候,使esim应用被切换到可见进程、服务进程、后台进程或空进程,从而避免esim应用被清理机制清理。检验子模块根据监听模块的信息,对esim应用当前的服务状态进行检验,并判断esim应用是否处于掉卡状态;通过原因分析子模块对掉卡状态进行分析,以确定掉卡状态的原因,修复子模块根据不同的掉卡状态原因进行不同的处理,最终进行esim应用的重启,实现了即使esim应用异常停止后也可以保证应用能自动重启,保证通信服务可用。

2.通知栏显示子模块通过与android系统进行适配,使得esim应用适配不同的android系统版本,实现esim应用在不同的android系统版本都能够在终端的显示栏中显示。

3.原因分析子模块通过以esim应用的modem侧状态判断掉卡状态的原因,当应用协议数据单元发送到所述esim应用模块(2)的modem侧无回调响应三次,确定掉卡状态的原因判断为通信异常,对于通信异常的情况需要对先关闭esim应用的modem,再对esim应用进行重启修复,能够避免esim应用的modem启动冲突。

4.由于在esim应用在重启的过程中会产生一个imsi值,通过将检验当前的imsi值与esim应用重启的过程中产生的imsi值进行校验,能够正确地识别移动用户的有效信息。

附图说明

图1是本发明一较佳实施方式的不同品牌终端的esim服务保活系统的结构框图。

图2是本发明一较佳实施方式的不同品牌终端的esim服务保活系统的重启修复流程图。

图中,1-优先级控制模块,11-权限适配模块子模块,12-进程切换子模块,13-通知栏显示子模块,2-esim应用模块,3-监听模块,4-重启修复模块,41-检验子模块,42-原因分析子模块,43-重启子模块。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。

请同时参见图1和图2,本发明的一种不同品牌终端的esim服务保活系统,包括优先级控制模块1、esim应用模块2、监听模块3及重启修复模块4。

优先级控制模块1包括权限适配模块子模块11、进程切换子模块12及通知栏显示子模块13。

权限适配模块子模块11用于android系统的前台进程、可见进程、服务进程、后台进程及空进程权限的获取,并能够适配于esim应用模块2。

由于android系统有一个清理机制,而且每个终端厂商也会在此基础上根据厂商自己的场景及需求设置自定义的清理机制,根据总结出厂商的自定义的清理行为和规则一般有:后台应用静置清理,省电清理,定时清理,午夜清理等,经日志及原理分析,清理的规则主要就是根据运行进程的系统优先级。android系统具有的常用进程等级为:

前台进程(foregroundprocess):是用户当前做的事所必须的进程。如果杀死前台进程需要用户交互,因为前台进程的优先级是最高的。

可见进程(visibleprocess):如果一个进程不含有任何前台的组件,但仍可被用户在屏幕上所见。可见的进程也被认为是很重要的,一般不会被销毁,除非是为了保证所有前台进程的运行而不得不杀死可见进程的时候。

服务进程(serviceprocess):如果一个进程中运行着一个service,这个service是通过startservice(xxx)开启的,并且不属于上面两种较高优先级的情况,这个进程就是一个服务进程。尽管服务进程没有和用户可以看到的东西绑定,但是它们一般在做的事情是用户关心的,比如后台播放音乐,后台下载数据等。所以系统会尽量维持它们的运行,除非系统内存不足以维持前台进程和可见进程的运行需要。

后台进程(backgroundprocess):如果进程不属于上面三种情况,但是进程持有一个用户不可见的activity(activity的onstop(xxx)被调用,但是ondestroy(xxx)没有调用的状态),就认为进程是一个后台进程。后台进程不直接影响用户体验,系统会为了前台进程、可见进程、服务进程而任意杀死后台进程。通常会有很多个后台进程存在,它们会被保存在一个lru(leastrecentlyused)列表中,这样就可以确保用户最近使用的activity最后被销毁,即最先销毁时间最远的activity。

空进程(emptyprocess):如果一个进程不包含任何活跃的应用组件,则认为是空进程。例如:一个进程当中已经没有数据在运行了,但是内存当中还为这个应用驻留了一个进程空间。保存这种进程的唯一理由是为了缓存的需要,为了加快下次要启动这个进程中的组件时的启动时间。系统为了平衡进程缓存和底层内核缓存的资源,经常会杀死空进程。

进程切换子模块12用于分析不同终端厂商的清理机制、清理行为及清理规则,并将esim应用模块2强制切换到前台应用。

权限适配模块1将android系统各级进程进行获取并与esim应用模块2进行适配,通过进程切换子模块将esim应用切换到优先级最高的前台进程,有效确保在不同品牌的终端中esim应用服务都不会被清理、中断而影响用户体验。

通知栏显示子模块13用于通过将esim应用模块2显示在终端的通知栏中,以使esim应用模块2长期保持为前台应用。在本实施例中,通知栏显示子模块13通过与android系统进行适配,以使esim应用模块2成为可见状态,并能够在不同版本的android系统通知栏中显示,使得esim应用模块2适配不同的android系统版本,实现esim应用模块2在不同的android系统版本都能够在终端的显示栏中显示。由于android系统的机制,在切换应用程序时,被切换的应用程序会被切换到可见进程、服务进程、后台进程或空进程,这样就容易导致被切换的应用程序会被清理机制清除,因此,通知栏显示子模块13通过在将esim应用模块2显示在终端的通知栏中,有效防止用户在切换其它应用的时候,esim应用模块2被清理机制清理,有效减少减少esim应用被清理回收的概率。

esim应用模块2的服务状态包括掉卡状态及正常状态,监听模块3用于对esim应用服务状态的监听。在本实施例中,监听模块3通过android系统的动态注册广播接收者和根据esim应用模块2的modem侧状态,以监听esim应用模块2的服务状态,通过间接的方式对esim应用模块2的服务进行状态监控,能够准确获知esim应用模块2当前服务状态,以便于系统进行后序的操作。

重启修复模块4包括检验子模块41、原因分析子模块42及重启子模块43。

检验子模块41用于esim应用模块2卡槽状态的检验,并通过监听模块3获得esim应用模块2的状态信息,并以检验esim应用模块2是否为掉卡状态。

原因分析子模块42用于通过检验esim应用模块2的modem侧状态,分析esim应用模块2处于掉卡状态的原因。

修复子模块43用于通过原因分析子模块42提供的信息,并根据不同的掉卡状态原因为esim应用模块2提供不同的修复方案。

在本实施例中,原因分析子模块42根据检测esim应用模块2的modem侧状态为无异常信息,将掉卡状态的原因判断为终端进入了无信号区域,修复子模块43根据原因分析子模块42提供的信息,对esim应用模块2进行重启修复。

原因分析子模块42通过将应用协议数据单元(apdu)发送到esim应用模块2的modem侧,并根据esim应用模块2的modem侧无回调响应三次,以鉴定掉卡状态的原因为通信异常,修复子模块43根据原因分析子模块42提供的信息,先关闭esim应用模块2的modem,再对esim应用模块2进行重启修复,从而能够避免esim应用的modem启动冲突。

在重启修复模块4的作用下,即便esim应用异常停止后也可以保证应用能自动重启,保证通信服务可用。

esim应用模块2的重启修复包括下述步骤:

s1.通过将连接事件(connect)发送到esim应用模块2的modem,并根据回调的应答事件(uimremoteeventresponse)确认连接事件发送成功。

s2.根据回调的连接响应事件(uimremoteconnectindication),以确定esim应用模块2接收到esim应用模块2的modem所反馈的连接事件(connect);当在设定时间内连接响应事件(uimremoteconnectindication)没有收到通知时,将esim应用模块2的modem之前连接的通道断开,并重新建立新的通道,重新进行步骤s1。

s3.将自动目标识别(atr)的数据与应用协议数据单元(apdu)进行通讯,使esim应用模块2开始重启,在esim应用模块2重启的过程中会产生一个imsi值。

s4.当监听模块3监听到esim应用模块2处于正常状态时,修复子模块43将当前的imsi值与esim应用模块2重启的过程中会产生的imsi值进行校验,校验匹配后,esim应用模块2启动成功。通过将校验imsi值,能够正确地识别移动用户的有效信息。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1