Tizen gear 网络应用程序,启动带有文本数据的网络应用程序

Tizen gear web app, launch web app with text data

我有一个表盘可以使用以下代码启动另一个应用程序:

var appId ="aGbGC3smHe.apptwo"; // app to be launched 

tizen.application.launch(appId); 

它有效,但我想将文本从表盘发送到第二个应用程序,并让第二个应用程序对其执行如下操作

if (senttext === "hello"){
console.log("hello")
}

我看到这段代码,我认为它可能是答案的一半,但我不知道如何处理另一端的文本....

var appControl = new tizen.ApplicationControl("http://tizen.org/appcontrol/operation/share",null,"text/*",null ,[new tizen.ApplicationControlData("text", [message])]);

tizen.application.launchAppControl(appControl, null,function()console.log("launch application control succeed");
},function(e) {alert("ERROR")});

我能知道如何在 Tizen Web 中执行此操作吗? ... 谢谢 :)

您可以尝试以下步骤:

  1. 在手表应用程序(表盘应用程序)中使用下面的代码

var obj = new tizen.ApplicationControlData("Paste_Your_Watch_Face_APP_ID_Here", ["Hello"]);

var obj1 = new tizen.ApplicationControl("http://tizen.org/appcontrol/operation/default",
    null,
    null,
    null,
    [obj] );
        
tizen.application.launchAppControl(obj1,
    "aGbGC3smHe.apptwo",
    function() {console.log("Launch Service succeeded"); },
    function(e) {console.log("Launch Service failed : " + e.message);},
    null);

  1. 在第二个应用中使用下面的代码。现在,如果您单击 "Basic" 一词,它将显示从 Watch App 发送的数据。

    var mainPage = document.querySelector('#main');

    mainPage.addEventListener("click", function() {
        var contentText = document.querySelector('#content-text');

        var reqAppControl = tizen.application.getCurrentApplication().getRequestedAppControl();

        if (reqAppControl) {
         var reqData = reqAppControl.appControl.data;
         for (var i = 0; i < reqData.length; i++) {
                console.log("#" + i + " key:" + reqData[i].key);
                for (var j = 0; j < reqData[i].value.length; j++) {
                   console.log("   value#" + j + ":"+reqData[i].value[j]);
                   // Process the data
                   contentText.innerHTML = reqData[i].value[j];
                }
       }
            
        }
        
    });

希望对您有所帮助!