首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检测安卓穿戴的isRound或isSquare

检测安卓穿戴的isRound或isSquare
EN

Stack Overflow用户
提问于 2014-08-12 06:07:43
回答 3查看 1K关注 0票数 2

我从手持设备向可穿戴设备发送通知,然后在没有文本的卡片上显示背景图像。我想优化圆形和方形可穿戴设备的图像,而不是创建独立的应用程序和可穿戴活动。

我该如何向可穿戴设备发送消息,询问它的大小以及它是圆形还是方形?我知道如何发送消息,我只是在寻找api来查看它是圆形还是方形。

从下面的示例中,你可以看到如何在活动中检测到这一点,但我希望在后台服务中检测到这一点,因为我不想创建一个独立的可穿戴应用程序。https://github.com/mauimauer/AndroidWearable-Samples/blob/8287982332b82cada7bf68a6c5aa88df1bbbcbbe/GridViewPager/Wearable/src/main/java/com/example/android/wearable/gridviewpager/MainActivity.java

我的另一个问题显示了如何检测是否存在可穿戴设备配对,但它只返回节点名称和节点id,没有关于实际可穿戴设备的其他有用信息。How to detect if android device is paired with android wear watch

EN

回答 3

Stack Overflow用户

发布于 2014-08-13 05:25:21

确定圆形与正方形的官方方法是使用WatchInsets类和isRound()方法。https://developer.android.com/reference/android/view/WindowInsets.html#isRound()

在Android SDK Manager for API20中包含了一个名为GridViewPager的示例,它展示了如何使用isRound()方法。

你剩下的问题..。您将需要实现一个在手表上运行的应用程序,该应用程序将为您执行此查询。然后你可以向手表发送一条消息,它会执行查询,然后向手机发回一条消息,无论你想做什么。

如果您查看DataLayer示例(也与GridViewPager位于同一位置),它将显示如何检测可穿戴设备与手机的连接状态。

票数 3
EN

Stack Overflow用户

发布于 2015-02-16 22:17:09

非官方的方式--但对我来说,这要容易得多。https://github.com/tajchert/ShapeWear

只需复制ShapeWear.java类,并订阅屏幕形状检测事件setOnShapeChangeListener()或调用方法ShapeWear.isRound() (可以抛出错误是形状尚未确定)或ShapeWear. getShape() -这可能会导致ShapeWear.SHAPE_UNSURE在相同的情况下。

票数 2
EN

Stack Overflow用户

发布于 2014-12-29 15:49:34

在扩展CanvasWatchFaceService.Engine的ur引擎类中重写此方法

代码语言:javascript
复制
    @Override
    public void onApplyWindowInsets(WindowInsets insets) {
        super.onApplyWindowInsets(insets);

        Log.d(TAG, "onApplyWindowInsets");
        if (insets.isRound()) {
                 Log.d(TAG, "Round");

        } else {
                Log.d(TAG, "Square");

        }
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25253215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档