【发布时间】:2018-08-12 06:24:43
【问题描述】:
我有一个来自 zendesk 的 iOS 库,我使用他们给我的编号按类别对帮助台项目进行排序。这就是我告诉它我想要什么类别的方式:
hcConfig.groupIds = [115000159351]
但是,XCODE 正在抛出
的错误Integer literal '115000159351' overflows when stored into 'Int'
好的,我明白了。可能是因为数字超过 32 位。但是我有另一个我制作的应用程序,我有一个同样长的号码,而且这个应用程序构建得很好,没有错误。完全相同的代码,只是数字略有不同。
hcConfig.groupIds = [115000158052]
为什么一个项目会构建,而另一个不会?
参考这里是他们的说明: https://developer.zendesk.com/embeddables/docs/ios_support_sdk/help_center#filter-articles-by-category
【问题讨论】:
-
可能一个编译为 32 位应用,另一个编译为 64 位应用。
-
我检查了两个应用程序在构建设置中都是 arm64 :(
-
其实我发现了这个问题。我只是在模拟器上作为调试运行的一个没有错误的应用程序,所以它只构建 64 位版本。无法运行的应用程序我正在构建发布(存档)版本,因此它试图构建 64 位和 32 位。我需要同时支持 64 位和 32 位设备。那么如何在上面的 NSnumber 中使用数字 115000159351 并且仍然成功构建 32 位和 64 位?
-
hcConfig.groupIds = [115000159351 as Int64]呢? -
无法将类型“[Int64]”的值分配给类型“[NSNumber]”