How to update Google Play Services for Android Stu

2020-01-27 07:30发布

There are a number of variations of this question, however most are very old, and don't really answer the question at all. I'm NOT asking how to install Play Services, that is installed in the Studio 2.2 emulators.

The problem is that these emulators are using an old version of Play services.

When I run a test app that uses Firebase to facilitate Google login I get this alert dialog from a Nexus 5 API 23 emulator:

enter image description here

In the onCreate method of my login activity I have this code:

int result = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);

    switch(result) {
        case ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED:
            Log.d(TAG,"SERVICE_VERSION_UPDATE_REQUIRED");
            break;
        case ConnectionResult.SUCCESS:
            Log.d(TAG, "Play service available success");
            break;
        default:
            Log.d(TAG, "unknown services result: " + result);

    }

This always returns SERVICE_VERSION_UPDATE_REQUIRED.

Clicking update in the alert dialog does nothing that I can detected. In the debug log I get this message when Play Services startup fails:

W/GooglePlayServicesUtil: Google Play services out of date.  Requires 9080000 but found 8489470

My application runs fine on a real Android device.

What simple thing am I missing?

TIA

8条回答
beautiful°
2楼-- · 2020-01-27 08:15

Assuming you're using Android's default AVDs, as opposed to Genymotion, you just have to make sure everything has been updated.

This is what's working for me. If you are using using the current version of play services, 9.6.1 or higher, make sure of the following:

  1. Your build tools version is 24.0.3 or higher
  2. In the SDK Manager (SDK Platforms tab):
    • If testing Nougat, your emulator is using Google APIs System Image Revision 8 or higher (I'm using "Google APIs Intel x86 Atom_64 System Image")
    • Google APIs is installed and updated (For me, "Google APIs, Android 24" - Revision 1.0.0)
  3. In the SDK Manager (SDK Tools tab):
    • Android SDK Platform Tools is version 24.0.3 or higher
    • Android SDK Tools is version 25.2.2 or higher
    • Google Play Services is installed and using version 33 or higher
    • (Probably optional) Google Repository is installed and version 36 or higher

After ensuring all of that, and restarting Android Studio (because better safe than sorry), make a new AVD. I mainly use the following settings: - Nougat (API 24) - ABI - x86_64 - Target - Android 7.0 (with Google APIs)

This is working for me, as I was having the same problem this morning until I updated everything. Good luck :)

查看更多
Lonely孤独者°
3楼-- · 2020-01-27 08:17

What worked for me is:

  1. Check for and install any new updates. You specifically want to make sure that you're installing the newest version of Google Play Services. Also, you can check for the version of Google Play Services that you're using in the SDK Manager.

  2. Delete all your emulators in the AVD (Android Virtual Device) Manager.

  3. Create new emulator(s).

Should work fine afterwords!

查看更多
登录 后发表回答