2013-04-23 28 views
5

Tôi đang cố triển khai bản đồ google trong ứng dụng Android của mình nhưng tôi bị kẹt trên một lỗi "android Failed to load map. Could not contact Google servers." tôi đã bao gồm thư viện google play, có khóa sử dụng dấu vân tay chứng chỉ SHA1. tôi đã nhận SHA1 giấy chứng nhận dấu vân tay như:Lỗi trong Android "Android không tải được bản đồ của Google Maps. Không thể kết nối với máy chủ Google".

sudo keytool -v -list -alias androiddebugkey \-keystore /home/.android/debug.keystore 

i quản lý file manifest của tôi theo This

bây giờ tôi đang không thể tìm ra nguyên nhân của lỗi này .. bất cứ đề nghị được đánh giá rất cao ...

  • tôi đã xem câu hỏi về ngăn xếp nhưng không có giải pháp nào!

EDIT: quyền file manifest của tôi là như sau:

<permission 
    android:name="PAKG_NAME.permission.MAPS_RECEIVE" 
    android:protectionLevel="signature" /> 

<uses-permission android:name="PAKG_NAME.permission.MAPS_RECEIVE" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.CALL_PHONE" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.com.google.android.providers.gsf.permission.READ_GSERVICES" /> 


<uses-feature 
    android:glEsVersion="0x00020000" 
    android:required="true" /> 


..................... 

     <meta-data 
     android:name="com.google.android.maps.v2.API_KEY" 
     android:value="MY_KEY" /> 

và xml bố trí của tôi có đoạn như sau:

<fragment 
      android:id="@+id/map" 
      android:layout_width="match_parent" 
      android:layout_height="100dp" 
      android:layout_marginLeft="10dp" 
      android:layout_marginRight="10dp" 
      class="com.google.android.gms.maps.SupportMapFragment" /> 

Logcat ra:

E/Google Maps Android API(31478): Failed to load map. Could not contact Google servers. 
+0

kiểm tra khóa api của bạn – Madhuri

+0

tôi đã thay đổi/tạo lại khóa api lần thứ bảy nhưng nhận được cùng một lỗi –

+0

@Saad Khokhar-đăng xml của bạn tại đây. – TheFlash

Trả lời

4

Bạn có chắc là bạn đã bật "Google Maps Android API v2" chứ không phải "Google Maps API v2" không? Sau khi thay đổi điều đó, hãy xóa và tạo lại khóa API. Điều này làm việc cho tôi ...

+0

thats những gì tôi đã mất tích !! cảm ơn bạn :) –

+0

Vui vì tôi có thể giúp :) – user754730

+0

Không thể tin được điều đó: đã tạo nên sự nhầm lẫn chính xác đó. Cảm ơn rất nhiều! – shkschneider

0

Bạn có cho phép Google bản đồ android API v2 trong giao diện điều khiển kiểm tra Nó đúng cách. Tôi nghĩ rằng u cho phép Google bản đồ v2 mà tại sao yêu cầu không thành công ...

+0

https://developers.google.com/maps/documentation/android/start#installing_the_google_maps_android_v2_api. Tôi nghĩ rằng bạn tạo dự án API trong bảng điều khiển của Google. –

+0

tôi đã bật Google Maps Android API v2 từ bảng điều khiển nhưng vẫn gặp lỗi tương tự –

+0

@gupta, vâng tôi đã làm theo tất cả các bước –

3

Hãy thử nhấp chuột phải vào dự án của bạn và chọn Thuộc tính> Android> và trong "Dự án xây dựng mục tiêu", hãy chọn API Google. Điều đó làm việc cho tôi :)

0

Bạn nên kiểm tra xem bạn có API_KEY trùng lặp cho cùng một dự án hay không. Như bạn đã biết, chúng tôi sẽ sử dụng tên dự án khóa và android sha1 để nhận khóa API. Nếu bạn cố gắng sử dụng cùng một cặp sha1, android_project_name để nhận khóa API, Google sẽ cung cấp cho bạn một khóa API khác. Vì vậy, nó trùng lặp. Nếu bạn xóa cái mới hơn và sử dụng cái cũ hơn trong dự án của bạn, nó sẽ giải quyết vấn đề của bạn. Ít nhất tôi hy vọng :)

2

Nếu bạn chắc chắn về khóa API, bạn nên gỡ cài đặt chương trình khỏi điện thoại và cài đặt lại. Nó làm việc cho tôi :)

+0

Tôi nghĩ rằng cửa hàng Android đã sử dụng khóa API đầu tiên trong bộ nhớ cache của chương trình, do đó bạn cần xóa bộ nhớ cache hoặc gỡ cài đặt ứng dụng để sử dụng khóa API mới –

0

Tôi gặp vấn đề này khi tái cấu trúc và thay đổi mã nhận dạng gói dự án của mình. Nếu đúng như vậy, bạn sẽ phải tạo một dự án mới trên Bảng điều khiển dành cho nhà phát triển của Google và liên kết lại với dự án của bạn. Vì một số lý do, Google chặn yêu cầu từ cùng một ứng dụng nếu nó thay đổi ID của ứng dụng.

Các vấn đề liên quan