Ошибка Android Wear ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null}
Я хотел создать простое в использовании приложение и подключаться к нему через слой данных. Все отлично работает с ручным модулем (используя: S5), но носимый (используя: Moto 360) всегда выдает ошибку:
onConnectionFailed: ConnectionResult {statusCode = SERVICE_VERSION_UPDATE_REQUIRED, resolution = null}
Услуги игры на портативном устройстве являются современными
я добавил
compile 'com.google.android.gms:play-services:7.3.0'
на оба, наладонник, как на износ.
Носимая активность:
@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);
}
});
int result = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
Log.i(TAG,"Services available: "+ result);
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(new GoogleApiClient.ConnectionCallbacks() {
@Override
public void onConnected(Bundle connectionHint) {
Log.d(TAG, "onConnected: " + connectionHint);
// Now you can use the Data Layer API
}
@Override
public void onConnectionSuspended(int cause) {
Log.d(TAG, "onConnectionSuspended: " + cause);
}
})
.addOnConnectionFailedListener(new GoogleApiClient.OnConnectionFailedListener() {
@Override
public void onConnectionFailed(ConnectionResult result) {
Log.d(TAG, "onConnectionFailed: " + result);
}
})
// Request access only to the Wearable API
.addApi(Wearable.API)
.build();
}
@Override
protected void onStart() {
super.onStart();
Log.i(TAG, "==OnStart===");
mGoogleApiClient.connect();
}
Я провел исследование, но не смог найти никакого рабочего решения.
6 ответов
У меня похожая проблема, когда я использую Сервисы Google Play на ASUS ZenWatch,
В носимых всегда выкидывают ошибку:
ConnectionResult {statusCode = SERVICE_VERSION_UPDATE_REQUIRED, разрешение = ноль
Сервисы Google Play устарели. Требуется 7327000, но найдено 6774534
Я обнаружил, что носимые и портативные службы Google Play могут не синхронизироваться, я не знаю почему.
Итак, проверьте носимую версию Сервисов Google Play
Настройки -> О программе -> Версия программного обеспечения
И повторно синхронизировать приложения
Запустите приложение And roid Wear -> щелкните значок шестеренки -> выберите устройство -> Resync apps
Подождите 3-5 минут, проверьте носимую версию Сервисов Google Play.
Когда синхронизация завершится, возможно, вы сможете это сделать.
Надеюсь, вы понимаете мой ломаный английский.
Если выбранный ответ не работает для некоторых людей, попробуйте это. Чтобы получить последние сервисы Google Play для износа, необходимо установить последнюю версию образа системы (API 22
на этот пост) для эмулятора. Я использовал API 21
ранее.
Я решил ту же проблему, опустив версии библиотек в скрипты Gradle.
Зависимости проекта телефона изначально были
compile 'com.google.android.gms:play-services:9.2.0'
Зависимости проекта часов
compile 'com.google.android.support:wearable:2.0.0-alpha1'
compile 'com.google.android.gms:play-services-wearable:9.2.0'
Телефон перестал требовать что-то обновить после того, как я понизил версию с 9.2.0 до 9.0.0 в обоих случаях.
У меня была такая же проблема.
Мне удалось это исправить, обновив службы Android Play до одной и той же версии на устройствах Android Mobile и Android Wear.
Вы можете проверить версию сервисов Android Play на своем мобильном устройстве, перейдя
Settings -> Apps -> Google Play services -- The version should be listed near the top.
Затем перейдите на устройство Android Wear и проверьте версию сервисов Android Play. Это можно сделать, перейдя
Settings -> About -> Click on Versions -- The version should be listed
Если эти версии не совпадают, необходимо обновить младшую версию до той же версии, что и более высокая.
Сначала перейдите на страницу http://www.apkmirror.com/apk/google-inc/google-play-services/ чтобы загрузить службы Android Play APK. Убедитесь, что установлена та же версия, что и на другом устройстве. Эта ссылка содержит загрузки, а также хорошая информация о поиске правильного APK для вашего устройства.
С помощью этой команды вы можете установить APK на ваше мобильное устройство Android. Параметр -r (переустановить) необходим, если на вашем устройстве установлена текущая версия служб Google Play.
adb install -r <path to APK>
Вы также можете установить APK прямо на устройство Android Wear с помощью Bluetooth, если это устройство необходимо обновить. Это требует немного больше работы.
Во-первых, убедитесь, что ваше устройство Wear и мобильные устройства сопряжены. Перейдите в приложение "Android Wear" на вашем мобильном устройстве, в левом верхнем углу вы увидите ваше устройство с подключенным статусом. Нажмите на механизм и прокрутите вниз до заголовка раздела "Отладка по Bluetooth". Убедитесь, что настройки выглядят так:
**Debugging over Bluetooth**
Host: disconnected
Target: connected
Затем запустите эти две команды
adb forward tcp:4444 localabstract:/adb-hub
adb connect localhost:4444
Наконец, запустите эту команду
adb devices
Вы должны увидеть два подключенных устройства.
**List of devices attached**
localhost:4444 device
"Device Name" device
Если у вас есть что-то похожее на это
**List of devices attached**
localhost:4444 unauthorized
"Device Name" device
Вам необходимо включить режим отладки на устройстве Android Wear. Это можно сделать, перейдя в
Settings->About and pressing the Build Number tab 7 times.
Вернуться к
Settings->Developer Options, this should have just appeared.
Обязательно включите отладку ADB и отладку по Bluetooth
Наконец, теперь, когда у вас подключены оба устройства, вы можете использовать эту команду для установки APK на ваше устройство Android Wear
adb -e install -r <path to APK>
Быстрое примечание, это займет около 10 минут, и ничего не произойдет. Просто наберитесь терпения и подождите. В конце концов вы получите ответ, который выглядит следующим образом:
76 KB/s (18622942 bytes in 238.161s)
pkg: /data/local/tmp/com.google.android.gms_9.2.56_(534- 124593566)-9256534_minAPI20(armeabi-v7a)(240dpi)_apkmirror.com.apk
Success
Как только оба устройства будут иметь одинаковые версии сервиса Google Play, вам будет хорошо. Удачного кодирования!
В моем случае я получал ошибку при компиляции
compile 'com.google.android.gms:play-services:9.8.0"
Обновление до 10.0.1, исправлено.
У меня была эта проблема, когда я пытался протестировать на эмуляторе износа Android с запущенными сервисами 7.1.1 W play 10.2.89. У меня была зависимость build.gradle, установленная в модуле износа 11.0.1. Самое простое и быстрое решение - вы пытаетесь установить версию Play Services в вашем build.gradle равной или меньшей, чем та, что у вас есть на вашем устройстве или эмуляторе, в моем случае я установил:
compile 'com.google.android.gms:play-services-wearable:10.0.1'
и это сработало.