[英]Apple watch app not working on device
我正在为WatchOS开发新的应用程序,而该应用程序可在模拟器上正常运行,它在实际设备上崩溃,没有任何错误日志。 首先,我认为可能是我的手表和所提交的应用要进行审查,但由于它在实际设备上崩溃而被拒绝了。 watch的代码非常简单,它仅发送HTTP请求,仅此而已。
override func willActivate() {
// This method is called when watch view controller is about to be visible to user
let request = NSURL(string: "[MY SERVER URL]")
var response = try! String(contentsOfURL: request!)
if response == "X"{
response = ":D"
}
watch_text.setText(response)
super.willActivate()
}
手头有两个问题:
阻止应用
您将在willActivate()
发出同步网络请求,并阻止UI。 用户正在等待您的应用加载,但是他们可能需要等待很长时间才能完成网络请求,否则该请求将失败。
除了这是一个负面的经历,你不考虑,如果它认为它是挂在操作系统如何杀死你的进程。
您应该使用NSURLSession
加载URL ,并在其完成处理程序中设置标签。
强制展开并忽略错误
您应该处理错误和nil可选参数,而不是忽略错误和强制展开可选参数。
每当你看到一个!
,将其视为当您未处理的意外事件发生时代码崩溃的机会。
我以为可能是我的手表
如果它在您的手表上不起作用,则可能不会在另一只手表上起作用。
如果某件事情不起作用(如您所期望的那样),则很可能是软件问题(与您的代码有关),而不是手表的硬件问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.