1.本发明涉及计算机技术领域,具体而言,涉及一种多端应用的数据同步方法、电子设备和可读存储介质。
背景技术:2.相关技术中,一般情况下,手机端应用、网页端应用(web应用)和桌面端应用之间的数据同步,接入端上后需要单独刷新或者需要用户手动刷新数据,存在用户体验差、操作繁琐的问题。
技术实现要素:3.本发明旨在解决或改善上述技术问题的至少之一。
4.为此,本发明的第一目的在于提供一种多端应用的数据同步方法。
5.本发明的第二目的在于提供一种多端应用的数据同步方法。
6.本发明的第三目的在于提供一种电子设备。
7.本发明的第四目的在于提供一种可读存储介质。
8.为实现本发明的第一目的,本发明的技术方案提供了一种多端应用的数据同步方法,用于手机端应用,数据同步方法包括:在创建或修改日程的情况下,基于全双工通信协议,采用即时通讯,通过工作通知分发到桌面端应用和/或网页端应用;接收桌面端应用和/或网页端应用发送的工作通知,在工作通知为桌面端应用和/或网页端应用创建或修改日程的情况下,通过应用程序接口函数通知日程应用,更新相关日程。
9.本技术方案中,在手机端应用创建或修改日程的情况下,桌面端应用和/或网页端应用无需刷新即可收到日程数据,实现了原生应用才能达到的效果,极大的提升了用户体验。
10.另外,本发明提供的技术方案还可以具有如下附加技术特征:
11.上述技术方案中,手机端应用中的日程能够多用户进行共享。
12.为实现本发明的第二目的,本发明的技术方案提供了一种多端应用的数据同步方法,用于桌面端应用,数据同步方法包括:在创建或修改日程的情况下,基于全双工通信协议,采用即时通讯,通过工作通知分发到手机端应用和/或网页端应用;接收手机端应用和/或网页端应用发送的工作通知,在工作通知为手机端应用和/或网页端应用创建或修改日程的情况下,通过应用程序接口函数通知日程应用,更新相关日程。
13.本技术方案中,在桌面端应用创建或修改日程的情况下,手机端应用和/或网页端应用无需刷新即可收到日程数据,实现了原生应用才能达到的效果,极大的提升了用户体验。
14.另外,本发明提供的技术方案还可以具有如下附加技术特征:
15.上述技术方案中,桌面端应用与网页端应用采用的代码相同,还包括:获取设备的用户代理,在用户代理识别为桌面端的情况下,采用桌面端应用运行;和/或在检测到file
协议(本地资源协议)的情况下,采用桌面端应用运行。
16.上述任一技术方案中,桌面端应用采用弹性布局。
17.上述任一技术方案中,桌面端应用中的日程能够多用户进行共享。
18.上述任一技术方案中,多端应用的数据同步方法还包括:设置第一变量,通过动态调整第一变量,以使得桌面端应用动态切换字体大小和主题色。
19.为实现本发明的第二目的,本发明的技术方案提供了一种多端应用的数据同步方法,用于网页端应用,数据同步方法包括:在创建或修改日程的情况下,基于全双工通信协议,采用即时通讯,通过工作通知分发到手机端应用和/或桌面端应用;接收手机端应用和/或桌面端应用发送的工作通知,在工作通知为手机端应用和/或桌面端应用创建或修改日程的情况下,通过应用程序接口函数通知日程应用,更新相关日程。
20.本技术方案中,在网页端应用创建或修改日程的情况下,手机端应用和/或桌面端应用无需刷新即可收到日程数据,实现了原生应用才能达到的效果,极大的提升了用户体验。
21.另外,本发明提供的技术方案还可以具有如下附加技术特征:
22.上述技术方案中,网页端应用与桌面端应用采用的代码相同,还包括:获取设备的用户代理,在用户代理识别为网页端的情况下,采用网页端应用运行;和/或在检测到https协议(远程资源协议)的情况下,采用网页端应用运行。
23.上述任一技术方案中,网页端应用采用弹性布局。
24.上述任一技术方案中,网页端应用中的日程能够多用户进行共享。
25.上述任一技术方案中,多端应用的数据同步方法还包括:设置第一变量,通过动态调整第一变量,以使得网页端应用动态切换字体大小和主题色。
26.为实现本发明的第三目的,本发明的技术方案提供了一种电子设备,包括:存储器和处理器,存储器存储有程序或指令,处理器执行程序或指令;其中,处理器在执行程序或指令时,实现如本发明任一技术方案的多端应用的数据同步方法的步骤。
27.本技术方案提供的电子设备实现如本发明任一技术方案的多端应用的数据同步方法的步骤,因而其具有如本发明任一技术方案的多端应用的数据同步方法的全部有益效果,在此不再赘述。
28.为实现本发明的第四目的,本发明的技术方案提供了一种可读存储介质,可读存储介质存储有程序或指令,程序或指令被执行时,实现上述任一技术方案的多端应用的数据同步方法的步骤。
29.本技术方案提供的可读存储介质实现如本发明任一技术方案的多端应用的数据同步方法的步骤,因而其具有如本发明任一技术方案的多端应用的数据同步方法的全部有益效果,在此不再赘述。
30.本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
31.本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
32.图1为根据本发明一个实施例的多端应用的数据同步方法流程图之一;
33.图2为根据本发明一个实施例的多端应用的数据同步方法流程图之二;
34.图3为根据本发明一个实施例的多端应用的数据同步方法流程图之三;
35.图4为根据本发明一个实施例的多端应用的数据同步方法流程图之四;
36.图5为根据本发明一个实施例的多端应用的数据同步方法流程图之五;
37.图6为根据本发明一个实施例的多端应用的数据同步方法流程图之六;
38.图7为根据本发明一个实施例的多端应用的数据同步方法流程图之七;
39.图8为根据本发明一个实施例的多端应用的数据同步方法流程图之八;
40.图9为根据本发明一个实施例的多端应用的数据同步方法流程图之九;
41.图10为根据本发明一个实施例的电子设备示意框图;
42.图11为根据本发明一个实施例的通信生命周期示意框图;
43.图12为根据本发明一个实施例的运行环境判断示意框图。
44.其中,图10至图12中附图标记与部件名称之间的对应关系为:
45.102:移动端应用,104:桌面端应用,106:web端应用,108:im,110:工作通知,112:日程应用更新,114:日程前端,116:https协议,118:网页端,120:file协议,122:桌面端,200:电子设备,210:存储器,220:处理器。
具体实施方式
46.为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本技术的实施例及实施例中的特征可以相互组合。
47.在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
48.下面参照图1至图12描述本发明一些实施例的多端应用的数据同步方法、一种电子设备和可读存储介质。
49.多端数据同步是指其他端app产生的日程消息需要及时的同步到日程应用,进而实现数据同步,但是数据同步多端需要通知到多端,保持数据的长链接比较困难。
50.多端运行时需要考虑到不同端的协议、窗口大小、认证方式、多语言、暗黑主题色、字体大小动态更新等,上述存在问题为多端兼容带来了挑战。综上所述,本实施例的目的在于解决以上问题的至少之一。
51.实施例1:
52.如图1所示,本实施例提供了一种多端应用的数据同步方法,用于手机端应用,数据同步方法包括以下步骤:
53.步骤s102,在创建或修改日程的情况下,基于全双工通信协议,采用即时通讯,通过工作通知分发到桌面端应用和/或网页端应用;
54.步骤s104,接收桌面端应用和/或网页端应用发送的工作通知,在工作通知为桌面端应用和/或网页端应用创建或修改日程的情况下,通过应用程序接口函数通知日程应用,更新相关日程。
55.本实施例中,通知到端后并且同步到日程应用,需要建立桌面端electron(跨平台桌面应用开发工具)同webview(网页视图)或者iframe(html标签,作用是文档中的文档,或者浮动的框架)的通信机制。
56.本实施例中,在手机端应用创建或修改日程的情况下,桌面端应用和/或网页端应用无需刷新即可收到日程数据,实现了原生应用才能达到的效果,极大的提升了用户体验。
57.本实施例中,手机端集成有websocket(基于tcp的全双工通信协议)技术,手机端应用在不单独启用websocket技术的情况下实现了多端同步,为其他项目接入到手机端提供了新思路。
58.本实施例中,无需刷新等额外操作,即可实现数据同步,可以减少用户的操作,增加用户体验,进而极大地提高了用户粘性。
59.本实施例中,手机端应用无需额外的能力借用im信道即可实现高可用的通信同步,具有便捷、节省资源的优势。
60.实施例2:
61.本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
62.手机端应用中的日程能够多用户进行共享。
63.本实施例中,日程具有共享功能,可以邀请共享和共享他人,更容易把控相关协同人员的进度和任务,对于团队的管理者来说,可以更加便捷的使用其管理项目相关人,更有意愿去使用其处理大小事务。
64.实施例3:
65.如图2所示,本实施例提供了一种多端应用的数据同步方法,用于桌面端应用,数据同步方法包括以下步骤:
66.步骤s202,在创建或修改日程的情况下,基于全双工通信协议,采用即时通讯,通过工作通知分发到手机端应用和/或网页端应用;
67.步骤s204,接收手机端应用和/或网页端应用发送的工作通知,在工作通知为手机端应用和/或网页端应用创建或修改日程的情况下,通过应用程序接口函数通知日程应用,更新相关日程。
68.本实施例中,在桌面端应用创建或修改日程的情况下,手机端应用和/或网页端应用无需刷新即可收到日程数据,实现了原生应用才能达到的效果,极大的提升了用户体验。
69.本实施例中,桌面端成有websocket(基于tcp的全双工通信协议)技术,桌面端应用在不单独启用websocket技术的情况下实现了多端同步,为其他项目接入到桌面端提供了新思路。
70.本实施例中,无需刷新等额外操作,即可实现数据同步,可以减少用户的操作,增加用户体验,进而极大地提高了用户粘性。
71.本实施例中,桌面端应用无需额外的能力借用im信道即可实现高可用的通信同步,具有便捷、节省资源的优势。
72.实施例4:
73.如图3和图4所示,本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
74.桌面端应用与网页端应用采用的代码相同,还包括以下步骤:
75.步骤s302,获取设备的用户代理,在用户代理识别为桌面端的情况下,采用桌面端应用运行;和/或
76.步骤s304,在检测到file协议的情况下,采用桌面端应用运行。
77.本实施例中,多端方案可以保持ui设计(称界面设计)和产品的一致性,同时,也为开发提供了很好的方案,能够节省开发时间和精力,对于大型项目接入应用而言,提供了良好的接入思路。
78.本实施例可以多端适配,完美融合桌面端和网页端,一套代码多端运行。本实施例中,桌面端应用与网页端应用采用的代码相同,通过判断用户代理(ua)及file协议来决定当前应用的运行方式,提升了代码的可用性,实现代码的高可用和复用。
79.本实施例中,桌面端应用与网页端应用的多端运行,可以节省开发成本,一套代码多端运行符合正在成为越来越受欢迎的开发方式。
80.本实施例中,桌面端应用支持file协议,即支持本地协议打开,可以实现类原生应用加载的痛快感,提升用户使用体验。
81.实施例5:
82.本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
83.桌面端应用采用弹性布局。
84.为了兼顾多端运行的情况,本实施例在前端架构的设计之初即考虑到了布局的自适应,通过采用弹性布局,可以实现动态兼容,本实施例的自适应布局,针对多种窗口均可实现自适应兼容。
85.实施例6:
86.本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
87.桌面端应用中的日程能够多用户进行共享。
88.本实施例中,日程具有共享功能,可以邀请共享和共享他人,更容易把控相关协同人员的进度和任务,对于团队的管理者来说,可以更加便捷的使用其管理项目相关人,更有意愿去使用其处理大小事务。
89.实施例7:
90.如图5所示,本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
91.多端应用的数据同步方法还包括以下步骤:
92.步骤s402,设置第一变量,通过动态调整第一变量,以使得桌面端应用动态切换字体大小和主题色。
93.本实施例中,css(cascading style sheets,层叠样式表)通过第一变量的方式控制,可以动态的切换字体大小及主题色,满足不同用户以及不同设备的个性化需求。
94.实施例8:
95.如图6所示,本实施例提供了一种多端应用的数据同步方法,用于网页端应用,数据同步方法包括以下步骤:
96.步骤s502,在创建或修改日程的情况下,基于全双工通信协议,采用即时通讯,通过工作通知分发到手机端应用和/或桌面端应用;
97.步骤s504,接收手机端应用和/或桌面端应用发送的工作通知,在工作通知为手机端应用和/或桌面端应用创建或修改日程的情况下,通过应用程序接口函数通知日程应用,更新相关日程。
98.网页端应用(web应用)在工作过程中扮演着越来越重要的角色,web应用不仅仅需要满足web端的使用也同样需要运行在桌面应用中,本实施例可以实现web端应用在桌面端的完美运行。
99.本实施例中,在网页端应用创建或修改日程的情况下,手机端应用和/或桌面端应用无需刷新即可收到日程数据,实现了原生应用才能达到的效果,极大的提升了用户体验。
100.本实施例中,网页端成有websocket(基于tcp的全双工通信协议)技术,网页端应用在不单独启用websocket技术的情况下实现了多端同步,为其他项目接入到网页端提供了新思路。
101.本实施例中,无需刷新等额外操作,即可实现数据同步,可以减少用户的操作,增加用户体验,进而极大地提高了用户粘性。
102.本实施例中,网页端应用无需额外的能力借用im信道即可实现高可用的通信同步,具有便捷、节省资源的优势。
103.本实施例的数据无感知同步为web应用(网页端应用)接入桌面端等终端提供了非常好的原生应用体验。
104.实施例9:
105.如图7和图8所示,本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
106.网页端应用与桌面端应用采用的代码相同,还包括以下步骤:
107.步骤s602,获取设备的用户代理,在用户代理识别为网页端的情况下,采用网页端应用运行;和/或
108.步骤s604,在检测到https协议的情况下,采用网页端应用运行。
109.本实施例可以多端适配,完美融合网页端和桌面端,一套代码多端运行。本实施例中,网页端应用与桌面端应用采用的代码相同,通过判断用户代理(ua)及https协议来决定当前应用的运行方式,提升了代码的可用性,实现代码的高可用和复用。
110.本实施例中,网页端应用与桌面端应用的多端运行,可以节省开发成本,一套代码多端运行符合正在成为越来越受欢迎的开发方式。
111.实施例10:
112.本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
113.网页端应用采用弹性布局。
114.为了兼顾多端运行的情况,本实施例在前端架构的设计之初即考虑到了布局的自适应,通过采用弹性布局,可以实现动态兼容,本实施例的自适应布局,针对多种窗口均可实现自适应兼容。
115.实施例11:
116.本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
117.网页端应用中的日程能够多用户进行共享。
118.本实施例中,日程具有共享功能,可以邀请共享和共享他人,更容易把控相关协同人员的进度和任务,对于团队的管理者来说,可以更加便捷的使用其管理项目相关人,更有意愿去使用其处理大小事务。
119.实施例12:
120.如图9所示,本实施例提供了一种多端应用的数据同步方法,除上述实施例的技术特征以外,本实施例进一步地包括了以下技术特征:
121.多端应用的数据同步方法还包括以下步骤:
122.步骤s702,设置第一变量,通过动态调整第一变量,以使得网页端应用动态切换字体大小和主题色。
123.本实施例中,css(cascading style sheets,层叠样式表)通过第一变量的方式控制,可以动态的切换字体大小及主题色,满足不同用户以及不同设备的个性化需求。
124.实施例13:
125.如图10所示,本实施例提供了一种电子设备200,包括:存储器210和处理器220,存储器210存储有程序或指令,处理器220执行程序或指令;其中,处理器220在执行程序或指令时,实现如本发明任一实施例的多端应用的数据同步方法的步骤。
126.实施例14:
127.本实施例提供了一种可读存储介质,可读存储介质存储有程序或指令,程序或指令被处理器执行时,实现上述任一实施例的多端应用的数据同步方法的步骤。
128.具体实施例:
129.本实施例提供了一种多端应用的数据同步方法,在其中一端应用创建或修改日程的情况下,多端应用无需刷新即可收到日程数据,实现了原生应用才能达到的效果,极大的提升了用户体验。其中,桌面端原生应用(桌面端应用)同web应用(网页端应用)一套代码实现了多端兼容方案及无感数据同步。
130.本实施例中,基于im信道实现web应用数据无感同步,桌面端应用和网页端应用采用一套代码,可以多端运行。
131.本实施例的通信完整生命周期中,移动端应用102、桌面端应用104和web端应用106之间通过websocket(全双工通信协议)通信,多端同步巧妙的利用了移动端、桌面端及web端的im108通信机制,当其中一端进行创建或修改日程时,其他两端可以进行同步,举例而言,如图11所示,当移动端应用102创建日程成功后,通过工作通知110的im108通信分发到桌面端应用104,桌面端应用104收到工作通知后,通过postmessage(postmessage是windows api(应用程序接口)中的一个常用函数,用于将一条消息放入到消息队列中)通知日程应用更新112相关日程。
132.本实施例在不单独启用websocket技术的情况下实现了多端同步,为其他项目接入到桌面端提供了新思路。
133.本实施例为了兼顾多端运行的情况,从前端架构的设计之初就考虑到了布局的自适应,动态的兼容使用了新的布局方式,弹性布局。并且css通过变量的方式控制,可以动态
的切换字体大小及主题色,兼容了多端的多语言和验证方式。
134.本实施例可以通过一套代码实现web端、桌面端的多端运行,可以通过判断ua(用户代理)获取当前设备以及浏览器版本等信息,从而判断出运行环境是web端还是桌面端。还可以通过对https协议或file协议进行判断,确定运行环境是web端还是桌面端,如图12所示,对于日程前端114,如果检测到https协议116,判定为网页端118,否则,检测是否兼容file协议120,如果检测到file协议120,判定为桌面端122,本实施例通过决定当前web应用的运行方式实现了代码的高可用和复用。
135.本实施例中,用户更有意愿去使用日程进行记录和管理备忘,web端更加完美的融合了pc端,同pc端相辅相成,极大地提高了用户粘性。
136.本实施例通过im的通道实现了web应用的及时更新,具体实现参照日程应用的方式优点有以下几个方面:
137.(1)多端适配:完美融合桌面端,web端,一套代码多端运行;
138.(2)支持本地协议打开,实现了类原生应用加载的痛快感;
139.(3)自适应布局,针对多中窗口做了自适应兼容;
140.(4)无感知同步多端日程,手机端创建,桌面端无需刷新即可收到日程数据,实现了原生才拥有的体验;
141.(5)强大的共享和回复功能,可以邀请共享和共享他人,更容易把控相关协同人员的进度和任务;
142.(6)文件共享功能,更加便捷的实现文件协作,便于更多应用接入,协同办公的中枢。
143.在本发明中,术语“第一”、“第二”、“第三”仅用于描述的目的,而不能理解为指示或暗示相对重要性;术语“多个”则指两个或两个以上,除非另有明确的限定。术语“安装”、“相连”、“连接”、“固定”等术语均应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;“相连”可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
144.本发明的描述中,需要理解的是,术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或单元必须具有特定的方向、以特定的方位构造和操作,因此,不能理解为对本发明的限制。
145.在本说明书的描述中,术语“一个实施例”、“一些实施例”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
146.以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。