1

작은 Android지도 프로젝트를 만들었고 작업 영역을 다른 컴퓨터로 옮길 때까지 모든 것이 잘되었습니다. 구글 맵이 표시되지 않습니다과 로그 캣 출력은 다음 줄이 있습니다Google지도 Api Android V2에 연결할 수 없습니다.

07-24 16:15:24.261: E/Google Maps Android API(21868): Failed to load map. Error contacting Google servers. This is probably an authentication issue (but could be due to network errors) 

내 첫번째 생각 나는 한 컴퓨터에서 다른 컴퓨터로 복사하는 것을 잊었다, 그래서이 SHA1했다 때문에 누락/잘못된 키 스토어이었다 지문을 내 새 debug.keystore (C : \ Users \ Enrico.android)에서 가져 와서이 지문과 함께 새로운 Api 키를 만들어 Manifest.xml에 저장합니다. 결과 없음 두 번째 조치는 google-play-services_lib를 갱신하는 것이지만 아무것도 변경하지 않았습니다. 여기

내 코드와 API를 콘솔에서 몇 가지 흥미로운 부분 :

SHA1 :

C1:07:A9:8B:E0:B1:FF:49:B4:C3:C6:E8:3B:98:93:FF:8F:D6:36:2F 

의 API 콘솔 :

API key:  
AIzaSyDaDJBQyg7I8_Bd3IrKChEdcNo2E7cxU6g 
Android apps: 
C1:07:A9:8B:E0:B1:FF:49:B4:C3:C6:E8:3B:98:93:FF:8F:D6:36:2F;com.name.appname 

Manifest.xml :

android:name="com.google.android.maps.v2.API_KEY" 
android:value="AIzaSyDaDJBQyg7I8_Bd3IrKChEdcNo2E7cxU6g"/> 
<uses-library android:name="com.google.android.maps" /> 

도와주세요! ! 편집 : 또 다른 힌트. 처음에 새 컴퓨터에서 내 앱을 시작했을 때, 힌트와 함께 내 "old"버전을 내 테스트 폰에서 제거하고 서명이 변경되어야했습니다. 사실 debug.keystore 파일에서 잘못된 SHA1 지문 만있을 수 있습니다 ... 아니면?

당신은

이 권한 정의 권한 "MAPS_RECEIVE"를 추가 추가 잊어 버린 수

답변

0

API 콘솔에서 SHA-1을 업데이트 한 후 앱을 제거했다가 다시 설치해야 할 수 있습니다.

Google Play 서비스와 마찬가지로 서버의 캐시에 "인증되지 않은"답변이 표시됩니다.

편집 : 당신은 SHA 및 패키지 이름을 지정하지 않고 다른 API 키를 생성 시도 할 수

. 그러면 'Android 앱 : 모든 앱 허용됨'이라는 키가 생성됩니다. 나는 그 가능성에 대해 약간 염려한다. 왜냐하면 그 열쇠는 애플 리케이션의 누군가에 의해 사용될 수 있기 때문이다. 그러나 개발을 위해서 그것은 문제가되지 않는다.

+0

답변 해 주셔서 감사합니다. 나는 그것을 성공적으로 제거하고 여러 번 설치했다. logcat 출력에 또 다른 오류가 있습니다 :'maps.ag.l '클래스를 찾을 수 없습니다. maps.ah.an.a' 메서드에서 참조했습니다. –

+0

@ EnricoBuß이 경고는 무시할 수 있습니다. 답변을 업데이트했습니다. –

+0

"모든 앱 허용 키"와 호환됩니다. 대단히 감사합니다. 나는이 가능성에 대해 조금 혼란스러워하지만 개발을 위해서는 o.k입니다. 순간. –

0

:

<permission 
     android:name="com.jonasdevlieghere.alma.permission.MAPS_RECEIVE" 
     android:protectionLevel="signature" /> 

을하고 필요한 권한 목록에 추가 :

<uses-permission android:name="com.jonasdevlieghere.alma.permission.MAPS_RECEIVE" /> 

하여 주시기 바랍니다 자신의 어플리케이션과 일치하도록 권한 이름을 변경하십시오.

+0

안녕하세요 John, 답변 해 주셔서 감사합니다.하지만 문제가 아닌 것으로 생각합니다. 이미 내 manifest.xml에서 사용 권한을 정의했습니다. \t \t <사용 권한 android : name = "com.name.appname.permission.MAPS_RECEIVE"/> –

+0

내 보낸 앱을 실행하려고합니까, 아니면 ADB를 통해 디버깅하고 있습니까?전자의 경우에는 Android 키 저장소를 기반으로 API 키가 필요합니다. 후자의 경우 디버그 키 저장소가 매번 다를 수 있으므로 각 컴퓨터에 대해 새 API 키를 생성해야합니다. – Jonas

+0

ADB를 통해 디버깅 중이며 새 디버그 키 저장소의 SHA1을 기반으로 새 API 키를 만들었습니다. –