CN117130696A - 应用程序的界面跳转方法、设备及存储介质 - Google Patents
应用程序的界面跳转方法、设备及存储介质 Download PDFInfo
- Publication number
- CN117130696A CN117130696A CN202310311195.0A CN202310311195A CN117130696A CN 117130696 A CN117130696 A CN 117130696A CN 202310311195 A CN202310311195 A CN 202310311195A CN 117130696 A CN117130696 A CN 117130696A
- Authority
- CN
- China
- Prior art keywords
- notification
- interface
- application
- activity
- window
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 111
- 230000009191 jumping Effects 0.000 title abstract description 23
- 230000000694 effects Effects 0.000 claims abstract description 167
- 230000004044 response Effects 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims description 43
- 230000008569 process Effects 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 2
- 230000000875 corresponding effect Effects 0.000 description 111
- 238000007726 management method Methods 0.000 description 62
- 238000012545 processing Methods 0.000 description 43
- 239000010410 layer Substances 0.000 description 21
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000010295 mobile communication Methods 0.000 description 9
- 230000006399 behavior Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000010276 construction Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/224—Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种应用程序的界面跳转方法、设备及存储介质。该方法包括:显示第一界面,第一界面包括第一应用对应的通知窗口,通知窗口包括第一选项;响应于对第一选项的点击操作,创建第一Activity,第一Activity的主题属性被配置为透明;在创建第一Activity之后,创建第二Activity,第二Activity属于第二应用;销毁第一Activity;显示第二界面,第二界面对应第二Activity。由此,通过创建主题属性为透明的第一Activity,在用户无感知的情况下,在第一Activity中创建二Activity,实现了从通知窗口跳转到第二界面,即第二Activity对应的界面。
Description
技术领域
本申请涉及终端设备领域,尤其涉及一种应用程序的界面跳转方法、设备及存储介质。
背景技术
为了避免用户错过要进行的事件,时钟应用通常可以针对不同事在对应时刻作出提醒。比如,当时钟应用处于后台,或者未启动的情况下,时钟应用会响铃和/或振动,同时还会推送当前需要进行的事件的通知消息,如在终端设备的显示界面显示通知窗口。
为了进一步提升用户体验,目前会在通知窗口中提供跳转到终端设备安装的地图应用的选项,这样用户点击该选项后,会启动用作通知活动启动组件(trampoline)的服务(Service)或广播接收器(Broadcast Receivers),由trampoline启动地图应用对应的Activity,以便用户查看附近可以进行事件的地点。然而,在Android 12或更高版本的操作系统中,因为接口处理逻辑的变化,应用无法从用作trampoline的服务或广播接收器中启动其他应用的Activity,进而导致用户点击上述选项后,不能跳转到地图应用的界面。
发明内容
为了解决上述技术问题,本申请提供一种应用程序的界面跳转方法、设备及存储介质,旨在适配Android 12及更高版本,使得用户与通知窗口互动时,能够通过通知窗口跳转到其他应用的Activity。
第一方面,本申请提供一种应用程序的界面跳转方法。该方法包括:显示第一界面,第一界面包括第一应用对应的通知窗口,通知窗口包括第一选项;响应于对第一选项的点击操作,创建第一Activity,第一Activity的主题属性被配置为透明;在创建第一Activity之后,创建第二Activity,第二Activity属于第二应用;销毁第一Activity;显示第二界面,第二界面对应第二Activity。
由此,在用户与通知窗口互动,如点击通知窗口中的第一选项时,响应于该操作行为,通过创建一个主题属性为透明,即不可见的第一Activity,这样在用户无感知的情况下,通过第一Activity去创建要跳转到的第二应用的第二Activity,最终便可以实现从通知窗口跳转到第二应用的第二界面,即第二Activity对应的界面。
根据第一方面,在响应于对第一选项的点击操作时,方法还包括:获取通知窗口对应的标识信息,标识信息用于指示显示通知窗口的第一界面是否为通知中心对应的界面;其中,在第一界面不是通知中心对应的界面时,通知窗口在显示的过程中播放提示音。
由此,当通知窗口位于不同的界面时,设置不同的效果,能够更好的满足用户的使用需求。
根据第一方面,或者以上第一方面的任意一种实现方式,在创建第一Activity之后,创建第二Activity,包括:在第一Activity中判断标识信息指示的用于显示通知窗口的第一界面是否为通知中心对应的界面;在第一界面不是通知中心对应的界面时,关闭提示音和通知窗口;创建第二Activity。
由此,当通知窗口并非位于通知中心对应的界面时,即通知窗口直接弹出显示在当前界面时,当用户与通知窗口进行互动,终端设备响应于用户的操作行为,从第一Activity去创建第二Activity时,先关闭提示音和通知窗口,再去创建第二Activity,既实现了从通知窗口跳转到第二应用的第二界面,又能够及时关闭提示音和通知窗口,避免提示音对周围用户的影响,以及通知窗口对当前界面内容的遮挡。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:在播放提示音的过程中,若没有接收到对第一选项或通知窗口的任意区域的点击操作,则在播放提示音的时长达到设定的提示音时长后,在通知中心对应的界面生成新的通知窗口,并将通知窗口中的通知信息显示在新的通知窗口中;关闭第一界面中显示的通知窗口。
由此,在提示音播放结束后,用户依旧没有与当前界面的通知窗口进行交互的情况下,通过将该通知窗口关闭,并将该通知窗口中的通知信息显示在通知中心对应的界面中的通知窗口中,从而避免了通知窗口对当前界面内容的遮挡,同时通过将用户未查看的通知消息收纳到通知中心对应的界面中的通知窗口中,能够便于用户后续直接从通知中心查找所有未查看的通知消息,避免遗漏。
根据第一方面,或者以上第一方面的任意一种实现方式,在第一界面中显示通知窗口前,方法还包括:第一应用构造通知消息,并将通知消息发送给通知管理器,通知消息包括目标事件的开始时间;在第一界面中显示通知窗口,包括:在系统时间到达开始时间时,通知管理器使通知消息显示在第一界面中的通知窗口中。
其中,目标事件例如下文所说的需要进行的事件1。
由此,通知窗口中显示的通知消息由第一应用提前构造,并发送给通知管理器进行管理。当到达通知消息中目标事件的开始时间时,再由通知管理器作业,进而将通知消息显示在第一界面中的通知窗口中,保证通知消息能够及时显示。
根据第一方面,或者以上第一方面的任意一种实现方式,第一应用构造通知消息,并将通知消息发送给通知管理器,包括:第一应用构造通知消息前,检测是否开启了通知功能;在未开启通知功能时,监测通知功能的开启状态;在监测到通知功能开启后,第一应用构造通知消息,并将通知消息发送给通知管理器。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:在开启通知功能,且接收到通知管理器反馈的在第一界面中显示了第一应用构造的上一个通知消息的回调信息后,第一应用构造通知消息,并将通知消息发送给通知管理器。
由此,在已经有通知消息被显示后,才构造下一个要通过通知窗口显示的通知消息,避免多个通知消息全部提前推送给通知管理器,后续通知消息的内容发生变更重新推送,降低对设备资源的占用。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:在第一界面是通知中心对应的界面时,关闭通知窗口;创建第二Activity。
由于通知消息被收纳到通知中心管理后,已经停止播放提示音了。因此,对于这种场景,直接关闭通知窗口,然后创建第二Activity即可,无需再调用关闭提示音的接口。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:响应于对通知窗口的预设区域的点击操作,显示第三界面,第三界面属于第一应用。
由于根据通知消息能够获知提供通知消息的第一应用的相关信息,因此用户与显示通知消息的通知窗口进行交互,可以直接根据第一应用的相关信息拉起第一应用的第三界面。
根据第一方面,或者以上第一方面的任意一种实现方式,第三界面为第一应用的主界面。
根据第一方面,或者以上第一方面的任意一种实现方式,在显示第三界面的过程中,不创建第一Activity。
由于根据通知消息能够获知提供通知消息的第一应用的相关信息,因此用户与显示通知消息的通知窗口进行交互,可以直接根据第一应用的相关信息拉起第一应用的第三界面,故而不需要借助一个不可见的Activity再去创建启动第一应用的第三界面。
根据第一方面,或者以上第一方面的任意一种实现方式,第一应用为时钟应用,第二应用为地图应用。
根据第一方面,或者以上第一方面的任意一种实现方式,第一选项用于在第二界面显示后,在第二界面中显示附近进行事件的地点。
根据第一方面,或者以上第一方面的任意一种实现方式,通知窗口还包括:时钟应用的标记、事件名称、事件的开始时间、计算开始时间的计算时间、第二选项。
其中,时钟应用的标记,例如为显示在下文所说的区域10a-11,或区域10c-11处,其可以包括时钟应用的图标、名称、该通知的显示时间等信息。
其中,事件名称,例如为显示在下文所说的区域10a-12,或区域10c-12的内容。
其中,事件的开始时间,例如为显示在下文所说的区域10a-13,或区域10c-13的时间信息。
其中,计算开始时间的计算时间,例如为显示在下文所说的区域10a-14,或区域10c-14的内容。
其中,第二选项例如下文中所说的“关闭”选项,即选项10a-15,选项10c-15等。
根据第一方面,或者以上第一方面的任意一种实现方式,通知窗口中显示的计算时间为最近一次更新的计算时间,开始时间为最近一次更新的计算时间计算出的开始时间。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:响应于对第二选项的点击操作,关闭通知窗口。
第二方面,本申请提供了一种终端设备。该终端设备包括:存储器和处理器,存储器和处理器耦合;存储器存储有程序指令,程序指令由处理器执行时,使得所述终端设备执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第二方面以及第二方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第二方面以及第二方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第三方面,本申请提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第三方面以及第三方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第三方面以及第三方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第四方面,本申请提供了一种计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第四方面以及第四方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第四方面以及第四方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第五方面,本申请提供了一种芯片,该芯片包括处理电路、收发管脚。其中,该收发管脚、和该处理电路通过内部连接通路互相通信,该处理电路执行第一方面或第一方面的任一种可能的实现方式中的方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
第五方面以及第五方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第五方面以及第五方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
图1为示例性示出的用户界面示意图;
图2为示例性示出的又一用户界面示意图;
图3为示例性示出的又一用户界面示意图;
图4为示例性示出的从时钟应用对应的通知窗口跳转到地图应用的界面涉及的处理逻辑示意图;
图5为示例性示出的从时钟应用对应的通知窗口跳转到地图应用的界面时涉及的Android SDK提供的部分功能接口的示意图;
图6为示例性示出的从时钟应用对应的通知窗口跳转到地图应用的界面时涉及的Android SDK提供的部分功能接口的示意图;
图7为示例性示出的又一用户界面示意图;
图8为示例性示出的终端设备的硬件结构示意图;
图9为示例性示出的终端设备的软件结构示意图;
图10为示例性示出的从时钟应用对应的通知窗口跳转到地图应用的界面时涉及的功能服务的示意图;
图11为示例性示出的从时钟应用对应的通知窗口跳转到地图应用的界面涉及的处理逻辑示意图;
图12为示例性示出的从时钟应用对应的通知窗口跳转到地图应用的界面涉及的交互过程的时序图;
图13为示例性示出的应用程序的界面跳转方法的流程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
为了更好的理解本申请实施例提供的技术方案,以下先对本申请实施例提供的技术方案针对的场景中,目前存在的问题进行说明。
具体的说,时钟应用不仅可以进行时间显示,还可以设置对应的提醒闹钟,以便提醒用户处理对应的事件,比如在某一时刻抢购火车票,还比如在某一时刻前往附近商场购买商品,还比如在某一时刻前往学校接送小孩等,此处不再一一列举,本申请对此不作限制。
为了避免用户错过要进行的事件,时钟应用通常可以针对不同事在对应时刻作出提醒。比如,当时钟应用处于后台,或者未启动的情况下,时钟应用会响铃和/或振动,同时还会推送当前需要进行的事件的通知消息,如在终端设备的显示界面显示通知窗口。
为了进一步提升用户体验,目前会在通知窗口中提供跳转到处理该事件需要的应用的选项,比如在抢购火车票时,可以是跳转到购票应用的选项,还比如在前往商场时,可以是跳转到地图应用的选项等。为了便于说明,后续以要处理的事件为前往附近上传购买商品为例(后续称为事件1),故而要跳转的选项是针对地图应用的。基于此,在终端设备中安装了时钟应用和地图应用的情况下,当用户点击该跳转选项后,会启动用作通知活动启动组件(trampoline)的服务(Service)或广播接收器(Broadcast Receivers),由trampoline启动地图应用对应的Activity,以便用户查看附近前往事件1的地点,即能够购买该物品的商场。
参见图1中(1),示例性的,对于安装了时钟应用和地图应用的终端设备,如手机,时钟应用会自动根据当前的位置信息和该位置信息对应的商场的营业时间,确定与当前时间匹配的事件1,进而构造针对该事件1的通知信息,在满足显示该通知消息的时间,如系统时间到达该事件1的开始时间时,终端设备作出响应,可在当前的显示界面,如界面10a中弹出如图1中(2)示出的通知窗口10a-1,并在通知窗口10a-1中显示该事件1对应的通知信息。
参见图1中(2),示例性的,显示在通知窗口10a-1中的通知消息,例如可以包括显示在10a-11区域的时钟应用的标识,如应用图标、应用名称,以及该通知消息的显示时间;显示在10a-12区域的事件1名称,如图中示出的在终端设备当前系统时间为“12:00”时,与当前系统时间匹配的事件为“事件1”;显示在10a-13区域的事件1开始时间,如“12:00”;显示在区域10a-14的事件1开始时间的计算时间(或者说更新时间),如图中示出的“事件1时间更新于2023年03月09日8:00”;用于关闭通知窗口10a-1的选项10a-15,以及用于跳转到地图应用中显示搜索出的附近商场的界面的选项10a-16。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。在实际应用中,通知窗口10a-1中可以显示比图1中(2)示出的更多或更少的通知信息,本申请对此不作限制。
示例性的,当用户点击图1中(2)示出的选项10a-15时,终端设备响应于该操作行为,会将通知窗口10a-1关闭,界面10a从图1中(2)所示的样式恢复为图1中(1)所示的样式。
示例性的,当用户点击通知窗口10a-1中除选项10a-15和选项10a-16的任意区域,或者指定区域时,终端设备响应于该操作行为,可根据发送该通知消息的应用标识,确定要启动的时钟应用,进而拉起时钟应用的界面。
此外,通过上述描述可知,正常情况下,当用户点击图1中(2)示出的选项10a-16时,终端设备响应于该操作行为,会获取当前的位置信息,直接启动地图应用,自动搜索该位置信息附近的商场,最终显示搜索出的附近商场的界面,如图2所示的界面10b。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
此外,还需要说明的是,在一些实现方式中,在通知窗口10a-1显示在界面10a的过程中,为了更好的提醒用户,可以设置显示通知窗口10a-1的过程中播放提示音(闹钟铃声)和/振动。关于提示音,可以是系统默认的,也可以是用户设置的,本申请对此不作限制。
此外,还需要说明的是,为了避免通知窗口10a-1对界面10a中内容的遮挡,可以设定通知窗口10a-1的显示时长,例如设置在提示音的播放时长内和/或振动时长内,在用户没有与通知窗口10a-1进行交互时,可以显示通知窗口10a-1,若播放时长和/或振动时长结束后,用户依旧没有与通知窗口10a-1进行交互,则可以自动关闭界面10a中显示的通知窗口10a-1,同时将通知窗口10a-1中的通知消息交由通知中心管理,以便用户在需要查看通知消息时,能够从通知中心查看所有为查看的通知消息。
示例性的,对于从通知中心查看关于事件1的通知消息的方式,例如可以是在终端设备的任意显示界面,手指从终端设备屏幕的上边缘向下滑动,从而拉出通知中心对应的界面,如图3中(1)的界面10c。
参见图3中(1),示例性的,在通知中心对应的界面10c中,可以显示由通知中心管理的所有通知消息,如图上述所说的“事件1”这一事件的通知消息可以显示在通知窗口10c-1中。
继续参见图3中(1),示例性的,通知窗口10c-1中显示的通知消息与上述通知窗口10a-1中的相同,各区域、各选项的作用可以参见上文对通知窗口10a-1中对应区域和选项的描述,此处不再赘述。
继续参见图3中(1),示例性的,当用户点击选项10c-15时,终端设备响应于该操作行为,会关闭通知窗口10c-1。相应地,界面10c会从图3中(1)所示样式切换为图图3中(2)所示样式。
继续参见图3中(1),示例性的,当用户点击选项10c-16时,正常情况下,终端设备响应于该操作行为,会获取当前的位置信息,直接启动地图应用,自动搜索该位置信息附近的商场,最终显示搜索出的附近商场的界面,如图2所示的界面10b。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
针对上述两个通知窗口,如显示在通知中心对应的界面10c的通知窗口10a-c,以及显示在除界面10c的其他任意界面,如界面10a中的通知窗口10a-1,由于其所处位置的不同,当用户点击这两个通知窗口中查看“附近商场”选项时,其拉起地图应用前要做的处理也会存在差异。为了便于说明,以通知窗口对应的标识“ACTION_SEARCH_MUSLIM_IN_MAP”指示通知窗口显示在通知中心对应的界面,如界面10c,以通知窗口对应的标识“ACTION_MUSLIM_SEARCH_MAP”指示通知窗口显示在非通知中心对应的界面,如界面10a为例,对点击这两个界面中的通知窗口中的查看“附近商场”选项时,继续的处理逻辑进行说明。
参见图4,当用户点击通知窗口中查看“附近商场”选项后,系统服务(SystemService)会启动一个对应时钟应用的Service,然后由该Service判断用户当前作出的点击操作是针对哪个界面的通知窗口。具体可以根据点击通知窗口后,获取到的标识确定。
继续参见图4,示例性的,当标识为“ACTION_SEARCH_MUSLIM_IN_MAP”时,先执行操作(1)关闭通知窗口,然后执行操作(2)跳转到地图应用中显示附近商场的Activity;当标识为“ACTION_MUSLIM_SEARCH_MAP”时,先执行操作(1)关闭当前的闹钟,即关闭提示音和/或振动,然后执行操作(2)关闭通知窗口,然后执行操作(3)跳转到地图应用中显示附近商场的Activity。由此,在完成对应处理逻辑后,便可以拉起地图应用,在地图应用中显示附近商场的Activity。
然而,在Android 12或更高版本的操作系统中,因为接口处理逻辑的变化,应用无法从用作trampoline的服务或广播接收器中启动其他应用的Activity。具体的,在时钟应用对应的Service中执行上述处理逻辑时,会调用Android的软件开发工具包(SoftwareDevelopment Kit,SDK)中的“isActivityStartAllowed”方法(图5中虚线框D1中的方法)。
继续参见图5,在“isActivityStartAllowed”方法中会调用虚线框D2中的“blockTrampoline(uid)”,即用作trampoline的Service,但是对于“blockTrampoline(uid)”,在Android 12或更高版本的Android SDK中,“isChangeEnable”被设置为阻止从用作trampoline的Service的启动其他应用,即传入的uid对应的应用,如图6中虚线框D3对应的内容。
也就是说,在Android SDK中用作trampoline的Service启动其他应用的处理逻辑变更为如图5、图6所示,阻止从用作trampoline的Service的启动其他应用的情况下,当用户点击通知窗口中查看“附近商场”选项,启动一个对应于时钟应用的Service,判断当前点击来自哪个界面的通知窗口时,对于“ACTION_SEARCH_MUSLIM_IN_MAP”标识,即通知窗口显示于通知中心对应的界面的情况,只会执行操作(1),不会执行操作(2),而对于“ACTION_MUSLIM_SEARCH_MAP”标识,即通知窗口显示于除通知中心对应的界面外的界面,如图1中(1)示出的界面10a的情况,只会执行操作(1)、操作(2),不会执行操作(3)。即,不论从哪个界面显示的通知窗口点击查看附近商场的选项,都不会跳转到地图应用中显示附近商场的界面,如图2中的界面10b,而是会在当前界面,如用户点击的是界面10a中显示的通知窗口10a-1中的选项10a-16时,在界面10a中弹出如图7所示的提示框10a-2,提示用户地图应用不能从通知窗口打开。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
有鉴于此,本申请实施例提供了一种应用程序的界面跳转方法,旨在适配Android12及更高版本,使得用户与通知窗口互动时,能够通过通知窗口跳转到其他应用的Activity。
为了更好的理解本申请实施例提供的技术方案,在对本申请实施例的技术方案说明之前,首先结合附图对本申请实施例的适用于的终端设备的硬件结构和软件架构进行说明。
关于本申请实施例适用于的终端设备,例如可以是任意Android 12及更高版本的操作系统的手机、平板电脑、智能手表等,此处不再一一列举,本实施例对此不作限制。为了便于说明,本实施例以手机为例进行说明。
参见图8,终端设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
示例性的,在一些实现方式中,传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等,此处不再一一例举,本申请对此不作限制。
此外,需要说明的是,处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
可理解的,控制器可以是终端设备100的神经中枢和指挥中心。在实际应用中,控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
此外,还需要说明的是,处理器110中还可以设置存储器,用于存储指令和数据。在一些实现方式中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
示例性的,在一些实现方式中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identitymodule,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
继续参见图8,示例性的,充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实现方式中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实现方式中,充电管理模块140可以通过终端设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
继续参见图8,示例性的,电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实现方式中,电源管理模块141也可以设置于处理器110中。在另一些实现方式中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
继续参见图8,示例性的,终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
需要说明的是,天线1和天线2用于发射和接收电磁波信号。终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实现方式中,天线可以和调谐开关结合使用。
继续参见图8,示例性的,移动通信模块150可以提供应用在终端设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实现方式中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实现方式中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
此外,需要说明的是,调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实现方式中,调制解调处理器可以是独立的器件。在另一些实现方式中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
继续参见图8,示例性的,无线通信模块160可以提供应用在终端设备100上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellitesystem,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near fieldcommunication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
此外,还需要说明的是,终端设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
继续参见图8,示例性的,显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实现方式中,终端设备100可以包括1个或N个显示屏194,N为大于1的正整数。
此外,还需要说明的是,终端设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
此外,还需要说明的是,ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实现方式中,ISP可以设置在摄像头193中。
此外,还需要说明的是,摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实现方式中,终端设备100可以包括1个或N个摄像头193,N为大于1的正整数。
此外,还需要说明的是,数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
此外,还需要说明的是,视频编解码器用于对数字视频压缩或解压缩。终端设备100可以支持一种或多种视频编解码器。这样,终端设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
继续参见图8,示例性的,外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
继续参见图8,示例性的,内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行终端设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flashstorage,UFS)等。
此外,还需要说明的是,终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
此外,还需要说明的是,音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实现方式中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
继续参见图8,示例性的,按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端设备100可以接收按键输入,产生与终端设备100的用户设置以及功能控制有关的键信号输入。
继续参见图8,示例性的,马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
继续参见图8,示例性的,指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
关于终端设备100的硬件结构就介绍到此,应当理解的是,图8所示终端设备100仅是一个范例,在具体实现中,终端设备100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图8中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
参见图9,为本申请实施例的终端设备100的软件结构框图。
如图9所示,终端设备100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实现方式中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
其中,应用程序层可以包括一系列应用程序包。如图9所示,应用程序包可以包括时钟、地图、通知中心、设置等应用程序,此处不再一一列举,本申请对此不作限制。
具体到本实施例中,时钟应用可以根据用户设置,或者系统设置自动生成某一事项的闹钟,即自动构造该事项相关的每一个事件的通知消息,提醒用户进行事件,如上述的事件1;地图应用可以在用户点击通知窗口中查看“附近商场”选项时,搜索当前位置附近的商场,并显示给用户查看;通知中心则可以管理用户未查看的事件1的通知消息;设置应用则可以供用户设置,开启全球定位操作系统(Global Positioning System,GPS),以便获取终端设备的当前位置,以及开启通知功能,以便将时钟应用构造的每一个事件1的通知消息推送给通知管理器,由通知管理器按时推送显示到对应的通知窗口。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
其中,应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。在一些实现方式中,这些编程接口和编程框架可以描述为函数。如图9所示,应用程序框架层可以包括通知管理器、系统服务、窗口管理器、内容提供器、资源管理器等函数,此处不再一一列举,本申请对此不作限制。
需要说明的是,资源管理器用于为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等,此处不再一一列举,本申请对此不作限制。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。示例性的,这些数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等,此处不再一一列举,本申请对此不作限制。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
通知管理器可使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。
系统服务用于实例化应用程序、组件等对应的服务,例如管理Activity的界面管理服务(Activity Manager Service,AMS)、通知管理器对应的通知管理服务等。
如图10所示,具体到本申请提供的实施例中,通知管理器在接收到时钟应用构造的通知消息后,会将通知消息发送给系统服务预先实例化出的通知管理服务(Notification Manager Service),在到达通知消息的显示时间时,系统UI进程(SystemUI进程)根据通知管理服务的指示,通知界面管理服务在对应的界面绘制通知窗口,将通知信息显示到该通知窗口中,以及在用户与通知窗口进行交互时,由System UI进程跨进程与其他服务进行交互,如与管理Activity的界面管理服务。
继续参见图10,示例性的,在涉及界面管理的情况下,系统服务会实例化界面管理服务,进而由界面管理服务管理终端设备中显示的Activity。相应地,在用户与通知窗口进行交互,点击查看通知窗口中显示的“附近商场”选项后,通知管理服务通过System UI进程与界面管理服务交互,由System UI进程调用相应的接口,通过界面管理服务启动对应的Activity、销毁对应的Activity等。例如图10中,启动地图应用的Activity。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
Android Runtime包括核心库和虚拟机。Android Runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维(3D)图形处理库(例如:OpenGL ES),二维(2D)图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
可理解的,上述所说的2D图形引擎是2D绘图的绘图引擎。
此外,可理解的,Android系统中的内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动等。示例性的,传感器驱动可用于将传感器(例如触摸传感器)的检测信号输出至视图系统,以使得视图系统响应于检测信号,显示对应的应用界面。
关于终端设备100的软件结构就介绍到此,可以理解的是,图9示出的软件结构中的层以及各层中包含的部件,并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的层,以及每个层中可以包括更多或更少的部件,本申请不作限定。
针对上述硬件结构和软件架构的终端设备100,为了适配Android 12及更高版本,使得用户与通知窗口互动时,能够通过通知窗口跳转到其他应用的Activity。基于本申请实施例提供的应用程序的界面的跳转方法,通过重新编译通知窗口中“附近商场”选项对应的PendingIntent,即要拉起显示的地图应用的PendingIntent,将该方法中返回的启动用作trampoline的Service,修改为返回一个不可见的Activity,进而在该不可见的Activity中去完成对通知窗口的处理,如关闭闹钟的提示音和/或振动,关闭通知窗口,跳转到地图应用的Activity等。
可理解的,关于启动不可见的Activity,具体为主题(theme)属性被配置为透明的。具体可以通过清单文件(AndroidManifest.xml)进行设置。针对该不可见Activity在清单文件中的配置信息,可如下所示:
<activity
android:name=“com.android.deskclock.alarmclock.NearbyMosqueActicity”//Activity的名称,如“NearbyMosqueActicity”
android:theme=“@android:style/Theme.Transparent”//activity主题的设置,是否可见,不可见设置为Transparent(透明)
android:exported=“false”//设置为false仅时钟应用可使用,其他应用不可用>
</activity>
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
参见图11,示例性的,基于上述对地图应用的PendingIntent的修改,当用户与通知窗口交互,点击“附近商场”选项后,会由界面管理服务启动上述主题被设置为透明,即不可见的Activity,然后在该Activity中判断用户当前作出的点击操作是针对那个界面的通知窗口。具体可以根据点击通知窗口后,获取到的标识确定。
继续参见图11,示例性的,当标识为“ACTION_SEARCH_MUSLIM_IN_MAP”时,先执行操作(1)关闭通知窗口,然后执行操作(2)跳转到地图应用中显示附近商场的Activity;当标识为“ACTION_MUSLIM_SEARCH_MAP”时,先执行操作(1)关闭当前的闹钟,即关闭提示音和/或振动,然后执行操作(2)关闭通知窗口,然后执行操作(3)跳转到地图应用中显示附近商场的Activity。由此,在用户与通知窗口互动,如点击“附近商场”选项时,终端设备响应于该操作行为,通过创建一个主题属性为透明,即不可见的Activity,这样在用户无感知的情况下,通过该不可见Activity去拉起要跳转到的地图应用的Activity,最终便可以实现从通知窗口跳转到地图应用的Activity,即显示附近商场的Activity。
为了更好的理解图11中示出的本申请实施例提供的应用程序的界面跳转方法,以下结合图12进行具体说明。
示例性的,在终端设备中安装了时钟应用和地图应用,并且开启了通知功能和GPS定位功能的情况下,时钟应用可以在设定的时间获取GPS定位功能的权限,确定终端设备当前的位置信息,进而根据当前位置信息对应的商场营业时间,确定出接下来要提醒用户的事件1的开始时间和事件1名称,然后根据确定的相关信息构建该事件1对应的通知消息,即执行图12中的步骤S101。
示例性的,关于时钟应用构造的事件1对应的通知消息,例如可以包括上述所说的时钟应用的图标、名称、需要显示的时间;事件1名称;事件1的开始时间;计算出该事件1的开始时间的计算时间等。
继续参见图12,示例性的,时钟应用在构造好事件1对应的通知消息后,会通过上述实施例中所说的重编译的PendingIntent中的getActivity(),将构造的通知消息及相关参数反馈给通知管理服务,即执行步骤S102。
具体地,步骤S102中通过PendingIntent.getActivity()反馈给通知管理服务的相关参数包括但不限于后续点击查询“附近商场”选项时需要启动的不可见的Activity的名称,标识该Activity唯一性的ID,以及在该Activity中要拉起的应用,如地图应用对应的方法等。
此外,需要说明的是,对于开启通知功能后,首次构造出的通知消息,时钟应用可以直接将构造出的通知消息,即当前时间或当前时间后要提醒的首个事件1的通知消息发送给通知管理服务。这样,在系统时间到达事件1的开始时间时,通知管理服务便可以直接将该事件1的通知消息显示在通知窗口中,在当前界面弹出,以提醒用户。
示例性的,在另一些实现方式中,对于开启通知功能后,时钟应用已经向通知管理服务推送过接下来要提醒的事件1的通知消息的使用场景,关于该事件1后的事件2对应的通知消息,时钟应用可以在接收到通知管理服务将事件1的通知消息显示在通知窗口的回调信息后,再构造事件2对应的通知消息,并将事件2对应的通知消息发送给通知管理服务,从而避免提前将一天中剩余的所有事件,如事件1和事件2的通知消息一起发送给通知管理服务导致后续事件2的相关信息发生变更,如终端设备的位置变更,导致对应的事件2的时间发生变化时,终端设备依旧基于旧的通知消息提醒用户进行事件2,造成时间错误,或者终端频繁更新造成资源浪费。
继续参见图12,示例性的,通知管理服务在接收到时钟应用发送的通知消息及相关参数后,会从通知消息中解析出事件1的开始时间,进而监听系统时间是否到达通知消息中携带的事件1的开始时间,即执行步骤S103。
相应地,在系统时间到达事件1的开始时间时,通知管理服务执行步骤S104,通知System UI进程绘制通知窗口,以便显示时钟应用提供的通知消息。反之,则继续执行步骤S103。
相应地,System UI进程接收到通知管理服务的指示,会执行步骤S105,绘制通知窗口,并显示通知消息(包括跳转到地图应用的“附近商场”选项)。
需要说明的是,通知消息对应的通知窗口首次显示时,其对应的标识信息为“ACTION_MUSLIM_SEARCH_MAP”,即通知窗口不属于通知中心对应的界面为例,后续在设定时间内用户没有与该通知窗口进行交互,才将该标识信息的通知窗口关闭,将通知消息添加到通知中心对应的界面中的通知窗口。
示例性的,以步骤S105中绘制的通知窗口是图1中(2)所示界面10a中弹出的通知窗口10a-1为例,在通知消息为事件1对应的通知消息时,通知窗口中显示的内容如图1中(2)所示的通知窗口10a-1的相同,具体细节可以参见上述实施例,此处不再赘述。
继续参见图12,示例性的,当用户点击了通知窗口中“附近商场”选项,如图1中(2)所示的通知窗口10a-1中的选项10a-16后,终端设备响应于该操作行为,System UI进程便会执行步骤S106。具体为,System UI进程便调用startActivity()接口,通知界面管理服务启动主题属性被配置为透明,即不可见的Activity,为了便于说明本实施例将该Activity称为NearbyMosqueActivity。
可理解的,通过上述对步骤S101的描述可知,时钟应用在向通知管理服务发送通知消息时,还会将不可见的Activity的名称,如NearbyMosqueActivity,标识NearbyMosqueActivity唯一性的ID,以及在NearbyMosqueActivity中要拉起的应用,如地图应用对应的方法等相关参数发送给通知管理服务,故而通知管理服务可以根据这些相关参数,告知界面管理服务要拉起的不可见的Activity具体是哪个,以及在该Activity中要拉起的应用地图对应的方法。
相应地,界面管理服务接收到该通知后,会调用startActivity()接口。具体的,根据Activity的生命周期可知,要创建一个新的Activity,如NearbyMosqueActivity,需要在调用startActivity()接口后,调用onCreate()。由此,便可以实现对NearbyMosqueActivity的创建,进而在NearbyMosqueActivity中进行相应的处理逻辑,如对通知窗口的处理,以及启动地图应用显示附近的Activity等。
此外,通过上述对NearbyMosqueActivity的属性配置可知,其仅可被时钟应用使用,其他应用不可用。故而,在NearbyMosqueActivity启动后,时钟应用会在NearbyMosqueActivity中实现对通知窗口的处理逻辑,以及调用跳转到地图应用的Activity的方法(时钟应用发送给通知管理服务的相关参数中携带),即执行图12中的步骤S107。
可理解的,在不可见的NearbyMosqueActivity中对通知窗口进行的处理,即为图11中示出的判断该通知窗口位于哪一界面,然后针对不同界面显示的通知窗口进行不同的处理。例如对于标识信息为“ACTION_SEARCH_MUSLIM_IN_MAP”,即位于通知中心对应的界面,如图3中界面10c的通知窗口,要做的操作即为关闭通知窗口,并启动地图应用,跳转到地图应用中用于显示附近商场的Activity。相应地,对于标识信息为“ACTION_MUSLIM_SEARCH_MAP”,例如位于图1中界面10a的通知窗口,要做的操作不仅包括关闭通知窗口,并启动地图应用,跳转到地图应用中用于显示附近商场的Activity,还包括关闭闹钟,即关闭提示音和/或振动。
此外,还应当理解的是,由于NearbyMosqueActivity的作用就是用于实现对通知窗口的处理,以及调用启动地图应用的方法,拉起地图应用的Activity。因此,在完成上述处理后,NearbyMosqueActivity便不需要了,故而为了降低资源占用,在完成上述处理后,可以直接调用finish()接口,销毁NearbyMosqueActivity。
此外,还应当理解的是,由于界面管理服务用于管理所有的Activity的生命周期,如创建、启动、销毁等,因此对于地图应用用于显示附近商场的Activity,也是由界面管理服务创建、启动的,即时钟应用在NearbyMosqueActivity中调用启动地图应用的方法后,界面管理服务会启动地图应用对应的Activity,即执行图12中的步骤S108。
对于地图应用用于显示附近商场的Activity,可以根据地图应用当前的状态,调用对应的接口将其启动。
例如,在要启动的地图应用中用于显示附近商场的Activity未被销毁,处于暂停状态(Paused),或者停止状态(Stopped)时,无需重新创建该Activity,直接启动即可,即在调用startActivity()接口后,不需要调用onCreate(),而是直接调用onRestart()便可实现拉起该Activity。图12中示出的就是这种场景,因此界面管理服务在接收到System
UI进程的通知后,在步骤S108中调用startActivity()接口后,直接调用onRestart()启动地图应用显示附近商场的Activity。
还例如,在该Activity已经被销毁,即处于销毁状态(Destroyed)时,由于该Activity对应的内存已被清理,因此因要拉起地图应用显示附近商场的Activity,需要在调用startActivity()接口后,先调用onCreate(),创建该Activity,然后再调用onStart()启动该Activity。
此外,通过上述描述可知,在用户点击了“附近商场”选项后,时钟应用会基于GPS定位功能获取终端设备当前的位置信息,该位置信息在调用启动地图应用的方法时作为参数传给地图应用,因此地图应用被启动后,便可以自动根据该位置信息搜索当前位置附近的商场,最终显示出附近商场的Activity,如图2中的界面10b。
由此,在用户与显示事件1的通知消息的通知窗口互动,如点击“附近商场”选项时,基于上述方法,终端设备响应于该操作行为,通过拉起一个主题属性为透明,即不可见的NearbyMosqueActivity,这样在用户无感知的情况下,通过NearbyMosqueActivity去拉起要跳转到的地图应用的Activity,最终便可以实现从通知窗口跳转到地图应用的第Activity对应的界面,从而解决了Android 12及更高版本的Android SDK中接口变化导致用作trampoline的Service不能启动其他应用的问题。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。在具体实现中,本申请实施例提供的应用程序的界面跳转方法,并不局限于从时钟应用对应的通知窗口进行操作调整到地图应用的界面,可以是任意两个应用之间的跳转。
参见图13,示例性示出了本申请提供的能够适用于任意两个应用之间调整的应用程序的界面跳转方法,具体包括:
S201,显示第一界面,第一界面包括第一应用对应的通知窗口,通知窗口包括第一选项。
示例性的,在一些实现方式中,第一界面例如为通知中心对应的界面,如图3中示出的界面10c。
示例性的,在另一些实现方式中,第一界面也可以为除通知中心对应的界面的任意界面,如图1中示出的界面10a,或者某一应用对应的界面,如播放音视频的界面。
示例性的,第一应用为作出通知提醒的应用,例如为上述所说的时钟应用。
相应地,第一应用对应的通知窗口,即为用于显示第一应用构造的通知消息的通知窗口,例如上述实施例中所说的用于显示事件1对应的通知消息的通知窗口。
此外,对于通知窗口中包括的第一选项,实质为用于供用户选择,进而触发拉起要启动的第二应用的功能选项。以通知窗口为上述实施例中所说的显示事件1的通知消息的通知窗口为例,则第一选项可以为上述实施例中所说的查看“附近商场”的选项,如通知窗口10a-1中显示的选项10a-16,或者通知窗口10c-1中显示的选项10c-16。即,当用户对第一选项作出点击操作后,终端设备响应于该操作行为,最终显示的是地图应用中用于显示附近的商场的界面,如图2中的界面10b。
关于第一界面中显示的第一应用对应的通知窗口中的通知消息的构造,以及该通知消息的去向,具体可以参见上述实施例中步骤S101和步骤S102的部分,此处不再赘述。
此外,在第一应用构造好通知消息后,关于通知消息的显示,可以参见上述实施例中步骤S103和步骤S104的部分,此处不再赘述。
此外,第一应用构造好通知消息后,通知消息的发送需要依赖于终端设备开启了通知功能,因此为了保证通知消息能够显示,第一应用在构造通知消息前,可以先检测是否开启了通知功能。
相应地,在未开启通知功能的情况下,需要监测通知功能的开启状态,在监测到通知功能开启后,第一应用构造通知消息,并将通知消息发送给通知管理器。具体细节可以参见上述实施例中,在开启通知功能的情况下,发送首次生成的事件1的通知消息的描述部分,此处不再赘述。
相应地,在开启通知功能的情况下,则可以根据上一个通知消息被显示的回调信息,触发下一个通知消息的构造,以及发送。即,在开启通知功能,且接收到通知管理器反馈的在第一界面中显示了第一应用构造的上一个通知消息的回调信息后,第一应用构造通知消息,并将通知消息发送给通知管理器。具体细节可以参见上述实施例中,在开启通知功能的情况下,发送事件1对应的通知消息后,事件2对应的通知消息的构造时间以及发送时间的描述,此处不再赘述。
S202,响应于对第一选项的点击操作,创建第一Activity,第一Activity的主题属性被配置为透明。
示例性的,仍以第一选项为上述实施例中所说的查看“附近商场”的选项为例,则需要创建的第一Activity则可以看作上述实施例中所说的NearbyMosqueActivity。
相应地,在用户点击第一选项后,终端设备响应于对第一选项的点击操作,通过上述图12步骤S106的描述可知,通知管理服务会通知界面管理服务创建该主题属性被配置为透明,即不可见的第一Activity。
关于该不可见的第一Activity的具体创建逻辑可以参见上述实施例,此处不再赘述。
S203,在创建第一Activity之后,创建第二Activity,第二Activity属于第二应用。
具体的说,本实施例中所说的在创建第一Activity之后,创建第二Activity具体是指在第一Activity中调用对应的方法,实现对第二Activity的创建。
示例性的,以第二应用为上述实施例中所说的地图应用为例,则第二Activity可以为地图应用的主界面的Activity,也可以是上述实施例中根据终端设备的当前位置信息搜索出的附近商场的Activity。
通过上述实施例的描述可知,在时钟应用可以使用的不可见的NearbyMosqueActivity,即本实施例中的第一Activity中调用对应的方法,实现对第二Activity的创建,如上述启动地图应用的方法中实现对显示附近商场Activity的显示时,时钟应用还会在NearbyMosqueActivity中对通知窗口进行相应处理。而对通知窗口进行的处理,又与通知窗口对应的标识信息标识其所处的界面有关。
因此,在响应于对上述第一选项的点击操作时,可以获取该第一选项所处通知窗口对应的标识信息。由于通知窗口对应的标识信息能够指示显示通知窗口的第一界面是否为通知中心对应的界面,如图3示出的界面10c。因此在响应于对第一选项的点击操作,在第一Activity中对通知窗口进行处理操作时,可以根据获取到的标识信息决定究竟进行何种处理。
示例性的,当在第一Activity中判断标识信息指示的用于显示通知窗口的第一界面是通知中心对应的界面,即标识信息为上述实施例中所说的“ACTION_SEARCH_MUSLIM_IN_MAP”时,需要在第一Activity中调用关闭该通知窗口的方法,进而将通知窗口从界面10c中关闭(删除),然后再执行创建第二Activity的操作。
示例性的,当在第一Activity中判断标识信息指示的用于显示通知窗口的第一界面不是通知中心对应的界面,即标识信息为上述实施例中所说的“ACTION_MUSLIM_SEARCH_MAP”时,根据上述描述可知,当通知窗口不是通知中心对应的界面中显示的通知窗口时,表面该通知窗口刚刚显示提醒用户,因此为了更好的提醒用户,通常会设置该通知窗口显示的过程中播放提示音和/或振动。
相应地,对于这种场景,即标识信息为上述实施例中所说的“ACTION_MUSLIM_SEARCH_MAP”的场景,需要在第一Activity中调用关闭提示音和/或振动的方法,以及关闭该通知窗口的方法,进而将提示音和/或振动关闭,将通知窗口从界面10c中关闭(删除),然后再执行创建第二Activity的操作。
需要说明的是,对于标识信息为上述实施例中所说的“ACTION_MUSLIM_SEARCH_MAP”的场景,在播放提示音和/或振动的过程中,若没有接收到对第一选项或通知窗口的任意区域的点击操作,则在播放提示音和/或振动的时长达到设定的提示音和/或振动时长后,可以在通知中心对应的界面生成新的通知窗口,如图3中(1)示出的通知窗口10c-1,并当前的通知窗口,如图1中(2)示出的通知窗口10a-1中的通知信息显示在通知窗口10c-1中,将通知窗口10a-1关闭,即从界面10a删除,从而避免通知窗口10a-1对界面10a中其他内容的遮挡。
此外,还需要说明的是,关于创建第二Activity的操作,同样是由界面管理服务实现的,具体的处理逻辑,可以参见上述实施例中,界面管理服务创建地图应用显示附近商场的Activity,即图12中的步骤S108的描述部分,此处不再赘述。
S204,销毁第一Activity。
具体可以是调用finish()接口实现对第一Activity的销毁。
S205,显示第二界面,第二界面对应第二Activity。
示例性的,在第一选项为查看“附近商场”选项时,由于携带了终端设备的当前位置信息,因此地图应用被启动后,会直接搜索当前位置附近的商场,故而第二界面中会显示搜索到的附近商场信息,以便用户查看对应的商场信息,前往合适的商场进行事件1。
由此,在用户与通知窗口互动,如点击通知窗口中的第一选项时,响应于该操作行为,通过创建一个主题属性为透明,即不可见的第一Activity,这样在用户无感知的情况下,通过第一Activity去创建要跳转到的第二应用的第二Activity,最终便可以实现从通知窗口跳转到第二应用的第二界面,即第二Activity对应的界面。
此外,应当理解的是,在一些实现方式中,通常还可以为通知窗口设置热键区域,即当用户点击通知窗口的指定区域后,终端设备响应于操作行为,可以直接拉起第一应用的第三界面。
示例性的,该第三界面例如可以是第一应用对应的主界面,也可以是该通知窗口中显示的通知消息对应的指定界面。
可理解的,为了实现对第一应用的第三界面的直接拉起,第一应用在向通知管理服务发送构造的通知消息及相关参数时,可以将第一应用的标识信息传输给通知管理服务,这样当用户与通知窗口进行交互,如点击预设区域时,便可以直接根据第一应用的标识信息拉起第一应用的第三界面。
此外,还需要说明的是,由于通知窗口中显示的内容就是第一应用提供的,通过第一应用的通知窗口可以直接启动第一应用,因此在启动第一应用的第三界面的过程中,不需要先创建上述所说的不可见的第一Activity,然后在该第一Activity中去启动第一应用的第三界面。直接由界面管理服务根据第三界面当前的生命周期,调用对应的功能接口,如onRestart()接口,或者先调用onCreate()接口,再调用onStart()启动第一应用的第三界面对应的Activity即可。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。在实际应用中,第一应用可以为任意能够推送通知的应用,第二应用可以为要处理的事件涉及的应用。
比如,上述所说的针对抢票场景中,第一应用可以为设置了对应提醒的时钟应用、提醒事项应用等。相应地,第二应用可以为对应的抢票软件。
可理解的,对于抢票场景中,通知窗口中显示的事件名称,例如可以为要抢购的火车票、机票的班次,事件的开始时间例如为开始放票时间。
相应地,对于抢票场景中,示例性的,在一些实现方式中,为第一选项绑定的方法,例如为跳转到对应的抢票应用。在另一些实现方式中,为第一选项绑定的方法,也可以为前往附件可以购买车票、机票的地点等。
应当理解的是,上述说明仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
此外,还可以理解的是,终端设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
此外,需要说明的是,在实际的应用场景中由终端设备实现的上述各实施例提供的应用程序的界面跳转方法,也可以由终端设备中包括的一种芯片系统来执行,其中,该芯片系统可以包括处理器。该芯片系统可以与存储器耦合,使得该芯片系统运行时调用该存储器中存储的计算机程序,实现上述终端设备执行的步骤。其中,该芯片系统中的处理器可以是应用处理器也可以是非应用处理器的处理器。
另外,本申请实施例还提供一种计算机可读存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在终端设备上运行时,使得终端设备执行上述相关方法步骤实现上述实施例中的应用程序的界面跳转方法。
另外,本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在终端设备上运行时,使得终端设备执行上述相关步骤,以实现上述实施例中的应用程序的界面跳转方法。
另外,本申请的实施例还提供一种芯片(也可以是组件或模块),该芯片可包括一个或多个处理电路和一个或多个收发管脚;其中,所述收发管脚和所述处理电路通过内部连接通路互相通信,所述处理电路执行上述相关方法步骤实现上述实施例中的应用程序的界面跳转方法,以控制接收管脚接收信号,以控制发送管脚发送信号。
此外,通过上述描述可知,本申请实施例提供的终端设备、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (18)
1.一种应用程序的界面跳转方法,其特征在于,所述方法包括:
显示第一界面,所述第一界面包括第一应用对应的通知窗口,所述通知窗口包括第一选项;
响应于对所述第一选项的点击操作,创建第一Activity,所述第一Activity的主题属性被配置为透明;
在创建所述第一Activity之后,创建第二Activity,所述第二Activity属于第二应用;
销毁所述第一Activity;
显示第二界面,所述第二界面对应所述第二Activity。
2.根据权利要求1所述的方法,其特征在于,在响应于对所述第一选项的点击操作时,所述方法还包括:
获取所述通知窗口对应的标识信息,所述标识信息用于指示显示所述通知窗口的第一界面是否为通知中心对应的界面;
其中,在所述第一界面不是所述通知中心对应的界面时,所述通知窗口在显示的过程中播放提示音。
3.根据权利要求2所述的方法,其特征在于,所述在创建所述第一Activity之后,创建第二Activity,包括:
在所述第一Activity中判断所述标识信息指示的用于显示所述通知窗口的第一界面是否为通知中心对应的界面;
在所述第一界面不是所述通知中心对应的界面时,关闭所述提示音和所述通知窗口;
创建所述第二Activity。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在播放所述提示音的过程中,若没有接收到对所述第一选项或所述通知窗口的任意区域的点击操作,则在播放所述提示音的时长达到设定的提示音时长后,在所述通知中心对应的界面生成新的通知窗口,并将所述通知窗口中的通知信息显示在所述新的通知窗口中;
关闭所述第一界面中显示的所述通知窗口。
5.根据权利要求3所述的方法,其特征在于,在所述第一界面中显示所述通知窗口前,所述方法还包括:
所述第一应用构造通知消息,并将所述通知消息发送给通知管理器,所述通知消息包括目标事件的开始时间;
所述在所述第一界面中显示所述通知窗口,包括:
在系统时间到达所述开始时间时,所述通知管理器使所述通知消息显示在所述第一界面中的所述通知窗口中。
6.根据权利要求5所述的方法,其特征在于,所述第一应用构造通知消息,并将所述通知消息发送给通知管理器,包括:
所述第一应用构造所述通知消息前,检测是否开启了通知功能;
在未开启通知功能时,监测通知功能的开启状态;
在监测到通知功能开启后,所述第一应用构造所述通知消息,并将所述通知消息发送给通知管理器。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在开启通知功能,且接收到所述通知管理器反馈的在所述第一界面中显示了所述第一应用构造的上一个通知消息的回调信息后,所述第一应用构造所述通知消息,并将所述通知消息发送给通知管理器。
8.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在所述第一界面是所述通知中心对应的界面时,关闭所述通知窗口;
创建所述第二Activity。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于对所述通知窗口的预设区域的点击操作,显示第三界面,所述第三界面属于所述第一应用。
10.根据权利要求9所述的方法,其特征在于,所述第三界面为所述第一应用的主界面。
11.根据权利要求9所述的方法,其特征在于,在显示所述第三界面的过程中,不创建所述第一Activity。
12.根据权利要求1至11任一项所述的方法,其特征在于,所述第一应用为时钟应用,所述第二应用为地图应用。
13.根据权利要求12所述的方法,其特征在于,所述第一选项用于在所述第二界面显示后,在所述第二界面中显示附近进行事件的地点。
14.根据权利要求12所述的方法,其特征在于,所述通知窗口还包括:时钟应用的标记、事件名称、事件的开始时间、计算所述开始时间的计算时间、第二选项。
15.根据权利要求14所述的方法,其特征在于,所述通知窗口中显示的所述计算时间为最近一次更新的计算时间,所述开始时间为最近一次更新的所述计算时间计算出的开始时间。
16.根据权利要求14所述的方法,其特征在于,所述方法还包括:
响应于对所述第二选项的点击操作,关闭所述通知窗口。
17.一种终端设备,其特征在于,所述终端设备包括:存储器和处理器,所述存储器和所述处理器耦合;所述存储器存储有程序指令,所述程序指令由所述处理器执行时,使得所述终端设备执行如权利要求1至16任意一项所述的应用程序的界面跳转方法。
18.一种计算机可读存储介质,其特征在于,包括计算机程序,当所述计算机程序在终端设备上运行时,使得所述终端设备执行如权利要求1至16任意一项所述的应用程序的界面跳转方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310311195.0A CN117130696A (zh) | 2023-03-14 | 2023-03-14 | 应用程序的界面跳转方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310311195.0A CN117130696A (zh) | 2023-03-14 | 2023-03-14 | 应用程序的界面跳转方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117130696A true CN117130696A (zh) | 2023-11-28 |
Family
ID=88858904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310311195.0A Pending CN117130696A (zh) | 2023-03-14 | 2023-03-14 | 应用程序的界面跳转方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117130696A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019076387A1 (zh) * | 2017-10-17 | 2019-04-25 | 中兴通讯股份有限公司 | 应用切换方法及装置 |
CN113254154A (zh) * | 2021-05-21 | 2021-08-13 | 技德技术研究所(武汉)有限公司 | 一种在Linux上兼容运行Android系统的应用启动方法及装置 |
CN114844984A (zh) * | 2022-07-04 | 2022-08-02 | 荣耀终端有限公司 | 通知消息的提醒方法及电子设备 |
WO2022268085A1 (zh) * | 2021-06-26 | 2022-12-29 | 华为技术有限公司 | 一种快速返回界面的方法及电子设备 |
-
2023
- 2023-03-14 CN CN202310311195.0A patent/CN117130696A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019076387A1 (zh) * | 2017-10-17 | 2019-04-25 | 中兴通讯股份有限公司 | 应用切换方法及装置 |
CN113254154A (zh) * | 2021-05-21 | 2021-08-13 | 技德技术研究所(武汉)有限公司 | 一种在Linux上兼容运行Android系统的应用启动方法及装置 |
WO2022268085A1 (zh) * | 2021-06-26 | 2022-12-29 | 华为技术有限公司 | 一种快速返回界面的方法及电子设备 |
CN114844984A (zh) * | 2022-07-04 | 2022-08-02 | 荣耀终端有限公司 | 通知消息的提醒方法及电子设备 |
Non-Patent Citations (1)
Title |
---|
夏德冰;陈庆奎;: "Android应用中一种Activity窗口管理系统", 计算机系统应用, no. 06, 15 June 2012 (2012-06-15) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113645341B (zh) | 电源键误触检测方法及电子设备 | |
CN112988213B (zh) | 一种程序数据更新方法、电子设备及计算机存储介质 | |
CN114257502B (zh) | 一种日志上报方法及装置 | |
CN113656089B (zh) | 应用程序中的类验证方法和装置 | |
CN116709180B (zh) | 地理围栏的生成方法及服务器 | |
CN116028148B (zh) | 一种界面处理方法、装置及电子设备 | |
CN114896097B (zh) | 一种应用程序无响应处理方法及电子设备 | |
CN116033342B (zh) | 地理围栏的处理方法、设备及存储介质 | |
CN116347217A (zh) | 图像处理方法、设备及存储介质 | |
CN117130696A (zh) | 应用程序的界面跳转方法、设备及存储介质 | |
CN111475363B (zh) | 卡死识别方法及电子设备 | |
CN116048829B (zh) | 接口调用方法、设备及存储介质 | |
CN116028707B (zh) | 服务推荐方法、设备及存储介质 | |
CN116738073B (zh) | 常驻地的识别方法、设备及存储介质 | |
CN116541188B (zh) | 通知显示方法、终端设备及存储介质 | |
CN115297438B (zh) | 快递提示方法、设备及存储介质 | |
CN116841686B (zh) | 一种应用页面的展示方法 | |
CN116662150B (zh) | 应用启动耗时检测方法及相关装置 | |
CN116684521B (zh) | 音频处理方法、设备及存储介质 | |
CN116088944B (zh) | 界面显示方法和装置 | |
CN117724772B (zh) | 一种应用程序的退出控制方法和装置 | |
WO2023020339A1 (zh) | 界面显示方法及电子设备 | |
CN116846853A (zh) | 一种信息处理方法及电子设备 | |
CN118279965A (zh) | 基于人眼检测的控制方法及电子设备 | |
CN118283415A (zh) | 追焦方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |