7

Я хотел сделать легкое носимое приложение и подключиться через слой данных. Все отлично работает с ручным модулем (с помощью: S5), но пригоден для носков (с помощью: Moto 360) всегда бросает ошибку:Android Wear Error ConnectionResult {statusCode = SERVICE_VERSION_UPDATE_REQUIRED, resolution = null}

onConnectionFailed: ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null}

услуга игры на КПК является уточненным

Я добавил

compile 'com.google.android.gms:play-services:7.3.0' 

как для переносного компьютера, так и для износа build.gradle.

Пригодный для носки активность:

@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(); 
    } 

Я проводил исследования, но я не мог найти рабочее решение.

+0

Если вы используете эмулятор для устройства износа, убедитесь, что ваш эмулятор имеет последнюю версию для Android. У меня был эмулятор с API 22, и я получил ошибку. Затем я создал новый с API 24 (7,0 нуга), и он сработал. –

ответ

6

У меня аналогичная проблема, когда я использую Google Play Services на ASUS ZenWatch,

В носимом всегда бросает ошибки:

ConnectionResult{statusCode=SERVICE_VERSION_UPDATE_REQUIRED, resolution=null

Google Play services out of date. Requires 7327000 but found 6774534

Я нашел носимый и карманный Google Play Services может быть не синхронизируется, я не знаю почему.

enter image description here

Таким образом, проверить носимых Google Play Services версии

Настройки -> О -> Программное обеспечение версии

И Синхронизировать у приложений

Wear приложение Запуск Android -> Нажмите значок шестеренки -> выберите устройство -> Приложения для повторной синхронизации

Подождите 3-5 минут, проверьте загрузочную версию Службы Google Play.

Когда синхронизация завершена, возможно, вы сможете ее обработать.

Надеюсь, вы поймете мой сломанный английский.

+0

Это решило проблему, спасибо. – Julius

+2

hmm Службы Google не синхронизируются для меня. На моем телефоне это версия 8.1.15, а на эмуляторе износа - 7.3.27. – user2968401

+0

та же проблема, что и выше – KOTIOS

2

Если выбранный ответ не работает для некоторых ppl, попробуйте это. Чтобы получить новейшие сервисы игры в google для ношения, необходимо использовать последний образ системы (API 22 с этого поста) для эмулятора. Раньше я использовал API 21.

1

Я решил тот же случай, понизив версии библиотеки в сценариях градиента.

Зависимости телефон проекта изначально были

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 в обоих случаях.

1

У меня был такой же выпуск.

Я смог исправить это, обновив сервисы 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> 

Q Примечание, это займет 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 версии сервиса, вы должны быть хорошо идти. Счастливое кодирование!

0

В моем случае я получаю сообщение об ошибке при компиляции против

compile 'com.google.android.gms:play-services:9.8.0" 

Обновление до 10.0.1, установил ее.

0

У меня была эта проблема, когда пыталась протестировать на android wear emulator running 7.1.1 W play services 10.2.89. У меня была build.gradle зависимость, установленная в модуле износа 11.0.1. Самый простой быстрый решение вы пытаетесь установить версию игры услуги в вас build.gradle равным или меньше, чем то, что у вас есть на вас носить устройство или эмулятор в моем случае я установить:

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

и она работала ,

Смежные вопросы