2016-09-04 2 views
0

신속한 사용자 현지화에 대해 배우고 있습니다. 콘솔에서 지역화를 인쇄하려고합니다 (나중에 레이블 정보로 사용하므로 작동하는지 확인하고 싶습니다). 그러나 왜 아무 것도 인쇄하지 않습니다. 문자열에 대한 변환을 삭제하고 아무 것도 인쇄하지 않고 그대로 두어도 여전히 작동하지 않습니다. 도와주세요.CLLocationManager 문제

예, NSLocationAlwaysUsageDescriptionNSLocationWhenInUseUsageDescription을 추가했습니다.

import UIKit 
import CoreLocation 
import MapKit 

class ViewController: UIViewController, CLLocationManagerDelegate { 

    var locationManager = CLLocationManager() 
    var myPosition = CLLocationCoordinate2D() 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     locationManager.delegate = self 
     locationManager.requestWhenInUseAuthorization() 
     locationManager.startUpdatingLocation() 

    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
    } 

    func locationManager(manager: CLLocationManager, didUpdateToLocation newLocation: CLLocation, fromLocation oldLocation: CLLocation) { 

     print("Got location: \(newLocation.coordinate.latitude), \(newLocation.coordinate.longitude)") 

     myPosition = newLocation.coordinate 

     locationManager.stopUpdatingLocation() 
    } 

} 
+0

앱의 설정 앱에서 '위치 설정'을 다시 확인 했습니까? 어쩌면 처음으로 실행했을 때 실수로이 앱의 위치 설정을 사용하게되었습니다. 'authorizationStatus'를 검사하여 반환되는 내용을 확인하십시오. 또한 시뮬레이터가 물리적 장치와 다르게 동작하므로 실제 장치에서이를 테스트해야합니다. – Rob

+0

도움이되지 않았습니다 ... – belab

+0

"지역화"라는 용어는 일반적으로 국제화 (언어, 숫자/날짜 형식 지정자 등)를 말합니다. "지역화"가 아니라 "위치 서비스"에 대해 묻고 있습니다. – Rob

답변

1

didUpdateToLocationCLLocationManagerDelegate의 오래된 방법이다. 그것은 10.6 및 이전 버전에서 사용할 수 있습니다. 대신 didUpdateLocations을 사용하십시오. 그러면 시간 순서대로 모든 위치 객체의 배열이 반환됩니다. 그런 다음 가장 최근의 최신 위치에 액세스하여 반환 된 배열의 마지막 객체를 가져옵니다.

그래서 어떻게되는지이

func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { 

      var latestLocation: CLLocation = locations.last; 
     print("Got location: \(latestLocation.coordinate.latitude), \(latestLocation.coordinate.longitude)") 

    } 

말해보십시오.

+0

아직 없습니다. 이 func가 호출되지 않는 것 같습니다. 이유는 모르겠다. 다른 오류는 발생하지 않으며 충돌하지 않습니다. – belab

+0

함수의 첫 번째 줄에 중단 점을 가져오고 –

+0

도 호출되는지 확인하십시오. 이제는 stopUpdatingLocation을 제거하고 앞으로 나아갈 때마다 내 대답을 따라야합니다! plist 파일에 NSLocationAlwaysUsageDescription을 어떻게 추가 했습니까? –