7

簡単なウェアラブル アプリを作成し、データ レイヤーを介して接続したいと考えていました。ハンドヘルド モジュール (S5 を使用) ではすべて正常に動作しますが、ウェアラブル (Moto 360 を使用) では常にエラーがスローされます。

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

調査を行いましたが、有効な解決策が見つかりませんでした。

4

6 に答える 6

1

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 に下げた後、電話は何かをアップグレードするよう要求しなくなりました。

于 2016-07-01T20:14:19.933 に答える