首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从我的主应用程序的活动中启动智能手表的控制扩展。还会在手表上显示从活动中发送的文本。

从我的主应用程序的活动中启动智能手表的控制扩展。还会在手表上显示从活动中发送的文本。
EN

Stack Overflow用户
提问于 2013-09-23 12:56:51
回答 2查看 1.3K关注 0票数 0

我是新的索尼智能手表开发。我面临一些问题,同时创建一个演示索尼智能手表应用程序。我的活动中有一个EditText和一个按钮。当我单击按钮时,应该将EditText中的字符串发送到智能手表并显示在控件上。我也应该能够改变手表上的文字从我的应用活动。

更新:

1)我想从我的主App活动启动一个智能手表控制扩展,并在其上显示一个简单的文本。2)文本应该从主App活动发送。

根据我从SDK示例(如果我错了请纠正我)的理解: 1)要完全控制智能手表屏幕并显示文本视图或图像,我需要扩展ControlExtension类(在我的例子中是-> DemoControlSmartWatch.java)。2)我需要在清单中注册一个BroadcastReceiver (DemoReceiver.java),当它接收到来自主机应用程序和/或智能连接应用程序的意图时,它将启动扩展服务(DemoExtensionService.java)。3)还创建了一个类(DemoRegistrationInformation.java),它扩展了RegistrationInformation类并负责注册工作。4)我有一个带有按钮.Now的活动(.Now),我想在单击按钮时向ControlExtension发送一个字符串。

我发现要开始扩展,我需要执行以下操作

代码语言:javascript
运行
复制
Intent intent = new Intent(Control.Intents.CONTROL_START_REQUEST_INTENT);
intent.putExtra(Control.Intents.EXTRA_AEA_PACKAGE_NAME, "com.example.sonytest");
intent.setPackage("com.sonyericsson.extras.liveware.emulator");
sendBroadcast(intent, Registration.HOSTAPP_PERMISSION);

我尝试在我的onCreate类的MainActivity方法中编写这个代码,但是它没有在智能手表.Should上启动控制扩展--我在DemoExtensionService中编写了上面的代码并将我的活动绑定到服务?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-23 20:00:18

您的演示似乎是不合适的,我建议您考虑一个应用程序,也将有一些实际的用途。如果我正确理解你的问题,解决办法是:

1)从您的活动中,您需要在SmartWatch上启动扩展。下面是如何做到这一点:Sony SmartWatch - invoke app on Smart Watch when it gets an event

2)您还想向扩展传递一些参数,即您提到的字符串。这可能有点棘手;通常,您会在意图本身中传递该字符串,作为一个额外的字符串,但在这里,这是不可用的。您需要将该信息(字符串)保存在扩展程序也可以访问的位置上。因此,如果您的活动和扩展是同一个应用程序的一部分,那么该位置可以是应用首选项:该活动保存首选项中的值,扩展从相同的首选项读取值,并在SmartWatch或其他任何地方显示它。

票数 2
EN

Stack Overflow用户

发布于 2013-09-24 18:12:05

通常,启动扩展的方式是从手表启动它,然后主机应用程序将发送广播来启动您的服务。

如果你试图从一个活动开始你的扩展,上面的意图应该是有效的。当你发送那个广播时,你看到什么错误了吗?检查主机应用程序是否有正确的包名。

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

https://stackoverflow.com/questions/18959831

复制
相关文章

相似问题

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