使用运行iOS 10.1.1的iPhone6,Xcode 8.1,执行以下操作 Swift代码我一直在
无法检索CarrierName
在我的第一个ViewController
偶数加载之前出现错误消息。
我搜索了类似(但不相同)CarrierName
问题的解决方案。他们中的大多数人建议导入CoreTelephony
。我添加了导入
CoreTelephony
但我仍然得到同样的错误。下面是显示viewDidLoad
后跟控制台输出的代码段。对此错误的任何见解?
// ViewController.swift
// MapLocator
import UIKit
import MapKit
import CoreLocation
import CoreTelephony
class ViewController: UIViewController, UISearchBarDelegate, MKMapViewDelegate,UINavigationControllerDelegate {
var searchController:UISearchController!
var annotation:MKAnnotation!
var localSearchRequest1:MKLocalSearchRequest!
var localSearchRequest2:MKLocalSearchRequest!
var localSearch1:MKLocalSearch!
var localSearch2:MKLocalSearch!
var localSearchResponse1:MKLocalSearchResponse!
var localSearchResponse2:MKLocalSearchResponse!
var error:NSError!
var pointAnnotation:MKPointAnnotation!
var pinAnnotationView:MKPinAnnotationView!
var placeMark1:MKPlacemark!
var myRoute : MKRoute?
var coord1 : CLLocationCoordinate2D!
var coord2 : CLLocationCoordinate2D!
// var newPt : MKMapPoint!
// var lineArrayPtr = [MKMapPoint]()
var lineArrayPtr:UnsafeMutablePointer<MKMapPoint>? = nil
var pointIndex : Int = 0
var lp1 : MKMapPoint!
var lp2 : MKMapPoint!
var lp3 : MKMapPoint!
var lp4 : MKMapPoint!
var searchButtonClicked = 0
var buttonTouchCount : Double = 0
let tapsPerMeter : Double = 2
var pointsPerMeter : Double!
var tapDistance : Double!
//**************
override func viewDidLoad() {
super.viewDidLoad()
mapView.delegate = self
print("Entered viewDidLoad")
let latitude_x: Double = 42.755139
let longitude_x: Double = -71.584
// Init the zoom level
let coordinate:CLLocationCoordinate2D = CLLocationCoordinate2D(latitude: latitude_x, longitude: longitude_x)
//let span = MKCoordinateSpanMake(100, 80)
let span = MKCoordinateSpanMake(0.01, 0.01)
let region = MKCoordinateRegionMake(coordinate, span)
self.mapView.setRegion(region, animated: true)
print("mapView region set")
}
*********************控制台输出*********************** 2016-11-19 22:02:14.442048 MapLocator 3比赛[289:23903] [LogMessageLogging] 6.1无法检索CarrierName。 CTError: domain-2,code-5,errStr:((os / kern)失败)
输入viewDidLoad
mapView区域集
答案 0 :(得分:0)
托盘可能会向AppDelegate添加CoreTelephony
吗?您的ViewController实现不访问任何CoreTelephony框架方法,因此您的问题在于其他地方。
答案 1 :(得分:0)
在我的iOS设备上会发生这种情况,因为设置 - &gt;隐私 - &gt;位置设置&lt;(应用名称) - &gt;允许位置设置不会设置为&#34;从不&#34;或&#34;使用App&#34;。一旦我设置它 - 它的工作原理。
答案 2 :(得分:0)
作为另一个问题的解决方案,我做了以下几点。无论是修复它还是仅仅抑制我不知道的消息,因为我收到了消息,但它从未崩溃我的应用程序。
在Xcode中
答案 3 :(得分:0)
也许这是一个愚蠢的愚蠢,但检查XCode地图功能是否有效:)。