安卓电视混合型应用程序开发方法与流程

文档序号:33460900发布日期:2023-03-15 03:45阅读:29来源:国知局
安卓电视混合型应用程序开发方法与流程

1.本发明涉及应用程序开发方法,尤其涉及安卓电视混合型应用程序开发方法。


背景技术:

2.随着安卓(android)电视日益普及,安卓电视应用程序(application;app)的开发也日益兴盛。
3.一款app最主要的内容包括使用者界面(user interface;ui)和业务逻辑(business logic)。ui是一款app给用户的第一直观感受;如果ui不佳,即便业务逻辑好,该款app也不易吸引用户,这是因为用户重视视觉效果;另一方面,如果ui好,但业务逻辑不佳,这会影响该款app的后期使用体验,从而无法留住用户。
4.传统的安卓电视app是原生app(native app)。原生app通常是用程序语言(例如:java)来编写,它的用户体验好且性能稳定,但开发难度高且更新不易,因此原生app的开发费用高、开发周期长且维护费用高。目前虽然有网页app(web app)的开发技术,且网页app的开发成本低且更新快,但它的设计限制多且性能受限,这导致用户体验差。


技术实现要素:

5.本公开的目的之一在于提供一种安卓电视混合型应用程序(hybrid app)开发方法,以兼顾原生app与网页app的优点。
6.本公开之安卓电视混合型应用程序开发方法的一实施例包含下列步骤:于一安卓活动中生成一安卓网页浏览组件,其中该安卓活动属于该安卓电视混合型应用程序的一安卓端;获取一网页浏览设定子类,并利用该网页浏览设定子类配置该安卓网页浏览组件;利用一网页技术开发该安卓电视混合型应用程序的一网页界面,其中该网页界面属于该安卓电视混合型应用程序的一网页端;利用该安卓网页浏览组件加载并显示该网页界面;于该安卓端中创建一第一java对象以定义该安卓端与该网页端之间的至少一沟通方法,以及创建一第二java对象以实现该第一java对象所定义的一安卓端接口,从而利用该第一java对象与该第二java对象,让该网页端能够调用该安卓端接口;以及于该安卓端置入一封装好的java类用于发送信息给该网页端,并于该网页端置入一封装好的javascript模块用于维护一监听列表以处理该信息,从而利用该封装好的java类与该封装好的javascript模块,让该安卓端能够反馈该信息给该网页端。
7.有关本发明的特征、实作与功效,兹配合附图作较佳实施例详细说明如下。
附图说明
8.[图1]显示本公开之安卓电视混合型应用程序开发方法的一实施例;
[0009]
[图2]显示图1之开发方法所界定之应用程序的框架;
[0010]
[图3]显示图1之步骤s160的消息反馈机制;
[0011]
[图4]显示图1之步骤s150的一实作范例;以及
[0012]
[图5]显示图1之步骤s160的一实作范例。
具体实施方式
[0013]
传统的安卓电视应用程序(application;app)是原生app(native app),它的用户体验好且性能稳定,但开发难度高且更新不易。而网页app(web app)的开发成本低且更新快,但设计限制多、性能受限且用户体验差。本说明书公开一种安卓(android)电视混合型app(hybrid app)开发方法,以兼顾原生app与网页app的优点。
[0014]
本公开的安卓电视混合型app开发方法利用低成本和低难度的网页(web)技术来实现复杂的使用者界面(user interface;ui)开发和展示,以大幅降低一安卓电视app的整体开发难度;另一方面,本公开的开发方法在安卓原生系统端实现该电视app的业务逻辑以及资料来源的提供,以确保良好的用户体验;此外,本公开的开发方法分别于该电视app的安卓端与web端置入代码封装,以利于app功能的维护和扩展。
[0015]
请参阅图1至图3。图1显示本公开之安卓电视混合型app开发方法的一实施例,其用来开发一安卓电视混合型app以供一安卓电视来执行。图2显示图1之开发方法所界定之应用程序的框架。图3显示图1之步骤s160的消息反馈机制。图1包含下列步骤:
[0016]
s110:于一安卓活动(android activity)中生成一安卓网页浏览组件(android webview component)(图2:方框212),其中该安卓活动属于该安卓电视混合型应用程序的一安卓端(图2:方框210)。安卓活动与安卓网页浏览组件在本技术领域中为已知,其可见于本案申请时的安卓开发者网站。步骤s110是利用已知/自行开发的方式来实现。
[0017]
s120:获取一网页浏览设定(websettings)子类(subclass),并利用该网页浏览设定子类配置该安卓网页浏览组件。网页浏览设定子类在本技术领域中为已知,其可见于本案申请时的安卓开发者网站。步骤s120是利用已知/自行开发的方式来实现。
[0018]
s130:利用一网页(web)技术开发该安卓电视混合型应用程序的一网页界面(图2:222),其中该网页界面属于该安卓电视混合型应用程序的一网页端(图2:220)。步骤s130是利用已知/自行开发的方式来实现。
[0019]
s140:利用该安卓网页浏览组件加载并显示该网页界面。步骤s140是利用已知/自行开发的方式来实现。
[0020]
s150:于该安卓端中创建(create)一第一java对象(object)(图2:214)以定义该安卓端与该网页端之间的至少一沟通方法,以及创建一第二java对象(图2:216)以实现该第一java对象所定义的一安卓端接口(interface),从而利用该第一java对象与该第二java对象,让该网页端能够调用(call)该安卓端接口。创建java对象是利用已知/自行开发的方式来实现;对象(object)是类(class)的实例(instance)。
[0021]
s160:于该安卓端置入一封装好的java类(class)(图3:310)用于发送信息给该网页端,并于该网页端置入一封装好的javascript模块(图2:224;图3:320)用于维护一监听列表以处理该信息,从而利用该封装好的java类与该封装好的javascript模块,让该安卓端能够反馈(feedback)该信息给该网页端。上述封装例如是对类(class)的封装。java类在本技术领域中为已知,其可见于安卓开发者网站。javascript模块在本技术领域中为已知。
[0022]
请参阅图1至图3。关于步骤s110,于一实作范例中,生成该安卓网页浏览组件的方式为下列已知方式的其中之一:在该安卓活动中生成该安卓网页浏览组件;以及添加该安
卓网页浏览组件至该安卓活动的一布局(layout)文件里。
[0023]
请参阅图1至图3。关于步骤s120,于一实作范例中,配置该安卓网页浏览组件的步骤包含:使该安卓网页浏览组件支持javascript、允许通过一以文件开通的通用资源定位地址(file url(uniform resource locator))加载的该javascript读取一本地文件、以及允许通过该file url加载的该javascript访问其它资源(例如:基于超文本传输协定(hypertext transfer protocol;http)的资源;基于超文本传输安全协定(hypertext transfer protocol secure;https)的资源)。该file url的技术在本技术领域中为已知。
[0024]
请参阅图1至图3。关于步骤s130,于一实作范例中,该网页技术包含下列至少其中之一:超文本标记语言(hypertext markup language;html);阶层样式表(cascading style sheets;css);以及javascript。
[0025]
请参阅图1至图3。关于步骤s150,其可理解为该web端主动地从该安卓端获取画面显示所需要的资料。图4显示图1之步骤s150的一实作范例,包含下列步骤:
[0026]
s410:于该安卓端中创建该第一java对象(图2:214)。本例中,该第一java对象定义多种方法(图2:方法a、方法b、

)。
[0027]
s420:于该安卓端创建该第二java对象(图2:216)。本例中,该第二java对象用来实现该第一java对象之多种方法(图2:实现方法a、实现方法b、

)。
[0028]
s430:将该第二java对象当做一监听者(listener)并注册该监听者的信息于该第一java对象中。
[0029]
s440:利用该安卓网页浏览组件以将该第一java对象注入(add)该网页端的一javascript上下文(context)中。
[0030]
s450:令该网页端的该封装好的javascript模块依据该安卓网页浏览组件的一参数(例如:名称(name)),访问该安卓端的该第一java对象,并调用该安卓端接口。
[0031]
s460:令该第一java对象依据该监听者的信息,调用该第二java对象所定义的至少一实施内容(例如:频道信息)。
[0032]
请参阅图1至图3。关于步骤s160,其可理解为该web端被动地从该安卓端得知是否有资料/画面需要更新。图5显示图1之步骤s160的一实作范例,包含下列步骤:
[0033]
s510:于该安卓端置入该封装好的java类(图3∶310),其用于发送信息给该网页端。本例中,不同消息是以它们的事件识别码(identification;id)来区分。
[0034]
s520:于该网页端置入该封装好的javascript模块(图2:224;图3:320),其用于维护该监听列表以处理该信息。本例中,该监听列表是供其它的javascript模块添加监听事件至该监听列表中,每个监听事件对应一事件识别码;此外,该封装好的javascript模块包含一专用函数对应该封装好的java类,该专用函数用来接收该安卓端的消息,并于收到一消息后,依据注册信息(例如:步骤s530的注册信息)将该消息发给一相对应的javascript模块。
[0035]
s530:允许该网页端的一监听者(例如:另一javascript模块)创建一监听事件,并注册该监听事件的信息(例如:事件识别码)于该封装好的javascript模块中。举例而言,在注册该监听事件的信息于该封装好的javascript模块中之前,令该监听者初始化(initializing)一事件识别码(identification),以及提供对应该事件识别码的一响应函数(图3:330)。该响应函数的内容是依实施需求而定。该网页端的其它监听者(例如:其它
javascript模块)可依上述方式来监听事件。
[0036]
s540:令该安卓端利用该封装好的java类以发送该信息给该网页端。
[0037]
s550:于该网页端的该封装好的javascript模块收到该信息后,令该封装好的javascript模块依据注册信息处理该信息。举例而言,若该信息对应该监听者的事件识别码,依据该事件识别码将该信息分派(allocate)给该监听者所提供的该响应函数,以让该响应函数处理该信息。
[0038]
请注意,本公开的方法是着重于该安卓电视混合型app的开发流程,而非该安卓电视混合型app;因此,该安卓电视混合型app的内容是依开发者的需求而定,不在本公开的讨论范围内。
[0039]
另请注意,在实施为可能的前提下,本技术领域具有通常技术人员可选择性地实施前述任一实施例中部分或全部技术特征,或选择性地实施前述多个实施例中部分或全部技术特征的组合,藉此增加本发明实施时的弹性。
[0040]
综上所述,本公开的安卓电视混合型app开发方法可兼顾原生app与网页app的优点。
[0041]
虽然本发明之实施例如上所述,然而该些实施例并非用来限定本发明,本技术领域具有通常技术人员可依据本发明之明示或隐含之内容对本发明之技术特征施以变化,凡此种种变化均可能属于本发明所寻求之专利保护范畴,换言之,本发明之专利保护范围须视本说明书之申请专利范围所界定者为准。
[0042]
【符号说明】
[0043]
s110~s160:步骤
[0044]
210:安卓端
[0045]
212:安卓活动中的安卓网页浏览组件
[0046]
214:第一java对象
[0047]
216:第二java对象
[0048]
220:网页端
[0049]
222:网页界面
[0050]
224:封装好的javascript模块
[0051]
310:封装好的java类
[0052]
320:封装好的javascript模块
[0053]
330:响应函数
[0054]
s410~s460:步骤
[0055]
s510~s550:步骤。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1