gpt4 book ai didi

ios - Watchkit 扩展时出错

转载 作者:行者123 更新时间:2023-11-29 00:27:46 25 4
gpt4 key购买 nike

我第一次尝试构建 watchOS 应用程序时,开始有点粗糙。

在文件检查器的目标成员框中选择 watchkit 扩展后,立即弹出几个关于我的 CLLocationManager 委托(delegate)类的错误,我不知道为什么会这样,也不知道如何找到这些问题的答案.

因为它是针对 watch 的,所以对于允许集成到 iOS 和 watchOS 的可共享代码中的内容是否有特殊限制?

不确定为什么特别是事件类型不可用。

import Foundation
import CoreLocation
import MapKit
import UIKit

class TrackLocationManagerDelegate: NSObject, CLLocationManagerDelegate {
lazy var locationManager: CLLocationManager = {
var locationManager = CLLocationManager()
locationManager.delegate = LocationManagerDelegate.sharedInstance
locationManager.desiredAccuracy = kCLLocationAccuracyBest

// ERROR - activityType unavailable
locationManager.activityType = CLActivityType.fitness

locationManager.distanceFilter = 10.0

return locationManager
}()

// ERROR - Use of undeclared type MKPolyline
fileprivate lazy var polyline = MKPolyline()

// ERROR - Use of Undeclared type UIViewController
func startUpdatingLocationIfAuthorized( inViewController vc: UIViewController) {
guard CLLocationManager.authorizationStatus() == .authorizedWhenInUse else {
TrackLocationManagerDelegate.sharedInstance.locationManager.requestWhenInUseAuthorization()
return
}

TrackLocationManagerDelegate.sharedInstance.locationManager.startUpdatingLocation()
}
}

最佳答案

请仔细阅读 CoreLocation 的文档和 MapKit构架。并非所有符号都在 watchOS 上可用。例如,MKPolyline 在 iOS 4.0+、macOS 10.9+、tvOS 9.2+ 上可用,但在 watchOS 上不可用。

您也不能在 Apple Watch 上使用 UIViewController 和整个 UIKit。使用 WatchKit UI 类,例如 WKInterfaceController

祝你学习顺利!

关于ios - Watchkit 扩展时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42604934/

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