afinal框架之Android视频下载,指定路径

afinal框架作为最受欢迎的安卓框架之一,它的功能也是尤其多的,主要分为下面4大模块:                                         

 

1.FinalDB模块:android中的orm框架,一行代码就可以进行增删改查。支持一对多,多对一等查询。

 

2.FinalActivity模块:android中的ioc框架,完全注解方式就可以进行UI绑定和事件绑定。无需findViewById和setClickListener等。

 

3.FinalHttp模块:通过httpclient进行封装http数据请求,支持ajax方式加载。

 

4.FinalBitmap模块:通过FinalBitmap,imageview加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象。

<!--EndFragment-->不过今天主要试验的是FinalHttp这个功能来对网络视频进行一个下载,不出意外地话,你可以在半个小时以内做出一个手机视频下载器了。指定下载路径到本地文件夹,用本地播放器来播放

那么在敲击代码之前,还有一些准备工作需要去做。

================================================================================

一:#准备好URL#

网上大牛的文章很多,但是无一例外,他们没有告诉我如何寻找能够下载视频的URL,就是下载地址,当然了可能是我太小白了,大神路过莫嘲笑---,虽然找到一个URL有点难度,但是找到一个视频是绝对简单的,首先在网上找一个视频:

第一步:找到您需要下载的视频或专辑页面

 会跳到一个搜索页面,随便点一集视频的链接:


afinal框架之Android视频下载,指定路径


 然后粘贴到硕鼠官网解析出下载地址。

具体详细的点击:http://www.flvcd.com/index.htm   硕鼠的官网,里面有新手入门详细解答(妈妈再也不怕我找不到视频下载地址啦)

二:#准备导入afinal.jar包#

网上可下载的包非常多,可以自行百度下载,博主讲述afinal数据存储的文章也有下载包,有心的同学可以找找。

然后将jar包导入libs里面:


afinal框架之Android视频下载,指定路径
 

 ok万事俱备只欠东风了

=================================================================================

布局文件加入一个textview用于点击后进行下载并且监视下载进度以及下载后缓存路径

<TextView
        android:id="@+id/videopress"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/image"
        android:layout_below="@+id/image"
        android:layout_marginTop="85dp"
        android:onClick="loadvideo"
        android:text="点击下载视频" />

 MainActivity里:

class loadvideo implements OnClickListener{

		@Override
		public void onClick(View v) {
			//初始化FinalHttp
			FinalHttp fh=new FinalHttp();
			//文件保存路径
			 File f = new File("/storage/emulated/0/imageloader/video"); 
			 //文件路径不存在则新建
			 if (!f.exists()) {  
	            f.mkdir();
	        }  
			 //设置下载地址,缓存地址,设置支持断点续传,随时停止下载任务 或者 开始任务,Ajax异步加载,开始下载
			fh.download("http://f01.v1.cn/group1/M00/13/9F/CgoBNlJINEyACQ0uAGGgCQ1tRfA557.flv",
					"/storage/emulated/0/imageloader/video/岳麓书院.flv",  true,new AjaxCallBack<File>(){ 
	          //下载过程中,count是文件大小,current是下载了多少,做一个百分比显示
				public void onLoading(long count, long current) {  
	                vp.setText("下载进度:"+current+"/"+count);  
	           }  

	          //下载完成后输出下载地  
	           public void onSuccess(File t) {  
	               vp.setText("下载到:"+t==null?"null":t.getAbsoluteFile().toString());  
	           }  

	       });  
		}
		
	}

 这样你以为大功告成了么,nonono,一定记得添加权限在AndroidManifest.xml里面添加

<uses-permission android:name="android.permission.INTERNET" />  
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

 到这里大功告成用时4秒钟就下好了6M的视频

现在来让我们看一下效果吧

=================================================================================

【效果】:


afinal框架之Android视频下载,指定路径afinal框架之Android视频下载,指定路径


afinal框架之Android视频下载,指定路径afinal框架之Android视频下载,指定路径



 

 
 
 

 

相关推荐