Службы Google Play устарели. Требуется 11011000, но найдено 10289574

Я сейчас борюсь с этой проблемой. Изучали похожие темы об этом, но все еще не могут решить мою проблему.

Пролема заключается в том, что когда я пытаюсь запустить свою программу на носителе Polar m600 или носить эмулятор (Android V 7.1.1 и API25), они дают мне это сообщение "Устаревшие сервисы Google Play". Требуется 11011000, но найдено 10289574 ".

Я следил за частью "Получение последнего известного места" на сайте разработчика Android. (Ссылка для сайта https://developer.android.com/training/location/retrieve-current.html#play-services)

Здесь мой код Mainactivity, который я использую

public class MainActivity extends Activity {

private FusedLocationProviderClient mFusedLocationClient;
public Location mLastLocation;
private TextView mTextView;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    final WatchViewStub stub = (WatchViewStub) findViewById(R.id.watch_view_stub);
    stub.setOnLayoutInflatedListener(new WatchViewStub.OnLayoutInflatedListener() {
        @Override
        public void onLayoutInflated(WatchViewStub stub) {
            mTextView = (TextView) stub.findViewById(R.id.text);
        }
    });

    mFusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
    if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION)
            != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION)
            != PackageManager.PERMISSION_GRANTED) {
        return;
    }
    mFusedLocationClient.getLastLocation()
            .addOnSuccessListener(this, new OnSuccessListener<Location>() {
                @Override
                public void onSuccess(Location location) {
                    mLastLocation = location;
                    Log.d("Location is:",""+mLastLocation);

                    if (location != null) {

                    }
                }
            });

}
}

Здесь мой manifest.xml`

<uses-feature android:name="android.hardware.type.watch" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@android:style/Theme.DeviceDefault">
    <meta-data android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

И последнее, но не менее важное - мой build.gradle

android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
    applicationId "ims.fhj.at.testnavigators"
    minSdkVersion 21
    targetSdkVersion 25
    versionCode 1
    versionName "1.0"
    multiDexEnabled true
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
     }
  }
 }

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.support:wearable:2.0.3'
compile 'com.google.android.gms:play-services-wearable:11.0.1'
compile 'com.google.android.gms:play-services:11.0.1'}

Ответы

Ответ 1

Создайте эмулятор Nexus 5x с версией Android O - api 26 - x86 или версия Android Nougat - api 24 - x86 Nexus 5x

введите описание изображения здесь

Затем щелкните по 3 точкам в эмуляторе, и это откроет окно с расширенным доступом, затем нажмите кнопку Google Play+. И это обновит сервисы Google Play до последнего обновления, которое сегодня 11.0.55.

введите описание изображения здесь

Ответ 2

Вам необходимо переопределить API в носимом файле gradle.

Проблема заключается в том, что у вашего устройства нет обновленного приложения Google Play Services.

Чтобы исправить это, измените на это:

compile 'com.google.android.gms:play-services-wearable:10.0.0'
compile 'com.google.android.gms:play-services:10.0.0'

Ответ 3

Мое решение супер странно: Настройки Goto → Приложения → Системные приложения → Google Play Store Моя версия была 10xxxxx, что странно, потому что мои часы обновлены при загрузке. Итак, я нажал кнопку "Удалить обновление", а версия изменилась на 11xxxxxx.

Ответ 4

Проблема заключается в несоответствии сервисов (версии) Google Play для эмулятора и файла gradle.

Его можно решить двумя способами:

  • Удалите несоответствие, понизив версию игровых сервисов Google (версия) в файле gradle для Служб Google Play (версия) эмулятора.

  • Обновите Службы Google Play на эмуляторе.

Ответ 5

Это была постоянная проблема с Wear в течение многих лет (см. например Android Wear Google Play Services).

Лучшим решением, похоже, является не использование последней версии Служб Службы. Один из вариантов - найти минимальную версию, которая, по-видимому, предназначена для ваших целевых производственных устройств; в вашем случае это похоже на что-то в диапазоне 10.2. Кроме того, выберите самый низкий выпуск, который включает в себя все необходимые функции (я лично использую 9.8.0).

Для справки, вот история выпуска Служб Службы: https://developers.google.com/android/guides/releases

Ответ 6

Иногда эта ошибка возникает, когда вы передаете неправильное значение web-client-id

val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestIdToken(**web-client-id here**)
                .requestEmail()
                .build()

Use the value in the OAuth client id section indicated Web client (auto created by google service)

Используйте значение в разделе идентификатора клиента OAuth, указанное веб-клиентом (автоматически создается сервисом Google

Ответ 7

Как пишет String, сервисы Play не обновляются на устройстве. К сожалению, в мире WearOS может случиться так, что сервисы Play будут современными, но они просто недоступны для носимых устройств. В этом случае вы можете использовать следующие методы для реагирования:

GoogleApiAvailability apiAvailability = GoogleApiAvailability.getInstance();
int result = apiAvailability.isGooglePlayServicesAvailable(this);
if (result != ConnectionResult.SUCCESS) {
    ... 
} else {
     apiAvailability.getErrorDialog(this, result, REQUEST_CODE,this).show();
}

Ответ 8

Вам необходимо обновить Google Play Services и API для изображения, которое использует ваш эмулятор. Проверьте этот ответ, разработанный для меня (Android Studio 3.1): fooobar.com/questions/62207/...

Ответ 9

У меня был Pixel_2 с нугой (SDK 25). или любые эмуляторы, имеющие Google play с Nougat SDK