确定何时显示我的表盘

Determine when my Watch Face is being displayed

我已经构建了几个 Android Wear 表盘,我想使用 Google Analytics 来跟踪它们何时设置和取消设置,以便我了解我有多少活跃用户。

我知道要使用来自 Android Wear 的 Google Analytics,我必须向移动应用程序中的接收器发送消息,以便它可以为我与 GA 通信,但我没有确定我应该在表盘生命周期的哪个位置发送这些消息。

谢谢!

您可以在移动应用端的 activity 中实施 WearableListenerService 或 DataApi.DataListener。然后在你的 watchface WatchFaceService.Engine OnCreate 方法中实现你可以连接到 google api client:

        GoogleApiClient mGoogleApiClient = new GoogleApiClient.Builder(SocialWatchFace.this)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .addApi(Wearable.API)
                .build();
mGoogleApiClient.connect()

然后当您连接到 google api 客户端时,将数据项发送到您的移动应用程序。它将指示服务已启动:

@Override
public void onConnected(Bundle bundle) {
    PutDataMapRequest putDataMapReq = PutDataMapRequest.create("your.app.package/path");
    DataMap dataMap = putDataMapReq.getDataMap();
    //put your info to map
    PutDataRequest putDataReq = putDataMapReq.asPutDataRequest();
    Wearable.DataApi.putDataItem(mGoogleApiClient, putDataReq);
}

然后在您的 WatchFaceService.Engine class 的 onDestroy 方法中,您可以通过上面描述的方式(通过数据项)将有关表盘寿命结束的信息发送到您的移动应用程序。 在移动应用程序的一侧,在 WearableListenerService 中处理此数据并将其放入 GA。 有关详细信息,请查看 docs.