一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

电子设备及其投屏方法和介质与流程

2022-04-16 13:00:22 来源:中国专利 TAG:


1.本技术涉及终端技术领域,尤其涉及一种投屏方法及其电子设备和介质。


背景技术:

2.随着智能终端设备如手机的普及,终端设备上的服务应用(application,app)也越来越多,用户在使用终端设备上的app时可以将其切换到其他终端设备。例如,用户可以在开车时将通话服务切换到车机上。目前主要通过在多个终端设备上适配app以提供相同的服务或者将手机上的应用界面投屏到其他终端设备上来实现终端设备之间的切换。
3.在多个终端设备上适配app以提供相同的服务的话,需要用户在已有的终端设备上都安装app,且登陆同一账户以同步应用数据,交互体验较差,此外,开发者的适配工作量大。将手机上的应用界面投屏到其他终端设备上的话,目前的技术在投屏后被投屏的终端设备显示的界面与手机上的界面一样,如果手机和被投屏的终端设备尺寸不同,会出现被投屏的界面中元素布局过于臃肿、被投屏终端设备显示屏的部分区域未被利用等问题。例如,图1示出了现有技术中将手机100上的音乐app103投屏到车机200的屏幕上的场景图。如图1所示,用户将手机100上的音乐app103投射到车机200的屏幕上后,音乐app103在车机200的屏幕中依然使用该音乐app103在手机100上的布局样式,由于手机100屏幕的尺寸与车机200的屏幕的尺寸不同,因此造成音乐app103能够在手机100的屏幕内显示的元素中的一部分无法完全显示在车机200的屏幕内显示,另一部分会挤在一起显得很臃肿,并且车机200的屏幕中还有部分区域未被利用。


技术实现要素:

4.本技术的目的在于提供一种投屏方法及其电子设备和介质,在不修改电子设备上显示内容(如音乐app)的布局代码的情况下,使得显示内容在投屏到不同远端设备后,布局适合远端设备的屏幕。
5.本技术的第一方面提供了一种投屏方法,包括:第一电子设备在显示屏上向用户显示第一应用的第一显示界面,并从第二电子设备获取第一投屏参数,其中,第一投屏参数包括第二电子设备用于接受投屏的第一投屏区域的尺寸;
6.第一电子设备根据获取的第一投屏参数,对第一显示界面的尺寸和第一显示界面中至少一个显示元素的布局进行调整,以生成适用于第一投屏区域的尺寸的第一投屏界面;
7.第一电子设备向第二电子设备投屏第一投屏界面。
8.即在本技术的实施例中,第一电子设备是向第二电子设备投屏的电子设备,在其向第二电子设备投屏时,第一电子设备会在保持其显示屏上第一应用的显示界面(即第一显示界面)的布局保持不变的同时,调整第一应用要投屏到第二电子设备的投屏区域的第一投屏界面内各显示元素的布局,例如,调整第一显示界面的尺寸、分辨率、各显示元素的位置、大小等等,使得第一应用被投屏后的界面布局更适用于第二电子设备的投屏区域(即
第一投屏区域)。
9.例如,第一电子设备可以是手机,第二电子设备可以是车机。第一显示界面是手机的屏幕,第一投屏区域可以是车机的屏幕内的局部区域。这里,手机屏幕尺寸可以是6寸竖屏,而手机从车机获取的投屏参数中得出投屏区域的尺寸是7寸横屏。这时,手机根据投屏参数生成一个投屏界面(第一投屏界面),并根据上述投屏参数在投屏界面内,调整音乐app的图标、按钮、菜单等显示内容,例如,将音乐app的图标从两行三列改成一行六列后,调整后的音乐app界面能够适应于车机的投屏区域,使得音乐app的显示内容在车机的投屏区域不会显得臃肿,同时,使得音乐app的布局适合车机的投屏区域,能够避免在车机的投屏区域产生空白区域。
10.在上述第一方面的一种可能的实现中,第二电子设备的第一投屏区域的尺寸等于或者小于第二电子设备的显示屏尺寸。
11.即在本技术的实施例中,车机的投屏区域的尺寸可以是7寸横屏,而车机的屏幕的尺寸可以是8寸横屏,也就是说,车机的投屏区域可以是车机的屏幕内的局部区域。
12.在上述第一方面的一种可能的实现中,第一投屏参数还包括第二电子设备的显示屏分辨率、像素密度、以及第二电子设备的型号中的至少一种。
13.考虑到被投屏电子设备(即第二电子设备)的类型不同,使用场景不同,某些使用场景下适当调整投屏后应用的界面布局可以方便用户操作,故在发送投屏参数时被投屏电子设备可以同时发送自身的型号或者标识等表示设备类型的信息给投屏电子设备(即第一电子设备)。例如,在手机向车机进行投屏时,车机会将自己的型号发送给手机,手机基于接收到的信号判断出接受投屏的电子设备为车机,为了方便司机操作,手机将app投屏至车机时,可以将一些案件放置在靠近方向盘的地方,例如将及时通信app中,音视频通话的按键调整至车机的投屏区域的左侧,以方便开车的用户进行点击,再例如在司机搜索手机上的联系人或者及时通信软件上的联系人时,手机也可以去除即时通信app界面中与联系人的无关信息,如标签和聊天记录,直接显示联系人的头像和姓名。
14.在上述第一方面的一种可能的实现中,第一电子设备根据获取的第一投屏参数,对第一显示界面的尺寸和第一显示界面中至少一个显示元素的布局进行调整包括:
15.将第一投屏界面的尺寸、分辨率以及像素密度调整为与第一投屏区域的尺寸、分辨率、像素密度相同。
16.在上述第一方面的一种可能的实现中,第一投屏界面生成在第一电子设备的虚拟屏上。如此,第一投屏界面在第一电子设备的显示屏内是不可见的,不影响第一应用在第一电子设备显示屏上的显示。
17.在上述第一方面的一种可能的实现中,第二电子设备的第一投屏区域的尺寸小于第一电子设备的显示屏的屏幕尺寸,并且第一投屏界面和第一显示界面同时显示在第一电子设备的显示屏上。即在将第一显示界面投屏到更小的投屏区域或者说第二电子设备的屏幕小于第一电子设备的屏幕时,第一投屏界面可以通过画中画的方式显示在第一电子设备的显示屏内。
18.在上述第一方面的一种可能的实现中,第一电子设备通过以下方式对第一显示界面中的显示元素的布局进行调整,以生成第一投屏界面:
19.修改第一显示界面中显示元素的位置;
20.对第一显示界面中的显示元素进行缩放,如改变显示元素的大小;
21.对第一显示界面中的显示元素进行旋转,改变显示元素的方向,例如将搜索栏由横向的矩形框改变为纵向的矩形框;
22.修改第一显示界面中显示元素的查看方式,例如,将在手机的屏幕中通过上下滑动的方式显示音乐app的图标改为在车机的屏幕中通过左右滑动的方式。
23.删除第一显示界面中的至少一个显示元素,例如,在手机将的屏幕中的音乐app投屏至智能手表的情况下,由于智能手表的屏幕大小,因此可以只保留音乐栏目以及后退,暂停/开始,前进等按钮,将其他显示元素删除。
24.在上述第一方面的一种可能的实现中,还包括:
25.第一电子设备响应于从第二电子设备接收到的操作指令,修改与第一显示界面对应的第一投屏界面中的显示内容,其中,操作指令为第二电子设备响应于用户对第二电子设备显示屏上的第一投屏界面中的显示元素的操作而产生的。
26.即在第一电子设备将第一投屏界面中的显示内容投屏至第二电子设备后,用户可以在第二电子设备的第一投屏界面执行触碰动作,例如,用户点击第二电子设备的第一投屏界面的按键触发指令,第二电子设备在接收到该指令后,将该指令发送给第一电子设备,第一电子设备响应并执行该指令对应的操作。例如,手机将即时通信app投屏至车机后,用户可以通过在车机的屏幕进行点击操作,实现与手机之间的联动操作。如在手机的即时通信app的联系人视频通话界面中,视频框呈横屏显示。在手机将其投屏到车机后,用户可以在车机的即时通信app的联系人视频通话界面的中点击视频调节按键,使得车机和手机的视频框视频框同时调整为竖屏显示,从而改善用户进行视频通话的体验。
27.在上述第一方面的一种可能的实现中,第一电子设备能够响应于用户对第一显示界面中的第一显示元素的操作,改变第一显示界面中的显示内容,并且改变包括在第一显示界面中显示第二显示元素,并且
28.第一电子设备还能够响应于用户对第一显示界面中的第二显示元素的操作,进一步改变第一显示界面中的显示内容,并且改变包括在第一显示界面中显示与第二显示元素对应的第三显示元素;并且
29.第一电子设备根据获取的第一投屏参数,对第一显示界面的尺寸和第一显示界面中至少一个显示元素的布局进行调整,以生成适用于第一投屏区域的尺寸的第一投屏界面,包括:
30.第一电子设备响应于从第二电子设备接收到的第一操作指令,修改与第一显示界面对应的第一投屏界面的显示内容,其中修改包括在第一投屏界面中显示第三显示元素,其中,第一操作指令为第二电子设备响应于用户对第二电子设备显示屏上的第一投屏界面中的第一显示元素的操作而产生的;
31.第一电子设备向第二电子设备投屏包括第三显示元素的第一投屏界面。
32.例如,在第一电子设备为手机且用户要通过及时通信app进行音视频通话的情况下,当用户在手机上点击要进行音视频通话的联系人(即第一显示元素)后,手机界面中会出现音视频通话按钮(即第二显示元素),点击音视频通话按钮后,及时通信app的显示界面(即第一显示界面)中会出现音频通话和视频通话的选择菜单(即第三显示元素),用户从选择菜单中选择音频通话或者视频通话后便可进行音频或者视频通话。当手机要投屏的电子
设备为车机时,为了简化用户的操作,在手机将及时通信app的联系人界面投屏到车机后,在用户点击了车机上的要进行音视频通话的联系人(即第一显示元素)后,手机接收到车机的指令后,相应先后出现包括音视频通话按钮的界面和包括音频通话和视频通话的选择菜单(即第三显示元素)的界面,但是,手机仅向用户投屏包括音频通话和视频通话的选择菜单(即第三显示元素)的界面,而不投屏包括音视频通话按钮的界面。
33.在上述第一方面的一种可能的实现中,第一电子设备根据获取的第一投屏参数,对第一显示界面的尺寸和第一显示界面中至少一个显示元素的布局进行调整,以生成适用于第一投屏区域的尺寸的第一投屏界面,包括:
34.第一电子设备在第一投屏界面中增加对应第四显示元素的第五显示元素,其中第一显示界面包括第四显示元素并且不包括第五显示元素;并且
35.方法还包括:
36.第一电子设备响应于从第二电子设备接收到的第二操作指令,对第一投屏界面中的第四显示元素的布局进行调整,其中,
37.第二操作指令为第二电子设备响应于用户对第二电子设备显示屏上的第一投屏界面中的第五显示元素的操作而产生的。
38.例如,在手机(即第一电子设备)的即时通信app的联系人视频通话界面中,视频框呈横屏显示,如果将其投屏到车机(即第二电子设备),用户看起来比较吃力。故在手机将其投屏到车机时,在即时通信app的显示界面中增加用于旋转视频框(即第四显示元素)的视频调节按键(即第五显示元素)生成第一投屏界面投屏到车机。然后,如果用户想要旋转视频框,将其旋转为竖向显示,则可以通过点击车机通话界面中的视频调节按键进行调整。
39.在上述第一方面的一种可能的实现中,第一电子设备根据获取的第一投屏参数,对第一显示界面的尺寸和第一显示界面中至少一个显示元素的布局进行调整,以生成适用于第一投屏区域的尺寸的第一投屏界面,包括:
40.第一电子设备获取与第一投屏参数对应的布局配置文件;
41.第一电子设备根据布局配置文件,将第一应用的第一显示界面修改为第一投屏界面。
42.在上述第一方面的一种可能的实现中,布局配置文件与第一电子设备上的应用的应用标识、应用的版本号以及投屏参数之间存在对应关系,其中,同一应用的同一版本对应不同尺寸的投屏区域具有不同的投屏参数,并且同一应用的同一版本的不同投屏参数对应不同的配置文件。
43.即在本技术的实施例中,可以通过树形结构的文件目录保存布局配置文件。例如,其一级子目录可以是app的标识,对于音乐app来说,音乐app的标识可以是musicapp。在一级子目录下,可以设置二级子目录,例如,对于音乐app,可以使用音乐app的不同版本,1.0、1.1来设置二级子目录。最后,再针对不同的屏幕参数,设置不同的配置文件,对于音乐app的版本1.0,如果其支持两种屏幕参数,则在其目录下可以存在第一配置文件和第二配置文件。通过树形结构的文件目录保存布局配置文件,使得手机可以通过待投屏的app以及屏幕参数快速地查找对应的布局配置文件。
44.在上述第一方面的一种可能的实现中,第一电子设备获取与第一投屏参数对应的布局配置文件,包括:
45.第一电子设备从第一应用的安装文件中获取第一应用的第一应用标识和第一应用的版本号;
46.第一电子设备通过匹配第一应用的标识、第一应用的版本号、第一投屏参数从多个布局配置文件中选择第一投屏参数对应的布局配置文件。
47.即在本技术的实施例中,第一应用的第一应用标识是唯一确定的,第一应用的可以存在多个版本,对于每一个第一应用的版本以及每一个投屏参数都可以保存对应的布局配置文件。
48.在上述第一方面的一种可能的实现中,布局配置文件包括第一显示界面中显示元素的标识和对应显示元素的布局规则。
49.即在本技术的实施例中,第一电子设备可以通过显示元素的标识来定位第一应用的显示元素,例如,显示元素的id。
50.在上述第一方面的一种可能的实现中,还包括:
51.第一电子设备在显示屏上向用户显示第二应用的第二显示界面,并从第二电子设备获取第二投屏参数,其中,第二投屏参数包括第二电子设备用于接受投屏的第二投屏区域的尺寸;
52.第一电子设备根据获取的第二投屏参数,对第二显示界面的尺寸和第二显示界面中至少一个显示元素的布局进行调整,以生成适用于第二投屏区域的尺寸的第二投屏界面;
53.第一电子设备同时向第二电子设备投屏第一投屏界面和第二投屏界面。
54.即在本技术的实施例中,例如,手机还可以将同时打开的文档app和聊天app同时投屏到平板电脑上,平板电脑的屏幕内可以同时显示文档app和聊天app。免去了用户同时操作手机和平板电脑的麻烦,使得用户无需将文档app和聊天app从手机切换至平板电脑,就可以在屏幕较大的平板电脑上直接使用文档app和聊天app,提升了用户的体验。
55.在上述第一方面的一种可能的实现中,其特征在于,第一应用为音乐应用、即时通信应用、新闻应用、购物应用、视频播放应用中的任意一个。
56.本技术的第二方面提供了一种电子设备的投屏方法,其特征在于,包括:
57.第二电子设备向第一电子设备发送第一投屏参数,其中,第一投屏参数包括第二电子设备用于接受投屏的第一投屏区域的尺寸;
58.第二电子设备在显示屏上的第一投屏区域中显示第一电子设备发送的第一投屏界面,其中第一投屏界面是第一电子设备根据第一投屏参数,对第一电子设备显示屏上显示的第一应用的第一显示界面的尺寸和第一显示界面中至少一个显示元素的布局进行调整后生成的;
59.第二电子设备检测到用户对显示屏上的第一投屏界面的显示元素的操作;
60.第二电子设备响应于操作生成操作指令,并向第一电子设备发送操作指令,其中操作指令用于指令第一电子设备对应用户操作,对第一投屏界面中的显示内容进行修改。
61.在上述第二方面的一种可能的实现中,第二电子设备的第一投屏区域的尺寸等于或者小于第二电子设备的显示屏尺寸。
62.在上述第二方面的一种可能的实现中,第一投屏参数还包括第二电子设备的显示屏分辨率、像素密度、以及第二电子设备的型号中的至少一种。
63.本技术的第三方面提供了一种电子设备,其特征在于,包括:
64.显示屏;
65.存储器,存储有指令;
66.处理器,处理器和存储器耦合,当存储器存储的程序指令被处理器执行时使得电子设备控制显示屏执行如前述第一方面提供的投屏方法。
67.本技术的第三方面提供了一种可读介质,可读介质中存储有指令,其特征在于,当指令在可读介质上运行时,使得可读介质执行如前述第一方面提供的投屏方法。
附图说明
68.图1示出了一种电子设备将自身的音乐app投屏至车机的屏幕的示例;
69.图2示出了根据本技术的实施例的投屏系统示例;
70.图3(a)示出了电子设备上的音乐app的界面示例;
71.图3(b)示出了电子设备上的音乐app投屏至车机的屏幕的示例;
72.图3(c)示出了电子设备上的音乐app投屏至平板电脑的屏幕的示例;
73.图3(d)示出了电子设备上的文档app和聊天app同时投屏到平板电脑的屏幕的示例;
74.图4示出了电子设备上的音乐app投屏至车机的屏幕的投屏方法示例;
75.图5示出了overlay配置文件目录以及其包含的子目录的树形结构示例;
76.图6示出了overlay配置文件的内容示例;
77.图7(a)示出了电子设备上的音乐app的界面内控件布局示例;
78.图7(b)示出了电子设备上的音乐app的界面内控件布局示例;
79.图8示出了音乐app中控件布局的树形结构示例;
80.图9示出了音乐app中控件布局的树形结构示例;
81.图10(a)示出了电子设备上的音乐app的界面内控件布局示例;
82.图10(b)示出了电子设备上的音乐app投屏至车机的屏幕后音乐app的界面内控件布局示例;
83.图11示出了电子设备上的音乐app投屏至智能手表的屏幕后音乐app的界面内控件布局示例;
84.图12(a)示出了根据本技术的实施例的另一种投屏系统示例;
85.图12(b)示出了根据本技术的实施例的另一种投屏系统示例;
86.图13(a)示出了电子设备上的即时通信app的联系人界面内控件布局示例;
87.图13(b)示出了电子设备上的即时通信app投屏至车机的屏幕后即时通信app的联系人界面内控件布局示例;
88.图14(a)示出了电子设备上的即时通信app的搜索功能界面内控件布局示例;
89.图14(b)示出了电子设备上的即时通信app投屏至车机的屏幕后即时通信app的搜索功能界面内控件布局示例;
90.图15(a)示出了电子设备上的即时通信app的音视频通话界面内控件布局示例;
91.图15(b)示出了电子设备上的即时通信app投屏至车机的屏幕后即时通信app的音视频通话界面内控件布局示例;
92.图16示出了电子设备上的即时通信app的联系人视频通话界面内控件布局示例;
93.图17(a)示出了电子设备上的即时通信app的联系人视频通话界面内视频框1701呈横屏显示的布局示例;
94.图17(b)示出了电子设备上的即时通信app投屏至车机的屏幕后即时通信app的联系人视频通话界面内视频框1701呈竖屏显示的布局示例;
95.图17(c)示出了电子设备上的即时通信app的联系人视频通话界面内视频框1702呈横屏显示的布局示例;
96.图17(d)示出了电子设备上的即时通信app投屏至车机的屏幕后即时通信app的联系人视频通话界面内视频框1702呈竖屏显示的布局示例;
97.图17(e)示出了电子设备上的即时通信app的联系人视频通话界面内视频框1701和视频框1702都呈横屏显示的布局示例;
98.图17(f)示出了电子设备上的即时通信app投屏至车机的屏幕后即时通信app的联系人视频通话界面内视频框1701和视频框1702都呈竖屏显示的布局示例;
99.图18示出了根据本技术的实施例的电子设备的结构示意图;
100.图19示出了根据本技术的实施例的电子设备的软件结构框图;
101.图20示出了根据本技术的实施例的一种片上系统(soc)的框图。
具体实施方式
102.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
103.根据本技术一些实施例,附图中参考数字后面的字母,例如“100a”表示对具有该特定参考数字的元素的引用,而没有后续字母的参考数字,例如“100”,表示对带有该参考数字的元素的实施方式的一般引用。
104.下面将结合附图对本技术的实施例作进一步地详细描述。
105.图2根据本技术的一些实施例示出了一种投屏系统。如图2所示,该投屏系统包括电子设备100、远端设备200以及云端300。
106.电子设备100能够从远端设备200获取投屏至远端设备200时对投屏的显示内容的布局进行调整所需的投屏参数,然后根据获取到的投屏参数,将需要投屏的显示内容的布局进行调整,以使得显示内容投屏到远端设备200后,显示内容的布局适合远端设备200的屏幕。可以理解,在本技术的一些实施例中,投屏参数可以是远端设备200的屏幕尺寸、分辨率、像素密度、以及远端设备的设备类型等。在另一些实施例中,投屏参数也可以是远端设备200的屏幕中的投屏区域的尺寸、分辨率、像素密度、以及远端设备的设备类型等。这里的投屏区域,可以是远端设备200的屏幕中的一个局部区域,用于将投屏的内容显示在该投屏区域内。此外,不同类型的远端设备对显示内容的布局可能有不同的需求,例如在将手机的通话服务投屏到车机上时,可以将拨打电话的按键设置在车技屏幕的左侧以方便司机接打电话。故投屏时可以将设备类型发送给电子设备100,以用于调整投屏内容的布局。例如,设
备类型可以包括车机、个人电脑、智能电视等。
107.图3(a)示出了电子设备100上的app103(此处以音乐app为例进行说明,下文称为音乐app103)的界面(包括用户在屏幕上上滑后能看到的内容),界面上的内容可以被投屏在比电子设备100的屏幕大的远端设备200(如车机和平板电脑)上。图3(b)和图3(c)分别示出了将手机100上的音乐app 103投屏到不同类型的远端设备200(如车机和平板电脑)上的场景。
108.具体地,如图3(b)所示,手机100可以从车机200获取投屏参数,基于这些投屏参数,手机100生成与车机200的屏幕的尺寸相同的虚拟屏,然后,手机100将投屏的内容(如图3(a)中所示的内容)显示在虚拟屏上,最后投屏在车机200上,车机200全屏显示投屏内容。与图1相比,图3(b)所示的音乐app 103从电子设备100投屏到远端设备200后,音乐app 103中各元素的显示布局更适合车机200的屏幕,不再出现元素布局过于臃肿、被投屏远端设备200的显示屏的部分区域未被利用等问题,用户体验较好。本技术的技术方案在不修改电子设备100上显示内容(如音乐app103)的布局代码的情况下,使得显示内容在投屏到不同远端设备200后,布局适合远端设备200的屏幕。
109.再如图3(c)所示,在将电子设备100(如手机)上的音乐app 103投屏到远端设备200如平板电脑200上时,手机100可以从平板电脑200获取投屏参数,并基于这些投屏参数,手机100生成尺寸、分辨率、像素密度等与平板电脑200屏幕上的窗口200a相同的虚拟屏,然后在虚拟屏上显示投屏内容(即音乐app103的界面),最后,将虚拟屏上的显示内容显示到平板电脑200屏幕的窗口200a上。可以理解,在一些实施例中,如果用户在平板电脑200上通过放大或者缩小手势修改窗口200a的大小,则平板电脑200可以实时向手机100发送窗口200a大小变化后的屏幕参数给手机100,以使得手机100对应屏幕参数生成尺寸、分辨率等参数不同的虚拟屏,从而动态适应窗口200a的变化进行投屏。
110.此外,在其他实施例中,显示电子设备100(如手机100)还可以将多个app同时投屏到远端设备200,如平板电脑200上。例如,图3(d)示出了将手机100同时打开的文档app106和聊天app 107同时投屏到平板电脑200上的情境。如图3(d)所示,手机100从平板电脑200接收对应平板电脑200上的窗口200b的投屏参数,然后生成对应窗口200b的投屏参数的虚拟屏,该虚拟屏的尺寸、分辨率等参数与窗口200b的相同,并在该虚拟屏上显示文档app106,接着将虚拟屏上显示的文档app 106的界面投屏到平板电脑200的窗口200b中。然后,手机100从平板电脑200接收对应平板电脑200上的窗口200c的投屏参数,然后生成对应窗口200c的投屏参数的虚拟屏,该虚拟屏的尺寸、分辨率等参数与窗口200c的相同,并在该虚拟屏上显示聊天app107,然后将虚拟屏上的聊天app 107的界面投屏到平板电脑200的窗口200c,例如,图中用户正在使用聊天app 107进行视频通话。
111.云端300用于生成和更新布局规则,并将生成或者更新后的布局规则发送给电子设备100。这里的布局规则用于修改在不同尺寸的设备的屏幕内应用程序的不同布局。例如,电子设备100与远端设备200的屏幕尺寸、分辨率以及像素密度不同,音乐app 103在电子设备100与远端设备200的屏幕内显示的布局也不同。在一些实施例中,布局规则可以设置在配置文件(如下文中的overlay配置文件)中,电子设备100通过运行配置文件对要投屏的显示内容的布局进行修改,以适应被投屏的远端设备200的屏幕尺寸、分辨率以及像素密度等。
112.具体地,云端300可以自行收集和更新的上述配置文件。例如,云端300可以从各个电子设备100或从各个应用程序的开发者处收集各个应用程序的配置文件(例如,在应用商店中注册或上架时,要求应用程开发者提供支持的配置文件;再如,云端300请求各个电子设备100上报自己所获取的应用程序的配置文件)。云端300还可以基于电子设备100的请求或者通过定期推送的方式,将最新收集到的应用程序的配置文件发送给电子设备100。电子设备100获取到应用程序的配置文件后,可以保存到本地的存储器中,并在将应用程序投屏至远端设备200时,利用获取的应用程序的配置文件来调整应用程序的布局。此外,云端300也可以应远端设备200的要求,向远端设备200发送远端设备200自身支持投屏的的应用程序对应的配置文件。
113.此外,可以理解,在其他实施例中,上述云端300的功能也可以由电子设备100或者远端设备200来实现,而无需云端的参与。例如,电子设备100可以自行生成和获取配置文件,并基于配置文件对远端设备200进行投屏。例如,电子设备100可以通过自身操作系统的视图系统,进入应用程序的布局配置界面,对自身安装的应用程序新建或者更新布局规则,并将布局规则保存在配置文件中,再如,电子设备100可以从应用商店中获取自身安装的应用程序对应的配置文件。电子设备100生成和获取的应用程序对应的配置文件后,可以保存到本地的存储器中。再例如,远端设备200也可以生成配置文件。例如,远端设备200可以对支持投屏的应用程序生成适应自身的屏幕尺寸、分辨率以及像素密度的布局规则,并将布局规则保存在配置文件中存储与自身的存储器。例如,在下文图13(a)所示的投屏系统中,无需云端或者说服务器的参与,电子设备100和远端设备200通过无线通信技术(如无线保真(wireless fidelity,wi-fi)网络、蓝牙、近距离无线通信技术(near field communication,nfc)等)即可实现投屏,具体可参见图12(a)和图12(b)的描述。
114.可以理解,电子设备100和远端设备200可以是能够互相通信的各种计算设备,例如,电子设备100和远端设备200可以包括但不限于,膝上型计算机、台式计算机、平板计算机、手机、服务器、可穿戴设备、头戴式显示器、移动电子邮件设备、车机设备、便携式游戏机、便携式音乐播放器、阅读器设备、其中嵌入或耦接有一个或多个处理器的电视机、或能够访问网络的其他电子设备。其中,车机指的是安装在汽车里面的车载信息娱乐产品的简称,车机在功能上能够实现人与车,车与外界(车与车,车与电子设备)的信息通讯。在下文的描述中,为了简化说明,电子设备100以手机100为例,远端设备200以车机200为例说明本技术的技术方案。
115.实施例一
116.下面结合手机100和车机200的具体结构,以投屏音乐app103为例(如图3(a)和(b)所示),介绍本技术的技术方案。
117.继续参考图2,手机100可以包括:系统服务(systemservice)101、主屏102、运行在手机100上的app103、虚拟屏104以及overlayapk 105(overlay应用)。其中,systemservice101,是指执行指定系统功能的程序、例程或进程,以便支持其他程序,尤其是底层(接近硬件)程序。例如,在安卓系统中,systemservice 101的displaymanage(显示管理软件)可以用于控制主屏102、生成虚拟屏104。
118.主屏102是手机100的物理屏幕。
119.app 103可以是运行在手机100上,具有布局样式的应用程序。在本文的描述中,为
了便于说明,以音乐app103为例说明本技术的技术方案。此外,可以理解,在本技术的其他实施例中,手机100可以投屏在车机200上的显示内容不限于app 103,也可以是其他任何应用、程序等在手机100上显示的界面。
120.虚拟屏104,可以通过手机100上的systemservice101生成,例如通过systemservice 101的displaymanage生成。虚拟屏104仅为软件层面的模拟显示屏幕。例如,systemservice101可以根据接收到的车机200的屏幕的屏幕尺寸、分辨率、像素密度等参数生成对应这些参数的虚拟屏104。
121.overlayapk105,以下称为overlay应用105,用于从云端300获取overlay配置文件,根据获取的overlay配置文件中包含的app 103中的显示元素(在下文中称为控件)的布局规则,修改虚拟屏104中显示的app 103的布局。
122.车机200包括:客户端201、通信模块202以及屏幕203。其中,客户端201通过通信模块202,将车机200的投屏参数传送给与其通信连接的手机100。通信模块202,用于通过无线或者有线通信的方式实现车机200与其他电子设备的数据通信,如通过wi-fi、蓝牙、射频识别技术,近距离无线通信技术等。屏幕203可以显示手机100的虚拟屏104中app103的界面。
123.图4根据本技术的实施例,示出了手机100将音乐app 103投屏至车机200的屏幕技术方案。可以理解,此处的音乐app 103仅仅是示例性的,本技术的技术方案适用于手机100上的各种应用,在此不做限制。具体地,如图4所示,包括:
124.401:手机100通过无线通信方式与车机200通信连接。例如,手机100可以通过、蓝牙、wifi、或nfc等无线通信方式与车机200通信连接。在一些实施例中,手机100也可以通过有线通信方式与车机200通信连接,例如,手机100通过数据线以及通用串行总线(universal serial bus,usb)接口与车机200通信连接。
125.在手机100与车机200建立通信连接前或者建立通信连接后,用户可以开启手机100的投屏功能,或者手机100自动开启投屏功能。
126.402:车机200上安装的客户端201将车机200的屏幕尺寸、分辨率、像素密度以及设备类型等投屏参数发送给手机100。
127.在一些实施例中,在手机100与车机200通信连接之后,手机100可以向车机200发送获取指令,以获取车机200的屏幕尺寸、分辨率、像素密度以及设备类型等投屏参数,车机200在接收到获取指令后,向手机100发送投屏参数。在另外一些实施例中,在手机100与车机200通信连接之后,车机200可以主动向手机100发送投屏参数。
128.此外,可以理解,在其他实施例中,投屏参数可以只包括屏幕尺寸、分辨率以及像素密度中的任意两个,并且不包括设备类型。屏幕尺寸是指屏幕对角线的长度,例如:车机200的屏幕尺寸是8寸,也就是屏幕对角线的长度是20厘米,分辨率是横纵向方向像素的大小,纵向像素*横向像素,如1920px*1080px;像素密度,指每英寸屏幕所拥有的像素的数量,这三者之间的关系,可以使用像素密度=sqrt(横向像素*横向像素 纵向像素*纵向像素)/屏幕尺寸的公式计算出来,其中,sqrt是求平方根函数。故投屏参数可以仅包括屏幕尺寸、分辨率以及像素密度中的任意两个,而另外一个参数由接收到的参数计算出来。
129.403:手机100基于获取的车机200的投屏参数,创建一个虚拟屏104,并对虚拟屏104配置一个屏幕id(display id)。
130.具体地,手机100可以创建一个虚拟屏104,该虚拟屏104的屏幕尺寸、分辨率以及
像素密度均与从车机200获取的投屏参数中的屏幕尺寸、分辨率以及像素密度相同。例如,在android系统中,手机100可以通过将获取的车机200的屏幕尺寸、分辨率、像素密度等作为参数,使用android系统的系统服务displaymanager的createvirtualdisplay(string,int,int,int,surface,int)的方法来创建虚拟屏104。
131.此外,手机100在使用中可能响应其他应用/进程等创建其他的虚拟屏,为了将虚拟屏104和这些虚拟屏进行区分,在创建虚拟屏时,手机100对每个虚拟屏配置一个屏幕id(display id)。从而便于手机100在进行投屏时,通过搜索虚拟屏104的屏幕id,获取虚拟屏104,将控件布局被修改后的音乐app 103显示在虚拟屏104上。
132.此外,可以理解,在该实施例中,由于手机100的主屏102的尺寸一般小于车机200的屏幕203的尺寸,手机100的主屏102内无法显示满足从车机接收到的投屏参数的音乐app103的布局,故通过创建虚拟屏104来显示满足投屏参数的音乐app 103的界面。而在其他实施例中,如果手机100要投屏的远端设备200的屏幕尺寸小于手机100的屏幕尺寸,除了可以通过上述创建虚拟屏的形式来显示布局被修改后的应用程序界面外,还可以在手机100的主屏102中以类似画中画的形式,为布局修改后的音乐app 103新建一个窗口,该窗口与原来的音乐app 103的界面同时显示在主屏102上,然后将新建的窗口投屏到车机200到屏幕203上。详细的内容可以参考下文图11所示的实施例的相关描述。
133.404:用户在使用手机100时,如果打开音乐app 103,则手机100的overlay应用105获取对应音乐app 103的多个overlay配置文件中与车机200发送的投屏参数中包含的与车机200的屏幕参数对应的overlay配置文件。
134.可以理解,对应手机100上的每个app,手机100上存储有多个对应不同屏幕参数的overlay配置文件。例如,音乐app 103具有三个overlay配置文件f1、f2以及f3,分别对应不同的屏幕参数,屏幕参数可以包括屏幕尺寸、分辨率以及像素密度等。假如车机200发送的投屏参数中的屏幕参数与配置文件f1相同,则此处手机100的overlay应用105获取到的配置文件为overlay配置文件f1。
135.在一些实施例中,车机200的存储器中可以预先保存有车机200支持投屏的音乐app 103的overlay配置文件。手机100从车机200获取投屏参数时,可以同时直接读取车机200中的音乐app 103的overlay配置文件,或者手机100从车机200处将音乐app 103的overlay配置文件更新至手机100本身的存储器中。
136.405:基于获取的overlay配置文件修改音乐app 103中各控件的布局,然后将布局修改后的音乐app 103显示在虚拟屏104内。
137.406:将虚拟屏104投屏至车机200的屏幕203上。
138.407:车机200在屏幕203上显示虚拟屏104上的内容。
139.可以理解,图4介绍了手机100接收到车机200的投屏参数后,调整显示内容的分布,以使其适应车机200的屏幕的过程。如果在投屏期间,车机200的显示区域发生变化,车机可以重新向手机100发送投屏参数,手机100重复上面的步骤调整虚拟屏的尺寸、分辨率等,然后重新进行投屏。
140.下面结合图5至图7(b)说明overlay配置文件及其通过overlay配置文件修改音乐app 103中元素布局的技术方案。
141.overlay配置文件的生成及其更新
142.根据本技术的一些实施例,云端300可以生成和更新overlay配置文件。开发者可以在云端300上生成对应各app的overlay配置文件,并且,对于同一app,由于要投屏的不同远端设备200的屏幕参数,如屏幕大小、分辨率等不同,故可以生成对应多个屏幕参数的多个overlay配置文件。此外,对应于app版本的更新,还可以对云端300上生成对应app新版本的overlay配置文件。
143.例如,如果app版本进行了更新,在云端300与手机100通信连接的情况下,云端300检测本身存储的overlay配置文件与手机100中存储的overlay配置文件的差异,在云端300存储的overlay配置文件的数量,版本等高于手机100中存储的overlay配置文件的情况下,可以通过蓝牙、wifi、近距离无线通信技术等无线通信方式或者有线通信方式,将手机100上不具有的overlay配置文件发送给手机100。
144.overlay配置文件组成及其使用
145.根据本技术的一些实施例,在手机100上,overlay配置文件是以树形结构存储的,例如,图5示出了overlay配置文件目录以及其包含的子目录的树形结构。具体地,如图5所示,在overlay配置文件目录中,其一级子目录是以app的标识命名的,例如,在一些实施例中,可以用包名作为app的标识,例如,对于音乐app来说,音乐app的包名是musicapp,则可以将musicapp作为音乐app标识,对于新闻app来说,包名为newsapp,则新闻app的标识可以是newsapp。此外,可以理解,在其他实施例中,也可以采用其他字符作为app的标识,如云端300为各app生成的标识,在此不做限制。在overlay配置文件的一级子目录下,可以设置二级子目录,例如,对于音乐app,可以对应音乐app的不同版本,设置二级子目录,而二级子目录的名称可以是能够表示不同版本的版本号,例如,1.0、1.1等。对于app的每个版本,由于要投屏的不同远端设备200屏幕参数可能不同,故对于同一app的同一版本,针对不同的屏幕参数,可以设置不同的配置文件,例如,对于音乐app的应用版本号1.0,具有两个屏幕参数,其中第一屏幕参数具有第一配置文件,第二屏幕参数具有第二配置文件。
146.在上述实施例中,在手机100要投屏音乐app 103时,手机100的overlay应用105可以通过搜索音乐app 103的app标识(如包名)、音乐app 103的版本号、以及投屏参数中的车机200的屏幕参数(如屏幕尺寸、分辨率以及像素密度),检索树形的overlay配置文件中对应该音乐app 103的当前版本以及接收到的投屏参数的overlay配置文件,然后加载检索到的overlay配置文件,对音乐app 103中控件的布局进行调整。
147.图6示出了一overlay配置文件的内容。如图6所示,每个overlay配置文件包括至少一条布局规则,布局规则规定对音乐app 103的界面中的控件进行布局修改的规则。具体地,通过overlay配置文件修改app中控件的布局的过程如下(继续以音乐app 103为例):
148.在overlay应用105加载音乐app 103对应的overlay配置文件后,通过overlay配置文件中的布局规则来定位和修改音乐app 103的界面。
149.如图7(a)所示,音乐app 103的界面由多个控件组成,其中包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏等。有些控件可以作为容器,包括其他控件。例如,如图7(a)和图7(b)所示,音乐app 103的界面包括背景界面701,背景界面701是音乐app103最底层的控件,背景界面701内设置有搜索栏702、标题栏703、第一栏目704、第二栏目705和底部tab栏706。其中,搜索栏702进一步包括搜索框和搜索按钮,标题栏703中进一步包括五个标题:“歌手”,“歌单”,“排行榜”,“福利”,“听书”,第一栏目704中显示标题栏703中“歌
单”标题下的内容,在手机100的主屏102内,音乐app 103的第一内容栏704中通过2行3列的排列方式显示了“每日30首歌曲精选”、“每日新歌”、“怀旧精选”,“动感摇滚”、“k歌精选”、“影视经典”6个内容项,以及“歌单推荐”、“更多”这两个标题。第二栏目705中包括:“排行榜”、“更多”这两个标题,以及第二栏目705的内容(在手机100的主屏102中未显示,在车机200的屏幕203中显示),底部tab栏包括“推荐”“我的”、“电台”等控件(在手机100的主屏102中未显示,在车机200的屏幕203中显示)。
150.在一些实施例中,音乐app 103的界面中的各个控件可以按照树状结构分布,每一个控件都包含各自的属性,例如:(id,控件类型,索引号,文本信息等)。图8和图9示出了音乐app 103中控件布局的一种树形结构。具体地,如图8所示,背景界面701是音乐app 103最底层的控件,用控件树来表示的话,可以将背景界面701设置为根节点(root),根节点下可以设置有搜索栏702、标题栏703、第一栏目704以及第二栏目705。而搜索栏702、标题栏703等下面,还可以设置具体的显示内容。例如,搜索栏702下面设置有搜索框和搜索按钮。例如,图9中的“relativellayout”为例,relativellayout表示相对布局,将relativellayout作为一个树形结构中的节点的话,其包括“id/application_bg(applicationbgimageview)”,“id/sliding_layout(slidinguppanellayout)”,“id/tab_layout(linearlayout)”三个子节点,其中id/application_bg(applicationbgimageview)表示图片布局,id/sliding_layout(slidinguppanellayout)表示滑动布局,id/tab_layout(linearlayout)表示显示框布局,也就是说相对布局relativellayout与图片布局,图片布局和显示框布局成树形结构分布。
151.音乐app 103对应的overlay配置文件包含对音乐app 103界面中各控件的布局进行修改的布局规则。例如,对于第一栏目704的布局规则,在该布局规则中:overlay应用105可以先根据控件的属性id,搜索到需要修改布局的控件。例如,第一栏目704的属性id(布局id="704")用于标识第一内容栏704,overlay应用105可以通过(id="704)定位第一栏目704。然后,overlay应用105根据布局规则中规定的修改控件方法,对第一栏目704所包括的控件的布局进行修改,例如,图10(a)中示出的第一栏目704包括“每日30首歌曲精选”,“每日新歌”,“怀旧精选”,“动感摇滚”,“k歌精选”,“影视经典”6个内容项以及“歌单推荐”和“更多”这两个标题,其中,6个内容项在修改前的排列为两行三列,两个标题“歌单推荐”和“更多”位于6个内容项的上方。overlay配置文件针对车机200屏幕的屏幕参数,规定在投屏后,需要将第一栏目704中的6个内容项的布局从两行三列改成一行六列,并将“更多”放置在同一行的左侧,而“歌单推荐”这个标题放在其他控件的上方,并且对第一栏目704在调整布局后的位置进行了规定。overlay应用105根据overlay配置文件,对第一栏目704中的控件布局进行调整,调整后的布局如图10(b)所示。
152.再例如,对于搜索栏702,overlay应用105可以通过(id="702)定位搜索栏702。然后,overlay应用105根据布局规则中规定的修改控件方法,对搜索栏702所包括的控件的布局进行修改,例如,如图10(a)所示,搜索栏702包括搜索框和搜索按钮,在手机100的主屏102上显示时,该搜索栏702位于界面的上方。overlay配置文件针对车机200屏幕的屏幕参数,规定在投屏后,需要将搜索栏702的搜索框变小,并将搜索栏702的位置调整为位于车机200屏幕的右上侧。overlay应用105根据overlay配置文件,对第一栏目704中的控件布局进行调整,调整后的布局如图10(b)所示。
153.这里,音乐app103对应的overlay配置文件包含搜索栏702的一个布局规则,该布局规则中的定位控件方法包含搜索栏702的控件类型(布局控件类型="输入框"),这里的控件类型="输入框"代表了搜索栏702的控件类型,且当在音乐app103仅包含一个控件类型="输入框"的控件的情况下,通过定位控件类型="输入框"可以唯一确定搜索栏702。在overlay应用105通过控件类型="输入框"定位了搜索栏702之后,overlay应用105获取搜索栏702的布局规则中的修改控件方法,通过修改控件方法对搜索栏702进行修改,在本技术的实施例中,如图10(b)所示,在虚拟屏104中,音乐app103的搜索栏702的位置从原来的填充满整个横向区域改变为靠右。同时,为了适应车机200的屏幕,在搜索栏702之前,还通过顶置的方式设置了包括“推荐”“我的”、“电台”的底部tab栏706。这里的控件的位置可以通过靠左,顶置,靠右等参数的取值确定。其中,靠左为控件左上角顶点在x轴的大小,顶置为控件左上角顶点在y轴的大小,靠右为控件右上角顶点在x轴的大小。
154.下面以音乐app103的搜索栏702中预设的搜索内容来举例说明通过文本信息来定位控件并对控件的显示内容以及字体大小进行修改的过程,音乐app103对应的overlay配置文件包含搜索栏702的另一个布局规则,该布局规则中的定位控件方法包含搜索栏702的搜索内容的文本信息(布局文本信息="周杰伦"),如图10(a)所示,这里的文本信息="周杰伦"代表了搜索栏702的预设的搜索内容,且当在音乐app103仅包含一个控件的文本信息="周杰伦"的情况下,通过定位文本信息="周杰伦"可以唯一确定搜索栏702的搜索内容。在overlay应用105通过搜索栏702的文本信息="周杰伦"定位了搜索栏702的搜索内容之后,overlay应用105获取搜索栏702的布局规则中的修改控件方法,通过修改控件方法对搜索栏702进行修改,在本技术的实施例中,如图10(b)所示,在虚拟屏104中,音乐app103的搜索栏702的搜索内容中的文字的字体大小调大一号。在一些实施例中,还可以改变搜索内容中的文字的颜色。
155.音乐app 103中其他控件布局的修改与第一栏目704和搜索栏702的类似,在此不再赘述。
156.手机100将虚拟屏104通过overlay配置文件修改后的音乐app103的界面投屏至车机102的屏幕203上,如图10(b)所示,车机102的屏幕203显示与手机100上的布局(如图10(a)所示)不同的音乐app 103。由于车机200的屏幕是横屏,手机100的是竖屏,经过对音乐app 103界面中控件的布局调整,使音乐app103的界面的布局更适合车机200的屏幕203。
157.实施例二
158.上面实施例描述了手机100将显示内容(例如,应用程序的界面)投屏到比手机100的屏幕大的设备上,对投屏后的界面进行布局调整的方案,下面介绍手机100将显示内容投屏到比手机100的屏幕小的设备上时,对投屏后的界面进行布局调整的方案,为了方便说明,以手机100将音乐app103投屏至智能手表400的屏幕为例,如图11所示。手机100将显示内容投屏到比手机100的屏幕小的设备上时,可以完全采用上述通过创建虚拟屏的方式来实现,因为所采用的技术相同,在此不再描述。此处介绍另外一种实现方式,即在主屏上以显示画中画的形式实现投屏。具体地,通过画中画进行显示的方案包括:
159.如图11所示,首先,在手机100获取了智能手表400的投投屏参数后,手机100将投屏参数中的屏幕参数(屏幕尺寸、分辨率、像素密度)与手机100自身的屏幕参数进行比较,在确定智能手表400的屏幕尺寸、分辨率、像素密度小于手机100自身的屏幕尺寸、分辨率、
像素密度的情况下,确定通过画中画的方式在手机100的主屏102内显示调整布局后的音乐app103的界面。
160.其次,当手机100确定在显示音乐app103的全屏窗口中开启画中画模式后,手机100在主屏102内生成一个窗口,该窗口的屏幕尺寸、分辨率、像素密度与智能手表400相同。
161.然后,手机100的overlay应用105加载与智能手表400的屏幕参数对应的音乐app103的overlay配置文件,并将调整布局后的音乐app 103的界面显示在窗口(如图11中的窗口1120)中。也就是说,在手机100的主屏102内显示有两个窗口,包括第一窗口1110和第二窗口1120。第一窗口1110为全屏显示窗口,第二窗口1120显示在主屏的一个区域内。第二窗口1120的尺寸小于第一窗口1110,且第二窗口1120与智能手表400的屏幕尺寸、分辨率、像素密度相同。第一窗口1110和第二窗口1120中显示的内容和布局不同,第一窗口1110中显示适用于手机100的屏幕102的音乐app103的界面,第二窗口1120中显示根据对应智能手表400的overlay配置文件,调整显示布局后的音乐app103的界面。
162.例如,由于智能手表400的屏幕大小有限,智能手表400对应的overlay配置文件中,布局规则规定了仅将手机100的音乐app103的第一栏目704中的部分控件通过一列多行的形式显示于第二窗口1120内,此外,还可以针对智能手表400,添加对应的操作按钮,例如,后退按钮401,暂停/开始按钮402,前进按钮403。
163.实施例三
164.图12(a)和图12(b)分别示出了与图2所示的投屏系统不同的投屏系统,在图12(a)和图12(b)所示的系统中,投屏系统仅包括电子设备100和远端设备200。其中,具体投屏方式与图2所示实施例不同之处在于,无需云端300的参与,云端300的功能由电子设备100或者远端设备200来实现。具体地,还是以手机100和车机200为例,投屏过程包括:
165.1)手机100通过上述无线通信方式与车机200通信连接。用户可以开启手机100的投屏功能,或者手机100自动开启投屏功能。
166.2)车机200上安装的客户端201将车机200的屏幕尺寸、分辨率、像素密度以及设备类型等投屏参数发送给手机100。具体请参见图4中402的描述。
167.3)手机100基于获取的车机200的投屏参数,创建一个虚拟屏104,并对虚拟屏104配置一个屏幕id(display id)。具体请参见图4中403的描述。
168.4)用户在使用手机100时,如果打开音乐app 103,则手机100的overlay应用105获取对应音乐app 103的多个overlay配置文件中与车机200发送的投屏参数对应的overlay配置文件。
169.在图12(a)所示的实施例中,手机100的overlay应用105从自身的存储器108中查找并获取对应音乐app 103的多个overlay配置文件中与车机200发送的投屏参数对应的overlay配置文件。
170.在图12(b)所示的实施例中,音乐app 103对应的overlay配置文件可以保存在车机200的存储器204中,手机100在获取的车机200的投屏参数的同时,可以将音乐app 103的包名,版本号等参数发送给车机200,车机200从自身的存储器204中查找并获取与包名,版本号以及投屏参数对应的overlay配置文件,然后将overlay配置文件发送给手机100。
171.5)基于获取的overlay配置文件修改音乐app 103中各控件的布局,然后将布局修改后的音乐app 103显示在虚拟屏104内。将虚拟屏104投屏至车机200的屏幕203上。车机
200在屏幕203上显示虚拟屏104上的内容。
172.在本技术的另一个实施例中,手机100还可以根据车机200的投屏参数,将自身的系统应用(例如桌面app)的布局进行调整,以使得该系统应用的布局投屏到车机200后,布局适合车机200的屏幕。
173.上述实施例是以app 103为音乐app为例,说明了本技术的投屏方案,在实际应用中,为了使得投屏后的界面更适合用户的使用场景或者用户的使用习惯,需要对应用的界面做一些较大的调整,比如删减某些显示元素、调整显示元素的排布和查看方式等等。下面以即时通信app103为例继续说明本技术的投屏方案。
174.实施例四
175.下面以手机100将投屏即时通信app103的联系人界面投屏至车机200为例,介绍本技术的技术方案。
176.通常,即时通信app103的联系人界面中,联系人以逐行排列的形式呈现,例如,如图13(a)所示,即时通信app103的内容栏1303中联系人信息以单列多行的排列方式(list列表方式)显示,并且每一个联系人以联系人的头像和联系人的姓名位于同一行。
177.在手机100将即时通信app103的联系人界面投屏到某些屏幕尺寸或者形状与手机100的相差较大的电子设备时,如车机200,其屏幕为横向屏幕而手机100的屏幕为竖向的,会出现一页显示的联系人信息很少并且车机200的屏幕中还有部分区域未被利用的情况。因此,在本技术的实施例中,在手机100将即时通信app103投屏到车机200上时,对即时通信app103的内容栏1303中的联系人的布局进行了排列的变化,如图13(b)所示,将即时通信app103的内容栏1303中的联系人修改为通过一行多列或者多行多列的排列方式(grid网格方式)显示,同时将联系人的图标和名称修改为上下排列。从而,根据车机100的屏幕特点,充分利用车机200的屏幕空间,同时,与手机100上用户仅可以通过上下滑动浏览联系人信息不同,在投屏到车机200的屏幕上后,用户还可以通过上下以及左右滑动结合的方式浏览即时通信app103的内容栏1303中的全部联系人(如图13(b)所示)。
178.手机100将即时通信app103的联系人界面投屏至车机200的过程包括:
179.1)手机100基于获取的车机200的投屏参数,创建一个虚拟屏104。手机100的overlay应用105获取对应即时通信app103的overlay配置文件。该步骤与图4中401-404描述的步骤相同,在此不再赘述。
180.2)手机100的overlay应用105根据即时通信app103的overlay配置文件对即时通信app103的布局进行修改。具体的修改过程可以参考上文的描述,其具体技术实现手段基本相同。
181.例如,对于即时通信app103的内容栏1303,其包括有具体的联系人信息。在修改其布局时,需要将原来的单列排布布局,修改为多行多列的排布布局,并且,需要将联系人头像与联系人姓名处于同一行的排列修改为将联系人头像设置在联系人姓名上方。其具体的修改过程如下:
182.overlay应用105可以先根据控件的属性id,搜索到需要修改布局的控件。例如,内容栏1303的属性id(布局id="1303")用于标识内容栏1303,overlay应用105可以通过(id="1303")定位内容栏1303。然后,overlay应用105对内容栏1303的布局进行修改,例如,如图13(a)所示,在手机100的屏幕中,内容栏1303中包括9个联系人"张三"、"李四"、"王五"、"
赵四"、"李一"、"老李"、"老王"、"老张"(未示出)、"老赵"(未示出),上述9个联系人排列成九行一列,并且每一列中,联系人的图标和名称呈水平从左到右依次排列。在修改布局后的虚拟屏104中,如图13(b)所示,overlay应用105可以将内容栏1303修改为三行四列,其中,第一列包括"张三"、"李四"、"王五"、"赵四",第二列包括"李一"、"老李","老王"、"老张",第三列包括"老赵",并且,将每一个联系人的图标和名称修改为上下排列。在虚拟屏104中,同时可以显示内容栏1303中两行三列的联系人,用户可以在车机200的屏幕中通过上下滑动以及左右滑动,显示其余的联系人。
183.同时,overlay应用105修改即时通信app103的标题栏1301和搜索栏1302的布局,使其位于同一水平线上。对于底部tab栏1304,overlay应用105将该底部tab栏1304设置为不显示。
184.3)手机100将虚拟屏104投屏至车机200。
185.实施例五
186.下面以手机100将投屏即时通信app103的搜索功能界面投屏至车机200为例,介绍本技术的技术方案。
187.如图14(a)所示,对于即时通信app103默认的布局,在打开即时通信app103的搜索功能的界面并未输入搜索关键字点击输入时,会显示定制检索范围1402,如“朋友圈”、“文章”等,并且如图所示,定制检索范围通过2行3列的排列方式显示。此外,搜索栏1401和语音输入键1403分别位于定制检索范围1402的上方和下方。然而,在手机100将即时通信app103投屏到车机200时,考虑到用户使用车机200时,娱乐意图较小,更加希望的是准确得到搜索结果,故可以在投屏时将定制检索范围1402删除,并将语音输入键1403放置到搜索栏附近,如图14b所示。从而使得整个检索界面更加简洁,更加方便用户进行搜索操作。
188.具体地,手机100将即时通信app103的搜索功能的界面投屏至车机200的过程包括:
189.1)手机100基于获取的车机200的投屏参数,创建一个虚拟屏104。手机100的overlay应用105获取对应即时通信app103的overlay配置文件。上述步骤与图4中401-404描述的步骤相同,在此不再赘述。
190.2)手机100的overlay应用105根据即时通信app103的overlay配置文件对即时通信app103的布局进行修改。具体的修改过程可以参考上文的描述,其具体技术实现手段基本相同。
191.例如,对于即时通信app103的搜索功能的界面中的定制检索范围1402,其包括:如“朋友圈”、“文章”等,在修改其布局时,需要将其设置为不显示,使得在车机100的屏幕中的即时通信app103的搜索功能的界面更加简洁,同时,将语音输入键1403修改至搜索栏1401之前,并使其保持始终可见,其具体的修改过程如下:
192.overlay应用105先通过(id="1402")和(id="1403")定位定制检索范围1402以及语音输入键1403,然后,overlay应用105对定制检索范围1402的布局进行修改,例如,如图14a所示,在手机100的屏幕中,定制检索范围1402包括“朋友圈”、“文章”、“公众号”等内容,并通过二行三列的方式显示,位于搜索栏1401的下方;语音输入键1403则位于定制检索范围1402的下方。在虚拟屏104中,如图13(b)所示,overlay应用105可以将语音输入键1403修改至搜索栏1401之前,使得语音输入键1403位于同一水平线上,使其左对齐且上对齐,并
且语音输入键1403只包括语音输入的图标,删除对图标的说明,同时修改其可见性属性,使其保持始终可见,即使在搜索结果显示时,也保持可见。对于定制检索范围1402,overlay应用105将其修改为不显示。
193.3)手机100将虚拟屏104投屏至车机200。
194.图14(b)示出了,在手机100的屏幕中,用户在搜索栏1401输入了搜索内容“张”并点击搜索后,搜索结果栏1404通过一行多列的排列方式显示了搜索结果,搜索结果可以包括:联系人,群以及文章,照片等其他内容(未示出)并且每一个搜索结果可以包括图标和具体信息。overlay应用105修改搜索结果栏1404的步骤图14a中描述的相同,为了更简洁地在车机200的屏幕中显示搜索结果,在车机200的屏幕中,搜索结果栏1404中的搜索结果,按多行多列的方式在车机200中显示,这里可以采用上述图13b中的grid网格方式修改搜索结果的排列方式。同时,将搜索结果中的图标设置为不显示,每一个搜索结果只显示具体信息。
195.实施例六
196.下面以手机100将投屏即时通信app103的音视频通话界面投屏至车机200为例,介绍本技术的技术方案。
197.如图15(a)所示,对于手机100上即时通信app103默认的音视频通话功能,用户在点击即时通信app103的联系人图标后(如图15(a)(1)所示),会进入联系人信息界面(如图15(a)(2)所示)。在联系人信息界面,用户需要点击按钮“音视频通话1504”进行音视频通话。如图15(a)(3)所示,在点击按钮“音视频通话1504”后,会出现选择菜单,提示用户选择视频通话或音频通话。然后,如图15(a)(4)所示,假如用户选择视频通话,则即时通信app103进入与联系人之间的视频通话连接界面。
198.基于上述描述,可以看出,在通过即时通信app103进行音视频通话时,选择过程较多,点击联系人后,需要再点击按钮“音视频通话1504”以及选择菜单中的视频通话或者音频通话,才能进入视频通话或者音频通话的连接界面。而当用户使用车机200进行即时通信app103的音视频通话时,如此繁琐的操作会给用户带来不便,为此,在将手机100的即时通信app103投屏到车机200上时,可以通过简化操作按钮或者选择菜单来简化音视频通话操作。
199.具体地,图15(b)(1)至15(b)(3)示出了一种简化投屏的方式。如图15(b)(1)所示,在手机100将即时通信app103投屏到车机200时,用户搜索要进行音视频通话的联系人,并点击联系人图标。然后,车机200会将用户选择的联系人信息发送至手机100,手机100的屏幕上出现图15(a)(2)和15(a)(3)的界面,而投屏至车机200的界面只有一个,即图15(b)(2)所示的界面,其界面中直接出现按键“视频通话15041”和按键音频通话“15042”。如此,用户直接点击按键“视频通话15041”或按键音频通话“15042”即可进入相应的联系界面,如图15(b)(3)所示。
200.具体地,手机100将即时通信app103的联系人信息界面投屏至车机200的过程包括:
201.1)手机100基于获取的车机200的投屏参数,创建一个虚拟屏104。手机100的overlay应用105获取对应即时通信app103的overlay配置文件。上述步骤与图4中401-404描述的步骤相同,在此不再赘述。
202.2)手机100的overlay应用105根据即时通信app103的overlay配置文件对即时通
信app103的联系人信息界面的布局进行修改。具体的修改过程可以参考上文的描述,其具体技术实现手段基本相同。
203.例如,对即时通信app103的联系人信息界面的音视频通话1504按键,其包括:视频通话和语音通话的选项。在修改其布局时,需要将视频通话和语音通话设置分别为按键并替换音视频通话1504,其具体的修改过程如下:
204.overlay应用105可以先通过(id="1504")定位音视频通话1504。然后,overlay应用105对音视频通话1504的布局进行修改。在手机100的屏幕中,在用户点击音视频通话1504后,会提示用户选择是通过视频通话还是语音通话的方式。在虚拟屏104中,overlay应用105先定位音视频通话1504,然后获取其包括的视频通话和语音通话,例如,在视频通话和语音通话的控件类型是"按键",控件id可以分别为"15041"和"15042"的情况下,将音视频通话1504替换为视频通话"15041"和语音通话"15042",并对视频通话和语音通话添加各自的图标。同时,overlay应用105在定位了联系人图标和联系人姓名1501后,将其修改为竖直排列,再将联系人其他信息1502和发消息1503设置为不显示。
205.3)手机100将虚拟屏104投屏至车机200。
206.当用户在车机200的屏幕上按下视频通话后,车机200的即时通信app103进入与联系人之间的视频通话连接界面,这时,界面上包括:联系人图标和联系人姓名1501,提示信息,和控制栏1505,包括:取消和切换到语音两个按键。
207.实施例七
208.下面以手机100将投屏即时通信app103的联系人视频通话界面投屏至车机200为例,介绍本技术的技术方案。
209.如图16所示,在手机100通过即时通信app103进行视频通话时,视频通话界面中视频通话双方中有一方的视频框1602以小窗口的方式显示在手机100的屏幕中,而另一方的视频框1601基本沾满整个屏幕。对于车机200,如果其屏幕是较大的宽屏,例如,车机200的屏幕的宽高比超过1.78,则为了提升视频通话体验,可以扩大投屏时视频框1602的大小,例如,将视频框1601和视频框1602在车机200的屏幕中分屏显示,例如,通过2:1或者1:1的方式在车机200的屏幕中分屏显示。
210.具体地,手机100将即时通信app103的联系人视频通话界面投屏至车机200的过程包括:
211.1)手机100基于获取的车机200的投屏参数,创建一个虚拟屏104。手机100的overlay应用105获取对应即时通信app103的overlay配置文件。上述步骤与图4中401-404描述的步骤相同,在此不再赘述。
212.2)手机100的overlay应用105根据即时通信app103的overlay配置文件对即时通信app103的联系人视频通话界面的布局进行修改。具体的修改过程可以参考上文的描述,其具体技术实现手段基本相同。
213.例如,在即时通信app103的联系人视频通话界面中,视频框1602通常位于视频框1601内。在修改其布局时,根据车机200的屏幕的尺寸,可以将视频框1601和视频框1602修改为分屏显示。其具体的修改过程如下:
214.overlay应用105可以先可以通过(id="1600")定位即时通信app103的联系人视频通话界面1600,然后,overlay应用105对该界面的布局进行修改。在手机100的屏幕中,如
图16所示,视频框1602以小窗口的方式显示在手机100的屏幕的右上方。在虚拟屏104中,overlay应用105将该联系人视频通话界面1600设置为左右分屏显示格式,接着通过(id="1601")和(id="1602")定位视频框1601和视频框1602,将视频框1601和视频框1602以从左至右的方式显示在即时通信app103的联系人视频通话界面中。例如,在车机200的屏幕的宽高比超过1.78的情况下,视频框1601和视频框1602可以通过显示比例为2:1的方式在车机200的屏幕中分屏显示。
215.3)手机100将虚拟屏104投屏至车机200。
216.在一些实施例中,基于车机200的屏幕的大小,视频框1602和视频框1601也可以通过1:1等比例的方式分屏显示(车机200的屏幕为超宽屏,屏幕的宽高比超过2.33),也可以与在手机100的屏幕中的显示方式相同,视频框1602以小窗口的方式显示在视频框1601内。此外,联系人视频通话界面还可以包括:控制栏1603,控制栏1603可以包括:切换摄像头,挂断和切换到语音等按键。
217.实施例八
218.下面介绍以手机100将投屏即时通信app103的联系人视频通话界面投屏至车机200的另一种技术方案。
219.如图17(a)所示,在手机100上的即时通信app103的联系人视频通话界面与图16中的相同,与图16的不同之处在于,在手机100上的即时通信app103的联系人视频通话界面中,视频框1701呈横屏显示。在手机100将其投屏到车机200后,如果视频框1701依旧呈横屏显示的话,会影响用户进行视频通话的体验。因此,在投屏后,手机100在视频框1701和视频框1702内分别配置视频调节按键1703和1704。如图17(b)所示,用户在车机200的即时通信app103的联系人视频通话界面的视频框1701中点击视频调节按键1703后,车机200的视频框1701和手机100的视频框1701同时调整为竖屏显示。
220.手机100将即时通信app103的联系人视频通话界面投屏至车机200的过程包括:
221.1)手机100基于获取的车机200的投屏参数,创建一个虚拟屏104。手机100的overlay应用105获取对应即时通信app103的overlay配置文件。上述步骤与图4中401-404描述的步骤相同,在此不再赘述。
222.2)手机100的overlay应用105根据即时通信app103的overlay配置文件对即时通信app103的联系人视频通话界面的布局进行修改。具体的修改过程可以参考上文的描述,其具体技术实现手段基本相同。
223.例如,在即时通信app103的联系人视频通话界面中,视频框1701呈横屏显示。在修改其布局时,在视频框1701内增加一个视频调节按键1703,用户可以点击该视频调节按键1703改变视频框1701的方向。其具体的修改过程如下:
224.overlay应用105可以先可以通过(id="1701")定位视频框1701。然后,overlay应用105对该界面的布局进行修改。在手机100的屏幕中,如图17(a)所示,视频框1701呈横屏显示。在虚拟屏104中,overlay应用105在视频框1701中添加视频调节按键1703并将其位置设置为靠上居左,视频调节按键1703的控件类型可以是"按键(button)"。
225.3)手机100将虚拟屏104投屏至车机200。当用户在车机200的屏幕上点击该视频调节按键1703后,车机100将点击该视频调节按键1703后触发的指令发送给手机100。手机100在收到该指令后,手机100获取自身屏幕内的即时通信app103的视频框1701的"旋转
(rotation)"属性,手机100修改该属性使得视频框1701旋转成竖屏显示,例如:将该"旋转(rotation)"属性的内容从“水平”修改为“竖直”。同时,手机100的overlay应用105也会修改虚拟屏104内的即时通信app103的视频框1701的"旋转(rotation)"属性,使得虚拟屏104内的即时通信app103的视频框1701也旋转成竖屏显示。之后,虚拟屏104内的即时通信app103也会实时地更新在车机100的屏幕内。
226.对于视频框1702也可以通过上述方法对其添加视频调节按键1704以实现相同的功能。如图17(c)所示,在手机100上的即时通信app103的联系人视频通话界面中,视频框1702呈横屏显示,在手机100上的即时通信app103的联系人视频通话界面投屏至车机200后,用户可以通过点击车机200的即时通信app103的联系人视频通话界面的视频框1702的视频调节按键1704,如图17(d)所示,将车机200的视频框1702和手机100的视频框1702同时调整为竖屏显示。
227.在另一些实施例中,如图17(e)所示,在手机100上的即时通信app103的联系人视频通话界面中,视频框1701和视频框1702都呈横屏显示,在手机100上的即时通信app103的联系人视频通话界面投屏至车机200后,手机100的overlay应用105在即时通信app103的联系人视频通话界面中设置一个视频调节按键1705,用户可以通过点击车机200的即时通信app103的联系人视频通话界面的视频调节按键1705,如图17(f)所示,将车机200以及手机100的视频框1701和视频框1702同时调整为竖屏显示。
228.图18示出了手机100的一种结构示意图。
229.如图18所示,手机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可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。
230.可以理解的是,本技术的实施例示意的结构并不构成对手机100的具体限定。在本技术另一些实施例中,手机100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
231.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-networkprocessing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
232.控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
233.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器
110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
234.在一些实施例中,处理器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 identity module,sim)接口,和/或通用串行总线(universal serialbus,usb)接口等。
235.mipi接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。mipi接口包括摄像头串行接口(camera serial interface,csi),显示屏串行接口(display serial interface,dsi)等。在一些实施例中,处理器110和摄像头193通过csi接口通信,实现手机100的拍摄功能。处理器110和显示屏194通过dsi接口通信,实现手机100的显示功能。
236.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。
237.可以理解的是,本技术的实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对手机100的结构限定。在本技术另一些实施例中,手机100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
238.充电管理模块140用于从充电器接收充电输入。电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。
239.手机100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
240.天线1和天线2用于发射和接收电磁波信号。
241.移动通信模块150可以提供应用在手机100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
242.调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170a,受话器170b等)输
出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
243.无线通信模块160可以提供应用在手机100上的包括无线局域网(wireless local area networks,wlan)(如wi-fi网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
244.在本技术的实施例中,手机100通过无线通信模块160与车机200通信连接后,从车机200获取屏幕尺寸、分辨率、像素密度、设备类型等参数。
245.在一些实施例中,手机100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得手机100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,gsm),通用分组无线服务(general packet radio service,gprs),码分多址接入(code division multiple access,cdma),宽带码分多址(wideband code division multiple access,wcdma),时分码分多址(time-division code division multiple access,td-scdma),长期演进(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技术等。所述gnss可以包括全球卫星定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,glonass),北斗卫星导航系统(beidou navigation satellite system,bds),准天顶卫星系统(quasi-zenith satellite system,qzss)和/或星基增强系统(satellite based augmentation systems,sbas)。
246.手机100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
247.显示屏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的正整数。
248.在本技术的实施例中,显示屏194可以用于显示基于车机200的屏幕尺寸、分辨率、像素密度、设备类型等参数生成的虚拟屏104,在虚拟屏104的尺寸小于显示屏194的情况下,显示屏194可以通过画中画的方式在其中显示虚拟屏104
249.手机100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
250.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展手机100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
251.内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储手机100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行手机100的各种功能应用以及数据处理。内部存储器121可以用于存储应用程序对应的overlay配置文件。
252.手机100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
253.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
254.触摸传感器180k,也称“触控器件”。触摸传感器180k可以设置于显示屏194,由触摸传感器180k与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180k用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180k也可以设置于手机100的表面,与显示屏194所处的位置不同。
255.按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。手机100可以接收按键输入,产生与手机100的用户设置以及功能控制有关的键信号输入。
256.马达191可以产生振动提示。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。sim卡接口195用于连接sim卡。
257.图19是本技术的实施例的手机100的软件结构框图。
258.分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。
259.应用程序层可以包括一系列应用程序包。
260.图19所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序。
261.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
262.图19所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
263.窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状
态栏,锁定屏幕,截取屏幕等。
264.内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
265.视图系统包括可视控件,例如显示文字的控件,显示图片的等。视图系统可用于构建应用程序。界面可以由一个或多个视图组成的。例如,包括短信通知图标的界面,可以包括显示文字的视图以及显示图片的视图。例如,上述手机100可以通过视图系统对自身安装的应用程序新建或者更新布局规则,并将布局规则保存在配置文件中。
266.在本技术的实施例中,视图系统可以用于根据获取的overlay配置文件,修改与overlay配置文件对应音乐app103的布局样式。
267.电话管理器用于提供手机100的通信功能。例如通话状态的管理(包括接通,挂断等)。
268.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
269.在本技术的实施例中,资源管理器还可以用于存储overlay配置文件。
270.通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
271.androidruntime包括核心库和虚拟机。androidruntime负责安卓系统的调度和管理。
272.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
273.应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
274.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),2d图形引擎(例如:sgl)等。
275.表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。
276.媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg4,h.264,mp3,aac,amr,jpg,png等。
277.三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
278.2d图形引擎是2d绘图的绘图引擎。
279.内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
280.现在参考图20,所示为根据本技术的一个实施例的系统2000的框图。图20示意性地示出了根据多个实施例的示例系统500。在一个实施例中,系统2000可以包括一个或多个处理器2004,与处理器2004中的至少一个连接的系统控制逻辑2008,与系统控制逻辑2008
连接的系统内存2012,与系统控制逻辑2008连接的非易失性存储器(nvm)2016,以及与系统控制逻辑2008连接的网络接口2020。
281.在一些实施例中,处理器2004可以包括一个或多个单核或多核处理器。在一些实施例中,处理器2004可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任意组合。
282.nvm/存储器2016可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的可读介质。在一些实施例中,nvm/存储器2016可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如hdd(hard disk drive,硬盘驱动器),cd(compact disc,光盘)驱动器,dvd(digital versatile disc,数字通用光盘)驱动器中的至少一个。在一些实施例中,nvm/存储器2016可以包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术如图4所示的方法的全部或部分步骤。
283.nvm/存储器2016可以包括安装系统2000的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口2020通过网络访问nvm/存储2016。
284.特别地,系统内存2012和nvm/存储器2016可以分别包括:指令2024的暂时副本和永久副本。指令2024可以包括:由处理器2004中的至少一个执行时导致系统2000实施如图4所示方法的指令。在一些实施例中,指令2024、硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑2008,网络接口2020和/或处理器2004中。
285.网络接口2020可以包括收发器,用于为系统2000提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中,网络接口2020可以集成于系统2000的其他组件。例如,网络接口2020可以集成于处理器2004的,系统内存2012,nvm/存储器2016,和具有指令的固件设备(未示出)中的至少一种。系统2000可以进一步包括:输入/输出(i/o)设备2032。i/o设备2032可以包括用户界面,使得用户能够与系统2000进行交互;外围组件接口的设计使得外围组件也能够与系统2000交互。
286.通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
287.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
288.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
289.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
290.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
291.以上内容,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献