Ios iPhone上的调试与模拟器对JSON值的解析不同

Ios iPhone上的调试与模拟器对JSON值的解析不同,ios,iphone,swift,swifty-json,Ios,Iphone,Swift,Swifty Json,我遇到了一个问题,当我在iPhone上运行应用程序时,我的表视图中填充了看起来像是汉字的内容。然而,当我通过模拟器运行应用程序时,我得到了预期的(英语)结果。下面是该问题的截图 在模拟器中运行 在iPhone上运行 下面是填充对象的代码 private func populateArtists(_ maxRecordsToPopulate: Int, json: JSON) { let artists = json["artists"]["items"] for i in

我遇到了一个问题,当我在iPhone上运行应用程序时,我的表视图中填充了看起来像是汉字的内容。然而,当我通过模拟器运行应用程序时,我得到了预期的(英语)结果。下面是该问题的截图

在模拟器中运行

在iPhone上运行

下面是填充对象的代码

private func populateArtists(_ maxRecordsToPopulate: Int, json: JSON) {

    let artists = json["artists"]["items"]

    for i in 0 ..< artists.count {

        if i < maxRecordsToPopulate {

            let artist = Artist()

            print(artists[i]["name"].string!)

            artist.name = artists[i]["name"].string!
            artist.detailUrl = artists[i]["href"].string!
            artist.id = artists[i]["id"].string!

            self.searchResults.artists.append(artist)

        }

    }

}
private func populateArtists(uRecordStopOpulate:Int,json:json){
让艺术家=json[“艺术家”][“项目”]
对于0中的i..
当我在其中放置断点时,返回的JSON值的解析方式似乎有所不同

在模拟器中运行的应用程序的输出

iPhone上运行的应用程序的输出

我想这可能是一个本地化设置或是手机上的某个地方,但我不知道如何确定是否是这样。我试着从手机上删除应用程序并重新安装,但也没用


我正在使用的框架是FacebookSDK、Alamofire和SwiftyJSON,以防它们中的任何一个都可能导致这个奇怪的问题。

通常这是HTTP请求中的
接受语言
头的问题。设备是否设置为其他语言?如果是,它将默认为该语言。您可以使用
NSMutableURLRequest
手动更改标头值,并将该值更改为。

通常,这是HTTP请求中的
接受语言
标头的问题。设备是否设置为其他语言?如果是,它将默认为该语言。您可以使用
NSMutableURLRequest
手动更改标题值,并将该值更改为。

您将获得不同的本地化版本的数据。在你的例子中--“クイ–ン" 是“Queen”的日文音译。JSON解析问题不会将罗马文本转换为日文音译,因此您将获得具有不同内容的JSON。

您将获得不同本地化版本的数据。在您的示例中--”クイ–ン是“皇后”的日文音译“.JSON解析问题不会将罗马文本转换为日文音译,因此您将获得不同内容的JSON。

设备未设置为其他语言,但出于任何原因,它在“设置”>“常规”>“语言和地区”下添加了日文。我猜是我的一个孩子不小心抓到了我的手机并加上了这个。感谢您为我指明了正确的方向。该设备没有设置为其他语言,但出于任何原因,它在“设置”>“常规”>“语言和地区”下添加了日语。我猜是我的一个孩子不小心抓到了我的手机并加上了这个。谢谢你给我指明了正确的方向。