ios – 无法检索CarrierName

前端之家收集整理的这篇文章主要介绍了ios – 无法检索CarrierName前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用iPhone6,Xcode 8.1,运行iOS 10.1.1,执行以下操作
Swift代码我不断得到

Unable to retrieve 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")

    }

********************* Console Output ***********************
2016-11-19 22:02:14.442048 MapLocator 3 Match[289:23903]
[LogMessageLogging] 6.1 Unable to retrieve CarrierName. CTError:
domain-2,code-5,errStr:((os/kern) failure)

Entered viewDidLoad

mapView region set

解决方法

托盘添加CoreTelephony到AppDelegate可能吗?您的ViewController实现没有访问任何CoreTelephony框架方法,因此您的问题在其他地方.

猜你在找的iOS相关文章