0

我使用了来自https://developer.tizen.org/ko/community/tip-tech/accessing-heart-rate-monitor-hrm-sensor-data-native-applications的三星 Gear S3 的 Tizen 示例心率监视器代码?langredirect=1

我想开发用于从 S3 Gear 中的心率监视器检索数据的 Android 或 Tizen。我从https://developer.tizen.org/ko/development/guides/web-application/sensors/human-activity-monitor?langredirect=1#retrieve找到了示例代码

我该如何整合它。请分享你的想法。非常感谢。

4

1 回答 1

0

使用Samsung Accessory SDK,您可以在 Android 中开发一个可以与 Tizen 应用程序(Gear)通信的应用程序。这是一个工作示例

如何将三星 Gear Steps 集成到 Android 应用程序中?

编辑:

在这里,我给出了测量心率并在从 Android 发送请求时返回到 Android 手机的代码。我刚刚修改了前面提到的帖子中的代码并在这里分享。

这里我只给出dataOnReceive函数的内容

            if (!SAAgent.channelIds[0]) {
                createHTML("Something goes wrong...NO CHANNEL ID!");
                return;
            }

            function sendHrData(heartRate){
                 // return Data to Android
                 SASocket.sendData(SAAgent.channelIds[0], 'HR: '+heartRate);
                 createHTML("Send massage:<br />" +
                             newData);

             tizen.humanactivitymonitor.stop('HRM');

            }

            var heartRateData=0;

            function onsuccessCB(hrmInfo) {

                console.log('Heart rate: ' + hrmInfo.heartRate);
                heartRateData = hrmInfo.heartRate;
                // holding 15 seconds as HRM sensor needs some time 
                setTimeout(function(){
                    sendHrData(heartRateData);
                    }, 15000);

            }

            function onerrorCB(error) {
                tizen.humanactivitymonitor.stop('HRM');
                console.log('Error occurred: ' + error.message);
            }



            function onchangedCB(hrmInfo) {
                //alert("onChanged...");
                tizen.humanactivitymonitor.getHumanActivityData('HRM', onsuccessCB, onerrorCB);

            }

            tizen.humanactivitymonitor.start('HRM', onchangedCB);

并且此代码不断返回心率。请根据您的要求进行修改,我只是分享Android手机和Samsung Gear之间通信的想法。

enter image description here

向服务器发送数据:

您可以使用AjaxXmlHttpRequest将数据发送到服务器

阿贾克斯:

    function sendDataToServer() {
            'use strict';

            console.log( "ready!" );
              $.ajax({
                type: "Post",
                url: "http://YOUR_URL",
                success: function (data) {
                      console.log(JSON.stringify(data));
                 }
           });
        }

XmlHttpRequest:

function postDataToServer() {
var xmlHttp = new XMLHttpRequest();

xmlHttp.onreadystatechange = function() {
    if (xmlHttp.readyState == 4) {
        if (xmlHttp.status == 200) {
            alert("data posted successfully..");
        } else {
            alert("failed to send data..");
        }
    }
}

xmlHttp.open("POST", "YOUR_URL");

xmlHttp.send("_TEST_STRING_DATA");

从 REST 查看器自动生成的代码在 Tizen IDE(可穿戴)Web 应用程序中不起作用

Tizen TV 上的 XmlHttpRequest 退出应用程序

模拟器上的 RESTful 服务

Note: You need to install Samsung Gear application in your Android phone.

于 2018-04-18T06:30:27.997 回答