- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试使用 Wearable 消息 API 在我的手机和可穿戴设备之间发送消息。手机(实体一加一)和智能 watch (实体索尼智能 watch 3)将相互连接。发送消息也会报告已发送。但是移动设备和可穿戴应用程序的 WearableServiceListener 都不会响应这些消息。
我检查过:
应用程序ID
包名称
list
我还可以检查什么来发现问题?谢谢
public class MainActivityPhone extends AppCompatActivity implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener {
private Node connectedPhone;
private static String WEAR_PATH = "/from_phone";
private final String TAG = MainActivityPhone.class.getSimpleName();
GoogleApiClient googleApiClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
googleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(Wearable.API)
.build();
googleApiClient.connect();
}
public void phoneButtonHandler(View view){
sendMessage();
}
@Override
public void onConnectionSuspended(int i) {
Log.e(TAG,"connection suspended");
}
@Override
public void onConnectionFailed(ConnectionResult connectionResult) {
Log.e(TAG,"connection failed");
}
@Override
public void onConnected(Bundle bundle) {
Wearable.NodeApi.getConnectedNodes(googleApiClient)
.setResultCallback(new ResultCallbacks<NodeApi.GetConnectedNodesResult>() {
@Override
public void onSuccess(@NonNull NodeApi.GetConnectedNodesResult nodes) {
for (Node node : nodes.getNodes()) {
if (node != null && node.isNearby()) {
connectedPhone = node;
Log.i(TAG, "Connected to " + connectedPhone.getDisplayName());
}
}
}
@Override
public void onFailure(@NonNull Status status) {
if (connectedPhone == null) {
Log.i(TAG, "not connected!");
}
}
});
}
@Override
protected void onStart() {
super.onStart();
googleApiClient.connect();
}
@Override
protected void onStop() {
super.onStop();
googleApiClient.disconnect();
}
private void sendMessage(){
if(connectedPhone != null && googleApiClient != null) {
Wearable.MessageApi.sendMessage(googleApiClient, connectedPhone.getId(), WEAR_PATH, "alarm".getBytes()).setResultCallback(new ResultCallbacks<MessageApi.SendMessageResult>() {
@Override
public void onSuccess(@NonNull MessageApi.SendMessageResult sendMessageResult) {
Log.e(TAG, "message sent");
}
@Override
public void onFailure(@NonNull Status status) {
Log.e(TAG, "connection failed!" + status.getStatusMessage());
}
});
}
else{
Toast.makeText(this,"failed to send, no connection",Toast.LENGTH_SHORT).show();
}
}
.
<service android:name=".ListenerFromWear">
<intent-filter>
<action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" />
</intent-filter>
</service>
对于两个模块:
android {
compileSdkVersion 24
buildToolsVersion "24.0.2"
defaultConfig {
applicationId "com.leon_wolf.bigpresenter.connectphoneandwatch"
minSdkVersion 23
targetSdkVersion 24
versionCode 1
versionName "1.0"
最佳答案
将您的服务定义更改为:
<service android:name=".ListenerFromWear">
<intent-filter>
<action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" />
<data android:host="*" android:scheme="wear" />
</intent-filter>
</service>
您需要指定 wear
方案,详情如下:
还要确保您的 Service
扩展 WearableListenerService
关于Android 6.1 和 Smartwatch 不通信 WearableListenerService,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39707680/
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 8年前关闭。 Improve thi
我非常喜欢具有滚动功能的索尼智能 watch 扩展的外观和感觉,并且我希望在我的应用程序中拥有同样的功能。有没有任何示例或指南如何实现这一点? 如果这样的功能是 Utils 库的一部分,那就太好了,因
我想在用户更改小部件设置时更新 SmartWatch 小部件。我知道这可以通过发送 WIDGET_IMAGE_UPDATE_INTEN Intent 来完成,但似乎我没有主机应用程序包名称的信息(即
在我的 android 应用程序中,我需要为索尼智能 watch 开发一个扩展,我需要显示一个列表。 当我在我的 android 设备中收到推送通知时,需要刷新此列表。 如何在智能 watch 中动态
我有一个应用程序只支持 v1 的 SmartWatch 小部件(getRequiredWidgetApiVersion() 返回 1)。在 v2 中,我添加了代码以支持控制,还更改了代码以针对 get
我在Google Play商店中发布了一个应用,并且还添加了:SmartWatch 2的Smart Connect扩展名(在描述的每个译文中),但不幸的是,当我在Play商店中搜索智能扩展名或从Sma
哪个 API 可以告诉我有关特定配件设备是否支持 LED 的信息? 最佳答案 SmartWatch 和 Smart Wireless Headset Pro 都不包含 LED。 但是,您可以使用 Ca
我知道这将是这个的副本 -> How to fix custom watch face time on Sony SmartWatch 2 after SW2 update 但是发布是因为原始问题由于
我希望这不是通用的,但我正在为 Sony SmartWatch 开发一个应用程序。每当我犯了一个错误,比如允许一个空指针异常。我无法让我的应用程序重新启动。就好像永远停留在坠毁的状态。更糟糕的是,我还
创建 SmartWatch 2 扩展的屏幕截图的推荐方法是什么? 不幸的是,模拟器上的通知扩展看起来与真实设备上的完全不同。此外,我使用布局(而不是发送图像)的控件扩展在设备模拟器上看起来略有不同。
我正在尝试触发智能 watch 上的按钮点击,然后更改 Android 手机主机应用程序中的文本。我试图向广播接收器发送广播 Intent 并启动一项服务,其中包括一种更改主机应用程序中的文本的方法。
所以我设置了一个 2 页的 Android 磨损通知(从设备发送): final NotificationCompat.Builder mainNotificationBuilder = new No
我正在查看 Sony 提供的源代码示例,但没有找到在注册后动态更改或修改 Notification API 布局的方法。 或者换句话说,是否可以动态注册一个 RegistrationInformati
我为带有android wear的moto360制作了一些应用程序(计步器、心率、录音机)。一切正常,但我不知道如何在 watch 上保存数据以及如何在智能手机上访问数据。我成功地向 watch 发送
我想知道如何在屏幕关闭的情况下让我的加速度计保持唤醒状态。 在开发者文档(Smart Extension SDK 中的 SmartWatch_WP_1.pdf)中,我读到了 控制暂停时传感器停止 使用
我想编写一个应用程序来监控收到的短信,如果短信内容包含预定义文本(例如“回家”),则在 watch 上通知我。 我知道我可以使用通知 API 添加事件。它会振动并在 watch 上显示一个小应用程序图
如果我完全忽略了这里的明显之处,请原谅我,但我似乎无法从代码中找出如何区分 smartWatch 1 和 smartWatch 2 的方法。硬件和显示尺寸似乎存在一些差异我想解释一下。太好了...如果
我浏览了 SW2 SDK 示例并通读了提供的文档,但是在调整这些以满足我的应用程序需求时遇到问题。 目前我尝试将 SW2 支持集成到我现有的 android 应用程序中。以下是我试图详细实现的目标:
我已经构建了一个 phonegap 应用程序并想扩展它的功能,以便在智能 watch 上用户可以查看从 XML 文件生成的文本。 有smartwatch SDK对于 native 安卓。它是用 Jav
首先要确定并澄清这一点,Smartwatch 3 的 NFC 只是一个嵌入式标签还是理论上功能齐全的 NFC 芯片? 希望它不仅仅是一个标签,我们想使用 NFC 构建一个 Android Wear 应
我是一名优秀的程序员,十分优秀!