我的应用程序有一个用户登录的登录屏幕。我们可以登录iPhone4,iPod 4,iPad 2和iPhone5模拟器。但是,当我们将应用程序拒绝时,将其提交到iTunes商店。 Apple提到他们无法登录应用程序。
我有密码的HMAC-SHA 256加密,在登录时我发送加密密码。那么,Apple为iPhone5实施的任何东西都不允许服务接受加密数据。
我没有iPhone5,我不想购买iPhone5,因为它太贵了。任何人都可以帮助我。
这是我的代码:
NSMutableURLRequest *theRequest =
[NSMutableURLRequest requestWithURL:[NSURL URLWithString:[url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60.0];
//do post request for parameter passing
[theRequest setHTTPMethod:@"POST"];
//set the content type to JSON
[theRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[theRequest addValue:userName forHTTPHeaderField:@"Username"];
[theRequest addValue:sha256(passWord) forHTTPHeaderField:@"Password"];
以下是Apple的评论:
我们发现您的应用在浏览时会出现一个或多个错误 iPhone 5运行iOS 6.0.1,在Wi-Fi和蜂窝网络上都有 不符合App Store审核指南。
答案 0 :(得分:3)
当我听到不同设备的问题时,我总是有疑问,当有网络内容时更是如此。你有没有在困难的网络条件下试过你的应用程序?你正确处理网络超时?你使用队列正确调度所有请求?你确定并发请求会像你期望的那样响应吗?
您可以使用网络链接调节器,您可以从Apple站点免费下载它并测试最坏的情况。我知道这些只是要点,但我希望他们可以帮到你
再见,
安德烈
[UPDATE]
你添加了可达性等级??????
答案 1 :(得分:0)
Apple以至少一种打破现有应用和代码的方式更改了iOS 6.0的NSURLRequest(我认为这是一个主要的错误,并且已经记录了Apple)。
您是否在iOS 6.0模拟器上进行了测试?我已经看到一些多年来一直停止在iOS 6上工作的应用程序,因为Apple的代码发生了变化。
(我见过的主要是请求永远不会从手机发送,因此大约60秒后超时)
答案 2 :(得分:0)
我们最近遭遇了相同的拒绝(2015年3月24日),我们的解决方案并不完美,但希望它可以指导一种方法来帮助人们解决这类问题。
Apple的评论是:
我们在iPad上查看了您应用中的一个或多个错误 在Wi-Fi和蜂窝网络上运行iOS 8.2和iPhone,运行iOS 8.2 网络。 请在设备上运行您的应用以识别问题,然后进行修改 并重新提交您的应用以供审核。
我们的应用程序是一个简单的应用程序,只需下载文件并在Webview上打开它。
在我们的情况下,我认为我们不能做更多,也无法重现错误,所以我们只需通过以下两项操作来调整代码(然后成功使应用程序转为“准备出售”):
1.添加“活动指示器”以通知用户文件下载过程仍在继续。 2.setConnection timeoutInterval用于处理等待时间。