我的應用一直工作正常,直到BIND_LISTENER棄用,我做了任何需要的更改,但我的應用無法正常工作。我從磨損中成功發送消息,但在手機端沒有任何事情發生。BIND_LISTENER棄用後無法收到郵件
我的磨損代碼(發件人):
private static final String WEARABLE_DATA_PATH = "/test/";
protected void sendMessageToHandheld(final String message) {
final PendingResult<NodeApi.GetConnectedNodesResult> nodes = Wearable.NodeApi.getConnectedNodes(googleApiClient);
nodes.setResultCallback(new ResultCallback<NodeApi.GetConnectedNodesResult>() {
@Override
public void onResult(@NonNull NodeApi.GetConnectedNodesResult result) {
final List<Node> nodes = result.getNodes();
if (nodes != null) {
for (int i = 0; i < nodes.size(); i++) {
final Node node = nodes.get(i);
Wearable.MessageApi.sendMessage(googleApiClient, node.getId(), WEARABLE_DATA_PATH, message.getBytes()).setResultCallback(
new ResultCallback() {
@Override
public void onResult(@NonNull Result sendMessageResult) {
if (!sendMessageResult.getStatus().isSuccess()) {
Log.i(TAG, "Failed to send message");
} else{
Log.d(TAG, "sendind message to handled: " + node.getDisplayName()
+ " - id: " + node.getId()
+ " - path: " + WEARABLE_DATA_PATH
+ " - message: " + message);
}
}
}
);
}
}
}
});
}
在手機端的監聽器服務:
}
我的電話清單:
<service
android:name=".wear_communication.DataLayerListenerService"
android:enabled="true"
android:exported="true">
<intent-filter>
<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:host="*"
android:pathPrefix="/test/"
android:scheme="wear" />
</intent-filter>
</service>
我做了所有需要的事情(改變gradle,穿戴代碼,移動代碼,改變移動Manifest),但移動不會有磨損的結果穿着告訴我發送消息,但沒有任何反應在移動。一切似乎都很好,就像上面的代碼一樣。 我試過在移動類中放置onCreate(),並且logcat向我展示了該類被調用。 你知道會發生什麼嗎?還是缺少什麼? P.S:抱歉我的英語,即時巴西 –