【发布时间】:2017-10-28 03:45:53
【问题描述】:
目前,我正在使用 Deployment Target 10.2 创建一个应用程序。
我有 ViewControllerA 和 ViewControllerB 可用。
所有用户都可以查看 ViewControllerA。
我想允许 iOS 11 用户查看 ViewController B。
通过点击 ViewController A 的 AR 按钮,在 iOS 10 和 iOS 11 之间进行处理。
我正在编写以下代码。
@IBAction func goARCameraTapped(_ sender: UIButton) {
if (ProcessInfo.processInfo.operatingSystemVersion.majorVersion >= 11) {
self.performSegue(withIdentifier: "goAR", sender: self)
print("iOS11")
} else if (ProcessInfo.processInfo.operatingSystemVersion.majorVersion <= 10) {
print("iOS10")
}
}
部署目标为 10.2。
当 iOS 11 的用户点击 ViewController A 的 AR 按钮时,iOS 11 的用户想要将其移动到 ViewController B。
接下来,iOS 11 的用户移动到 ViewController B 后,我想显示 ARSCNView。
但是,会显示以下错误。
- 错误
ARSCNiOS 11.0之前查看
如果我将 Depoyment Target 设置为 11.0,则不会显示上述错误。
但是,当我设置 Depoyment Target 11 时,我认为 iOS 10 用户无法下载我的应用程序。
■问题
iOS 11 用户是否可以通过 Deployment Target 10.2 显示 ARSCNView?
- 附加说明。
xcode9.0.1
swift4
iPhoneSE 和 iPhone7。
ViewControllerB的代码如下。
import UIKit
import ARkit
class ARViewController: UIViewController, ARSCNViewDelegate {
@IBOutlet weak var sceneView: ARSCNView!
let configuration = ARWorldTrackingConfiguration()
override func viewDidLoad() {
super.viewDidLoad()
setupSceneView()
}
func setupSceneView() {
self.sceneView.showsStatistics = true
self.sceneView.session.run(configuration)
self.sceneView.delegate = self
}
【问题讨论】:
标签: ios swift xcode9 swift4 arkit