每当用户更改窗口小部件设置时,我都希望更新SmartWatch窗口小部件。
我知道可以通过发送WIDGET_IMAGE_UPDATE_INTEN
意图来完成,但似乎我没有主机应用程序包名称的信息(即com.sonyericsson.extras.smartwatch)。
如何获得“主机应用程序包名称”?
PS:目前,我已经在我的代码中硬连接了“com.sonyericsson.extras.smartwatch”这个名字。
答案 0 :(得分:3)
每次您的小部件扩展程序都从主机应用程序接收到一个意图时,主机应用程序的程序包名称将作为额外内容包含在意图中。
String hostAppPackageName = intent.getStringExtra(Widget.Intents.EXTRA_AHA_PACKAGE_NAME);
您可以存储软件包名称,以便以后在代码中使用。这也是它在SDK的实用程序类中的完成方式,即它作为全局变量存储在抽象类ExtensionService中,SDK中的所有Sample扩展都使用它。
查看SDK实用程序类here