一种基于互联网的数据分享方法及电子终端的制作方法

文档序号:7893814阅读:121来源:国知局
专利名称:一种基于互联网的数据分享方法及电子终端的制作方法
技术领域
本发明涉及互联网数据处理领域,尤其涉及一种基于互联网的数据分享方法以及电子终端。
背景技术
随着移动互联网的发展,各种各样的电子终端(特别是智能移动终端)的应用层出不穷。为了提供电子终端应用的社交功能,让用户能够方便、及时地与他人分享电子终端中的图片,音乐等,同时共享社交网站的庞大用户群,很多移动应用都结合了目前主流的社交网络平台,如新浪微博,人人网,Facebook(脸书)等。在这些与互联网社交网站结合的移动应用中,用户可以在应用程序中通过社交网站提供的授权及内容访问接口绑定社交网站账号,并将需要分享的内容发送到互联网社交网站平台,与他人分享。由于现有的互联网社交平台如新浪微博、人人网等都已经开放了平台接口,移动应用可以直接通过平台提供的SDK (Soft Develop Kit,软件开发包)访问社交网站平台提供的接口,获取或者推送内容。现有电子终端操作系统(比如安卓Android平台等)在移动应用中的分享方式是用户绑定社交网站账号后,选定需要分享的内容及需要分享的社交网站。对于分享内容这一操作,目前在Android平台应用程序中的处理方案主要有两种。方案一用户开始分享的时候应用程序弹出对话框,提示用户分享操作已经开始,用户需要等待分享操作完成,分享提示对话框消失后,再进行后续操作。如果此过程中用户手动取消对话框,则分享操作会同时被取消,分享的内容也不会被发送到社交网站。方案二 与第一种方案类似,这种方式也会采用对话框的方式提示用户分享操作开始。但用户需要进行其他操作时,可以取消该对话框。此时,分享操作仍然会在非UI (UserInterface,用户交互界面)线程中继续进行。分享完成后,以Toast (Android平台中一种提醒形式)形式提示用户分享结果。上述两种方案均存在相应的缺点。方案一中,用户必须等待分享操作完成之后,才能进行其他操作。比如说一款结合社交网站的拍照软件,如果用户拍完一张照片进行分享,在分享操作尚未完成时,用户想要继续拍照,则必须取消当前的上传操作。这样势必会影响软件的用户体验。方案二中,用户可以选择取消分享提示对话框,程序此时会用一条非n线程继续完成上传操作,在上传操作完成后,程序会以Toast的方式将分享操作结果(成功或者失败)告知用户。这样做的好处就是用户可以在分享操作进行的同时,进行其他操作。但这种方式存在两个缺点 (I) 一次只能分享一条内容到一个社交网站平台。即一次分享操作只能将一条内容分享到一个社交网站。如果进行“一到多”(一条内容同时分享到多个社交网站平台)、“多到一”(多条内容同时分享到单个社交网站)或者“多到多”(多条内容同时分享到多个社交网站),则由于分享操作结果的多样性(一些内容分享成功,另一些内容分享失败)及复杂性,就无法简单的用Toast形式将分享操作结果准确描述并告知用户。(2)多个分享操作争夺带宽,降低分享操作成功率。如果用户需要进行“一到多”、“多到一”、“多到多”形式的分享,则必须手动取消上一次分享操作提示对话框,再开始新的分享操作。由于每次分享操作都需要开启一条线程进行,如果前面一条或几条分享操作的线程没有完成并退出,则会产生多个分享操作线程。这些线程之间是相互独立的,需要同时通过 GPRS (General Packet Radio Service,通用无线分组技术)或者 WIFI (WirelessFidelity,无线局域网)传送数据到社交网站的服务器,线程之间会争夺数据带宽,更容易造成网络连接超时错误,导致分享操作失败,严重影响应用程序的用户体验
发明内容
本发明实施例所要解决的技术问题在于,提供一种基于互联网的数据分享方法及电子终端。解决了现有技术中因多个分享操作争夺带宽,降低分享操作成功率的技术问题,并实现了将分享结果准确实时地告知用户,大大提供了用户体验。为了解决上述技术问题,本发明实施例提供了一种基于互联网的数据分享方法,包括启动电子终端操作系统的服务组件,在所述服务组件的函数中完成分享任务线程的初始化,所述初始化包括建立分享任务队列和建立线程同步监视器;当监控到有分享任务对象添加到所述分享任务队列,所述线程同步监视器调用函数唤醒处于挂起状态的所述分享任务线程;所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。其中,所述在所述服务组件的函数中完成分享任务线程的初始化的步骤之后还包括;监控是否接收到分享请求;所述分享请求包括分享内容信息以及分享地址信息;当监控结果为是时,则将所述分享请求封装成预先设定的分享任务对象;将所述分享任务对象添加到所述分享任务队列中。其中,所述分享任务对象的属性包括分享内容的路径信息和分享地址信息;还包括分享内容描述信息或/和分享时间信息。其中,所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务的步骤包括当所述分享任务队列中没有分享任务对象时,所述线程同步监视器调用等待函数,使所述分享任务线程进入挂起状态。其中,所述初始化还包括设置分享任务线程的回调函数;当所述分享任务线程对分享任务对象执行分享成功时,则通过电子终端操作系统的通知机制在通知栏中显示分享成功信息;当所述分享任务线程对分享任务对象执行分享失败时,则通过电子终端操作系统的通知机制在通知栏中显示分享失败信息。相应地,本发明还公开了一种电子终端,包括启动初始化模块,用于启动电子终端操作系统的服务组件,在所述服务组件的函数中完成分享任务线程的初始化,所述初始化包括建立分享任务队列和建立线程同步监视器;线程同步监视器,用于当监控到有分享任务对象添加到所述分享任务队列,调用 函数唤醒处于挂起状态的所述分享任务线程;选取分享模块,用于通过所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。其中,所述电子终端还包括;分享监控模块,用于监控是否接收到分享请求;所述分享请求包括分享内容信息以及分享地址信息;对象封装模块,用于当所述分享监控模块的监控结果为是时,则将所述分享请求封装成预先设定的分享任务对象;对象添加模块,用于将所述分享任务对象添加到所述分享任务队列中。其中,所述分享任务对象的属性包括分享内容的路径信息和分享地址信息;还包括分享内容描述信息或/和分享时间信息。其中,所述线程同步监视器还用于当所述分享任务队列中没有分享任务对象时,调用等待函数,使所述分享任务线程进入挂起状态。其中,所述初始化还包括设置分享任务线程的回调函数;所述电子终端还包括通知模块,用于当所述分享任务线程对分享任务对象执行分享成功时,则通过电子终端操作系统的通知机制在通知栏中显示分享成功信息;当所述分享任务线程对分享任务对象执行分享失败时,则通过电子终端操作系统的通知机制在通知栏中显示分享失败信
肩、O实施本发明实施例,具有如下有益效果通过建立分享任务队列,由分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,并设置分享任务线程的回调函数,通过电子终端操作系统的通知机制在通知栏中告知用户分享任务的状态,实现了 “一到多”,“多到一”以及“多到多”形式的分享操作,解决了现有技术中因多个分享操作争夺带宽,降低分享操作成功率的技术问题,并且可以将分享结果准确实时地告知用户,大大提供了用户体验。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I是本发明基于互联网的数据分享方法的第一实施例流程图;图2是本发明基于互联网的数据分享方法的第二实施例流程图3是本发明实施例的分享操作界面示意图;图4是本发明实施例的切换到其他程序页面示意图;图5是本发明实施例的通知栏界面示意图6是本发明实施例的上传管理界面示意图;图7是本发明电子终端的第一实施例的结构示意图;图8是本发明电子终端的第二实施例的结构示意图;图9是本发明电子终端的第三实施例的结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。参见图1,是本发明提供的基于互联网的数据分享方法的第一实施例流程图,该方法包括步骤SlOO :启动电子终端操作系统的服务组件,在所述服务组件的函数中完成分享任务线程的初始化,所述初始化包括建立分享任务队列和建立线程同步监视器;具体地,以电子终端操作系统为Android为例进行说明,步骤SlOO中,启动一个Android Service组件,并在该组件的onStart函数中完成分享任务线程的初始化。需要说明的是,建立分享任务队列后,此时该分享任务队列中没有分享任务,因此,所述线程同步监视器会调用wait方法,使该分享任务线程进入挂起状态。步骤SlOl :当监控到有分享任务对象添加到所述分享任务队列,所述线程同步监视器调用函数唤醒处于挂起状态的所述分享任务线程;步骤S102 :所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。具体地,如图2示出的本发明基于互联网的数据分享方法的第二实施例流程图,该方法包括步骤S200 :启动电子终端操作系统的服务组件,在所述服务组件的函数中完成分享任务线程的初始化,所述初始化包括建立分享任务队列和建立线程同步监视器;步骤S201 :监控是否接收到分享请求;所述分享请求包括分享内容信息以及分享地址信息;具体地,用户如需将自己喜欢的内容分享到社交网站,那么需要选择需要分享的内容(可以是图片,声音等多媒体内容)和需要分享到的社交网站的网络地址,即可以向应用程序发送分享请求,开始分享操作;进一步地,可以参考图3(但不限于图3示出的实施例),用户选择了“宿舍走廊的夕阳”的图片进行分享,并选择分享到“新浪微博”以及“人人网”。电子终端的应用程序实时地监控是否接收到分享请求,当监控结果为是时,则执行步骤S202,否则继续执行步骤S201 ;进一步地,用户还可以依据需要选择是否添加一些对分享内容的描述文字,那么分享请求还包含有分享内容描述信息。步骤S202 :将所述分享请求封装成预先设定的分享任务对象;
具体地,电子终端的应用程序收到该分享请求后,首先将请求封装成一个预先设定(或定义)的分享任务对象。该分享任务对象的属性包括分享内容的路径信息和分享地址信息;还可以包括分享内容描述信息或/和分享时间信息等信息。步骤S203 :将所述分享任务对象添加到所述分享任务队列中;步骤S204 :当监控到有分享任务对象添加到所述分享任务队列,所述线程同步监视器调用函数唤醒处于挂起状态的所述分享任务线程;具体地,可以通过在线程同步监视器中调用notify函数唤醒分享任务线程。步骤S205 :所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。具体地,该分享任务线程被唤醒后,就开始不断地从分享任务队列中取分享任务对象,执行任务。此过程一直循环,直到分享任务队列中不再有新的分享任务对象。当所述分享任务队列中没有分享任务对象时,所述线程同步监视器调用等待函数,使所述分享任务线程进入挂起状态,直到有新的分享任务对象被添加至分享任务队列。需要说明的是,步骤S201中,当用户向应用程序点击发送分享请求后,用户可以立即处理别的事情,具体地可以参考图4,用户可以切换到其他程序界面进行相应操作,本发明实施例中分享方案的分享任务线程从将在后台执行分享操作,不影响用户进行其他操作;再进一步地,本发明实施例在所述服务组件的函数中完成分享任务线程的初始化中,该初始化还包括设置分享任务线程的回调函数;可以实时地将分享结果通过操作系统(以Android为例)的Notification机制在通知栏中告知用户,确保用户清楚当前分享操作进展状况;具体可以参考图5以及图6,图5中在通知栏中告知用户当前正在进行I项分享任务,已经完成了 3项,成功了 3项,点击该通知可进入图6的上传管理界面,在图6中可以具体显示人物对象分享情况,上方通知栏还可以实时地通知用户分享操作进展状况当所述分享任务线程对分享任务对象执行分享成功时,则通过电子终端操作系统的通知机制在通知栏中显示分享成功信息;如图6中“IMG_0177. jpg到新浪微博的分享成功”;当所述分享任务线程对分享任务对象执行分享失败时,则通过电子终端操作系统的通知机制在通知栏中显示分享失败信息。上面详细说明了本发明实施例的基于互联网的数据分享方法,下面相应地,说明本发明实施例的电子终端图7示出了本发明电子终端的第一实施例的结构示意图,电子终端7包括启动初始化模块71、线程同步监视器72以及选取分享模块73,其中启动初始化模块71用于启动电子终端操作系统的服务组件,在所述服务组件的函数中完成分享任务线程的初始化,所述初始化包括建立分享任务队列和建立线程同步监视器;具体地,以电子终端操作系统为Android为例进行说明,启动初始化模块71启动一个Android Service组件,并在该组件的onStart函数中完成分享任务线程的初始化。需要说明的是,建立分享任务队列后,此时该分享任务队列中没有分享任务,因此,线程同步监视器72会调用wait方法,使该分享任务线程进入挂起状态。线程同步监视器72用于当监控到有分享任务对象添加到所述分享任务队列,调用函数唤醒处于挂起状态的所述分享任务线程;选取分享模块73用于通过所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。进一步地,如图8示出的本发明电子终端的第二实施例的结构示意图,电子终端7包括启动初始化模块71、线程同步监视器72以及选取分享 模块73外,还可以包括分享监控模块74、对象封装模块75以及对象添加模块76,其中分享监控模块74用于监控是否接收到分享请求;所述分享请求包括分享内容信息以及分享地址信息;具体地,用户如需将自己喜欢的内容分享到社交网站,那么需要选择需要分享的内容(可以是图片,声音等多媒体内容)和需要分享到的社交网站的网络地址,即可以向应用程序发送分享请求,开始分享操作;进一步地,可以参考图3(但不限于图3示出的实施例),用户选择了“宿舍走廊的夕阳”的图片进行分享,并选择分享到“新浪微博”以及“人人网”。电子终端7的分享监控模块74将实时地监控是否接收到分享请求,当监控结果为是时,则触发对象封装模块75进行操作,否则分享监控模块74继续实时监控;进一步地,用户还可以依据需要选择是否添加一些对分享内容的描述文字,那么分享请求还包含有分享内容描述信息。对象封装模块75用于当所述分享监控模块的监控结果为是时,则将所述分享请求封装成预先设定的分享任务对象;具体地,电子终端7收到该分享请求后,对象封装模块75首先将请求封装成一个预先设定(或定义)的分享任务对象。该分享任务对象的属性包括分享内容的路径信息和分享地址信息;还可以包括分享内容描述信息或/和分享时间信息等信息。对象添加模块76用于将所述分享任务对象添加到所述分享任务队列中。当监控到有分享任务对象添加到所述分享任务队列,线程同步监视器72调用函数唤醒处于挂起状态的所述分享任务线程;选取分享模块73用于通过所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。具体地,该分享任务线程被唤醒后,选取分享模块73就开始不断地从分享任务队列中取分享任务对象,执行任务。此过程一直循环,直到分享任务队列中不再有新的分享任务对象。当所述分享任务队列中没有分享任务对象时,线程同步监视器72调用等待函数,使所述分享任务线程进入挂起状态,直到有新的分享任务对象被添加至分享任务队列。再进一步地,如图9示出的本发明电子终端的第三实施例的结构示意图,电子终端7包括启动初始化模块71、线程同步监视器72、选取分享模块73、分享监控模块74、对象封装模块75以及对象添加模块76外,还可以包括通知模块77,其中启动初始化模块71进行的初始化还可以包括设置分享任务线程的回调函数;通知模块77用于当所述分享任务线程对分享任务对象执行分享成功时,则通过电子终端操作系统的通知机制在通知栏中显示分享成功信息;当所述分享任务线程对分享任务对象执行分享失败时,则通过电子终端操作系统的通知机制在通知栏中显示分享失败信息。具体地,通知模块77可以实时地将分享结果通过操作系统(以Android为例)的Notification机制在通知栏中告知用户,确保用户清楚当前分享操作进展状况;具体可以参考图5以及图6,图5中在通知栏中告知用户当前正在进行I项分享任务,已经完成了 3项,成功了 3项,点击该通知可进入图6的上传管理界面,在图6中可以具体显示人物对象分享情况,上方通知栏还可以实时地通知用户分享操作进展状况当所述分享任务线程对分享任务对象执行分享成功时,则通过电子终端操作系统的通知机制在通知栏中显示分享成功信息;如图6中“IMG_0177. jpg到新浪微博的分享成功”;当所述分享任务线程对分享任务对象执行分享失败时,则通过电子终端操作系统的通知机制在通知栏中显示分享失败信息。综上所述,实施本发明实施例,具有如下有益效果通过建立分享任务队列,由分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,并设置分享任务线程的回调函数,通过电子终端操作系统的通知机制在通知栏中告知用户分享任务的状态,实现了 “一到多”,“多到一”以及“多到多”形式的分享操作,解决了现有技术中因多个分享操作争夺带宽,降低分享操作成功率的技术问题,并且可以将分享结果准确实时地告知用户,大大提供了用户体验。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory, RAM)等。以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。权利要求
1.一种基于互联网的数据分享方法,其特征在于,包括 启动电子终端操作系统的服务组件,在所述服务组件的函数中完成分享任务线程的初始化,所述初始化包括建立分享任务队列和建立线程同步监视器; 当监控到有分享任务对象添加到所述分享任务队列,所述线程同步监视器调用函数唤醒处于挂起状态的所述分享任务线程; 所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。
2.根据权利要求I所述的基于互联网的数据分享方法,其特征在于,所述在所述服务组件的函数中完成分享任务线程的初始化的步骤之后还包括; 监控是否接收到分享请求;所述分享请求包括分享内容信息以及分享地址信息; 当监控结果为是时,则将所述分享请求封装成预先设定的分享任务对象; 将所述分享任务对象添加到所述分享任务队列中。
3.根据权利要求2所述的基于互联网的数据分享方法,其特征在于,所述分享任务对象的属性包括分享内容的路径信息和分享地址信息;还包括分享内容描述信息或/和分享时间信息。
4.根据权利要求I所述的基于互联网的数据分享方法,其特征在于,所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务的步骤包括 当所述分享任务队列中没有分享任务对象时,所述线程同步监视器调用等待函数,使所述分享任务线程进入挂起状态。
5.根据权利要求1-4任一项所述的基于互联网的数据分享方法,其特征在于,所述初始化还包括设置分享任务线程的回调函数; 当所述分享任务线程对分享任务对象执行分享成功时,则通过电子终端操作系统的通知机制在通知栏中显示分享成功信息; 当所述分享任务线程对分享任务对象执行分享失败时,则通过电子终端操作系统的通知机制在通知栏中显示分享失败信息。
6.—种电子终端,其特征在于,包括 启动初始化模块,用于启动电子终端操作系统的服务组件,在所述服务组件的函数中完成分享任务线程的初始化,所述初始化包括建立分享任务队列和建立线程同步监视器;线程同步监视器,用于当监控到有分享任务对象添加到所述分享任务队列,调用函数唤醒处于挂起状态的所述分享任务线程; 选取分享模块,用于通过所述分享任务线程从所述分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对所述分享任务队列中的一个分享任务对象执行分享完毕后再选取所述分享任务队列中的下一个分享任务对象执行分享。
7.根据权利要求6所述的电子终端,其特征在于,所述电子终端还包括; 分享监控模块,用于监控是否接收到分享请求;所述分享请求包括分享内容信息以及分享地址信息; 对象封装模块,用于当所述分享监控模块的监控结果为是时,则将所述分享请求封装成预先设定的分享任务对象; 对象添加模块,用于将所述分享任务对象添加到所述分享任务队列中。
8.根据权利要求7所述的电子终端,其特征在于,所述分享任务对象的属性包括分享内容的路径信息和分享地址信息;还包括分享内容描述信息或/和分享时间信息。
9.根据权利要求6所述的电子终端,其特征在于,所述线程同步监视器还用于当所述分享任务队列中没有分享任务对象时,调用等待函数,使所述分享任务线程进入挂起状态。
10.根据权利要求6-9中任一项所述的电子终端,其特征在于,所述初始化还包括设置分享任务线程的回调函数;所述电子终端还包括 通知模块,用于当所述分享任务线程对分享任务对象执行分享成功时,则通过电子终端操作系统的通知机制在通知栏中显示分享成功信息;当所述分享任务线程对分享任务对象执行分享失败时,则通过电子终端操作系统的通知机制在通知栏中显示分享失败信息。
全文摘要
本发明实施例公开了一种基于互联网的数据分享方法,包括启动电子终端操作系统的服务组件,在服务组件的函数中完成分享任务线程的初始化,初始化包括建立分享任务队列和建立线程同步监视器;当监控到有分享任务对象添加到分享任务队列,线程同步监视器调用函数唤醒处于挂起状态的分享任务线程;分享任务线程从分享任务队列中按照先后顺序依次选取分享任务对象执行分享任务,具体包括当对分享任务队列中的一个分享任务对象执行分享完毕后再选取分享任务队列中的下一个分享任务对象执行分享。采用本发明,解决了现有技术中因多个分享操作争夺带宽,降低分享操作成功率的技术问题,并且可以将分享结果准确实时地告知用户,大大提供了用户体验。
文档编号H04L29/08GK102655531SQ201210112129
公开日2012年9月5日 申请日期2012年4月17日 优先权日2012年4月17日
发明者傅云鹤 申请人:深圳市万兴软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1