安卓应用中预览视频的全屏播放方法及系统技术方案

技术编号:15247549 阅读:376 留言:0更新日期:2017-05-02 03:52
本发明专利技术公开了一种安卓应用中预览视频的全屏播放方法及系统,涉及安卓应用中的视屏播放领域。该方法的步骤为:在列表界面中加载播放视图并修改尺寸,在播放视图中播放视频;需要将视频切换至播放界面全屏播放时,保存播放视图中播放的最后1幅视频图片后,删除播放视图;关闭和释放列表界面占用的内存;创建并显示播放界面,在播放界面中加载视频图片并修改尺寸,在视频图片中播放视频;需要将视频切换至列表界面预览播放时,在播放界面中删除视频图片;关闭播放器和播放界面,释放播放器和播放界面占用的内存;创建并显示列表界面。本发明专利技术在进行视频无缝切换时,能够显著降低内存占用率,不仅流畅性较好,客户体验较高;而且不会造成代码冗余。

Full screen playing method and system for preview video in Android application

The invention discloses a method and a system for full screen playback of preview video in Android application, which relates to the field of video playing in Android application. The method comprises the following steps: loading the play list in the interface view and modify the size, video playback in view; video playback interface will need to switch to full screen playback, playback view playback saved finally 1 video pictures, delete playlist view; closure and release list interface memory; create and display player interface, playing video interface loading pictures and modify the size, in the video playback video image; video needs to be switched to the list of interface preview playback, delete the video picture in the player interface; close the player and the player interface, release the player and play interface memory; create and display interface list. The invention can significantly reduce the memory occupancy rate when the video seamless switch is carried out, and the utility model has the advantages of good fluidity, high customer experience, and no redundant code.

【技术实现步骤摘要】

本专利技术涉及安卓应用中的视屏播放领域,具体涉及一种安卓应用中预览视频的全屏播放方法及系统
技术介绍
安卓应用(安卓电视应用、安卓盒子应用、安卓手机应用等)在进行视频播放和直播时,会在列表界面或者推荐栏中采用小窗口的方式(即列表界面或者推荐栏中持有1个播放视图)预览视频,用户点击播放视图时,自动修改播放视图的宽度和宽度,使得播放视图铺满整个屏幕,进而实现预览视频的全屏播放。但是,上述实现预览视频的全屏播放方法存在以下缺陷:用户点击播放视图时,播放视图在铺满屏幕时覆盖了列表界面或者推荐栏,即列表界面或者推荐栏依然存在,而在列表界面(或者推荐栏)存在的同时在播放界面中播放视频,不仅会极大的提高内存占用率,而且列表界面中的视频播放代发一般复制于播放界面中的代码,进而造成代码冗余,维护比较困难(例如播放界面中的代码需要修改时,会同时修改列表界面中的代码)。
技术实现思路
针对现有技术中存在的缺陷,本专利技术解决的技术问题为:切换列表界面和播放界面中视频时,降低内存占用率。本专利技术能够实现无缝切换视频时,不仅流畅性较好,客户体验较高;而且使用时不需要复制代码,不会造成代码冗余。为达到以上目的,本专利技术提供的安卓应用中预览视频的全屏播放方法,包括以下步骤:步骤A:在列表界面中获取播放视图,按照指定尺寸参数修改播放视图的尺寸,在播放视图中播放视频;需要将视频切换至播放界面全屏播放时,保存播放视图中播放的最后1幅视频图片后,释放列表界面占用的内存;创建并显示播放界面,转到步骤B;步骤B:在播放界面中获取视频图片,将视频图片的尺寸参数设置为全屏,在视频图片中播放视频;需要将视频切换至列表界面预览播放时,在播放界面中删除视频图片;释放播放器和播放界面占用的内存;创建并显示列表界面,转到步骤A。与现有技术相比,本专利技术的优点在于:参见上述步骤A04,本专利技术在将视频从列表界面中切换至播放界面全屏播放时,关闭和释放了列表界面占用的内存;参见上述步骤B04可知,本专利技术在将视频从播放界面中切换至列表界面预览播放时,关闭和释放了播放界面占用的内存。因此,与现有技术中播放视频时列表界面和播放界面同时存在相比,本专利技术播放视频时只会存在列表界面或者播放界面,进而显著降低了内存占用率。与此同时,参见上述步骤A04可知,本专利技术在将视频从列表界面中切换至播放界面全屏播放时,并未关闭播放器、且保存了最后1幅播放的视频图片,进而实现视频从列表界面中无缝切换至播放界面播放,流畅性较好,客户体验较高;而且本专利技术使用时不需要复制代码,进而不会造成代码冗余。附图说明图1为本专利技术实施例中安卓应用中预览视频的全屏播放方法的流程图。具体实施方式以下结合附图及实施例对本专利技术作进一步详细说明。首先对本专利技术实施例中经常出现的列表界面、播放界面和播放视图做出说明。列表界面:安卓应用中的视频预览界面,一般是一个activity,即提供一个屏幕的应用程序组件。播放界面:安卓应用中的视频播放界面,一般也是一个activity。播放视图:安卓应用中视频或直播数据进行预览的视图,播放器解码的数据通过播放视图展示在列表界面上,播放视图以单例模式提供,以保证一个应用中只有一个播放视图。在此基础上,参见图1所示,本专利技术实施例中的安卓应用中预览视频的全屏播放方法,包括以下步骤:S101:在列表界面中预留1层FrameLayout(单帧布局),获取播放视图并加载至FrameLayout中,例如调用预留frameLayout.addView(播放视图view)的方法实现,转到S102。S101中获取播放视图的流程为:判断播放视图是否存在,若是,则直接获取播放视图;否则证明播放视图第一次获取,初始化播放器,在播放器中获取指定的播放视图,指定方法包括:在手机软件中通滑动或点击选中播放视图;在安卓电视上通过遥控器选择焦点并停留实现选中播放视图。S102:按照列表界面中预览视图的尺寸参数(视图高度和视图宽度)修改播放视图的尺寸,将修改后的播放视图覆盖至预览视图上,转到S103。S102中实际使用时,通过播放视图的布局属性的接口方法设置播放视图的尺寸参数和位置,例如调用播放视图view.setLayoutParams(预览视图位置,预览视图宽,预览视图高)方法实现。S103:打开播放器(可以是系统提供的原生MediaPlayer组件也可以是其他播放器组件),将播放视图对应的视频资源路径传递至播放器,播放器根据视频资源路径加载并解析视频后,调用MediaPlayer.setDataSource()和MediaPlayer.Start()方法,实现在播放视图中预览播放视频,转到S104。S104:当用户点击列表界面中的全屏播放功能按键时(手机软件中通常在播放视图中提供一个全屏按钮实现触发,在安卓电视设备上焦点在播放视图上时点击遥控器确认键实现触发),触发视频全屏切换功能(即需要将视频切换至播放界面全屏播放),转到S105。S105:保存播放视图中播放的最后一幅视频图片后,在列表界面中删除播放视图,但不停止和释放播放器,转到S106。S105中删除播放视图的方法为:通过单帧布局的接口方法将播放视图从列表界面删除,例如调用预留frameLayout.removeAllViews()方法实现。S106:调用列表界面activity的onDestory()方法,关闭列表界面、并释放列表界面占用的内存;调用播放界面activity(activity的生命周期由安卓系统控制)的onCreate()方法创建并显示播放界面,转到S201。S201:在播放界面中预留1层FrameLayout,将S105中保存的视频图片加载至FrameLayout中,转到S202。S202:按照全屏显示的尺寸参数(视图高度和视图宽度),修改视频图片的尺寸后,将视频图片在播放界面中全屏显示(实际使用方法与S102相同),转到S203。S203:在视频图片中播放视频,由于S105中未停止和释放播放器,因此能够直接在播放界面中播放视频,实现无缝切换至全屏播放,转到S204。S204:当用户点击播放界面中退出全屏功能按键时(手机应用中通过返回键或返回按钮实现触发,在安卓电视上通过用户按遥控器返回键实现触发),触发视频预览播放切换功能(即需要将视频切换至列表界面预览播放),转到S205。S205:根据S105中的删除方法,在播放界面中删除视频图片;调用播放器的接口方法实现关闭播放器、以及释放播放器占用的内存,例如安卓原生播放器MediaPlayer.Stop()和MediaPlayer.Release()方法,转到S206。S206:调用播放界面activity的onDestory()方法,关闭播放界面、并释放播放界面占用的内存;调用列表界面activity的onCreate()方法创建并显示列表界面,转到S101。本专利技术实施例中的安卓应用中预览视频的全屏播放系统,包括列表界面子系统和播放界面子系统。列表界面子系统用于:收到列表视图获取信号后,在列表界面中获取播放视图,按照指定尺寸参数修改播放视图的尺寸,在播放视图中播放视频;需要将视频切换至播放界面全屏播放时,保存播放视图中播放的最后1幅视频图片后,释放列表界面占用的内存;创建并显示播放界面,向播放本文档来自技高网...

【技术保护点】
一种安卓应用中预览视频的全屏播放方法,其特征在于,该方法包括以下步骤:步骤A:在列表界面中获取播放视图,按照指定尺寸参数修改播放视图的尺寸,在播放视图中播放视频;需要将视频切换至播放界面全屏播放时,保存播放视图中播放的最后1幅视频图片后,释放列表界面占用的内存;创建并显示播放界面,转到步骤B;步骤B:在播放界面中获取视频图片,将视频图片的尺寸参数设置为全屏,在视频图片中播放视频;需要将视频切换至列表界面预览播放时,在播放界面中删除视频图片;释放播放器和播放界面占用的内存;创建并显示列表界面,转到步骤A。

【技术特征摘要】
1.一种安卓应用中预览视频的全屏播放方法,其特征在于,该方法包括以下步骤:步骤A:在列表界面中获取播放视图,按照指定尺寸参数修改播放视图的尺寸,在播放视图中播放视频;需要将视频切换至播放界面全屏播放时,保存播放视图中播放的最后1幅视频图片后,释放列表界面占用的内存;创建并显示播放界面,转到步骤B;步骤B:在播放界面中获取视频图片,将视频图片的尺寸参数设置为全屏,在视频图片中播放视频;需要将视频切换至列表界面预览播放时,在播放界面中删除视频图片;释放播放器和播放界面占用的内存;创建并显示列表界面,转到步骤A。2.如权利要求1所述的安卓应用中预览视频的全屏播放方法,其特征在于,步骤A具体包括以下步骤:步骤A01:在列表界面中预留1层FrameLayout,获取播放视图并加载至单帧布局中,转到步骤A02;步骤A02:按照列表界面中预览视图的尺寸参数修改播放视图的尺寸,将修改后的播放视图覆盖至预览视图上,转到步骤A03;步骤A03:将播放视图对应的视频资源路径传递至播放器,播放器根据视频资源路径解析视频后,在播放视图中进行播放,转到步骤A04;步骤A04:需要将视频切换至播放界面全屏播放时,保存播放视图中播放的最后1幅视频图片后,在列表界面中删除播放视图;关闭列表界面,释放列表界面占用的内存;创建并显示播放界面,转到步骤B01;步骤B具体包括以下步骤:步骤B01:在播放界面中预留1层单帧布局,将步骤A04中保存的视频图片加载至单帧布局中,转到步骤B02;步骤B02:按照全屏显示的尺寸参数,修改视频图片的尺寸后,将视频图片在播放界面中全屏显示,转到步骤B03;步骤B03:在视频图片中播放视频,转到步骤B04;步骤B04:需要将视频切换至列表界面预览播放时,在播放界面中删除视频图片;关闭播放器和播放界面,释放播放器和播放界面占用的内存;创建并显示列表界面,转到步骤A01。3.如权利要求2所述的安卓应用中预览视频的全屏播放方法,其特征在于:步骤A01中所述播放视图的获取流程为:判断播放视图是否存在,若是,直接获取播放视图;否则初始化播放器,在播放器中获取指定的播放视图。4.如权利要求2或3所述的安卓应用中预览视频的全屏播放方法,其特征在于:步骤A02和步骤B02中所述尺寸参数均包括视图高度和视图宽度。5.一种安卓应用中预览视频的全屏播放系统,其特征在于,该系统包括列表界面子系统和播放界面子系统;列表界面子系统用于:收到列表视图获取信号后,在列表界面中获取播放视图,按照指定尺寸参数修改播放视图的尺寸,在播放视图中播放视频;需要将视频切换至播放界面全屏播放时,保存播放视图中播放的最后1幅视频图片后,释放列表界面占用的内存;创建并显示播放界面,向播放界面子...

【专利技术属性】
技术研发人员:龚宁
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1