【问题标题】:Show data received by Wearable.DataApi when open the app打开应用时显示 Wearable.DataApi 接收到的数据
【发布时间】:2017-11-07 11:48:33
【问题描述】:

我正在使用此代码从手机向我的 Android Wear 设备发送数据:

PutDataRequest putDataRequest = dataMap.asPutDataRequest();
PendingResult<DataApi.DataItemResult> pendingResult = Wearable.DataApi.putDataItem(mGoogleApiClient,putDataRequest);

在我的 Android Wear 设备上,当应用打开时,我使用了覆盖方法onDataChanged(DataEventBuffer dataEventBuffer),是的,我收到的数据正确显示。

但我需要在我的 Android Wear 应用关闭时接收数据,并在我打开应用时显示它。

有人知道怎么做吗?

谢谢。

亲切的问候。

【问题讨论】:

    标签: android synchronization wear-os android-wear-data-api


    【解决方案1】:

    当然,您可以接收任何状态的数据。您的应用是否打开并不重要。

    只需在您的 Android 清单中添加以下内容:

    <service android:name=".YourService" >
        <intent-filter>
            <!-- listeners receive events that match the action and data filters -->
            <action android:name="com.google.android.gms.wearable.DATA_CHANGED" />
            <action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" />
            <action android:name="com.google.android.gms.wearable.CAPABILITY_CHANGED" />
            <action android:name="com.google.android.gms.wearable.CHANNEL_EVENT" />
            <data android:scheme="wear" android:host="*" android:pathPrefix="/yourPathPrefix" />
        </intent-filter>
    </service>
    

    并添加以下 Java 代码:

    public class DataWearableListenerService extends WearableListenerService {
        @Override
        public void onDataChanged(DataEventBuffer dataEvents) {
            super.onDataChanged(dataEvents);
        }
        @Override
        public void onMessageReceived(MessageEvent messageEvent) {
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-09
      • 2017-09-09
      • 2019-10-04
      • 1970-01-01
      • 2016-09-06
      相关资源
      最近更新 更多