위치 관리자 오류 : (KCLErrorDomain 오류 0)


95
Location Manager Error : Operation could not be completed(KCLErrorDomain error 0)

이 오류가 발생하는 이유는 무엇입니까?


좋은 질문-가끔 같은 오류가 발생했습니다. 위치 관리자가 현재 위치를 가져 오지 못할 때 발생한다고 생각합니다. 예를 들어 충분한 수정이 불가능하기 때문입니다. 그 후, 나는 시간에 그것을 본 적이 다음 나중에이 오류가 팝업에 좋은 수정을 얻었다.
frankodwyer

1
나를 위해 사용자 지정 위치 소수점 구분 기호 대신 쉼표를 사용했습니다.
electronix384128

동일한 문제가 발생하여 정확도를 kCLLocationAccuracyBest 또는 큰 값으로 설정하고 오류를 무시하고 더 많은 업데이트를 기다립니다.
zaheer 2014 년

답변:


163

이 오류는 Scheme/Edit Scheme/Options/Allow Location Simulation선택했지만 기본 위치가 설정되지 않은 경우 발생합니다 . 나는 다른 원인도 있다고 확신합니다.


1
감사합니다. 내 질문은 기본 위치를 설정하면 장치 위치 업데이트에 영향을 줍니까?
sKhan

@ShafKhan 댓글에있는 질문에 대답하지 마세요. 새로운 질문으로 물어보세요.
Undistraction 2013-06-18

9
당신이 궁금해하는 경우 방식은이 링크를 따라 어디 developer.apple.com/library/mac/recipes/...을
Bishal Ghimire

스킴 편집기에서 기본 위치를 설정 한 후 델리게이트가 didFail 대신 didUpdate를 호출하도록하려면 "Reset Content and Settings"가 필요했습니다. 그런 다음 잘 작동했습니다.
owenfi 2015 년

이것은 내 문제를 완전히 해결합니다! 대단히 감사합니다.
Ifelere Bolaji

42

최신 정보

Ben Marten 에게 감사드립니다 XCode에서 다음 단계를 사용하여 영구적으로 만들 수 있습니다.

  1. 제품> 구성> 구성 편집
  2. .app 실행을 클릭합니다.
  3. 옵션 탭
  4. 이미 확인한 핵심 위치> 위치 선택
  5. 확인을 누릅니다.

또한 Wi-Fi에 연결되어 있지 않아도 상위 메뉴 항목을 통해 시뮬레이터에서 위치를 설정하고 Debug>Location위의 단계를 따라 영구적으로 만들 수 있습니다.

iOS 시뮬레이터의 위치 오류


1
영구적으로 만들려면 Xcode에서 : Product / Scheme / Edit Scheme ... / Run / Options / Core Location- "Allow Location Simulation"을 확인하고 "Default Location"을 "None"으로 설정
electronix384128

1
Yessss, 작동합니다. 😃👍😄😃👌👏💃🙏💃💃 정말 감사합니다. :) 더 많은 지식에 대한 내 질문에 편집
하기 Vaibhav 사란

33

방금이 문제가 발생했습니다. 해결책을 찾는 데 시간이 걸렸습니다. 이전 포스터의 답변과 느슨하게 관련이 있습니다.

iPhone / iPad Simulator의 CoreLocation이 작동 하려면 Airport (WiFi) 가 켜져 있어야합니다 . 나는 이더넷을 통해 연결되었으므로 CL은 시뮬레이터에서 아무것도하지 않았습니다. 네트워크 설정에서 공항을 켜고 다시 시도하십시오. 무선보다 유선 연결을 계속 선호하려면 이더넷 아래에 공항을 끌어 네트워크 인터페이스의 순서를 변경할 수 있습니다.


2
이 오류가 발생하고 내 컴퓨터가 WiFi를 통해 인터넷에 연결되어 있습니다. 또한 내가 착각하지 않으면 시뮬레이터는 위치를 확인하지 않고 항상 Apple Office 위치를 사용합니다. MapKit 프레임 워크를 사용하면 파란색 점이 표시되므로 위치가 설정됩니다. 그다지 말이되지 않습니다.
Alex Angelico

1
방금 켰는데 네트워크 목록의 첫 번째가 아니었고 모든 것이 작동하기 시작했습니다 (Lion, XC 4.2)
David H

1
나는 같은 문제가 있었지만 시뮬레이터에는 없었습니다! (iPhone 5S, iOS 8.1.3). MapKit 및 CoreLocation으로 애플리케이션을 디버깅하고 있었는데 두 프레임 워크 모두 항상 동일한 오류를 반환했습니다. 내가 Wi-Fi를 켤 때까지! 감사합니다 :)
Vinzzz

13

API 문서에서 :

CLError

위치 관리자 개체에서 반환 한 오류 코드입니다.

typedef enum {kCLErrorLocationUnknown = 0, kCLErrorDenied, kCLErrorNetwork, kCLErrorHeadingFailure} CLError;

상수

kCLErrorLocationUnknown 위치 관리자가 지금 위치 값을 가져올 수 없습니다. iPhone OS 2.0 이상에서 사용할 수 있습니다. CLError.h에 선언되었습니다.

kCLErrorDenied 사용자가 위치 서비스에 대한 액세스를 거부했습니다. iPhone OS 2.0 이상에서 사용할 수 있습니다. CLError.h에 선언되었습니다.

kCLErrorNetwork 네트워크를 사용할 수 없거나 네트워크 오류가 발생했습니다. iPhone OS 3.0b 이상에서 사용 가능합니다. CLError.h에 선언되었습니다.

kCLErrorHeadingFailure 표제를 판별 할 수 없습니다. iPhone OS 3.0 이상에서 사용할 수 있습니다. CLError.h에 선언되었습니다.

따라서 이것은 위치를 결정할 수 없음을 의미합니다.

가장 가능성이 높은 원인은 위치 관리자가 WiFi를 사용하여 위치를 삼각 측량하고 데이터베이스가 로컬 네트워크를 다루지 않는다는 것입니다. 사용자가 여기에 가면 분명히 고칠 수 있습니다 .

그러나 내가 언급했듯이 WiFi 위치 항목이 정상적으로 작동하는 위치에서 위치 기반 프로그램을 실행할 때 가끔 일시적인 오류로 보이기도합니다.

마지막으로 하드웨어 오류가 발생하면이 오류가 표시 될 수 있다고 생각합니다.


4
KCLErrorDomain : 그는 대한 질문입니다
electronix384128

이 응답에는 OP가 찾고있는 kCLErrorDomain에 대한 참조가 없습니다.
Norman H

5

1) 실제로 유효한 WiFi 및 3G 연결이 있는지 확인

그렇다면

2) 설정으로 이동하여 위치 서비스를 재설정합니다. 3) 네트워크 설정을 재설정합니다.


테스트 할 때 iPad에서 Wi-Fi 또는 3G없이 위치를 얻을 수없는 이유를 여전히 이해할 수 없습니다. GPS를 사용하지 않는 이유는 무엇입니까? 그래서 장치의 사용자는 인터넷없이 위치를 얻을 수 없습니까? 나는 ... 오프라인 모드 응용 프로그램에도하고 있어요
Renetik

i Know GPS는 인터넷이나 Wi-Fi 연결이 필요하지 않습니다. GPS 위성이 2 개 또는 3 개있는 액세스 가능한 위치에있는 경우 수신기 일뿐입니다. 지리적 위치 좌표를 얻을 수 있습니다. GeoInformation은 로컬에 캐시되지 않은지도 위치를 표시하기 위해 인터넷에 의존하는 Google지도와 같은 온라인 활동에 필요합니다. CoPilot과 같은 전용 내비게이션 애플리케이션은지도를 온보드로 유지합니다.
Durai Amuthan.H

3

이 오류는 위치 관리자가 위치 정보를 즉시 가져올 수 없을 때 발생합니다. startUpdatingLocation 메서드가 호출 될 때이 오류가 발생하는 것을 발견했습니다. 나에게 이것은 iPod에서 발생했지만 iPhone에서는 발생하지 않았습니다. 아이폰은 위치 정보를 얻을 수있는 더 많은 방법 (예 : 셀룰러 네트워크)이 있고 위치를 빠르게 예측할 수있는 반면, 아이팟은 더 많은 시간이 소요되어 아이팟에서이 오류가 발생하기 때문입니다.

이 오류가 발생하면 locationManager : didFailWithError : delegate 메소드가 호출되므로이 메소드에 전달 된 오류 객체에서 "[error domain]"및 "[error code]"를 일치시켜 조건문에서이 특정 경우를 처리 할 수 ​​있습니다.


3

내가 찾은 정확한 이유는 ios 시뮬레이터 "디버그 설정"과 xcode 설정 "구성표 편집"모두에서 위치 시뮬레이션에서 충돌이 발생하기 때문입니다.이 중 하나에서 기본 사용자 위치를 설정하고 표시 다른 하나 는 문제를 해결 하지 못했습니다. 이것이 확실히 도움이 될 수 있기를 바랍니다. InXcode :여기에 이미지 설명 입력

아이폰 / 아이 패드 시뮬레이터에서 :여기에 이미지 설명 입력


3

에뮬레이터에서 이것을 얻은 경우 다음을 수행하십시오.

Debug > Location >  Apple

에뮬레이터 명령


1

응용 프로그램을 테스트 할 위치 목록을 Xcode에 추가 할 수 있습니다.

Xcode에서 Debug / Simulate Location 메뉴를 선택하면 다음이 제공됩니다.

a. "Don't Simulate Location"
b. 12 example locations
c. "Add GPX File to Project..."

"프로젝트에 GPX 파일 추가 ..."를 선택하고 생성 한 GPX 파일을 선택합니다.


0

Xcode 프로젝트> 제품> 구성표> 구성표 편집> 위치 시뮬레이션 확인> 위치 설정> 앱을 다시 실행하십시오.


0

이 기사 ( https://possiblemobile.com/2013/04/using-xcode-to-test-location-services/ ) 덕분에 사용자 지정 GPX 파일의 데이터를 볼 수있는 힌트를 얻었고 문제를 발견했습니다.

다른 소스에서 가져올 수있는 일부 GPX 파일에는 지정된 경로의 다른 좌표를 나타내는 다음 요소가있을 수 있습니다. 이것은 Xcode의 위치 시뮬레이션에서는 작동하지 않습니다.

<gpx>
...
<trkpt lat="" lon="">
<ele></ele>
</trkpt>
...
</gpx>

해야 할 일은 "trkpt"요소의 모든 항목을 찾아 선호하는 텍스트 / xml 편집기에서 "wpt"로 바꾸는 것입니다. 최종 결과는 다음과 같아야합니다.

<gpx>
<wpt lat="" lon="">
<ele></ele>
</wpt>
...
</gpx>

도움이 되었기를 바랍니다! 확실히 도움이되었습니다.


0

이 오류는 프로그램을 실행하는 동안 발생하지만 프로그램을 실행 한 후 위치를 시뮬레이션합니다.

나는 방법을 얻습니다 : 시뮬레이터를 종료하고 다시 시작한 다음 프로그램을 실행하기 전에 시뮬레이터 위치를 설정하면 저에게 효과적입니다.

도움이 되었기를 바랍니다! 확실히 도움이되었습니다. 감사...


0

이 모든 것이 나를 위해 작동하지 않았습니다. 나를 위해 일한 것은 :-시뮬레이터에서 위치를 설정 none한 다음 custom앱이 실행되는 동안 위치로 다시 변경 하는 것입니다.


0

제 경우에는 모든 제안이 도움이되지 않았습니다. 도움이 된 것은 시뮬레이터 장치에서 앱을 제거하고 다시 설치하고 위치에 액세스하도록 허용하는 것입니다 (설정 앱에서).


-1

기기에서이 정보를 얻는다면 요청하지 않았거나 사용자가 위치 수집 권한을 거부했을 가능성이 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.