ABBPlayerKit

ios开发视频播放后台下载功能实现 :

代码下载地址https://github.com/niexiaobo/ABBPlayerKit

github资料学习和下载地址:https://github.com/niexiaobo/

实现功能 :播放视频视频后台下载 (真机调试功能正常)

1、使用ZFPlayer播放视频(可以在线和本地播放,基于AVPlayer,调节音量和屏幕亮度)

2、使用 WHCNetWorkKit 实现下载,后台下载(多任务同时下载,单任务下载,下载进度,下载百分比,文件大小,下载状态)

Function: Play video, background downloading (device debugging function is normal) 1, using ZFPlayer play video (online and local playback) 2 Use WHCNetWorkKit Implementation, background downloading

实现功能 :播放视频 后台下载

1、使用 ZFPlayer 播放视频(可以在线和本地播放)

2、使用WHCNetWorkKit 下载,后台下载

3、使用CoreModel 存储下载列表信息数据(已添加库,待加功能,当前存储是用NSKeyedUnarchiver)

设置

CocoaPods 命令使用:

    $ cd /Users/wangzz/Desktop/CocoaPodsTest
$ touch Podfile
$ vim Podfile

添加库

    pod 'Masonry'  (约束库)
pod 'SDWebImage'
pod 'FDFullscreenPopGesture'
pod 'WHCNetWorkKit' (下载库)
//拖入ZFPlayer文件到项目中 (播放器)
$ pod install --verbose --no-repo-update
或者
$ pod update --verbose --no-repo-update

项目设置

    1、项目(General) - Capabilities - Background Modes 开启(ON),Background fetch

    //添加_sqlite3.tbd 依赖(项目中导入了数据库操作库)

功能代码 (下载demo)

注意事项:

    1、播放音视频的demo设置全局断点All Exceptions 会导致(Xcode异常:0 __cxa_throw) libc++abi.dylib`__cxa_throw:0x10df1bc6b <+0>: pushq %rbp,........
(但是不是崩溃,不连接xcode运行不会崩溃,连接xcode运行时就会停顿在这里),是因为添加了全局断点:All Exceptions,但是没有设置oc!

    2、播放界面不能横屏适配时,查看项目是否禁止横屏,否则需要强制设置该控制器横屏

    3、重新运行导致崩溃:

解决办法: 第1种方法.点击当前的模拟器,点击IOS Simulator->Reset Content and Settings...->Reset,然后会重置模拟器,再编译代码可登录模拟器成功 第2种方法.点击Xcode->Product->Clean 第3种方法.将模拟器上的当前运行的app删除,再重新加载(长按模拟器的屏幕,点击当前报错的app 删除) 第4种方法.在info.plist文件中修改bundle的版本号 我遇到的问题是上述几种方法只能暂时解决,当我一修改代码时,又重新报错,然后我把我项目里的那个Resources(就是存储图片的那个包)给删除了, 然后重新建分组,但是资源包的名字不叫Resources,然后重新clean,结果问题解决了,我想原因可能是我的Resources与Xcode里冲 突了,然后Xcode不能打包app到模拟器上吧​ 一般来说,手动删除了模拟器沙盒里面的文件夹,可能会出现这样的问题,最快捷有效的方法是重新设置模拟器,而不是重启模拟器。。。

运行效果

ZFPlayer播放展示图

WHCNetWorkKit下载展示图

ios开发视频播放后台下载功能实现 :1,ios播放视频 ,包含基于AVPlayer播放器,2,实现下载,iOS后台下载(多任务同时下载,单任务下载,下载进度,下载百分比,文件大小,下载状态)(真机调试功能正常)的更多相关文章

  1. 新增WiFi真机同步与实时预览功能 简化真机调试步骤

    APICloud工具插件为开发者提供iOS和Android平台真机同步调试功能,不仅可以通过USB方式进行APP真机同步功能,更新增WiFi真机同步和WiFi真机实时预览两大功能,方便开发者在开发过程 ...

  2. iOS学习笔记(十)——iOS真机调试

    前面一直使用模拟器运行,今天使用了真机调试,这一篇介绍一下真机调试.真机调试需要99$注册,如果有注册过的账号,也可以使用注册账号邀请你加入一个账号下,注册账号可以给你分配权限,我也是使用的邀请成为开 ...

  3. Android+Chrome 真机调试H5页面实践

    前言 使用weinre在真机上调试H5页面,有一个突出的缺点,就是无法调试真机上的样式,真机上页面动态创建的dom在weinre的Elements面板显示不出来,所以调试真机上的页面样式也就无从谈起. ...

  4. Windows 下 Hbuilder 真机调试(Android,iphone)

    概述:主要讲讲自己在使用 HBuilder 真机调试功能时遇到的问题,以及如何解决.Android 相对没有遇到什么大问题,在电脑安装如360手机助手就可以正常使用了,主要问题是在 iphone 上( ...

  5. XE7 & IOS开发之开发账号(1):开发证书、AppID、设备、开发授权profile的申请使用,附Debug真机调试演示(XCode所有版本通用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...

  6. 【iOS开发必备指南合集】申请企业级IDP、真机调试、游戏接入GameCenter 指南(实现仿官方的成就提示)、游戏接入OpenFeint指南;

    本站文章均为李华明Himi原创,转载务必在明显处注明:(作者新浪微博:@李华明Himi) 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-c ...

  7. iOS开发:创建真机调试证书及描述文件

    iOS开发:创建真机调试证书及描述文件 关于苹果iOS开发,笔者也是从小白过来的,经历过各种困难和坑,其中就有关于开发证书,生产证书,in_house证书,add_Hoc证书申请过程中的问题,以及上架 ...

  8. XE8 & IOS开发之免费证书真机调试:开发证书、AppID、开发授权profile的申请,附Debug真机调试演示(XCode7 Beta版或以上版本适用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,苹果发布Xcode ...

  9. XE7 & IOS开发之开发账号(3):证书、AppID、设备、授权profile的申请使用,附Debug真机调试、Ad hoc下iPA文件生成演示(XCode5或以上版本推荐,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...

随机推荐

  1. MFC 任务托盘经常消失问题

    经常发现自己写的程序任务托盘会无缘无故的消失,但是进程还是存在的,原来是资源管理器异常的时候,重新生成的时候,程序需要重新添加下任务托盘. 当explorer进程重启,taskbar将会被创建,tas ...

  2. Accelerated C++:通过演示样例进行编程实践——练习解答(第9章)

    我的Github地址:https://github.com/lanbeilyj/Accerlerated-C-plus-plus 9-0. Compile, execute, and test the ...

  3. 1.14 Python基础知识 - 文件操作

    应用程序往往需要从磁盘文件中读取数据,或者把数据存储到磁盘中文件里,以持久的保存数据.文件可以看作是数据的集合,文件的输入与输出通过流来实现.流有5种基本的操作:打开.读取.写入.改变当前位置和关闭. ...

  4. Redis原理(一)

    基础和应用 1.Redis是远程调用技术的首字母缩写. 2.Redis可以用来做什么? Redis可以用来做缓存. 分布式锁 3.Redis的应用举例 记录帖子的点赞数.评论数和点击数.(使用HASH ...

  5. 将Maven的Java Project转换或修改为Web Project

    将Maven的Java  Project转换为Web Project关键是需要了解Eclipse和MyEclipse的工程中如下文件.classpath..project. .mymetadata和s ...

  6. 为easyUI的dataGrid加入自己的查询框

    dataGrid作为easyUI的一个核心组件,其功能上是非常强大的. 可是外观上似乎就有点差强人意了,首先说一下我对dataGrid外观的2点感受 1.图标不好看,且尺寸非常小(16x16)-- 关 ...

  7. dbms_stats

    dbms_stats全部的功能包例如以下: GATHER_INDEX_STATS:分析索引信息 GATHER_TABLE_STATS:分析表信息,当cascade为true时,分析表.列(索引)信息 ...

  8. Day2:数据类型

    一.数字 1.整型(int),无长整型.python3.x,不论多大的数都是int #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuh ...

  9. x264代码剖析(十五):核心算法之宏块编码中的变换编码

    x264代码剖析(十五):核心算法之宏块编码中的变换编码 为了进一步节省图像的传输码率.须要对图像进行压缩,通常採用变换编码及量化来消除图像中的相关性以降低图像编码的动态范围.本文主要介绍变换编码的相 ...

  10. 装饰模式和python装饰器

    装饰器和装饰模式 先给出两者的定义: - 装饰器:装饰器是一个非常著名的设计模式,常常被用于有切面需求的场景.较为经典的有插入日志.性能測试.事务处理等. 装饰器是解决这类问题的绝佳设计.有了装饰器, ...