CN115543241A - 用于投屏场景的设备扫描方法及装置 - Google Patents
用于投屏场景的设备扫描方法及装置 Download PDFInfo
- Publication number
- CN115543241A CN115543241A CN202211055882.2A CN202211055882A CN115543241A CN 115543241 A CN115543241 A CN 115543241A CN 202211055882 A CN202211055882 A CN 202211055882A CN 115543241 A CN115543241 A CN 115543241A
- Authority
- CN
- China
- Prior art keywords
- scanning
- screen
- equipment
- module
- screen projection
- 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 92
- 230000006870 function Effects 0.000 claims description 30
- 230000004044 response Effects 0.000 claims description 21
- 230000008569 process Effects 0.000 abstract description 45
- 239000010410 layer Substances 0.000 description 23
- 238000004891 communication Methods 0.000 description 13
- 238000005266 casting Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 8
- 230000001960 triggered effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种用于投屏场景的设备扫描方法及装置,应用于电子设备,该电子设备为投屏端设备,投屏端设备扫描被投屏端设备的时长达到预设时长后,停止扫描,获得第一扫描结果。以及,重新触发扫描被投屏端设备获得第二扫描结果,进一步触发电子设备显示的第二扫描结果。可见,该方案在停止扫描后可以自动触发下一次扫描,并更新显示的扫描结果,提高了设备扫描过程的效率和用户体验。
Description
技术领域
本申请涉及无线通信技术领域,尤其涉及一种用于投屏场景的设备扫描方法及装置。
背景技术
无线投屏技术可以将投屏端设备(如,手机、平板电脑等)上显示的画面、播放的音频等资源实时地推送到被投屏端设备(如,电视、电脑等)进行播放,以便用户可以在被投屏端设备上观看相应画面、收听相应音频。但是,目前的投屏设备扫描被投屏端设备的过程存在连接效率低、用户体验差的问题。
发明内容
有鉴于此,本申请提供了用于投屏场景的设备扫描方法及装置,以解决上述至少部分问题,其公开的技术方案如下:
第一方面,本申请提供了一种用于投屏场景的设备扫描方法,应用于电子设备,所述方法包括:响应于开启投屏功能的操作,扫描被投屏端设备获得第一扫描结果;响应于扫描被投屏端设备的持续时长达到预设时长,停止扫描;重新扫描被投屏端设备获得第二扫描结果,并触发所述电子设备显示所述第二扫描结果。可见,该方案在首次扫描过程结束后,无需用户返回重新启动无线投屏功能,自动重新进行下一次设备扫描,减少了用户操作,进而节省了用户操作的时间,因此提高了设备扫描效率,提高了用户体验。
在第一方面的一种可能的实现方式中,在所述响应于扫描被投屏端设备的持续时长达到预设时长,停止扫描之后,所述方法还包括:响应于确定所述第一扫描结果不为空,执行所述重新扫描被投屏端设备获得第二扫描结果的步骤。这样,在扫描到可用的被投屏设备后,自动重新发起下一次扫描,以便更新扫描结果,确保电子设备显示的扫描结果与被投屏端设备的状态保持一致,避免扫描到可用设备但由于设备状态变更而显示的扫描结果未更新导致连接失败的情况发生,因此提高了用户体验。
在第一方面的另一种可能的实现方式中,在确定所述第一扫描结果不为空之后,所述方法还包括:清空所述第一扫描结果,以便显示第二扫描结果。
在第一方面的又一种可能的实现方式中,在所述响应于扫描被投屏端设备的持续时长达到预设时长,停止扫描之后,所述方法还包括:响应于确定所述第一扫描结果为空,显示重试按钮;响应于对所述重试按钮的操作,执行所述重新扫描被投屏端设备获得第二扫描结果的步骤。这样,只需用户点击电子设备界面上显示的重试按钮,无需返回到无线投屏按钮处再次点击触发扫描过程,节省了用户操作,从而提高了用户体验。
在第一方面的再一种可能的实现方式中,所述方法还包括:响应于确定所述第一扫描结果为空,显示提示弹窗,所述提示弹窗包括所述重试按钮。
在第一方面的另一种可能的实现方式中,所述方法还包括:响应于确定所述第一扫描结果为空,显示提示弹窗,所述提示弹窗包括用于示意被投屏端设备的投屏开关开启和关闭的动态图。这样,在未扫描到可用设备后,通过提示弹窗提醒用户检查被投屏端设备的投屏功能是否开启,避免用户不知道未扫描到可用设备的可能原因,以及进一步如何操作,从而提高了用户体验。
在第一方面的又一种可能的实现方式中,在确定所述第一扫描结果不为空,且扫描被投屏端设备的持续时长达到预设时长之前,所述方法还包括:响应于与所述第一扫描结果中的被投屏端设备连接失败,重新扫描被投屏端设备获得第三扫描结果,并触发所述电子设备显示所述第三扫描结果。这样,在扫描到可用的被投屏端设备,由于被投屏端设备的状态变更导致投屏端设备与该被投屏端设备连接失败,可以直接触发重新扫描被投屏端设备,减少了用户操作,节省了用户操作的时间,因此提高了设备扫描效率,以及提高了用户体验。
在第一方面的再一种可能的实现方式中,所述电子设备运行有操作系统,所述操作系统包括位于应用程序框架层的设备发现模块;所述响应于设备扫描过程的持续时长达到预设时长,停止设备扫描,包括:所述设备发现模块在触发所述无线显示模块进行设备扫描时,控制定时器开始计时,直到计时时长达到所述预设时长后,触发所述无线显示模块停止设备扫描。
在第一方面的另一种可能的实现方式中,所述操作系统还包括设备管理模块;在计时时长达到所述预设时长后,所述方法还包括:所述设备发现模块触发所述设备管理模块判断所述第一扫描结果是否为空;所述设备管理模块确定所述第一扫描结果不为空,执行所述重新调用设备扫描接口进行设备扫描获得第二扫描结果,并更新显示的设备扫描列表;所述设备管理模块确定所述第一扫描结果为空,显示提示弹窗。
在第一方面的又一种可能的实现方式中,所述操作系统还包括设备扫描入口模块;所述设备管理模块确定所述第一扫描结果为空,显示提示弹窗,包括:所述设备管理模块确定所述第一扫描结果为空,生成提示事件并发送至所述设备扫描入口模块;
所述设备扫描入口模块响应所述提示事件,显示所述提示弹窗。
第二方面,本申请还提供了一种电子设备,所述电子设备包括:一个或多个处理器、存储器和触摸屏;所述存储器用于存储程序代码;所述处理器用于运行所述程序代码,使得所述电子设备执行第一方面任一项所述的用于投屏场景的设备扫描方法。
第三方面,本申请还提供了一种计算机可读存储介质,其上存储有指令,当所述指令在电子设备上运行时,使得所述电子设备执行第一方面任一项所述的用于投屏场景的设备扫描方法。
第四方面,本申请还提供了一种计算机程序产品,其上存储有执行,当计算机程序产品在电子设备上运行时,使得所述电子设备实现如第一方面任一项所述的用于投屏场景的设备扫描方法。
应当理解的是,本申请中对技术特征、技术方案、有益效果或类似语言的描述并不是暗示在任意的单个实施例中可以实现所有的特点和优点。相反,可以理解的是对于特征或有益效果的描述意味着在至少一个实施例中包括特定的技术特征、技术方案或有益效果。因此,本说明书中对于技术特征、技术方案或有益效果的描述并不一定是指相同的实施例。进而,还可以任何适当的方式组合本实施例中所描述的技术特征、技术方案和有益效果。本领域技术人员将会理解,无需特定实施例的一个或多个特定的技术特征、技术方案或有益效果即可实现实施例。在其他实施例中,还可在没有体现所有实施例的特定实施例中识别出额外的技术特征和有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种无线投屏应用场景示意图;
图2是本申请实施例提供的一种无线投屏设备扫描的界面示意图;
图3是本申请实施例提供的另一种投屏设备扫描的界面示意图;
图4是本申请实施例提供的一种投屏端设备的硬件结构示意图;
图5是本申请实施例提供的一种投屏端设备的软件架构示意图;
图6是本申请实施例提供的一种未扫描到可用设备后的界面示意图;
图7是本申请实施例提供的一种扫描到可共用设备后的界面示意图;
图8是本申请实施例提供的一种投屏设备的发现方法的流程图。
具体实施方式
本申请说明书和权利要求书及附图说明中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
请参见图1,示出了本申请实施例提供的一种无线投屏应用场景示意图,以投屏端设备是手机2,被投屏端设备是大屏设备1,如智慧屏、智能电视等为例进行说明。
如图1所示,手机2可以通过无线通信(如,蓝牙、NFC等)搜索大屏设备1,在大屏设备1已开启投屏功能的情况下,手机2可以与大屏设备1通过无线网络建立连接。此后,手机2上显示的画面可以在大屏设备1上观看,手机2播放的音频直接通过大屏设备1播放。
发明人在研究本申请的过程中发现,相关技术的设备发现过程存在如下问题:
在一种情况下,投屏端设备扫描被投屏端设备的过程中,在预设时长内如果未搜索到被投屏端设备,没有任何提示,用户不知道未扫描到可用的被投屏端设备的原因,以及如何进行下一步操作。
如图2所示,以投屏端设备是手机为例说明,如图2的(1)所示,用户可以在手机的桌面10顶部进行下拉操作,显示如图2的(2)所示的下拉菜单20。下拉菜单20可以包括多个快捷控制按钮,如图2的(2)所示,仅示出了下控制按钮,如开启或关闭WiFi网络的WiFi按钮、开启或关闭蓝牙通信的蓝牙按钮、手电筒按钮、自动旋转按钮、无线投屏按钮等。
用户可以点击下拉菜单20中的无线投屏按钮201开启无线投屏功能,显示如图2的(3)所示的界面,在桌面10的上层显示弹窗30,弹窗30包括当前状态,如“正搜索可用设备”;提示内容,如“请确保大屏设备无线投屏功能已打开”,以及“取消”和“查看帮助”的控件。用户点击“取消”控件,则手机停止搜索可用设备过程,并退出弹窗30,显示桌面10。用户点击“查看帮助”控件,则显示常见操作问题帮助项的界面。
搜索过程持续预设时长(如,2min),期间一直显示弹窗30,直到搜索时长达到预设时长后,如果未搜索到可用设备,直接退出弹窗30并显示桌面10,没有任何提示信息,用户不知道未扫描到可用设备的原因,也不知道下一步应该如何操作,用户体验差。
在另一种情况下,投屏端设备在预设时长内搜索到可用的被投屏端设备,例如,进入如图3的(1)所示的界面,在桌面上显示弹窗40,弹窗40中显示可用设备的信息,如包括设备图标和设备名称“123”,支持的能力信息“支持电脑模式、手机模式投屏”,以及,“取消”和“查看帮助”控件。并且,在用户进行其他操作之前,一直显示图3的(1)所示的弹窗40。
用户点击弹窗40中的设备名称后,手机发起与大屏设备123之间建立连接的请求,进入如图3的(2)所示的界面,即在桌面界面上显示弹窗50,弹窗50用于示意手机与大屏设备之间的连接过程。但是,在手机搜索到大屏设备123后用户点击建立连接之前这段时间内,如果大屏设备123的状态发生变更,例如,网络断开或关机等,会导致手机与大屏设备连接失败,进入如图3的(3)所示的界面,即在桌面界面上显示弹窗60,弹窗60显示“连接失败”的状态信息、提示信息“可尝试再次打开大屏设备的投屏功能,或重启大屏设备后重新连接”,以及“取消”和“查看帮助”的控件。
如图2和图3所示的场景,目前的投屏端设备在设备发现过程中,若未发现可用设备,或者,扫描到可用设备但可用设备的状态变更导致连接失败,缺乏有效的提示或其他有效机制,导致投屏端设备与被投屏端设备之间的连接效率降低。
为了解决上述的至少部分问题,本申请提供了投屏设备的发现方法,该方法应用于投屏端设备,投屏端设备进入设备扫描过程并获得相应的设备列表,扫描过程达到预设时长后,检测设备列表是否为空。若设备列表为空,则展示提示弹窗,提示用户大屏设备的投屏开关是否运行正常,且通过动画效果展示用户打开大屏设备的投屏功能。而且,提示弹窗上直接设置有“重试”控件,用户点击“重试”控件后,自动重新发起设备扫描过程,提高用户体验。若设备列表不为空,则清空设备列表并自动重新发起设备扫描过程,以更新设备列表,确保设备扫描结果与被投屏端设备的状态一致,避免扫描到可用设备但设备状态变更导致连接失败的情况发生,提高了用户体验。
在一些实施例中,投屏端设备可以是手机(如图1所示)、平板电脑、桌面型、膝上型、笔记本电脑、手持计算机、上网本、个人数字助理(PersonalDigital Assistant,PDA)、可穿戴电子设备、智能手表等设备。被投屏端设备可以是智能电视、智慧屏等。本申请对投屏端设备和被投屏端设备的类型不做限制。
请参见图4,示出了本申请实施例提供的一种投屏端设备的结构示意图。
如图4所示,投屏端设备可以包括处理器110、存储器120、显示屏130、无线通信模块140、传感器150、USB接口160、充电管理模块170、电源管理模块180、电池190。
处理器110可以包括一个或多个处理单元,例如,处理器110可以包括应用处理器(application processor,AP)图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,和/或数字信号处理器(digital signal processor,DSP)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个好偶多个处理器中。
存储器120可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器通过运行存储在存储器内部的指令,从而执行投屏端设备的各种功能应用以及数据处理。例如,在本实施例中,处理器110可以通过执行存储在存储器120中的指令进行设备发现。
显示屏130用于显示图像,视频等。显示屏130上可以显示一系列图形用户界面(graphical user interface,GUI),这些GUI都是该投屏端设备的主屏幕。
投屏端设备的无线通信功能可以通过天线,无线通信模块等实现。
无线通信模块140可以提供应用在投屏端设备上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块140可以是集成至少一个通信处理模块的一个或多个器件。
正在本实施例中,传感器150是投屏端设备中可能涉及的传感器的统称,例如,可以包括触摸传感器。触摸传感器和显示屏构成触摸屏。涉及的其他传感器本实施例不再详述。
USB接口160是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备102充电,也可以用于电子设备102与外围设备之间传输数据。
充电管理模块170用于从充电器接收充电输入。
电源管理模块180用于连接电池190,充电管理模块170与处理器110。电源管理模块180接收电池190和/或充电管理模块170的输入,为投屏端设备中的其他器件供电。此外,电源管理模块180还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。
图5是本申请实施例的投屏端设备的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层(Frameworks)为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。例如,在本申请实施例中,如图5所示,在实现无线投屏功能时,应用程序框架层可以为应用程序层提供无线投屏功能相关的API,并提供无线投屏功能入口(PlayerClient)、设备管理模块(DeviceManager)、设备发现模块(DiscoverManager)、无线显示模块(WiFiDisplay),以实现无线投屏功能。此外,应用程序框架层还可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
PlayerClient是无线投屏功能的入口。
设备管理模块(DeviceManager)会对设备变更进行监听,WiFiDisplay模块扫描发现的周围的可用设备会统一上报至DeviceManager模块。
设备发现模块(DiscoverManager)主要用于调用WiFiDisplay模块扫描发现周围可用的设备,即被投屏端设备。
无线显示模块(WiFiDisplay)用于扫描发现周围可用的被投屏端设备。
在本申请的一个实施例中,PlayerClient、DeviceManager和DiscoverManager可以集成于同一软件模块中,也可以是相互独立的软件模块,或者,三者中任意两者集成于同一模块中,本申请对此不做限定。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,音频驱动,传感器驱动。
需要说明的是,本申请实施例虽然以Android系统为例进行说明,但是其基本原理同样适用于其他操作系统的电子设备。
下面结合图6和图7介绍本申请的无线投屏设备发现过程的界面。
在一种应用场景中,如图6的(1)所示,投屏端设备的扫描时间达到预设时长后,未扫描到可用设备,则进入如图6的(2)所示的界面。
如图6的(2)所示,在桌面界面上显示弹窗70,在弹窗70中示意开启和关闭大屏设备的投屏开关701的动态画面,即弹窗中展示开启和关闭投屏开关701的动态示意图。弹窗70还包括文字提示信息,如“提示用户打开大屏设备的投屏功能或重启大屏设备后重新连接”,以及“无法发现设备,可以点击查看帮助”。其中,提示信息中的“查看帮助”是控件。此外,弹窗70还包括“取消”、“重试”控件。
例如,用户点击图6的(2)所示的“查看帮助”控件后,进入图6的(3)所示的界面,图6的(3)所示的界面包括无线投屏过程中可能遇到的问题链接,用户点击任一问题链接进入该问题的解决方案对应的解决方案。
又如,用户点击图6的(2)所示的“重试”控件后,进入图6的(1)所示的界面,即立即执行设备发现过程,并显示投屏端设备进行设备发现过程显示的界面。
又如,用户点击图6的(2)所示的“取消”控件后,退回至桌面界面。
在另一种应用场景中,相关技术中,扫描得到可用设备后,由于可用设备的状态改变而离线,导致设备列表中设备信息与实际情况存在偏差,进一步,如图3所示,扫描到可用设备的一段时间后,建立投屏端设备与被投屏端设备之间的连接,可能存在被投屏端设备状态变更而导致连接失败。为了解决此种问题,本申请实施例,如图7的(1)所示,投屏端设备扫描到可用设备,如123,扫描过程达到预设时长后,进入如图7的(2)所示的界面,清空设备列表并重新发起设备扫描过程,从而刷新设备列表,确保更新后的设备列表与被投屏端设备的可用状态保持一致,因此提高了设备连接效率。
请参见图8,示出了本申请实施例提供的一种投屏设备的发现方法的流程图,该方法应用于投屏设备,本实施例以投屏端设备是手机、被投屏端设备是大屏设备为例进行说明。
如图8所示,该方法可以包括如下步骤:
S11,响应于启动无线投屏功能的操作,初始化无线投屏服务模块,并绑定WiFiDisplay服务模块。
在本申请的实施例中,如图8所示,无线投屏服务模块可以包括PlayerClient模块、设备管理模块(DiscoverManager)和设备发现模块(DiscoverManager)。
检测到用户启动无线投屏功能的操作后,启动无线投屏服务模块,即初始化无线投屏服务模块内的各个功能模块。以及,无线投屏服务模块绑定WiFiDisplay模块,并注册设备扫描监听。
在本申请的一个实施例中,注册设备扫描监听的过程包括:DiscoverManager模块向WiFiDisplay模块注册设备扫描监听,以及,DeviceManager向DiscoverManager注册设备变更监。这样,WiFiDisplay模块将扫描获得的设备扫描结果上报至DiscoverManager模块。进一步地,DiscoverManager模块将设备扫描结果上报至DeviceManager模块。
在一示例性实施例中,如图2的(2)所示,启动无线投屏功能的操作可以是用户点击下拉菜单20中的无线投屏按钮201。当然,用户还可以通过其他入口启动无线投屏功能,如用户从设置APP进入“更多连接”设置项,进而进入“无线投屏”功能项并开启。本申请并不限定开启无线投屏功能的途径。
S12,DiscoverManager模块创建定时器。
DiscoverManager模块创建定时器,并在检测到开始进行设备扫描时开始计时。
定时器的定时类型不限,可以是倒计时或从0开始计时到预设时长。预设时长可以根据实际业务需求设置,如2min。
S13,DiscoverManager模块调用WiFiDisplay模块进行设备扫描,并触发定时器开始计时。
在一种应用场景中,初始化完成后,DiscoverManager模块绑定WiFiDisplay模块后,WiFiDisplay模块向DiscoverManager模块反馈绑定成功后,DiscoverManager模块调用WiFiDisplay模块进行设备扫描,与此同时,触发定时器开始计时。
S14,手机侧的WiFiDisplay模块与被大屏设备侧的WiFiDisplay模块建立连接进行WiFi扫描设备发现过程。
S15,手机侧的WiFiDisplay模块向DiscoverManager模块返回设备扫描结果,进一步DiscoverManager向DeviceManager返回设备扫描结果。
在一种应用场景下,扫描到可用设备,返回的设备扫描结果可以是“DeviceList=True”,即设备列表不为空,此外,还可以包括可用设备的设备名称、数目、能力信息等,如,能力信息可以包括是否支持miracast、DLNA、cast+等无线投屏协议。
在另一种应用场景下,如果未扫描到可用设备,返回的设备扫描结果可以是“DeviceList=False”,即设备列表为空。
S16,DeviceManager更新设备列表,并将设备列表发送至PlayerClient进行显示。
DeviceManager根据DiscoverManager返回的设备扫描结果更新设备列表,如果设备列表不为空,则DeviceList=True,且包括可用设备的信息,如果设备列表为空,则“DeviceList=False”。DeviceManager将设备列表发送至PlayerClient进行显示。
S17,定时时间到达后,DiscoverManager模块通知WiFiDisplay模块停止扫描,以及触发DeviceManager模块判断设备列表是否为空。
DiscoverManager模块检测到定时器达到定时时长后,触发WiFiDisplay模块停止设备扫描,与此同时,触发DeviceManager模块执行判断设备列表是否为空的方法。
定时器计时达到预设时长后重置,即恢复计时预设时长的功能。
S18,DeviceManager判断设备列表是否为空,如果设备列表不为空,则执行S19;如果设备列表为空,则执行S114。
DeviceManager检测到设备列表DeviceList为true确定设备列表不为空,DeviceManager检测到设备列表DeviceList为flase确定设备列表为空。
S19,DeviceManager清空设备列表,并刷新UI界面显示的设备列表。
DeviceManager清空设备列表后,将清空后的设备列表发送至PlayerClient进行显示,即,使UI界面显示的设备列表更新为清空后的设备列表。S110,DeviceManager模块调用DiscoverManager的设备扫描发现接口,进一步DiscoverManager调用手机侧的WiFiDisplay模块扫描周围可用设备,并触发定时器开始计时。
DeviceManager调用DiscoverManager的设备扫描发现接口,DiscoverManager响应设备扫描发现接口的调用,进一步调用WiFiDisplay模块扫描周围可用设备,重新与大屏设备侧的WiFiDisplay模块建立连接扫描发现可用设备。S111,手机侧WiFiDisplay向DiscoverManager返回新的设备扫描结果,进一步,DiscoverManager向DeviceManager返回新的设备扫描结果。
S112,DeviceManager更新设备列表,并将更新后的设备列表发送至PlayerClient进行显示。DeviceManager根据接收到的新的设备扫描结果更新设备列表,并将更新后的设备列表发送至PlayerClient进行显示。
如图7的(1)所示,设备扫描过程扫描到可用设备123,设备扫描过程达到预设时长后,进入如图7的(2)所示的界面,清空设备列表并重新发起设备扫描过程,以刷新设备列表。
上述S110~S112所述的过程与S13~S16的实施过程相同,此处不再赘述。由上述的S110~S112所述的过程,设备扫描过程达到预设时长,且判定设备扫描结果不为空后,清空当前显示的设备列表,并重新发起设备扫描以更新设备列表,以确保显示的设备列表与被投屏端设备的状态一致,避免扫描到可用设备但可用设备状态变更导致连接失败的情况发生,提高了用户体验。
S113,定时器的计时时长达到预设时长后,通知WiFiDisplay模块停止扫描。
当定时器的计时时长达到预设时长后,停止设备扫描过程。
S114,如果DeviceManager确定设备列表为空,则向PlayerClient发送提示事件,PlayerClient响应提示事件显示提示弹窗。
如果设备列表值为false,则确定设备列表为空,DeviceManager向PlayerClient发送提示事件:Int EVENT_ID_HISIGHT_STATE_NOTICE_DIALOG=3110。
PlayerClient接收提示事件后,响应该事件显示如图6的(2)所示的弹窗70,弹窗70包括提示用户检查被投屏端设备无线投屏功能是否正常运行的动态效果图,即用于示意大屏设备的投屏开关的701动态展示投屏开关开启、关闭的状态。
S115,PlayerClient响应于用户对提示弹窗中的重试按钮的点击操作,重新调用设备发现模块的设备扫描接口进行设备扫描,并触发定时器开始计时。
S116,投屏端设备侧WiFiDisplay向DiscoverManager返回新的设备扫描结果,进一步,DiscoverManager向DeviceManager返回新的设备扫描结果。
S117,DeviceManager更新设备列表,并向PlayerClient返回更新后的设备列表。
S118,PlayerClient显示新的设备列表。
其中,S115~S118的具体实施过程与S13~S16的实施过程相同,此处不再赘述。
如图6的(2)所示的弹窗70包括“重试”控件,用户点击该“重试”控件后,PlayerClient检测到该操作后重新发起设备扫描发现过程,如果本次扫描到可用设备,则从图6的(2)所示的界面跳转至图7的(1)所示的界面,即显示扫描到的可用设备的信息。进一步,用户可以点击该可用设备的标识(如图示或设备名称)发起建立与该可用设备之间的连接。
由上述S114~S118所述过程可知,在判定设备列表为空的情况下,在投屏端设备侧显示提示弹窗,且提示弹窗中包括“重试”按钮,用户点击“重试”按钮后重新发起设备扫描过程。
在本申请的一种应用场景中,如图3所示,若扫描到可用的被投屏端设备,且在达到预设时长之前,用户点击该被投屏端设备,则执行设备连接过程,此时定时器停止计时,不再执行定时时长达到预设时长后所执行的步骤。进一步地,如果投屏端设备与扫描到的被投屏端设备连接失败,可以触发重新扫描被投屏端设备。即,设备列表不为空的情况下,若在定时时长达到预设时长之前,投屏端设备响应于点击扫描到的被投屏端设备的操作,发起与被投屏端设备的连接,但由于被投屏端设备的状态变更导致两者连接失败,此种情况下,可以直接执行S110~S112所示的过程。换言之,若投屏端设备扫描到可用的被投屏端设备,但投屏端设备与该被投屏端设备连接失败,直接触发重新扫描被投屏端设备获得新的扫描结果,并触发投屏端设备显示最新的扫描结果。
在本申请的另一实施例中,在判定设备列表为空的情况下,也可以直接重新发起设备扫描过程,如显示提示弹窗后立即重新发起设备扫描过程,直接重新发起设备扫描过程与设备列表不为空情况下的重新发起设备扫描过程相同,此处不再赘述。
本实施例提供的投屏设备的发现方法,投屏端设备的设备扫描过程达到预设时长后,检测获得的设备列表是否为空。如果设备列表为空,则展示提示弹窗,提醒用户检查大屏设备的投屏开关是否运行正常,并且通过动图展示开启大屏设备的投屏开关。以及,提示弹窗包括“重试”控件,用户点击“重试”按钮后自动发起设备扫描过程,“重试”控件可以提示用户发起新的投屏,提高了投屏效率。如果设备列表不为空,则清空设备列表,以及重新发起设备扫描发现过程,以更新设备列表,保证了设备列表能够基于被投屏端设备的状态更新,避免扫描到可用设备但由于设备窗台变更导致连接失败的情况发生,从而提高了投屏效率,提高了用户体验。
上述的投屏设备的发现方法实施例以投屏端设备的操作系统是Android系统为例,但这并不能限制本申请实施例的保护范围,本领域技术人员可以基于申请实施例提供的上述方案进行适应性修改从而应用于使用其他操作系统的投屏端设备,本申请对此不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本实施例所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种用于投屏场景的设备扫描方法,其特征在于,应用于电子设备,所述方法包括:
响应于开启投屏功能的操作,扫描被投屏端设备获得第一扫描结果;
响应于扫描被投屏端设备的持续时长达到预设时长,停止扫描;
重新扫描被投屏端设备获得第二扫描结果,并触发所述电子设备显示所述第二扫描结果。
2.根据权利要求1所述的方法,其特征在于,在所述响应于扫描被投屏端设备的持续时长达到预设时长,停止扫描之后,所述方法还包括:
响应于确定所述第一扫描结果不为空,执行所述重新扫描被投屏端设备获得第二扫描结果的步骤。
3.根据权利要求2所述的方法,其特征在于,在确定所述第一扫描结果不为空之后,所述方法还包括:清空所述第一扫描结果。
4.根据权利要求1所述的方法,其特征在于,在所述响应于扫描被投屏端设备的持续时长达到预设时长,停止扫描之后,所述方法还包括:
响应于确定所述第一扫描结果为空,显示重试按钮;
响应于对所述重试按钮的操作,执行所述重新扫描被投屏端设备获得第二扫描结果的步骤。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
响应于确定所述第一扫描结果为空,显示提示弹窗,所述提示弹窗包括所述重试按钮。
6.根据权利要求1、4或5所述的方法,其特征在于,所述方法还包括:
响应于确定所述第一扫描结果为空,显示提示弹窗,所述提示弹窗包括用于示意被投屏端设备的投屏开关开启和关闭的动态图。
7.根据权利要求1所述的方法,其特征在于,在确定所述第一扫描结果不为空,且扫描被投屏端设备的持续时长达到预设时长之前,所述方法还包括:
响应于与所述第一扫描结果中的被投屏端设备连接失败,重新扫描被投屏端设备获得第三扫描结果,并触发所述电子设备显示所述第三扫描结果。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述电子设备运行有操作系统,所述操作系统包括位于应用程序框架层的设备发现模块和无线显示模块;
所述响应于扫描被投屏端设备的持续时长达到预设时长,停止扫描,包括:
所述设备发现模块在触发所述无线显示模块扫描被投屏端设备时,控制定时器开始计时,直到计时时长达到所述预设时长后,触发所述无线显示模块停止设备扫描。
9.根据权利要求8所述的方法,其特征在于,所述操作系统还包括设备管理模块;在计时时长达到所述预设时长后,所述方法还包括:
所述设备发现模块触发所述设备管理模块判断所述第一设备扫描结果是否为空;
所述设备管理模块确定所述第一设备扫描结果不为空,触发所述设备发现模块重新扫描被投屏端设备获得第二扫描结果,并显示所述第二扫描结果;
所述设备管理模块响应于确定所述第一扫描结果为空,触发所述电子设备显示提示弹窗。
10.根据权利要求9所述的方法,其特征在于,所述操作系统还包括设备扫描入口模块;
所述设备管理模块响应于确定所述第一扫描结果为空,触发所述电子设备显示提示弹窗,包括:
所述设备管理模块响应于确定所述第一设备扫描结果为空,生成提示事件并发送至所述设备扫描入口模块;
所述设备扫描入口模块响应所述提示事件,显示所述提示弹窗。
11.一种电子设备,其特征在于,所述电子设备包括:一个或多个处理器、存储器和触摸屏;所述存储器用于存储程序代码;所述处理器用于运行所述程序代码,使得所述电子设备实现如权利要求1至10任一项所述的用于投屏场景的设备扫描方法。
12.一种计算机可读存储介质,其特征在于,其上存储有指令,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1至10任一项所述的用于投屏场景的设备扫描方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211055882.2A CN115543241A (zh) | 2022-08-31 | 2022-08-31 | 用于投屏场景的设备扫描方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211055882.2A CN115543241A (zh) | 2022-08-31 | 2022-08-31 | 用于投屏场景的设备扫描方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115543241A true CN115543241A (zh) | 2022-12-30 |
Family
ID=84725304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211055882.2A Pending CN115543241A (zh) | 2022-08-31 | 2022-08-31 | 用于投屏场景的设备扫描方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115543241A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442428A (zh) * | 2013-07-19 | 2013-12-11 | 华侨大学 | 一种基于蓝牙设备名的相对移动定位方法 |
CN111741372A (zh) * | 2020-07-08 | 2020-10-02 | 聚好看科技股份有限公司 | 一种视频通话的投屏方法、显示设备及终端设备 |
CN112242980A (zh) * | 2019-07-19 | 2021-01-19 | 腾讯科技(武汉)有限公司 | 一种投屏方法和装置 |
CN112470523A (zh) * | 2018-07-23 | 2021-03-09 | 微软技术许可有限责任公司 | 用于搜索可用网络的无线设备的知晓环境的自适应回退 |
CN113825000A (zh) * | 2021-09-18 | 2021-12-21 | 北京奇艺世纪科技有限公司 | 投屏方法、装置、电子设备及存储介质 |
CN114125575A (zh) * | 2021-11-22 | 2022-03-01 | 深圳康佳电子科技有限公司 | 投屏断连判断处理方法、装置、智能终端及存储介质 |
CN114489533A (zh) * | 2020-11-13 | 2022-05-13 | 华为技术有限公司 | 投屏方法、装置、电子设备及计算机可读存储介质 |
CN114867035A (zh) * | 2021-02-04 | 2022-08-05 | 华为技术有限公司 | WiFi扫描控制方法和相关装置 |
-
2022
- 2022-08-31 CN CN202211055882.2A patent/CN115543241A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103442428A (zh) * | 2013-07-19 | 2013-12-11 | 华侨大学 | 一种基于蓝牙设备名的相对移动定位方法 |
CN112470523A (zh) * | 2018-07-23 | 2021-03-09 | 微软技术许可有限责任公司 | 用于搜索可用网络的无线设备的知晓环境的自适应回退 |
CN112242980A (zh) * | 2019-07-19 | 2021-01-19 | 腾讯科技(武汉)有限公司 | 一种投屏方法和装置 |
CN111741372A (zh) * | 2020-07-08 | 2020-10-02 | 聚好看科技股份有限公司 | 一种视频通话的投屏方法、显示设备及终端设备 |
CN114489533A (zh) * | 2020-11-13 | 2022-05-13 | 华为技术有限公司 | 投屏方法、装置、电子设备及计算机可读存储介质 |
CN114867035A (zh) * | 2021-02-04 | 2022-08-05 | 华为技术有限公司 | WiFi扫描控制方法和相关装置 |
CN113825000A (zh) * | 2021-09-18 | 2021-12-21 | 北京奇艺世纪科技有限公司 | 投屏方法、装置、电子设备及存储介质 |
CN114125575A (zh) * | 2021-11-22 | 2022-03-01 | 深圳康佳电子科技有限公司 | 投屏断连判断处理方法、装置、智能终端及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021057868A1 (zh) | 一种界面切换方法及电子设备 | |
US11861382B2 (en) | Application starting method and apparatus, and electronic device | |
US20240111473A1 (en) | Distributed display method and terminal for application interface | |
WO2023284415A1 (zh) | 电源键误触检测方法及电子设备 | |
CN114466102B (zh) | 显示应用界面的方法、相关装置以及交通信息显示系统 | |
CN111367456A (zh) | 通信终端及多窗口模式下的显示方法 | |
CN114461240B (zh) | 软件升级方法、软件升级系统及电子设备 | |
KR102566622B1 (ko) | 멀티코어 통신방법, 장치, 전자기기 및 저장매체 | |
CN112114733B (zh) | 一种截屏、录屏方法、移动终端及计算机存储介质 | |
EP4280058A1 (en) | Information display method and electronic device | |
EP4344180A1 (en) | Incoming-call reminding method and electronic device | |
CN113835569A (zh) | 终端设备、应用内部功能的快捷启动方法和存储介质 | |
CN113709026B (zh) | 即时通信消息的处理方法、设备、存储介质和程序产品 | |
CN112835472B (zh) | 通信终端及显示方法 | |
CN115543241A (zh) | 用于投屏场景的设备扫描方法及装置 | |
CN114995591B (zh) | 传感器注册方法、控制系统及相关设备 | |
CN113253905B (zh) | 基于多指操作的触控方法及智能终端 | |
CN114610202A (zh) | 静默求助方法和终端设备 | |
CN114339591A (zh) | 基于超宽带芯片进行定位的方法和相关装置 | |
CN114035870A (zh) | 一种终端设备、应用资源控制方法和存储介质 | |
CN111787157A (zh) | 移动终端及其操作响应方法 | |
CN112114883A (zh) | 一种终端唤醒方法、终端及计算机存储介质 | |
CN111159734A (zh) | 通信终端及多应用数据互访处理方法 | |
CN111158563A (zh) | 电子终端及图片矫正方法 | |
WO2024083114A1 (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 |