Android의 Google지도 서명 된 API 키 오류
디버그 맵 키에서 서명 된 맵 키로 전환하면 맵이 작동하지 않습니다. logcat에서 다음 오류가 발생합니다.
09-03 18:18:04.112: WARN/System.err(4073): IOException processing: 26
09-03 18:18:04.112: WARN/System.err(4073): java.io.IOException: Server returned: 3
09-03 18:18:04.112: WARN/System.err(4073): at android_maps_conflict_avoidance.com.google.googlenav.map.BaseTileRequest.readResponseData(BaseTileRequest.java:115)
09-03 18:18:04.112: WARN/System.err(4073): at android_maps_conflict_avoidance.com.google.googlenav.map.MapService$MapTileRequest.readResponseData(MapService.java:1473)
09-03 18:18:04.112: WARN/System.err(4073): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.processDataRequest(DataRequestDispatcher.java:1117)
09-03 18:18:04.112: WARN/System.err(4073): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.serviceRequests(DataRequestDispatcher.java:994)
09-03 18:18:04.112: WARN/System.err(4073): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher$DispatcherServer.run(DataRequestDispatcher.java:1702)
09-03 18:18:04.112: WARN/System.err(4073): at java.lang.Thread.run(Thread.java:1019)
나는 모든 것을 두 번 확인했고 권한과 라이브러리가 제자리에 있습니다. 나는 그을린 키를 다시 만들었고 운이 없습니다.
어떤 아이디어?
나는 똑같은 문제가 있었고 인터넷에 도움이되는 답변이 없다고 생각했기 때문에 이것이 앞으로 모든 사람들에게 도움이되기를 바랍니다.
를 사용하는 GoogleMaps for Android
경우 디버그 및 릴리스의 두 키가 필요합니다.
"디버그"키는 일종의 오해의 소지가있는 용어입니다. 이 키는 Eclipse에서 앱을 개발할 때도 사용됩니다. 따라서 기본적으로 개발, 테스트, 디버깅에 디버그 키를 사용합니다.
당신이 시장에 응용 프로그램을 시작할 준비가되면, 설정 android:debuggable="false"
에 AndroidManifest.xml
와 서명 API 키를 사용합니다.
서명 된 API 키를 사용하는 MapView
경우에서 앱이 설치된 경우에만이 표시됩니다 Android Market
. 따라서 Eclipse
(Run As, Debug As 등) 또는 명령 줄 에서 앱을 설치 (adb install)
하면 MapView
. 앱이 마켓에 있으면 안심하세요. 앱을 다운로드하면 MapView
이 표시됩니다.
서명 된 API 키를 사용하여 Eclise에서 앱을 배포하면 경고로 "서버가 3을 반환했습니다. IOProcessing 예외 26"이 표시됩니다. 무시하면됩니다.
참고 : 또한 동일한 MapView의 중복 인스턴스가 없는지 확인하십시오. 앱에 "x"가 필요한 경우 의 MapView
의 "x"는 전혀 발생하지 않습니다. GoogleMaps에는 단일 MapView
인스턴스에 대한 쿼리 제한이 있으므로 새 서명 된 키 (MapView 당 하나씩)
두 키를 모두 얻으려면 Android에서 GoogleMaps 용 API 키 얻기 단계를 따르세요 .
행복한 코딩!
최신 정보:
API 키를 얻기위한 위의 링크는 이제 더 이상 사용되지 않는 절차입니다. 앞으로 GoogleMaps Android API v2 용 API 키 얻기를 참조 하세요.
마지막으로 수정되었습니다.
나는 윈도우 머신을 사용하고, 단순히 갔다 그래서 C:\Users\rohit\.android
삭제 debug.keystore
하고 default.keyset1
이 작업이 완료되면, 이클립스에 가서 내 프로젝트의 수행에 정리 빌드를 적용!
서명 된지도 키는 앱 출시에 사용됩니다. 그래서 당신은 그러한 정보를 얻을 것입니다. 서명 된지도 키로 연결된 USB를 통해 앱을 디버깅하는 경우 앱을 디버그하려면 디버그 맵 키로 다시 전환하고 업데이트 또는 새 버전을 릴리스하기 전에 서명 된 맵 키로 바꾸십시오.
나는 같은 문제가 있었다. 제 경우에 제가 잘못하고 있었던 것은 이것이었습니다. 다음과 같이 keytool 명령을 작성했습니다.
keytool -list -keystore debug.keystore ...
대신에:
keytool -list -keystore ~\.android\debug.keystore ...
그래서 나는 내 지문으로 Eclipse의 키 저장소를 업데이트하지 않았습니다.
나는 이것이 누군가에게 도움이되기를 바랍니다 :)
방금 똑같은 문제가 발생했습니다.
예외를 발생시키는 사용자 작성 코드는 없습니다.이 코드는 Eclipse logcat에서 생성되며 그 결과 Google지도 타일이 표시되지 않습니다. Jen처럼 키를 다시 생성했지만 아무 소용이 없습니다.
플랫폼은 Android 3.2, 장치는 Asus Transformer, 연결은 WiFi입니다.
참고로 내 Android 2.2 애플리케이션이 제대로 작동하여 3G를 통해 Droid에서지도를 검색합니다.
여기 내 문제에 대한 해결책이 있습니다. Jen이 도움이되기를 바랍니다.
필자의 경우 Transformer USB 테 더링 된 "Debug as"Eclipse 아이콘을 사용하여 Transformer에 릴리스 버전을 설치하면 위에서 설명한대로 맵이 실패합니다 (참고로 이것은 Android에서 여러 번 성공적으로 사용한 절차입니다. 2.2 및 기타 장치).
그래서 대신 이것을 시도했습니다. Eclipse File | Export ... 옵션을 사용하여 릴리스 APK를 만든 다음 해당 APK를 Asus Sync 애플리케이션을 사용하여 Transformer에 설치합니다. 모든 것이 좋습니다. 지도 타일이 나타납니다.
다른 사람이 생성하여 제공 한 디버그 키를 사용하는 경우 다음 예외를 제외하고 빈 맵이 발생합니다.
java.io.IOException: Server returned: 3
이 링크를 사용하여 API 키를 얻을 수 있습니다. 등록
한 가지 더 : -v를 추가 한 후 Google API에는 SHA1이 아닌 MD5 만 필요하다는 점을 기억해야합니다. Google에 제공하는 코드를 확인하세요.
I have same question but I think I found the answer!
- Decide follow these step https://developers.google.com/android/maps-api-signup and receive your certificate's MD5 fingerprint
- While development, if map's not showed, don't worried about this! Simple extract APK use android tools with key tool which's used in first step and use this APK file to install on your phone, you will see MapView
Anyway, while development time, maybe you don't see MapView, but it's till not problem and don't worried about this! Simple wait when finished app & build with your keystore and you will see map display correctly
For the poor souls that tried to build the map example from sdk extras: as soon as I renamed the package from com.example.mapdemo to com.mynmae.mapdemo, the map magically appeared. Yes, I lost an hour searching and trying and it silently rejected the package name.
참고URL : https://stackoverflow.com/questions/7296467/google-map-signed-api-key-errors-in-android
'programing' 카테고리의 다른 글
원시 유형과 함께 getMethod ()를 사용하는 방법은 무엇입니까? (0) | 2020.11.28 |
---|---|
bash 스크립트에서 $ {0 % / *}의 의미는 무엇입니까? (0) | 2020.11.28 |
ID로 수백만 개의 행을 삭제하는 가장 좋은 방법 (0) | 2020.11.28 |
Symfony 2 및 Twig에 CSS 파일을 포함하는 방법은 무엇입니까? (0) | 2020.11.28 |
Google 스프레드 시트의 데이터를 사용하여 Google 양식을 '미리 채울'수 있습니까? (0) | 2020.11.28 |