我正在尝试将心率传感器数据从手表传输到移动设备。在手表(可穿戴)方面,我收到消息说明数据已被转移。我已经将消息的优先级(PutDataMapRequest)设置为紧急监视。
但是,我无法在移动设备上接收数据。以下是我的AndroidManifest.xml代码:
<%service android:name=".WearableListenerService1">
<%intent-filter>
<%action android:name="com.google.android.gms.wearable.DATA_CHANGED" />
<%data android:host="*" android:scheme="wear" android:pathPrefix= "/healthcare" />
</intent-filter>
</service>
我的WearableListenerService1类是:
public class WearableListenerService1 extends WearableListenerService {
@Override
public void onMessageReceived(MessageEvent messageEvent) {
super.onMessageReceived(messageEvent);
String event = messageEvent.getPath();
Log.d("Event ", event);
String [] message = event.split("--");
Intent i = new Intent(this, MainActivity.class);
startActivity(i);
}
@Override
public void onDataChanged(DataEventBuffer dataEventBuffer) {
// super.onDataChanged(dataEventBuffer);
Log.d("Event ", "event data changed");
Intent i = new Intent(this, MainActivity.class);
startActivity(i);
}
}
我正在使用以下库:
compile 'com.google.android.support:wearable:2.0.0-alpha2'
compile 'com.google.android.gms:play-services-wearable:9.4.0'
答案 0 :(得分:0)
根据此tutorial,确保主应用和可穿戴应用中的applicationId
匹配(build.gradle文件),以便WearableListenerService
触发onDataChanged
1}}事件。因为当您通过移动应用程序或磨损应用程序发送一些数据时,它将检查相同的程序包以传递该数据。因此,如果您提供不同的名称,您将无法发送或接收数据。
您还可以查看此documentation和相关的SO主题:
答案 1 :(得分:0)
我发现了这个问题。我的Moto360上的Android版本是1.5,而我在Android Studio上使用了Wear 2.0的开发者预览版。