【问题标题】:Tizen Input Delegator App-Control deosn't work(Wearable profile/Web Application)Tizen Input Delegator App-Control 不起作用(可穿戴配置文件/Web 应用程序)
【发布时间】:2018-08-07 11:11:34
【问题描述】:

Tizen 提供输入委托器作为通用应用程序控件。

https://developer.tizen.org/ko/development/guides/web-application/application-management/application-information-and-controls/application-controls/common-application-controls#inputdelegator

我尝试使用下面的参考指南代码片段来启动输入委托应用程序控制。

var appControlData = new tizen.ApplicationControlData('http://tizen.org/appcontrol/data/input_type', ['input_voice']);

var appControl = new tizen.ApplicationControl('http://tizen.org/appcontrol/operation/get_input',
                                            null, 'text/plain', null, [appControlData], null);

tizen.application.launchAppControl(appControl, null, function() {
    console.log('launch application control succeed');
}, function(e) {
    console.log('launch application control failed. reason: ' + e.message);
}, null);

但请求失败并显示以下错误消息。

“启动应用程序控制失败。原因:未找到匹配的应用程序。”

我在可穿戴 2.3.2 / 3.0 模拟器和 Gear Sport 目标(Tizen 3.0.0.2)上进行了尝试。 结果都是一样的。

如何使用输入委托器?
设备不支持吗?

【问题讨论】:

  • 我遇到了同样的错误......我希望这有一个解决方法,有人会发布它

标签: web tizen


【解决方案1】:

我在我的设备上重现了您的错误。然后我可以像这样创建一个ApplicationControl 对象:

/** setup image data, basic 4x4 image, encoded base64 
  * (I don't know if this data is a valid parameter. In my test any kind of 
  * input was accepted)
  */
var imagedata1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAD0lEQVQYV2NkQAOMpAsAAADuAAUtpgPEAAAAAElFTkSuQmCC";

var imagedata2 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAD0lEQVQYV2NkQAOMpAsAAADuAAUtpgPEAAAAAElFTkSuQmCC";

var  appControl =
  new tizen.ApplicationControl(
      "http://tizen.org/appcontrol/operation/view",
      null,
      "image/jpeg",
      null,
      [new tizen.ApplicationControlData("images",
          [imagedata1, imagedata2])] );

您应该能够按照您已经做的方式创建ApplicationControlData,然后按照提供的代码所示设置ApplicationControl

【讨论】:

    【解决方案2】:

    我找到了解决方案。 MIME Type(新 tizen.ApplicationControl 的第三个参数)应该是 null,因为应用程序固件在 Tizen 4.0 之前不支持它。

    var appControl = new tizen.ApplicationControl('http://tizen.org/appcontrol/operation/get_input',
                                            null, null, null, [appControlData], null);
    //text/plain should be removed
    //var appControl = new tizen.ApplicationControl('http://tizen.org/appcontrol/operation/get_input',
                                            null, text/plain, null, [appControlData], null);
    

    并且,如果您想要键盘输入,请使用input_keyboard,如下所示

    var appControlData = new tizen.ApplicationControlData('http://tizen.org/appcontrol/data/input_type', ['input_keyboard']);
    

    我在 tizen 2.3.2 模拟器和 Gear Sport(Tizen 3.0) 上进行了测试和验证

    愿原力与你同在。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-03
      • 1970-01-01
      • 2019-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多