的SmartWatch的扩展开始
问题描述:
从我的分机,我就可以开始了呼叫处理扩展使用此代码:的SmartWatch的扩展开始
Intent i1 = new Intent("com.sonyericsson.extras.aef.control.START_REQUEST");
i1.putExtra("aea_package_name", "com.sonyericsson.extras.liveware.extension.call");
i1.setPackage("com.sonyericsson.extras.smartwatch");
mContext.sendBroadcast(i1, "com.sonyericsson.extras.liveware.aef.HOSTAPP_PERMISSION");
但我不能开始我自己的扩展,也以同样的方式任何其他第三方扩展:
Intent i2 = new Intent("com.sonyericsson.extras.aef.control.START_REQUEST");
i2.putExtra("aea_package_name", "eir.log");
i2.setPackage("com.sonyericsson.extras.smartwatch");
mContext.sendBroadcast(i2, "com.sonyericsson.extras.liveware.aef.HOSTAPP_PERMISSION");
当从另一个应用程序调用它时,i2意图工作正常,但不能从扩展中调用。
我很困惑。呼叫处理扩展是否从主机应用程序接收到一些特殊待遇,或者是什么问题?
答
我发现了两个办法来解决这个问题:调用其他之前,在当前延伸
1)触发停止。这恰好适用于最新的SmartWatch 2,但据我记忆,它不适用于原始的SmartWatch。
什么是安全的事,如果你开始自己的扩展:
2)定义要开始将获得(这是当然的,该清单文件中做了扩展的自定义意图);然后从您的其他分机广播该意图。我选择这种方式,也是因为它使我能够将数据传递给扩展。
如果您觉得此解决方案有用,请投票:-)
您可以添加Android清单的清单开始标记吗? – mdiener 2013-10-08 12:18:28
@mdiener我不知道我是否正确理解你,我不知道它有什么区别......无论如何,它是这样的:'” –
Eir
2013-10-10 12:22:54