OnDataChanged 永远不会被调用

2023-11-29

我正在尝试 dataitem APi,这是我的代码

mGoogleApiClient = new GoogleApiClient.Builder(this)
            .addConnectionCallbacks(new GoogleApiClient.ConnectionCallbacks() {
                @Override
                public void onConnected(Bundle connectionHint) {
                    Log.d("Inside", "onConnected: " + connectionHint);
                    Toast.makeText(getApplicationContext(),"Inside On connected",Toast.LENGTH_SHORT).show();
                    // Now you can use the Data Layer API
                    //Creating Dataitem
                    PutDataMapRequest dataMapRequest = PutDataMapRequest.create("/count");
                    dataMapRequest.setUrgent();
                    DataMap datamap=dataMapRequest.getDataMap();
                    PutDataRequest putDataRequest=dataMapRequest.asPutDataRequest();
                    datamap.putString("key", "Value");
                    PendingResult<DataApi.DataItemResult> pendingResult =
                            Wearable.DataApi.putDataItem(mGoogleApiClient, putDataRequest);
                }
                @Override
                public void onConnectionSuspended(int cause) {
                    Log.d("Inside", "onConnectionSuspended: " + cause);
                }
            })
            .addOnConnectionFailedListener(new GoogleApiClient.OnConnectionFailedListener() {
                @Override
                public void onConnectionFailed(ConnectionResult result) {
                    Log.d("Inside", "onConnectionFailed: " + result);
                }
            })
            // Request access only to the Wearable API
            .addApiIfAvailable(Wearable.API)
            .build();
    mGoogleApiClient.connect();
}

@Override
public void onDataChanged(DataEventBuffer dataEventBuffer) {
    Log.d("Inside","onDataChanged");
}

我错过了什么来触发数据更改?我读this and this但我仍然不清楚我应该更改什么来输入更改的数据


如果您使用DataApi.DataListener,则必须在GoogleApiClient连接后添加Listener。就像是:Wearable.DataApi.addListener(mGoogleApiClient, this)在你的里面GoogleApiClient.ConnectionCallbacks.

如果您使用 Wea​​rableListenerService,请确保接收/监听端的 AndroidManifest.xml 中有类似的代码,如下所示:

<service android:name=".YourCustomWearableListenerService">
    <intent-filter>
        <action android:name="com.google.android.gms.wearable.DATA_CHANGED"/>
            <data android:scheme="wear" 
                  android:host="*" 
                  <!-- I believe pathPrefix is optional, removing it will make the service listener to all data change events -->
                  android:pathPrefix="/YourDataMapPathPrefix"/>
        </intent-filter>
</service>

还要记住onDataChanged仅当数据实际更改时才会接到电话。假设旧数据是(“Person”,“Bob”),您将其替换为相同的数据(“Person”,“Bob”),然后onDataChanged不会被触发,因为数据实际上没有改变。但onDataChanged如果你输入 ("Person", "Bob2") 来代替,将会被触发。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OnDataChanged 永远不会被调用 的相关文章

  • 如何在android网络库(ION)中使用自签名SSL?

    使用此网络库 https github com koush ion https github com koush ion 由于当前状态是开发 我想使用自签名 SSL 证书 图书馆论坛有一些讨论 https github com koush
  • Gradle 构建错误:内存不足

    当我使用 gradle 构建时 它失败并显示以下信息 OpenJDK 64 Bit Server VM warning INFO os commit memory 0x0000000788800000 89128960 0 failed e
  • Android 应用程序在启动时打开应用程序信息屏幕,而不是启动主 Activity

    我不确定这是否是一个问题 但这是我第一次遇到这个问题 我正在开发一个应用程序 当我在进行一些编码后断开应用程序与 Android Studio 和 PC 的连接时 如果我尝试在手机上打开应用程序 它会启动app info屏幕 我们看到强制停
  • 从 arraylist 和 hashmap 中删除重复项

    我有一个数组列表 其中包含付款人的姓名 另一个数组列表包含每次付款的费用 例如 nameArray 尼古拉 劳尔 洛伦佐 劳尔 劳尔 洛伦佐 尼古拉 价格数组 24 12 22 18 5 8 1 我需要将每个人的费用相加 所以数组必须变成
  • 导入已经创建的sqlite数据库(xamarin)

    我正在使用 Xamarin 想知道如何导入我已经创建的 sqlite 数据库 到目前为止 我已将其添加到资产文件夹中 但不知道下一步从哪里开始 string localPath Path Combine System Environment
  • 如何访问android库项目中的资源

    我正在构建一个 android 库项目 它内部需要一些静态资源 图像 xml 等 然后我想知道我可以把这些资源放在哪里以及如何访问它们 既然我把资源放到了assets文件夹 我使用 AssetManager 来访问资源 public cla
  • Android:我可以创建一个不是矩形的视图/画布吗?圆形的?

    我有一个圆形视图 悬停在主要内容上方 gt 从屏幕出来的 z 轴方向 当有人点击屏幕时 我希望选择主要内容或悬停在上方的视图 当它覆盖主视图时 到目前为止效果很好 我在透明画布上有一个圆形物品 这意味着您可以看到该圆圈之外的背景的所有内容
  • 更改卡片高度即更改 Jetpack 中与 Material 3 组合的卡片颜色

    我正在使用 Card 可组合项 我希望它的颜色为白色 但是当我向它添加一些高度时 它的颜色会更改为更像主要容器颜色 我看过文档 其中有一种称为高程覆盖的东西 但找不到说明如何使用它的示例 这是我的代码 Card modifier Modif
  • 具有自定义源集的 Android Gradle 风格 - gradle 文件应该是什么样子?

    我有一个旧的 eclipse 项目 我已经转移到 android studio 并设置为使用flavor 它似乎工作得很好 直到我开始尝试在我的风格之间使用不同的 java 文件 我的项目设置是这样的 ProjectRoot acitonb
  • Android Fragment onCreateView 与手势

    我正在尝试在片段中使用手势 我在 FragmentActivity 中有以下内容来处理我的详细信息片段 我试图发生的情况是 当在视图上检测到滑动时 将该视图内的数据替换为上一个或下一个条目 如果有更好的方法来处理这个问题 我完全同意 然而
  • Android:使 Dialog 周围的所有内容都比默认值更暗

    我有一个具有以下样式的自定义对话框 它显示了一个无边框对话框 后面的任何内容都会 稍微 变暗 我的设计师希望背后的一切都比 Android 的默认设置更暗 但不是完全黑色 有这样的设置吗 我能想到的唯一解决方法是使用全屏活动而不是对话框 只
  • 如何在 NumberPicker 中一次显示 3 个以上的值

    我正在创建一个数字选择器 如下图所示 但如果有可用空间 我想显示 3 个以上的值 该选择器有 20 个项目 并且有足够的空间来显示 3 个以上的值 这可以使用 NumberPicker 来完成吗 只需以编程方式设置numberPicker
  • android textview 有字符限制吗?

    我正在尝试在 android TextView 中输入超过 2000 3000 个字符 它不显示任何内容 任何一份指南是否对 android textview 有字符限制或什么 我在G3中做了一些小测试 我发现 如果activtiy布局中有
  • SDK >=26 仍需要 mipmap/ic_launcher.png?

    在 Android 中 有两种指定启动器图标 可以说是应用程序图标 的方法 老 方式 在 mipmap 文件夹中指定不同的 png 文件 通常命名为 ic launcher png 但可以通过以下方式设置名称android icon mip
  • Glass 语音命令给定列表中最接近的匹配项

    使用 Glass 您可以通过 确定 Glass 菜单启动应用程序 它似乎会选择最接近的匹配项 除非命令相距数英里 并且您可以明显看到命令列表 无论如何 是否可以从应用程序内或从语音提示 在初始应用程序触发后 给出类似的列表并返回最接近的匹配
  • 如何关闭 EditText 中的建议?

    如何在 Android 中关闭 EditText 中的建议 android inputType textNoSuggestions 根据this http comments gmane org gmane comp handhelds an
  • Fragment 生命周期和在不存在的 Fragment 上调用 onCreate 的问题

    我正在 Android 中测试片段 并且片段生命周期有一些令人困惑的行为 我有一个活动 在横向和纵向模式下使用 xml 布局 我有一些代码可以访问在片段布局之一中定义的 EditText 对象 如果我以横向模式启动应用程序 一切都会正常 我
  • R.java是手动修改的!恢复到生成的版本

    我在布局中添加了一个 xml 文件 之后这个错误就来了 但问题是我还没有接触过 R java 文件 现在 在我的新活动中 我要将其内容视图设置为我新创建的 xml 文件 但是当我执行 R layout 时 新创建的 xml 不会出现在建议中
  • 如何在布局编辑器中模拟沉浸式模式

    我想在布局编辑器中全屏查看我的布局 我正在使用 eclipse 插件 我已经通过选择隐藏了 ActionBar NoActionBar组合中的主题 但导航栏是一个不同的故事 AFAIK 它只能使用代码中的标志来隐藏 我需要在活动 xml 文
  • 我应该如何在 Android 上使用 Retrofit 处理“无互联网连接”

    我想处理没有互联网连接的情况 通常我会运行 ConnectivityManager cm ConnectivityManager context getSystemService Context CONNECTIVITY SERVICE N

随机推荐

  • 解释回归模型中的交互作用

    我希望这是一个简单的问题 我有一个实验设计 测量两组的一些反应 比方说血压 对照组和受影响组 两组都接受三种治疗 t1 t2 t3 数据在任何意义上都不是配对的 这是一个示例数据 set seed 1 df lt data frame re
  • JavaScript 三元运算符速记

    我知道在 PHP 5 3 中不再使用这种冗余的三元运算符语法 startingNum startingNum startingNum 1 我们可以在适用的情况下为三元运算符使用简写语法 startingNum startingNum 1 我
  • VBA 将多个工作表导入工作簿

    我有以下代码 它允许我选择一个文件并从中导入 笔 选项卡 但是我想选择多个文件 我希望能够从多个工作簿中选择 笔 选项卡 每个工作簿在合并工作簿中都有自己的选项卡 您能帮忙看看这如何运作吗 我认为这可能需要使用 For Each 函数 但不
  • Python 中浮点数的余数[重复]

    这个问题在这里已经有答案了 我只是想给大家展示一下python中的运算结果 我无法解释 gt gt gt 1 0 1 0 0 0 OK gt gt gt 1 0 0 1 0 09999 gt gt gt 1 0 0 001 0 00999
  • 为什么 instanceof 对 babel-node 下的 Error 子类实例不起作用?

    我看到instanceof运算符不适用于以下实例Error子类 当运行在babel 节点OS X 上的版本 6 1 18 Node 版本 5 1 0 这是为什么 相同的代码在浏览器中运行良好 试试我的fiddle举个例子 以下代码输出tru
  • 如何使用 C# 将 JSON 发布到服务器?

    这是我正在使用的代码 create a request HttpWebRequest request HttpWebRequest WebRequest Create url request KeepAlive false request
  • SIGINT 处理和 getline

    我写了这个简单的程序 void sig ha int signum cout lt lt received SIGINT n int main string name struct sigaction newact old newact s
  • 将 C# Windows 窗体置于另一个窗口的中心

    我希望我的表单在相对于调用我的表单时处于活动状态的窗口的中心启动并打开 假设如果 Firefox 处于活动状态并且我显示表单 我希望我的表单显示在 Firefox 窗口的 中心 我认为实现此目的的一种方法是使用 user32 dll 中的
  • Xamarin Android 以编程方式下载并安装 apk

    所以我有一个验证更新的按钮 当我单击它时 我希望它下载并安装 apk 但我不断收到错误There was a problem parsing the package 正在下载 gt var imagePath Path Combine An
  • Grails 域类与其自身的关系

    我需要一种方法来让域类拥有许多自身 换句话说 存在父子关系 我正在处理的表有数据 然后有一个名为 parent id 的列 如果任何项目设置了parent id 则它是该元素的子元素 Grails 中有什么方法可以告诉 hasMany 查看
  • 错误 HBASE-ZOOKEEPER:连接太多

    我在我的应用程序中使用 Hbase Hadoop 组合 并使用 Data Nucleus 作为 ORM 当我尝试一次通过多个线程访问 Hbase 时 它 会抛出异常 Exception in thread Thread 26 javax j
  • 当用户连接到 spring websocket 时如何向用户发送消息

    我想在用户连接到 spring websocket 时向他发送消息 我已经 Configuration EnableWebSocketMessageBroker public class WebSocketConfig extends Ab
  • NumPy 矩阵类的弃用状态

    现状如何matrixNumPy 中的类 我一直被告知我应该使用ndarray类代替 是否值得 安全使用matrix我写的新代码中的类 我不明白为什么我应该使用ndarray代替 tl dr the numpy matrix类正在被弃用 有一
  • 实体框架 - 数据库优先,无需配置

    我正在开发一个使用 EF 处理现有数据库的类库 我想避免类库 和 exe 或网站 的使用者在 config 文件中包含实体连接字符串 我想要连接字符串设置一个运行时 如何使用数据库优先方法设置连接字符串 没有需要连接字符串的构造函数重载 当
  • Redshift 创建表无法通过 Python 工作

    As per 使用 IAM 角色凭证通过 Python 卸载到 S3 卸载语句完美运行 我尝试过的其他命令也是如此 例如复制和选择语句 但是 我也尝试运行一个创建表的查询 创建表查询运行时没有错误 但是当它到达 select 语句时 它会抛
  • Javascript - 按多个条件对数组进行排序

    我有一个对象数组 var arr title 50 50 title 100 100 title 50 65 title 100 125 我正在尝试对此数组进行排序 以便项目按以下顺序显示 var arr title 50 50 title
  • Android Webview rem 单位缩放方式以适应盒子

    编辑 此错误是 Webview 覆盖默认的最小字体大小 在我的示例中 Webview 在某处将最小字体大小设置为 8px 解决方案如下 Android Webview rem 单位可缩放到很大 所有 rem 单位在 Android Webv
  • 具有嵌套类型的 XAML DataContext DesignInstance

    是否可以在 XAML 中为 d DesignInstance 指定嵌套类型 如果是这样 怎么办 如果我有以下类结构 namespace MyApp public class OuterClass public class InnerClas
  • android:将图像保存到SD卡中的特定文件夹

    我这里有一个在 SD 卡上保存位图的代码片段 String filename String valueOf System currentTimeMillis ContentValues values new ContentValues va
  • OnDataChanged 永远不会被调用

    我正在尝试 dataitem APi 这是我的代码 mGoogleApiClient new GoogleApiClient Builder this addConnectionCallbacks new GoogleApiClient C