gpt4 book ai didi

ios - Apple 会离线测试 iOS 应用程序吗?如果没有连接,如何处理错误?

转载 作者:行者123 更新时间:2023-11-28 09:34:46 25 4
gpt4 key购买 nike

我已经向 iTunes 提交了一个应用程序,但 Apple 因崩溃而拒绝了它。

我对崩溃报告进行了符号化和分析,发现它在 json 调用时崩溃了。

我尝试重现它,我发现当我关闭我的 wlan 时它就会发生。

  1. Apple 是否离线测试应用程序?
  2. 我该如何处理这个错误?并让我的 jsoncall 变得更好。

这是我的方法:

    var session = NSURLSession.sharedSession();
var uri = "/GetNews";
let request : NSMutableURLRequest = CreateRequest(uri, HTTPmethod: "GET");

let task : NSURLSessionDataTask = session.dataTaskWithRequest(request, completionHandler: {(data, response, error) in
var error: AutoreleasingUnsafeMutablePointer<NSError?> = nil;

let jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: nil, error: error) as? Dictionary<String, AnyObject>;
let resp : NewsResponse = NewsResponse(jsonData: jsonResult!);

completionHandler?(resp);
});
task.resume();

它在 let resp... 处崩溃,因为 jsonResult 为 nil 而我使用 !

最佳答案

当然,Apple 会离线测试应用程序,您也应该这样做。您应该计划每次需要互联网连接失败的调用,并且应该适本地处理每个错误。

适当的部分取决于您的应用。例如,某些应用程序(如 Facebook)可让您阅读已下载的帖子,并将您撰写的帖子排队等待在连接到互联网时发送。有些应用程序在没有互联网连接的情况下根本无法运行,除了显示错误消息(例如,iTunes radio )之外,它们没有任何意义。

如果您的应用是新闻阅读器,也许最好的办法是使用缓存并让他们阅读过去下载的新闻。一个简单的、不显眼的消息,让他们知道他们处于离线状态,并且一旦他们重新打开就会下载新文章就足够了;但是,就可用性和实用性而言,崩溃是非常糟糕的。

关于ios - Apple 会离线测试 iOS 应用程序吗?如果没有连接,如何处理错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31054037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com