【问题标题】:AFNetworking crashing in multilingual appAFNetworking 在多语言应用程序中崩溃
【发布时间】:2017-05-17 11:04:45
【问题描述】:

Ride[source_name]=2152,%20Mohali%20Stadium%20Rd,%20Phase%2010,%20Sector%2064,%20Sahibzada%20Ajit%20Singh%20Nagar,%20Punjab%20160062,%20भारत

此参数在以印地语运行时导致崩溃,而在西班牙语和英语下运行良好。请建议我。崩溃描述如下:-

*** 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“无效参数不是 满足:URLString'


【问题讨论】:

    标签: ios afnetworking multilingual


    【解决方案1】:

    检查一下

    目标 - C

    NSString *string = @"भारत";
    NSString *encoded = [string stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLFragmentAllowedCharacterSet]];
    

    Swift 3.0

    let string = "भारत"
    let urlString = string.addingPercentEncoding( withAllowedCharacters: . urlUserAllowed)
    

    输出 :: %E0%A4%AD%E0%A4%BE%E0%A4%B0%E0%A4%A4

    【讨论】:

      【解决方案2】:

      添加下面的代码行以避免url中的无效参数。

      NSString *str = ...; // Your URL
      NSCharacterSet *set = [NSCharacterSet URLHostAllowedCharacterSet]; 
      NSString *result = [str stringByAddingPercentEncodingWithAllowedCharacters:set];
      

      ios 9.0 之前已弃用的代码:

      NSString *str = ...; // Your URL
      NSString *urlAsString = [str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
      

      【讨论】:

      • stringByAddingPercentEscapesUsingEncoding 在 iOS 9+ 中已弃用
      • 你的仪式@shahrukhshikalgar。我已经更新了我的答案
      猜你喜欢
      • 1970-01-01
      • 2013-03-04
      • 2011-09-04
      • 2014-12-06
      • 2011-10-01
      • 2015-02-05
      • 2018-09-05
      • 2017-04-24
      • 1970-01-01
      相关资源
      最近更新 更多