系统兼容时使Android应用与Linux锁屏机制关联的方法技术方案

技术编号:32650039 阅读:12 留言:0更新日期:2022-03-12 18:40
一种系统兼容时使Android应用与Linux锁屏机制关联的方法,所述方法包括以下步骤:S1:Linux系统上兼容Android系统运行的环境准备;S2:Linux端创建常驻服务,用于接收Android端多媒体播放状态变化并申请注册和注销锁屏锁;S3:Android系统监听Android应用的多媒体播放状态;S4:Android系统将所述多媒体播放状态变化实时通知给Linux端;S5:Linux端调用Dbus服务org.gnome.SessionManager,调用所述Dbus服务中的Inhibit函数方法阻止系统进入锁屏状态,调用所述Dbus服务中的Uninhibit函数方法允许系统进入锁屏状态。本发明专利技术的方法解决了Android应用在播放视频或音视频通话的情况下Linux系统仍会进入锁屏模式的问题,同时克服了Android系统原生锁屏机制下Android应用暂停播放视频时系统无法进入锁屏模式的缺陷。停播放视频时系统无法进入锁屏模式的缺陷。停播放视频时系统无法进入锁屏模式的缺陷。

【技术实现步骤摘要】
系统兼容时使Android应用与Linux锁屏机制关联的方法


[0001]本专利技术涉及Linux操作系统
,具体地说,是一种在Linux兼容Android系统时能使Android应用与Linux锁屏机制关联的方法。

技术介绍

[0002]近年来,随着Android系统用户的增长以及Android软、硬件产品的成熟和发展,Android应用生态呈现出爆发式的发展,在很多领域都已经超过Windows和iOS的应用生态,成为目前使用最广泛的应用生态。Android系统基于Linux内核发展而来,是目前移动终端市场中市场份额最高的Linux类操作系统,在移动终端领域具有极好的生态环境。在PC市场中,Linux操作系统作为Android的前身,发展较为缓慢,生态环境长期处于不良状态;而Windows系统占据着的最大份额,但是作为美国闭源操作系统,Windows系统在信息网络安全方面存在巨大安全隐患。
[0003]随着信息技术的飞速发展,国家对信息安全的重视程度日益提升,国内基于开源Linux操作系统的自主操作系统日益发展壮大,但Linux操作系统生态应用的严重缺乏仍旧是困扰Linux操作系统真正推向市场的一大痛点。由于Android系统基于Linux内核发展而来,所以给Linux操作系统兼容Android应用提供了极大的可能性和便利,使得移动端的丰富应用很有可能成功运行在PC端。近年来,Android应用生态在Linux操作系统上的兼容支持成为了研究热点,国内外有许多研究人员尝试将Android运行环境迁移到Linux类计算机平台以实现Android应用生态在Linux操作系统上兼容支持的效果,各种兼容技术衍生而出,这些技术将PC端和移动端进行融合,成功将Android应用生态迁移到Linux上来,极大地推动了Linux应用生态的发展。
[0004]但是与此同时,Android系统原生锁屏机制下视频播放类应用由于设计、开发标准与Linux系统没有做到完全统一,导致有些应用停留在暂停播放界面时系统无法进入锁屏状态,进而加大系统能耗;再者,Android和Linux两个系统的天然隔阂使得宿主机Linux系统无法感知Android应用的运行状态,出现Android应用在播放视频或进行音视频通话的情况下也可能出现系统进入锁屏状态的情况,给用户带来非常糟糕的使用体验。

技术实现思路

[0005]为解决上述问题,本专利技术的目的是提供一种系统兼容时使Android应用与Linux锁屏机制关联的方法,解决了Android应用在播放视频或音视频通话的情况下Linux系统仍会进入锁屏模式的问题,同时克服了Android系统原生锁屏机制下Android应用暂停播放视频时系统无法进入锁屏模式的缺陷。
[0006]为达到上述目的,本专利技术所采取的技术方案是:一种系统兼容时使Android应用与Linux锁屏机制关联的方法,所述方法包括以下步骤:S1:Linux系统上兼容Android系统运行的环境准备;
S2:Linux端创建常驻服务,用于接收Android端的多媒体播放状态变化并申请注册和注销锁屏锁;S3:Android 系统监听Android应用的多媒体播放状态;S4:Android系统将所述多媒体播放状态变化实时通知给Linux端;S5:Linux端调用Dbus服务org.gnome.SessionManager,调用所述Dbus服务中的Inhibit函数方法阻止系统进入锁屏状态,调用所述Dbus服务中的Uninhibit函数方法允许系统进入锁屏状态。
[0007]其中,步骤S1中,首先在Linux系统上使用docker容器加载Android系统镜像,使Linux端和Android端共享同一Linux内核;之后在所述docker容器中启动Android端运行环境。
[0008]其中,步骤S2中包括,S21 在Linux端创建一个常驻服务,在服务中创建socket服务端,用于接收Android端实时发送的Android应用的多媒体播放状态变化;S22 所述常驻服务根据Android端的反馈结果向Linux系统申请注册和注销锁屏锁,使得整个Android系统作为Linux系统的一个应用进行处理。
[0009]具体地,在步骤S22中,当接收到Android端有多媒体播放或正在进行音视频会议的消息时,向Linux系统申请注册锁屏锁,使得Linux系统不会进入锁屏状态;当接收到Android端不存在多媒体播放或音视频会议的消息时,注销之前申请的锁屏锁,使得Linux系统能够结合Linux上其他应用状态分析是否应该按时进入锁屏状态。
[0010]其中,步骤S3中包括,S31 修改Android系统默认的wakeLock申请机制,使得多个Android应用能同时申请使屏幕保持常亮的wakeLock锁;S32 当打开Android应用播放视频或进行音视频会议时,应用向Android系统申请保持屏幕常亮的wakeLock锁,将这个应用记录下来并存入一个列表;S33 监听Android系统的音频的播放状态,当所述音频播放状态有改变时,Android系统中通过已有的音频播放状态的回调接口获取当前所有音频输出的Android应用,并将这些应用记录并存入一个列表;S34 比对所述S32和所述S33获得的两个应用列表,判定Android系统的多媒体播放状态。
[0011]具体地,在步骤S31中,Android系统中借助wakeLock机制结合音频播放状态判定Android应用的多媒体播放状态,当Android应用申请了保持屏幕常亮的wakeLock锁且有音频输出时则判定为多媒体播放状态,否则判定为无多媒体播放状态。
[0012]另外,在步骤S34中,进行比对后,判定方式为:当存在某个Android应用有音频输出且同时申请了保持屏幕常亮的wakeLock锁,则判定Android系统处于多媒体播放状态,反之则判定为无多媒体播放状态。
[0013]其中步骤S4包括,S41 在Android系统中创建常驻服务,在所述常驻服务中创建socket通信客户端,用于发送多媒体播放状态变化到Linux端;S42 Android系统记录好每一次反馈给Linux系统的多媒体播放状态,当一个应用
处于多媒体播放状态或者多个应用同时处于多媒体播放状态时都判定为同一多媒体播放状态类型;S43 Android系统综合所述S34和所述S42的结果来决定是否向Linux端发送多媒体播放状态改变的通知;S44 所述S41的常驻服务通过socket通信将多媒体播放状态变化发送给Linux端。
[0014]具体地,在步骤S43中,如果所述S42的结果与所述S34更新的状态相同,忽略这次状态更新;如果所述S42的结果与所述S34更新的状态不同,将当前的状态不同的消息通过广播的形式发送给所述S41创建的常驻服务。
[0015]本专利技术的有益效果在于:与现有技术相比,本专利技术解决了Android应用在Linux系统上运行,即有A本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种系统兼容时使Android应用与Linux锁屏机制关联的方法,其特征在于,所述方法包括以下步骤:S1:Linux系统上兼容Android系统运行的环境准备;S2:Linux端创建常驻服务,用于接收Android端的多媒体播放状态变化并申请注册和注销锁屏锁;S3:Android 系统监听Android应用的多媒体播放状态;S4:Android系统将所述多媒体播放状态变化实时通知给Linux端;S5:Linux端调用Dbus服务org.gnome.SessionManager,调用所述Dbus服务中的Inhibit函数方法阻止系统进入锁屏状态,调用所述Dbus服务中的Uninhibit函数方法允许系统进入锁屏状态。2.如权利要求1所述的系统兼容时使Android应用与Linux锁屏机制关联的方法,其特征在于:步骤S1中,首先在Linux系统上使用docker容器加载Android系统镜像,使Linux端和Android端共享同一Linux内核;之后在所述docker容器中启动Android端运行环境。3.如权利要求1所述的系统兼容时使Android应用与Linux锁屏机制关联的方法,其特征在于:步骤S2中包括,S21 在Linux端创建一个常驻服务,在服务中创建socket服务端,用于接收Android端实时发送的Android应用的多媒体播放状态变化;S22 所述常驻服务根据Android端的反馈结果向Linux系统申请注册和注销锁屏锁,使得整个Android系统作为Linux系统的一个应用进行处理。4.如权利要求3所述的系统兼容时使Android应用与Linux锁屏机制关联的方法,其特征在于:步骤S22中,当接收到Android端有多媒体播放或正在进行音视频会议的消息时,向Linux系统申请注册锁屏锁,使得Linux系统不会进入锁屏状态;当接收到Android端不存在多媒体播放或音视频会议的消息时,注销之前申请的锁屏锁,使得Linux系统能够结合Linux上其他应用状态分析是否应该按时进入锁屏状态。5.如权利要求1所述的系统兼容时使Android应用与Linux锁屏机制关联的方法,其特征在于:步骤S3中包括,S31 修改Android系统默认的wakeLock申请机制,使得多个Android应用能同时申请使屏幕保持常亮的wakeLock锁;S32 当打...

【专利技术属性】
技术研发人员:马超游远李翔黄彩龙黄晟杨硕彭韬赵坤谢辉军杨陈博寰
申请(专利权)人:麒麟软件有限公司
类型:发明
国别省市:

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

1