Я начал создавать Watch Face для Android Wear. Я реализовал почти все, и теперь я хочу показать на лице аккумулятор телефона. Из того, что я понял после моего исследования, это можно сделать только через API сообщений или данных. Поэтому я начал работать в своей области, но перед лицом проблемы в самом начале. Я не могу подключиться к клиенту Google Api.NullPointerException при создании экземпляра GoogleApiClient
У меня есть два класса под «носить» - один общий для часов (службы) и один созданный мной:
public class BatteryActivity extends Activity {
GoogleApiClient mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(new ConnectionCallbacks() {
@Override
public void onConnected(Bundle connectionHint) {
Log.i("", "onConnected: " + connectionHint);
// Now you can use the Data Layer API
}
@Override
public void onConnectionSuspended(int cause) {
Log.i("", "onConnectionSuspended: " + cause);
}
})
.addOnConnectionFailedListener(new OnConnectionFailedListener() {
@Override
public void onConnectionFailed(ConnectionResult result) {
Log.i("", "onConnectionFailed: " + result);
}
})
// Request access only to the Wearable API
.addApi(Wearable.API)
.build();
}
Whan я просто экземпляр это так: BatteryActivity batteryActivity = new BatteryActivity();
Я получаю эту ошибку:
java.lang.NullPointerException: Attempt to invoke virtual method 'android.os.Looper android.content.Context.getMainLooper()' on a null object reference
Я не понимаю, как mGoogleApiClient имеет значение null, если у меня есть его экземпляр. В качестве примечания - это чисто основано на документации Google здесь - https://developer.android.com/training/wearables/data-layer/messages.html
Никогда экземпляр класса Activity – Nabin