android - 与可穿戴设备交互的服务

android - service for interaction with wearable

我尝试创建一个服务(它扩展了 WearableListenerService),该服务应该使用可穿戴设备发送和接收数据。 但是当我在该服务中创建 GoogleApiClient 对象时,它因 NullPointerException 而失败。

public class MyService extends WearableListenerService{

    private GoogleApiClient mGoogleApiClient = new GoogleApiClient.Builder(this)
        .addApi(Wearable.API)
        .build();
    private final String MESSAGE_PATH = "/message";
    private String remoteNodeId;


    @Override
    public void onMessageReceived(MessageEvent messageEvent) {
         Log.d("myMessage",messageEvent.getData());
         remoteNodeId = messageEvent.getSourceNodeId();
         sendMessage("Content received");
    }

    public void sendMessage(String message) {

         Wearable.MessageApi.sendMessage(mGoogleApiClient,
                 remoteNodeId,MESSAGE_PATH,message.getBytes());
    }

}

每当我尝试 运行 这个程序时,我都会在 mGoogleApiClient 声明部分收到带有 NullPointerException 的错误消息。

在您的 Service 中覆盖 onCreate,并将 mGoogleApiClient 的初始化放在其中

private GoogleApiClient mGoogleApiClient;

public void onCreate() {
  super.onCreate();
  mGoogleApiClient = new GoogleApiClient.Builder(this)
        .addApi(Wearable.API)
        .build();
}

别忘了打电话给mGoogleApiClient.connect();