小编Wil*_*ack的帖子

代码在模拟器中运行,在设备上运行时未发现dyld符号错误(Xcode 6 beta)

我正在尝试编译一些使用CFNetwork框架的代码,并且它在模拟器中运行得很好(部署目标为iOS 7.1),但是当我尝试在运行iOS 7.1的iPhone 5上运行它时,它抛出以下错误:

dyld:找不到符号:_NSURLAuthenticationMethodClientCertificate引自:/ var/mobile/Applications/......预期在/ var/mobile/Applications /中的/System/Library/Frameworks/CFNetwork.framework/CFNetwork中

至于我的应用程序的信息,它是用Swift编写的,我通过Parse导入CFNetwork,我通过Objective-C桥接头导入到我的Swift代码中.

正如其他人所建议的那样,我可以通过使CFNetwork框架可选而不是必需来解决此错误.但是,我的应用程序需要CFNetwork框架才能工作(我使用Parse作为后端,没有它就无法通信).

因此,我很好奇是否有其他人能够通过使用除上述之外的方法解决此问题.

xcode ios

12
推荐指数
1
解决办法
1621
查看次数

在Swift中使用C样式的unsigned char数组和按位运算符

我正在努力将一些Objective-C代码更改为Swift,我无法弄清楚如何在这个特定的代码实例中处理unsigned char数组和按位运算.

具体来说,我正在努力将以下Objective-C代码(处理CoreBluetooth)转换为Swift:

unsigned char advertisementBytes[21] = {0};
[self.proximityUUID getUUIDBytes:(unsigned char *)&advertisementBytes];
advertisementBytes[16] = (unsigned char)(self.major >> 8);
advertisementBytes[17] = (unsigned char)(self.major & 255);
Run Code Online (Sandbox Code Playgroud)

我在Swift中尝试了以下内容:

var advertisementBytes: CMutablePointer<CUnsignedChar>
self.proximityUUID.getUUIDBytes(advertisementBytes)
advertisementBytes[16] = (CUnsignedChar)(self.major >> 8)
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是Swift中的getUUIDBytes似乎只是将一个CMutablePointer<CUnsignedChar>对象作为一个参数,而不是一个CUnsignedChars数组,所以我不知道如何对adsBytes进行后续的按位操作,因为它似乎需要要成为unsignedChar数组.

另外,CMutablePointer<CUnsignedChar[21]>抛出一个错误,说Swift中的CMutablePointers不支持固定长度数组.

有人可以就潜在的解决方案或解决方案提出建议吗?非常感谢.

objective-c swift

8
推荐指数
1
解决办法
2946
查看次数

如何从AnyObject转发到UInt16?

我正在尝试将一些值传递给一个接受UInt16值作为参数的函数.

我通过Parse查询数据库来接收值.查询返回AnyObject类型的对象(我知道它是一个整数)!为了将它传递给函数,我必须将其转换为UInt16.但是,似乎Swift不喜欢这样,说UInt16不符合AnyObject协议.

我可以低估AnyObject的类型!成功的Int,但我不能将该Int转换为UInt16.

有谁知道如何解决这个问题?

swift

3
推荐指数
1
解决办法
7066
查看次数

标签 统计

swift ×2

ios ×1

objective-c ×1

xcode ×1