2012-12-09 33 views
18

Gần đây tôi đã bắt đầu phát triển cho Android và tôi đã gặp sự cố khi cố gắng sử dụng Google Maps trong ứng dụng của mình. Tôi đã tải xuống API Google Maps phiên bản 2 dành cho Android và đã thực hiện tất cả các bước bắt buộc theo Trang web dành cho nhà phát triển của Google.Thiếu Dịch vụ của Google Play từ AVD

Vấn đề của tôi là mặc dù ứng dụng chạy, ở nơi bản đồ sẽ được hiển thị có một văn bản cho biết thiết bị của tôi thiếu Dịch vụ của Google Play.

Tôi đã tải xuống Dịch vụ của Google Play từ SDK, đã nhập thư viện vào dự án của tôi và cũng nhập tệp .JAR.

Tôi đang sử dụng Netbeans, chứ không phải Eclipse, vì vậy nhiều giải pháp tôi tìm thấy trên web không hữu ích cho tôi. Tôi hy vọng bạn có thể giúp tôi với điều này.

+4

Đã có hàng nghìn câu hỏi về việc sử dụng Google Maps trên AVD và một vấn đề mà tôi thấy rất nhiều và có bản thân mình là mục tiêu của bạn phải được đặt thành "API Google (Google Inc.)" chứ không phải là " Android 2.2 ". Hãy chắc chắn rằng bạn đã làm điều đó trước khi bạn lo lắng về bất cứ điều gì khác. – ninge

Trả lời

13

Thật không may, bạn không thể sử dụng trình mô phỏng để chạy các ứng dụng sử dụng dịch vụ của Google Play. Từ http://developer.android.com/google/play-services/setup.html: "Dịch vụ của Google Play không được hỗ trợ trên trình mô phỏng Android - để phát triển bằng API, bạn cần cung cấp thiết bị phát triển như điện thoại hoặc máy tính bảng Android".

+1

Vì vậy, điều khiển vị trí trong trình mô phỏng là vô dụng! : j –

0

Có, bạn có thể sử dụng bản đồ Google trên trình giả lập. Tuy nhiên, nó không được hỗ trợ chính thức, vì vậy phải mất một số công việc. Tôi đã đạt được thành công tốt nhất sau thông tin trên số link này.

12

Từ trang web của riêng của google http://developer.android.com/google/play-services/setup.html

Nếu bạn muốn thử nghiệm ứng dụng của bạn trên giả lập , mở rộng thư mục cho Android 4.2.2 (API 17) hoặc phiên bản cao hơn, chọn API Google và cài đặt nó. Sau đó, tạo AVD mới với API Google làm nền tảng mục tiêu . Lưu ý: Chỉ các phiên bản Android 4.2.2 trở lên của nền tảng Google API mới bao gồm các dịch vụ của Google Play.

4

Tôi có vấn đề này cùng và thấy solution:

Sau đây là các cập nhật gmsvending tập tin. Cùng hướng dẫn như trước đây: Tạo một giả lập mới với bất kỳ cpu/abi, một mục tiêu phi google-api (phiên bản 10-17 làm việc) và thi đua gpu bật hoặc tắt, và sau đó cài đặt các tập tin:

adb install com.android.vending-20130716.apk 
adb install com.google.android.gms-20130716.apk 

Nếu bạn đang nâng cấp một mô phỏng hiện tại sau đó bạn có thể cần phải gỡ bỏ cài đặt các phiên bản trước bởi:

adb uninstall com.android.vending 
adb uninstall com.google.android.gms 
1

Bellow liên kết có chứa một giải pháp mà làm việc với Android 4.2.2 hoặc cao hơn

How to install Google Play Services in Android Emulator

1.1 Khởi động trình giả lập của bạn. Ngắt kết nối bất kỳ thiết bị Android nào khác (chẳng hạn như điện thoại thông minh của bạn) khỏi máy tính. 1.2 Tải về hai tập tin

com.android.vending-19032013.apk: http://www.mediafire.com/download.php?7jfar2v1bzx6v59 com.google.android.gms-19032013.apk: http://www.mediafire.com/download.php?4o9fz413uavlblf

1,3 mở lệnh điều khiển, đi đến \ nền tảng công cụ

cài đặt hai tập tin trên với lệnh

adb install \ com.android.vending-19032013.apk adb install \ com.google.android.gms-19032013.apk

0

Nếu bất kỳ ai vẫn gặp sự cố này, trước tiên hãy thử tạo trình giả lập của bạn với Google API làm mục tiêu nền tảng. Sau khi làm như vậy, tôi nhận thấy rằng Dịch vụ Google Play của tôi không phải là phiên bản chính xác trên trình mô phỏng.

Trong khi cố gắng hack cùng một giải pháp, tôi tình cờ gặp GoogleApiAvailability lớp here. Google đã làm một công việc phi thường xử lý các vấn đề tương thích.

GoogleApiAvailability.isGooglePlayServicesAvailable(Context) trả về mã trạng thái số nguyên, có thể được cấp trực tiếp vào getErrorDialog(Activity, errorCode, requestCode) trả về một Dialog hoạt động hoàn hảo ngay tức thì. Nếu Dịch vụ Play của bạn đã lỗi thời, hộp thoại sẽ chuyển hướng bạn đến trình cập nhật ... Nếu chúng bị thiếu, nó sẽ chuyển hướng bạn đến trình cài đặt, v.v ...

Tôi nghĩ rằng tôi sẽ chia sẻ tính năng tuyệt vời này trong trường hợp bất cứ ai đang tìm kiếm một sửa chữa mà sẽ làm việc trong mã sản xuất cũng như thử nghiệm.

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