我无法初始化 NSInputStream

2024-02-03

请帮助我,我快疯了。 我需要创建一个NSInputStream这样我就可以通过 wifi 从相机读取实时预览。 liveViewStream 是一个NSInputStream-在我的实现中声明的实例变量,如下所示:

@implementation MKSonyCamHandler{
    NSInputStream *liveViewStream;
}

liveViewURL是一个有效的 URL,当我连接到相机的网络时,我可以在浏览器中打开它(尽管我认为这没有任何区别)。我已经检查它是否存在,不为零并且具有我期望的值。 但是当我这样做时:

liveViewStream = [[NSInputStream alloc] initWithURL:liveViewURL];
DLog(@"%@", liveViewStream);

alloc-init 命令之后的 DLog 每次都会记录“(null)”,如果我知道为什么,那该死的。有人遇到过这种情况吗?我在这里遗漏了一些明显的东西吗? 这是我第一次合作NSStreams,是否存在可能是原因的常见陷阱? 文档明确指出 -initWithURL:

Creates and returns an initialized NSInputStream object that reads data from
the file at a given URL.

有任何想法吗?我开始觉得这里真的很愚蠢。

编辑:我正在使用 ARC。


谢谢大家,我找到了。

问题是,我的问题已经有了我需要的所有线索,因为,就像我写的那样, NSStream 的 -initWithURL: 将

Create and return an initialized NSInputStream object that reads data from
the file at a given URL.

我没有看到的是,这仅适用于本地来源。如果您想要远程主机(我有无线网络连接),您需要使用其他东西,因为,我在这里再次引用文档:

The NSStream class does not support connecting to a remote host on iOS.

好吧,无论其价值如何,您需要创建一个CFReadStreamRef and a CFWriteStreamRef,然后使用魔法函数CFStreamCreatePairWithSocketToHost将它们连接到您的主机。之后,您可以将它们投射到NSInputStream and NSOutputStream分别,它们将按预期工作。这是文档中的代码示例:

    CFReadStreamRef readStream;

    CFWriteStreamRef writeStream;

    CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)[website host], 80, &readStream, &writeStream);



    NSInputStream *inputStream = (__bridge_transfer NSInputStream *)readStream;

    NSOutputStream *outputStream = (__bridge_transfer NSOutputStream *)writeStream;

    [inputStream setDelegate:self];

    [outputStream setDelegate:self];

    [inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];

    [outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];

    [inputStream open];

    [outputStream open];

希望这可以在某个时候帮助某人。

@leparlon:

我赞成你的回答,因为你绝对走在正确的轨道上,建议使用 initWithData 。

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

我无法初始化 NSInputStream 的相关文章

  • iPhone AVFoundation 相机方向

    我一直在绞尽脑汁地试图让 AVFoundation 相机以正确的方向 即设备方向 捕获图片 但我无法让它工作 我看过教程 看过 WWDC 演示 还下载了 WWDC 示例程序 但即使这样也没有成功 我的应用程序的代码是 AVCaptureCo
  • 当自定义子视图处理触摸时防止 UITableView 滚动

    在我的 iOS 应用程序中 有一个 UITableView 其中一个单元格中包含一个自定义子视图 该单元格是一个交互式视图 它处理触摸事件 touchesBegan touchesEnded touchesMoved 以更新自身 问题是 当
  • 删除具有estimatedItemSize 的项目时 UICollectionView 单元格大小会调整

    我有一个简单的项目 其中的故事板仅包含一个UICollectionViewController 使用 Xcode 7 1 1 为 iOS 9 1 构建 class ViewController UICollectionViewControl
  • 步行、自行车和公共交通路线以及每种方式所需的时间,iPhone

    我正在使用以下网址来获取两个位置之间的行车路线 NSString apiUrlStr NSString stringWithFormat http maps google com maps output dragdir saddr dadd
  • 如何在 SQLite 中替换字符串?

    如何更新具有以下内容的表列 var mobile 233KKFSDK3234 Documents Page jpg 并将其替换为 Documents Page jpg 在 SQLite 中 注意 所有文字 除了 Documents 是动态的
  • 无法安装企业应用程序 - 此配置文件无法安装在此设备上

    我正在设置 Jenkins 来构建应用程序的企业版本 以便在我们的内部应用程序商店中分发 如果我将应用程序存档在 Xcode 中 然后在手机上下载内置的 ipa 则应用程序安装不会出现任何问题 但是当我使用 Jenkins 生成的具有相同私
  • 检查系统时间是自动还是用户设置

    我需要在当前的项目中设置用户证明时间 我围绕这个问题发现了很多不同的问题 但似乎没有一个问题有我正在寻找的答案 这些是我到目前为止看过的问题 XCODE 如何从设备获取 验证准确的时间戳 https stackoverflow com qu
  • NSOperation 中委托的使用

    我正在尝试利用CLLocationManager in an NSOperation 作为其中的一部分 我需要能够startUpdatingLocation然后等到收到 CLLocation 后才完成操作 目前我已经完成了以下操作 但是委托
  • 为什么没有收到(UDP 多播)数据包?

    所以 我一直试图弄清楚为什么这不起作用 但我没有任何线索 我已经成功地从 iPhone 发送数据包并在 Mac 上接收它们 根据 tcpdump 我的 mac 正确发送数据包 此外 如果我在模拟器中运行它 它工作得很好 这让我相信这是一个网
  • 如何更改便携式 xamarin ios 项目中的启动屏幕?

    我正在使用便携式 xamarin 形式 其中项目是 IOS 项目 在 IOS 项目中 我想创建闪屏 我在 ios 项目属性中添加了 Iphone 启动图像和 iPad 启动图像 当我运行该应用程序时 它显示默认的启动屏幕 我还尝试从 inf
  • iOS 设置 MKMapView 中心,因此提供的位置位于底部中心

    我有一个 MKMapView 和一个永不改变的 CLLocationCooperative2D 我想做的是将地图居中 以便该坐标将放置在地图的底部中心 我可以用简单的方法将地图集中在这个坐标上 MKCoordinateRegion view
  • 将语音添加到自定义 UIMenuController

    我创建了一个自定义UIMenuController in a UIWebView但它似乎摆脱了 说出选择 选项UIMenuController在那之后 所有测试设备上的 偏好设置 中都打开了发言选择选项 并且它出现在其他应用程序中 包括非
  • iOS NSURLSession,如何在didCompleteWithError中重试

    我想在我的服务器上尝试一次调用 直到成功为止 我想每 30 秒尝试一次 所以我使用 NSURLSession 进行通话 NSURLSessionDownloadTask task self session downloadTaskWithR
  • 如何更改 UINavigationController 后退按钮名称?

    我有一个UIViewController我正在从第一个视图控制器导航到第二个视图控制器 我想更改显示在navigationcontroller为了回去 SecondViewController secondController Second
  • 在 JSQMessagesViewController 中显示 LocationMediaItem

    我刚刚尝试实施LocationMediaItem in my Xamarin iOS应用程序使用JSQMessagesViewController 一切都很顺利 唯一的问题是UICollectionView应该显示位置的单元格永远停留在加载
  • 如何从 Firebase 同步检索数据?

    我有两个集合 即用户和问题 根据使用 userId 登录的用户 我检索currQuestion价值来自users收藏 基于currQuestion值 我需要检索question来自 Firebase 的文档Questions收藏 我使用下面
  • 如何将unix时间戳转换为iphone中的nsdate [重复]

    这个问题在这里已经有答案了 可能的重复 从 Unix 时间戳创建 NSDate https stackoverflow com questions 5827240 create nsdate from unix timestamp 我有一个
  • iOS 使用 NSColor 与 UIColor?

    有什么区别UIColor and NSColor 什么时候会使用每一种 我碰到NSColor在试图弄清楚的同时UIColor用于 iOS 中的属性字符串 我理解使用UIColor对于 UIKit 等 但我不认为NSColor对于这种事情确实
  • 选择 UITableViewCell 时 UIView 背景颜色消失

    我在界面生成器中构建了一个简单的 tableViewCell 它包含一个包含图像的 UIView 现在 当我选择单元格时 会显示默认的蓝色选择背景 但 UIView 的背景颜色消失了 我的 UITableViewCell 的实现文件没有做任
  • iPhone 3GS 上的 ARM 与 Thumb 性能比较,非浮点代码

    我想知道是否有人有关于 iPhone 3GS 上 ARM 与 Thumb 代码性能的硬性数据 特别是对于非浮点 VFP 或 NEON 代码 我知道 Thumb 模式下的浮点性能问题 更大的 ARM 指令的额外代码大小是否会在某个时刻成为性能

随机推荐

  • Chart.js:组合线形和条形数据

    我想创建一个图表Chart js http www chartjs org 包含两个不同的数据集 一个线数据集和一个条形数据集 您可以在这里查看我的完整代码 function initCombinedChart canvas each fu
  • ruby 访问静态变量

    class A ololo 1 end A ololo A new ololo NoMethodError undefined method ololo 好的 我需要一个 attr reader class B ololo 1 attr r
  • Tensorflow 安装和导入正确,但在尝试使用时抛出异常

    我在使用张量流时遇到问题 看来安装和导入正确 然而 当我调用它时 解释器会抛出一长串异常 其节略如下 我使用的是 OS X El Capitan v 10 11 6 Macbook Pro 15 英寸 2009 年中 2 8 GHz 英特尔
  • 将 Unix 移植到 Windows - pwd.h 的使用

    我正在尝试编译库尼汉 http sourceforge net projects libunihan 使用 MinGW 编写代码 但遇到了需要移植的功能 该函数的目的是获得规范的路径表示 它用pwd h 这是 POSIX 而 MinGW 不
  • 有没有办法让 Pandas ewm 在固定窗口上运行?

    我正在尝试使用熊猫 ewm 函数 https pandas pydata org pandas docs stable reference api pandas DataFrame ewm html计算指数加权移动平均线 然而我注意到信息似
  • 强制拆包的目的

    在 swift 文档中 您可以找到以下内容 if convertedNumber nil println convertedNumber has an integer value of convertedNumber prints conv
  • 如何从Web Worker调用共享Worker?

    是否可以从 Web Worker 调用 Shared Worker 你能给我举个例子吗 就我而言 我有一些网络工作者 我需要在他们之间共享一个单例服务 您可以使用类似于以下内容的技术https stackoverflow com a 307
  • TCPIP 3次握手

    为什么在 TCP 3 次握手的第 3 部分期间没有传输数据 例如 A 到 B SYN B 到 A ACK SYN A 到 B ACK 为什么数据不能与这个 ACK 一起传输 我一直认为这是为了将会话建立阶段与数据传输阶段分开 以便no传输真
  • 将排序后的 hashmap 的键值存储在 string[] 中

    我很抱歉发布这个不清楚的问题 这是我第一次使用 hashmap 因此我很困惑 试图在这里以更好的方式解释这个问题 将 hashmap 的键值存储在 string 中 https stackoverflow com questions 741
  • 如何在 JQuery 1.5.x 中延迟自动打开模态对话框窗口?

    单击以下对话框后效果很好 a href a 位于 html 底部的 javascript 触发该操作 jQuery dialogX dialog bgiframe true autoOpen false modal true 现在 我希望在
  • Azure Web App 和 Azure SQL Server 的 VNet 集成

    我有一个 Azure Web App 和一个 Azure SQL Server 它们都位于同一订阅中 它们都连接到同一 VNet 子网 如下面的快照所示 SQL Server 配置为不允许 Azure 资源和服务访问服务器 因为它应该只允许
  • 使用 Java 删除 XML 中的空标签

    我正在为 servlet 提供一些功能 我想做的一件事是 当接收 InputStream 基本上是解析为 XML 格式的 PDF 文档 时 将该数据设置为 String 对象 然后我尝试删除所有空标签 但到目前为止我还没有得到任何好的结果
  • eclipse 调试器:附加 Maven 依赖项的源代码?

    我想在 myEclipse 8 中调试我们的 web 应用程序时使用 maven 管理的依赖项的源代码 我已设法将源附加到 Maven Managed Dependency 类路径容器中的库 即当我从依赖项打开类文件时 例如使用 Ctrl
  • MongoDB db.getCollection.find 和 db.tablename.find 之间的区别?

    有什么区别 db getCollection booking find and db booking find 它们是否完全相同 或者我什么时候应该使用哪一个 db getCollection booking find id 0J0DR d
  • 如何使用opencv丢弃图像的边缘?

    我正在预处理一些图像 以便从我感兴趣的区域中删除背景 然而 由于相机的焦点 我的长凳上的图像边缘呈圆形 如何丢弃这些圆角边缘并能够仅从图像中删除我感兴趣的对象 下面的代码我可以删除图像的背景 但由于周围的边缘 它无法正常工作 import
  • Android KeyHash 调试时有效,从 APK 安装应用程序时无效

    我使用了 KeyHashthis https stackoverflow com a 6665263 4543067 当然 我将这个 KeyHash 包名称和主要活动类 复制到facebook设置中根据这个 https developers
  • 使用架构标头和目录查找进行 Xml 验证

    如何在不显式指定架构文件的情况下验证 xml 使用 libxml 文件 xsd 文件位于 xml 文件的标头中 相应的 xsd 文件 URL 应使用 Catalog xml 位于本地文件系统中 看起来目前不可能 libxml 2 8 0 这
  • 如何获取 cookie 并将其用于其他请求,例如 POST ( iOS )?

    My 上一个问题 https stackoverflow com questions 12538782 how to remain logged in until user decides to logout 是关于我每次都必须登录才能执行
  • 在Ruby中,如果我们定义了一个方法调用“c=”,为什么不能通过c = 3来调用它?

    例如 如果我们 def c foo p hello end c 3 c 3 并且不会打印 hello 我知道它可以被调用self c 3但为什么 还可以通过哪些其他方式调用它 c 3 and c 3 与它完全等效 始终被解释为局部变量赋值
  • 我无法初始化 NSInputStream

    请帮助我 我快疯了 我需要创建一个NSInputStream这样我就可以通过 wifi 从相机读取实时预览 liveViewStream 是一个NSInputStream 在我的实现中声明的实例变量 如下所示 implementation