ios - WKWebView App 因崩溃被苹果拒绝
问题描述
我已经上传了我的 WKWebView 应用程序,它只是将网站数据加载到应用程序中,它在我这边运行良好,但是当我将它上传到 AppStore 时,苹果拒绝了它说“我们无法审查你的应用程序,因为它在启动时崩溃了。我们有附上详细的崩溃日志以帮助解决此问题”。应用程序最低部署目标是 11.1 和 Xcode 版本:11.3.1。任何帮助将不胜感激,谢谢。
这是我的整个代码:
class ViewController: UIViewController, WKNavigationDelegate {
var refreshControl = UIRefreshControl()
@IBOutlet weak var webView: WKWebView!
@IBOutlet weak var refreshView: UIStackView!
override func viewDidLoad() {
super.viewDidLoad()
initializeView()
}
private func initializeView(){
webView.navigationDelegate = self
guard let url = URL(string: "https://appybag.com") else {
return
}
let urlRequest = URLRequest(url: url)
webView.load(urlRequest)
refreshControl.attributedTitle = NSAttributedString(string: "Pull to refresh")
refreshControl.addTarget(self, action: #selector(reloadWebView), for: .valueChanged)
webView.scrollView.addSubview(refreshControl)
}
@objc private func reloadWebView(){
refreshView.isHidden = true
if let _ = webView.url {
webView.reload()
} else {
guard let url = URL(string: "https://appybag.com") else {
return
}
webView.load(URLRequest(url: url))
}
refreshControl.endRefreshing()
}
func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
ProgressHUD.show()
print("loading")
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
ProgressHUD.dismiss()
print("loaded")
}
func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) {
refreshView.isHidden = false
ProgressHUD.dismiss()
print("failed to load")
}
func webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error) {
ProgressHUD.dismiss()
refreshView.isHidden = false
}
}
这是崩溃报告链接:
解决方案
推荐阅读
- android - 使用 setAudioAttributes 的空对象引用
- c++ - 如何解决 for 循环中潜在的 getline() 问题,数组的第一个索引未显示?
- groovy - 如何定义可以在 Groovy 中的多个脚本文件中使用的常量?
- html - 我的段落的字体大小大于 div 的字体大小
- excel - 如何修复模板excel格式的循环
- node.js - 带有路径重写的 Nginx 代理配置
- java - 如何使用 Thymeleaf 模板打印 HashMap 的 ArrayList 中的元素数?
- c# - Unity Shader 图形顶点位移不适用于运行时创建的网格
- node.js - 想要制作登录组件,但我的管理组件正在生效。就像导航栏正在进入该组件
- php - PHP 什么是静态关键字