我有一个表盘,可以使用以下代码启动另一个应用程序:
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 中执行此操作吗? ...谢谢你:)
最佳答案
您可以尝试以下步骤:
- 在 watch 应用程序(表盘应用)中使用以下代码
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);
- 在第二个应用程序中使用以下代码。现在,如果您点击“基本”一词,它将显示从 Watch 应用发送的数据。
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];
}
}
}
});
希望对你有帮助!
关于javascript - Tizen gear Web 应用程序,启动带有文本数据的 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44578854/