AVRoutePickerView 和 MPVolumeView 投屏

2023-10-30

     最近小萌的项目有投屏的需求,开始使用的是保利威的SDK,但是保利威的SDK不管iOS或者Android都是只支持乐播投屏,但是我们项目的需求是AirPlay投屏

    在我查找很多资料的过程中发现AVRoutePickerView和MPVolumeView都是支持投屏,但是AVRoutePickerView支持iOS11以上的系统,iOS11一下的系统只能用MPVolumeView来做投屏了。

    AVRoutePickerView 和 MPVolumeView 的区别:

1、AVRoutePickerView支持iOS11以上

2、MPVolumeView支持iOS11以下

3、AVRoutePickerView无论有没有投屏设备都会显示图标

4、MPVolumeView在附近无投屏设备的情况下是不会显示图标的

 

    小萌充分体验了优酷、爱奇艺、腾讯、芒果等有投屏功能的app,发现他们的投屏功能也是基于这两个控件做的,在网上虽然说了各种它们的使用方法,但是都是讲了最基本的用法

  

  但是在具体项目中,我们想要的绝对不是这样的图标,我们需要更换图标,这件小事让我花费了不少的时间

主要代码:

 


                
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AVRoutePickerView 和 MPVolumeView 投屏 的相关文章

  • 如何在 Swift 中使用 CoreBluetooth 更新 BLE 设备的电池电量?

    func peripheral peripheral CBPeripheral didDiscoverCharacteristicsFor service CBService error Error for c in service cha
  • 如何使用 SwiftUI 获取多个屏幕上的键盘高度并移动按钮

    以下代码获取键盘显示时的键盘高度 并将按钮移动键盘高度 在转换源 ContentView 和转换目标 SecibdContentView 处以相同的方式执行此移动 但按钮在转换目标处不移动 如何使按钮在多个屏幕上移动相同 import Sw
  • 保存来自 TrueDepth 相机的深度图像

    我正在尝试保存 iPhone X TrueDepth 相机的深度图像 使用AVCam照片滤镜 https developer apple com library content samplecode AVCamPhotoFilter Lis
  • NSURLCache 不缓存

    我正在使用 Xcode 6 1 6A1030 iOS7 和 iOS8 模拟器 NSURLCache 似乎没有缓存任何东西 我使用 Cache Control 标头 我的服务器返回带有 max age 6000 的 Cache Control
  • Swift:协议、结构、类

    我开始学习 Swift 语言 但在理解协议 结构和类方面遇到了困难 我来自 Android 方面的编程 所以我相信 Swift 协议基本上是 Java 接口 其中每一个的正确用例是什么 这些类比并不 完全 正确 但这就是我所理解的要点 是的
  • UILabel 中的文本未垂直居中

    我使用以下代码创建了一个标签 func setupValueLabel valueLabel numberOfLines 1 valueLabel font UIFont name Avenir Black size 50 valueLab
  • iOS Swift 和 reloadRowsAtIndexPaths 编译错误

    我与 xCode Swift 陷入僵局并刷新 UITableView 的单行 这条线有效 self tableView reloadData 而这条线没有 self tableView reloadRowsAtIndexPaths curr
  • 在 UITableView 的部分标题文本下方添加一些边距

    我已经设计了标题文本的样式 func tableView tableView UITableView cellForRowAtIndexPath indexPath NSIndexPath gt UITableViewCell let ce
  • 如何将自定义 C 代码放入 SwiftPM 包中?

    我正在尝试将 C 代码打包到 Swift 模块中 我们称之为CModule 一旦我将其放入项目的基本文件夹中 Swift模块 并配置了搜索路径 我可以在 Swift 文件中自动完成工作 并检测错误 警告 问题是 导入时它无法识别该模块 并且
  • 如何在 swiftUI (macOS) 中检测按键按下和释放

    除了标题之外没什么可说的 我希望能够在按下按键和释放按键时 在 macOS 上 在 swiftUI 视图中执行操作 在 swiftUI 中是否有任何好的方法可以做到这一点 如果没有 有什么解决方法吗 不幸的是 键盘事件处理是其中一个令人痛苦
  • 删除派生数据文件夹后,Xcode 不断重新创建派生数据文件夹

    自动完成功能在 Xcode 6 中不再起作用 我四处搜索 发现删除派生数据文件夹可以解决此问题 每次我删除它时 它都会回来 然后就不会再自动完成了 有什么建议么 Thanks 没关系 我解决了这个问题 我没有声明需要在类内的方法中使用的变量
  • 将自定义图像设置为 UIBarButtonItem 但它不显示任何图像

    我想将自定义图像设置为 UIBarButtonItem 但它只显示周围的矩形框并且不显示实际图像 func setupBrowserToolbar let browser UIToolbar frame CGRect x 0 y 20 wi
  • Swift 3 中的 JSON 解析

    有没有人能够找到一种在 Swift 3 中解析 JSON 文件的方法 我已经能够返回数据 但在将数据分解为特定字段时我没有成功 我会发布示例代码 但我已经尝试了很多不同的方法但没有成功 并且没有保存任何代码 我想要解析的基本格式是这样的 提
  • Swift 中的柯里函数

    我想创建一个返回柯里函数的函数 如下所示 func addTwoNumbers a Int b Int gt Int return a b addTwoNumbers 4 b 6 Result 10 var add4 addTwoNumbe
  • iOS 防止计时器 UILabel 在数字变化时“晃动”

    我有一个UILabel它以以下格式显示计时器的输出MM ss SS 分 秒 厘秒 但是随着厘秒宽度的变化 它从左向右 摇动 例如 11 比 33 窄 有什么办法可以减轻这种情况吗 我尝试过将其居中 给它固定的宽度 但它们似乎没有帮助 从iO
  • ios - Gamekit 的 GKOctree 未找到元素

    我正在尝试使用GKOctree https developer apple com documentation gameplaykit gkoctree用于高效检索 3D 空间中的对象 然而 以下代码似乎没有按预期工作 import Gam
  • Swift:如何减少 didupdatelocations 调用

    我想出了一些代码来打印我所在位置的地址和邮政编码 这是在 didupdatelocation 函数中完成的 我遇到的唯一问题是 didupdatelocation 函数每秒都会更新该地址 因为这电池效率非常低 所以我一直在寻找使用间隔的方法
  • 所需框架与静态库

    构建现代框架 https developer apple com videos play wwdc2014 416 says 每个应用程序都有自己的自定义框架副本 https stackoverflow com a 15262463 242
  • 为什么我的视图仍然以横向呈现?

    我的视图是由导航控制器控制的 因此我将导航控制器支持的方向设置为明确的纵向和纵向UpSideDown 这可以工作 但是如果调用视图时前一个视图处于横向状态 它将以横向方式呈现并保持横向状态 直到设备旋转 如何防止这种情况发生 这是我的代码
  • 列表不符合 Encodable

    因此 我正在使用领域 并且两个模型之间有以下关系 A unit has many tests Unit model class Unit Object Decodable objc dynamic var id String let tes

随机推荐

  • 5 最长回文子串(区间 dp)

    1 问题描述 给你一个字符串 s 找到 s 中最长的回文子串 示例 1 输入 s babad 输出 bab 解释 aba 同样是符合题意的答案 示例 2 输入 s cbbd 输出 bb 提示 1 lt s length lt 1000 s
  • GStreamer 组件笔记

    目录 下载地址 测试命令 GStreamer总览 基本流程 常用元件 下载地址 首先你需要从Index of data pkg windows下载库 您需要为开发人员和非开发人员下载并安装安装程序 例如对于 1 20 它是现在的最新版本 g
  • Sleuth服务跟踪大厂高频面试题:整合-Zipkin,Java性能优化面试题集锦

    SpringBootApplication EnableZipkinServer public class zipKinServerApplication public static void main String args Spring
  • 【Python+Appium】开展自动化测试(四)使用weditor进行元素定位

    目录 前言 一 weditor的安装与使用 二 遇到的问题 结语 前言 上一篇我们讲到了如何通过编写一个简单的Python脚本完成了登录app的操作 如何断言 如何编写一条完整的用例 那么今天继续我们的自动化测试第四天 使用weditor进
  • 考研之路漫漫,唯有持之以恒,方能得始终

    2019年10月25日 第一篇博客 我的考研梦 2022年考研 目标 深圳大学研究生 我 一个在19岁大二的懵懂无知少年 在大学生活里 过着浑浑噩噩的生活 曾经的目标是在大学找一个好的团队和好的导师 在经过高考的失利 在一所普通的本科里 像
  • Elasticsearch-认证xpack开启

    1 介绍 可以使用企业CA证书来完成这一步骤 但是一般情况下 我们可以通过elasticsearch自带的elasticsearch certutil的命令生成证书 然后各节点通过该证书可以进行安全通信 为节点创建证书 TLS TLS协议要
  • 使用CSS3设置条纹背景

    系列文章目录 CSS3实现半透明边框 1 CSS3实现多重边框 2 CSS3如何调整背景图片大小 3 CSS3背景定位 4 使用CSS3设置条纹背景 系列文章目录 前言 一 水平条纹 不等宽的条纹 多条纹背景 二 垂直条纹 三 斜向条纹 四
  • 创建Docker镜像(练习)

    目录 一 构建SSH镜像 二 Systemctl镜像 三 nginx镜像 四 Tomcat镜像 五 Mysql镜像 本章Dockerfile镜像制作都是基于centos 7 一 构建SSH镜像 mkdir sshd cd sshd vim
  • Mysql数据库存储原理

    转载 https blog csdn net weixin 40612082 article details 82179714 现在在做数据库服务器的开发工作 今天被问到存储过程 当时只是简单地回答了下 在网上搜索了下资料 才对存储过程有了
  • 中国互联网技术联盟推出“互联网+”资讯门户

    ITA1024中国互联网技术联盟7月正式推出专注 互联网 的资讯门户网站http abc ita1024 com 这也是国内首个专注于帮助中国企业有效落地 互联网 的服务平台 是为负责企业 互联网 转型战略的CEO CIO CFO CMO
  • 在centos官网下载系统镜像完整教程

    很多新手小白鼠想学习CentOS系统 不知道去哪里下载 随便去个第三方发现要么要注册 要么各种广告病毒 或好不容易找到官网 进去一看却一脸懵 不仅全英文 有些专业术语也不懂 下面我就带大家一起来学习一下如何在centos官网下载系统镜像 c
  • grpc使用总结(golang)

    1 环境安装 1 1 下载protoc程序 解压后 将protoc放入gobin目录中 wget https github com protocolbuffers protobuf releases download v24 0 rc2 p
  • 基于opencv的物体识别

    1 级联分类器 到底什么是级联分类器 其实就是把分类器按照一定的顺序联合到一起 一个分类器也许不好用 没关系 我给你多加几个 具体来说 OpenCV实现的Cascade 级联 分类器就是基于多个弱分类器对不同的特征进行依次处理 分类 来完成
  • 用PropertyDrawer自定义Inspector面板显示外观

    用PropertyDrawer自定义Inspector面板显示外观 2019年02月13日 11 53 25 萧 然 阅读数 22更多 个人分类 工具 版权声明 欢迎大家留言讨论共同进步 转载请注明出处 https blog csdn ne
  • Kotlin 25. Kotlin中如何引用其他xml中的view对象

    Kotlin 中如何引用其他xml中的view对象 比如 我们的 activity main xml 这么写
  • GPU是如何优化运行机器学习算法的?

    在机器学习中 绝大多数任务会涉及到耗费时间的大量运算 而且随着数据集的增加 运算量会越来越大 解决这个问题的一个方法就是使用多线程 在这篇文章中 我要结合代码介绍一下 GPU 加速 它是如何完成的 以及用于 GPU 任务的简单 API 下面
  • 三分钟入门Three.js:如何用JavaScript构建3D场景

    在Web开发中 三维图形越来越受到重视 而Three js作为一款基于WebGL的JavaScript 3D渲染库 为我们提供了一种简单 快捷的方式来创建复杂的3D场景 如果您刚开始学习Three js并想快速入门 那么本文将为您介绍如何用
  • 案例剖析

    产品与用户的交互离不开产品任务 尤其是B端产品 由多个任务构成 而每个任务的执行都对应着一或多条流程 流程完成的好坏与交互体验 产品目标的完成直接相关 产品流程优化是从企业整体业务流程目标出发 对当前流程进行充分梳理和显性化 在流程梳理清晰
  • 【MATLAB第11期】#源码分享

    MATLAB第11期 源码分享 时间序列数据绘图 横坐标更改为时间轴 横坐标轴参数更改 绘图问题解决方案 1 导入数据方式 识别时间数据 2 案例展示 1 打开数据 2 定义时间和数据 3 将时间数据转化为数值 4 绘图 绘图问题解决方案
  • AVRoutePickerView 和 MPVolumeView 投屏

    最近小萌的项目有投屏的需求 开始使用的是保利威的SDK 但是保利威的SDK不管iOS或者Android都是只支持乐播投屏 但是我们项目的需求是AirPlay投屏 在我查找很多资料的过程中发现AVRoutePickerView和MPVolum