miecosystem / ios-rn-sdk Goto Github PK
View Code? Open in Web Editor NEWWorks with mijia
Home Page: https://iot.mi.com
Works with mijia
Home Page: https://iot.mi.com
我调用 this.props.navigator.push(OTAPage.route);返回错误如下:
Cannot read property 'navigator' of undefined
参考以下接口时,发现 (error)回调一直没有执行,是怎么回事?
writeWithoutResponse(identifier, serviceUUID, characteristicUUID, msg, callback)
描述:向某设备的某服务的某特征写入数据
参数:
identifier 需要查询的蓝牙设备identifier
serviceUUID 需要查询的service的UUID
characteristic 需要查询的characteristic的UUID
msg 发生到设备端的16进制字符串 例如:'FF00FF00'
callback(error) error表示是否有错误
例子:
MHBluetoothLE.writeWithoutResponse(service.peripheral, service.uuid, CharacteristicUUID_READ_NORDIC, 'FF00FF00', (error) => {
if (error) {
MHPluginSDK.showFilTips('数据写入失败');
return;
}
});
但是,如果我使用MHBluetoothLE.writeValue接口,可以正常有 (error)回调的,蓝牙功能基本正常。
之所以想使用writeWithoutResponse接口,是因为蓝牙固件升级时传输太慢,希望看看这个接口能否快一些。
packagePluginAndSign这个脚本中有对插件源码进行对称加密生成codeSign这样一个文件。不知道这个codeSign是否有必要呢?因为已经对mainbundle.js所在目录进行哈希加密了,这样已经可以达到代码验证的目的了,为什么还需要codeSign呢?
甲醛仪会广播数据给小米网关,那广播的数据中,哪部分会上传到小米云?插件也会上传历史数据到小米云,两边现在看起来不一致,需要确认一下,修改成一样的数据。
sdk中可以引入其他外部组件吗,比如说react-native-linear-gradient
尝试过直接npm install这个组件,失败,
然后尝试过在package.json中的dependencies中加入这个,然后重新npm start --reset-cache,失败
请问如果出现需要引入外部组件的需求,改如何处理
根据贵司的文档,我们编写测试程序,步骤分别如下
2.IOS扩展程序config.plist&reactNative代码分别如下
MHPluginSDK.registerDeviceStatusProps(["prop.AQI","event.SentAlarm"]);
var subscription3 = DeviceEventEmitter.addListener(MHPluginSDK.deviceStatusUpdatedEventName,(notification) => {
console.log("小米插件notification-----"+JSON.stringify(notification));
});
var subscription2 = DeviceEventEmitter.addListener(MHPluginSDK.onReceivingForegroundPushEventName,(notification) => {
// 插件在前台收到push通知回调
console.log(JSON.stringify(notification));
});
MHPluginSDK里面的callMethod的回调方法callback(isSuccess, response),response里面是有error code这个参数,但是在通过局域网向设备发送命令时,response却没有error code。
我们的插件之前同事开发的旧的代码是有去判断response里面的error code或者error message,现在在局域网下就会有问题。
isSuccess是表示网络请求(链路请求)是否成功还是向设备发送指令发送成功,文档里面没有明确的说明这些字段具体意义,再者isSuccess和response里面的code意义是一致的么?
我现在测试的是method是get_prop,测试了一些其他method也会有该问题,请帮忙看一下,谢谢。
问题描述
1.我打包了一个 包名为 com.chuangmi.remoteversion2.ios 插件,适配了多个model
2.实际上只有在 本地调试这个插件的时候获取图片路径是ok的;
3.在把RN的js 上传到服务端后,下载路径变了,例如(com.chuangmi.remoteversion2.ios_143_41/Resoucres),然后图片就没有,加载不到数据
运行成功PluginDemo米家扩展程序后点击进入不了小米开发板
调试模式下图片显示正常,打包白名单测试后,在大陆地区下插件加载不出图片,将app设置为**香港等地区能够加载图片。(移动4g,Wi-Fi下均存在此问题)
React packager ready.
[16:02:55] Crawling File System (700ms)
[16:02:55] Building in-memory fs for JavaScript
[16:02:55] Building in-memory fs for JavaScript (3ms)
[16:02:55] Building in-memory fs for Assets
[16:02:55] Building in-memory fs for Assets (2ms)
[16:02:55] Building Haste Map
[16:02:55] Building (deprecated) Asset Map
[16:02:55] Building (deprecated) Asset Map (1ms)
[16:02:55] Building Haste Map (4ms)
[16:02:55] Building Dependency Graph (721ms)
::ffff:192.168.31.97 - - [08/May/2018:08:03:00 +0000] "GET /com.xiaomi.demoios/config.plist HTTP/1.1" 404 44 "-" "Mi%20Home/4.7.7.2 CFNetwork/894 Darwin/17.4.0"
[16:03:00] request:/com.xiaomi.demoios/Main/index.ios.bundle
[16:03:00] find dependencies
::ffff:192.168.31.97 - - [08/May/2018:08:14:26 +0000] "GET /com.xiaomi.demoios/config.plist HTTP/1.1" 404 44 "-" "Mi%20Home/4.7.7.2 CFNetwork/894 Darwin/17.4.0"
[16:14:26] request:/com.xiaomi.demoios/Main/index.ios.bundle
[16:14:26] find dependencies
点击虚拟设备,提示报错如下:
Cannot find entry file
com.xiaomi.demoios/Main/index.ios.js
in any of the roots:["/Users/gl/Desktop/RNProject/ios-rn-sdk-master-MiHomePluginSDK/node_modules/_react_native@0.25.1@react-native
请问一下,米家SDK这个自带的iOS demo该如何才能跑起来?
插件退出的时候不能断掉蓝牙连接
Component 将要卸载时调用,可以在此处做一些清理工作。**此处有一处特殊情况需要注意,**即调用MHPluginSDK.closeCurrentPage()退出插件时,插件组件会被强制卸载,该方法中的操作可能来不及执行。该种情形通常出现在插件的首页(第一页),用户点击返回按钮时,调用 closeCurrentPage(),首页中该方法中的操作未全部执行。故,监听插件的退出,清理工作需要在 closeCurrentPage()之前进行,不要写在该方法中。
怎样做到
故,监听插件的退出,清理工作需要在 closeCurrentPage()之前进行,不要写在该方法中。
创建虚拟设备调试,配置了一个model,后台没找到添加白名单的入口。能说明下在那吗?
我们目前希望ios通过蓝牙向设备发送大文件。由于蓝牙一次传输字节有限,需要将文件打撒。
结果发现sdk中没有相关方法。
想用OC或者swift写一个本地方法,然后由RN调用。
结果发现网上的方法似乎无法在米家的sdk中进行添加。
1、请问我们应该如何将文件通过蓝牙传输到设备?
2、在sdk中,我们如何调用原生控件、方法或lib文件。
'use strict';
var React = require('react-native');
var {
StyleSheet,
WebView,
View,
Text,
StatusBar,
Platform,
Navigator,
ART,
Dimensions,
} = React;
var {
Surface,
Shape,
Path,
LinearGradient,
RadialGradient
} = ART;
var {
width,
height
} = Dimensions.get('window');
var Rectangle = require('./Rectangle.art');
import Circle from '../CommonModules/Chart/Circle';
class DataDisplay extends React.Component {
render() {
var textHeight = 20;
var surfaceHeight = (height - (Platform.OS === 'ios' ? 64 : 76) - 2*textHeight)/2;
return (
<View style={styles.container} >
<StatusBar barStyle='light-content'/>
<View style={{width:width, height:textHeight}}><Text style={{textAlign:'center'}}>线性渐变</Text></View>
<Surface width={width} height={surfaceHeight}>
<Rectangle x={width/2-50} y={20} width={100}
height={200}
stroke="red"
strokeWidth={1}
fill={
new LinearGradient({
'0': 'rgba(255,0,0,0)', //stop offsets and color
'0.5':'rgba(0,255,255,1)',
'1':'rgba(0,0,255,1)'
},
"50", //x1 起始点x
"0", //y1 起始点y
"50", //x2 结束点x
"200" //y2 结束点y
)}/>
</Surface>
</View>
);
}
}
var styles = StyleSheet.create({
container: {
marginTop: Platform.OS === 'ios' ? 64 : 76,
flexDirection:'row',
flex:1,
}
});
var route = {
key: 'DataDisplay',
title: '数据展示',
component: DataDisplay,
sceneConig: {
...Navigator.SceneConfigs.FloatFromRight,
gestures: {},
}
};
module.exports = {
component: DataDisplay,
route: route,
}
Team,
目前,插件里的OTA 升级功能都是调用,MHPluginSDK.openDeviceUpgradePage();,但是这个方法对应的页面,没有找到。现在有自定义OTA流程的需求,该怎么做?
您好,ios连接真机调试的时候在米家Bate中打开插件调试,插件无法正常进入,关闭就可正常进入,导致无法在浏览器上面调试代码,急急急!请帮忙解答一下!
MHPluginSDK.md 中有如下接口描述
MHPluginSDK.deviceToken((error,token)=>{
if(!error){
//console.log(token)
}
});
实际调试中发现,如果能拿到token,该接口callback中error值为true(可能error应该是isSuccess),请确认并更正一下。
您好,我这边按照文档,创建扩展程序,想连接手机创建相应的虚拟设备,在手机端配置好但是设备列表并不显示。请问如何才能看到界面程序
对于writeHexDataWithCallback(hexString, characteristicUUID, serviceUUID, type, callback) AL-[113,)方法,文档里没有说明传入hexString的长度限制,目前测试发现:
1、长度较短时,有callback,返回isSuccess=true,虽然文档没说,但是其实就是调用API成功,而并不是write成功;
2、长度过长时,没有callback,感觉应该是API健壮性需要改进;
3、长度为奇数时,字符串前面补‘0’,虽然文档没说,但是也可以理解;
问题:
1、能否提供一个接口,返回最大发送长度,这样开发者在发送较长数据时可以有效分包,多次调用writeHexDataWithCallback 方法,高效利用蓝牙。类似iOS 9开始提供的:maximumWriteValueLengthForType方法。
2、如果暂时不能提供接口,那么是否可以给出一个具体的数值?因为最大发送长度和手机、蓝牙模块有关,这里提供了产品正在使用的小米蓝牙模块Model: MHCB03P,芯片:EFR32。
关于API 的困惑,还望帮忙解答一下。
1.
set_user_device_data api 中uid 这个字段对于我们的历史数据来说有可能会有两个,一个是下载历史数据时的user ,一个是真正上传的时候的user,请问用哪个?
为什么会存在两个user?
自己只能上报自己的数据,也只能取自己的数据。
倘若用户自己有多个同样设备的情况下,uid依旧只有一个,用did来判断不同的设备。
因为不支持 backgroundImage:'linear-gradient(0deg,#62C292 0%,#F8CBAD 100%)'
也无法导入插件react-native-linear-gradient
NativeModules 模块在哪里呢?运行的时候提示 MHPluginSDK is not an Object
现在设备有检查固件版本功能,查询到有新版本后,需要在导航条右边的按钮上面加个小红点,怎么实现?
uriNaviBackButtonImage此接口目前只返回黑色的图片,希望能根据参数选择返回 黑色或者白色的 图片以适配导航栏背景色 非白色的情况
请问后期是否可以提供获取标识设备生命周期内(从设备快连到删除)的device token的接口?现在安卓端是可以获取到。
使用MHPluginFS类的过程中,遇到了如下问题,
1 MHPluginFS.downloadFile
2 MHPluginFS.readFileToBase64(result.filename, (success, base64Content) => {}
这样存储再读取出来的内容为BASE64字符串, 打印如下
cFGq/6TrAAAVG/p3MS4xLjBfMDAwMwD//////9Rc/FkA/////////////////////////////////////////2gA/Qe9BfwHxQX8
3 参考https://www.cnblogs.com/ryans/p/6512631.html,
进行了BASE64解码,最后还原成Byte数组,再转16进制字符串打印如下:
7051eabfa4eb8080151beab7b12e312e305f3030303300efbfbfefbf945cec9980efbfbfefbfbfefbfbfefbfbfefbfbfefbfbfefbfbfefbfbfefbfbfefbfbfefa880ed87bd05ec878505ec8080
问题是这样解码出来的数据和原数据有不一致,真实数据的16进制字符串内容如下:
7051aaffe8e6000075b7fa86312e312e305f3030303700ffffffffffb08d1b5b00ffffffffffffffffffffffffffffffffff
麻烦问下是否是我参考的BASE64解码有问题?
前提: 我们有企业开发者账号, 已经申请了新硬件进行开发, 但是还没有实体硬件做完. 目前在做rn扩展程序时想试用SDK目录下的Demo
尝试: 参照文档, 做了两种尝试
使用createPlugin创建新扩展程序
打包签名并上传
设置为白名单测试
启动Node服务器
在米家App上打开开发者模式, 填入我们申请的model id和新创建的插件包名, 选中创建一个相应的虚拟设备
在设备列表里并没有发现虚拟设备图标(设备数量倒是+1了)
前面步骤相似, 但是在米家App上打开开发者模式时, 填入文档里示例中的model id和sdk中demo的包名.
model id: com.xiaomi.demo.model
插件包名:com.xiaomi.svgdemo.ios
选中创建一个相应的虚拟设备
在设备列表里也没有发现虚拟设备图标(设备数量也+1了)
请问, 如何能快速的看到demo在米家app里运行的效果?
log:2018-09-03 10:54:30.766427+0800 MiHome[1155:486935] get plugin info of wyze.light.smartbulb01 succeeded: <MHPlugin: 0x1c40f2380>!
2018-09-03 10:55:12.650592+0800 MiHome[1155:486935] start download plugin
2018-09-03 10:55:14.925463+0800 MiHome[1155:486935] bonjour:lumi.gateway.v3
2018-09-03 10:55:14.925543+0800 MiHome[1155:487953] TIC Read Status [11:0x1d01663c0]: 1:57
2018-09-03 10:55:14.938021+0800 MiHome[1155:486935] Datalist refresh request sent.
2018-09-03 10:55:14:938 MiHome[1155:487507] [sendRequest] start:https://wyze-us.api.io.mi.com/app/home/device_list
2018-09-03 10:55:14.949829+0800 MiHome[1155:486935] Status bar could not find cached time string image. Rendering in-process.
2018-09-03 10:55:14.983405+0800 MiHome[1155:488195] TIC TCP Conn Failed [26:0x1c4167bc0]: 1:61 Err(61)
2018-09-03 10:55:14.983709+0800 MiHome[1155:488195] Task <15FC4B45-7D04-4E01-B136-D460ACC37A8E>.<1> HTTP load failed (error code: -1004 [1:61])
2018-09-03 10:55:14.984064+0800 MiHome[1155:487952] Task <15FC4B45-7D04-4E01-B136-D460ACC37A8E>.<1> finished with error - code: -1004
2018-09-03 10:55:15.360726+0800 MiHome[1155:487012] 其它
2018-09-03 10:55:15.361065+0800 MiHome[1155:487012] 其它
2018-09-03 10:55:16.555461+0800 MiHome[1155:487952] TIC TCP Conn Failed [27:0x1c8161d40]: 1:61 Err(61)
2018-09-03 10:55:16.555925+0800 MiHome[1155:487952] Task <533727EA-65A9-4D5D-87A6-9174E30DE07C>.<1> HTTP load failed (error code: -1004 [1:61])
2018-09-03 10:55:16.556267+0800 MiHome[1155:488195] Task <533727EA-65A9-4D5D-87A6-9174E30DE07C>.<1> finished with error - code: -1004
2018-09-03 10:55:17.122894+0800 MiHome[1155:486935] bonjour:lumi.gateway.v3
2018-09-03 10:55:17.711658+0800 MiHome[1155:486935] statGetMyDeviceListTime : 2773
2018-09-03 10:55:17.712386+0800 MiHome[1155:488195] {"value":{"type":"get_my_device_list","value":2773,"extra":1},"uid":"1244770791","type":"time","time":1535943317}
2018-09-03 10:55:17.714961+0800 MiHome[1155:487952] bonjour:lumi.gateway.v3
2018-09-03 10:55:17.715523+0800 MiHome[1155:487952] 其它
2018-09-03 10:55:17.715817+0800 MiHome[1155:487952] 其它
2018-09-03 10:55:17.716618+0800 MiHome[1155:487952] Wyze Bulb
2018-09-03 10:55:17.716785+0800 MiHome[1155:487952] Wyze Bulb
2018-09-03 10:55:17.716915+0800 MiHome[1155:487952] bonjour:lumi.gateway.v3
2018-09-03 10:55:17.717362+0800 MiHome[1155:487952] -[MHDeviceListManager notifyUI:updateType:extraInfo:]
2018-09-03 10:55:17.717694+0800 MiHome[1155:486935] -[MHPushManager checkAndhandleCachedPush] push msg:(null)
2018-09-03 10:55:17.726738+0800 MiHome[1155:486935] [WC] WCSession is not paired
2018-09-03 10:55:17.726821+0800 MiHome[1155:486935] [WC] -[WCSession updateApplicationContext:error:]_block_invoke failed due to WCErrorCodeDeviceNotPaired
2018-09-03 10:55:31.458057+0800 MiHome[1155:488320] TIC TCP Conn Failed [28:0x1c8164800]: 1:61 Err(61)
2018-09-03 10:55:31.458422+0800 MiHome[1155:488320] Task .<1> HTTP load failed (error code: -1004 [1:61])
2018-09-03 10:55:31.459405+0800 MiHome[1155:487671] Task .<1> finished with error - code: -1004
2018-09-03 10:55:46.464156+0800 MiHome[1155:487954] TIC TCP Conn Failed [29:0x1c0167740]: 1:61 Err(61)
2018-09-03 10:55:46.464499+0800 MiHome[1155:487954] Task <99BC1598-7D52-4016-A546-D59AC9498922>.<1> HTTP load failed (error code: -1004 [1:61])
2018-09-03 10:55:46.464884+0800 MiHome[1155:488195] Task <99BC1598-7D52-4016-A546-D59AC9498922>.<1> finished with error - code: -1004
2018-09-03 10:55:48.831801+0800 MiHome[1155:487954] TIC TCP Conn Failed [24:0x1c4167740]: 3:-9802 Err(-9802)
2018-09-03 10:56:00.007567+0800 MiHome[1155:486935] Status bar could not find cached time string image. Rendering in-process.
2018-09-03 10:56:01.453155+0800 MiHome[1155:487671] TIC TCP Conn Failed [31:0x1c8164680]: 1:61 Err(61)
2018-09-03 10:56:01.453577+0800 MiHome[1155:487671] Task .<1> HTTP load failed (error code: -1004 [1:61])
2018-09-03 10:56:01.453979+0800 MiHome[1155:488195] Task .<1> finished with error - code: -1004
2018-09-03 10:56:15.062813+0800 MiHome[1155:487671] NSURLConnection finished with error - code -1001
(lldb) po error
Error Domain=NSURLErrorDomain Code=-1001 "请求超时。" UserInfo={NSUnderlyingError=0x1c8249750 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "请求超时。" UserInfo={NSErrorFailingURLStringKey=https://awsusor0-cdn.fds-ssl.api.xiaomi.com/default/com.wyze.light.smartbulb01.iosr_2018083014573676639.zip?GalaxyAccessKeyId=5721718224520&Expires=3079662536000&Signature=e4Oua+zg0sWboFXztF4aZMQ5W6s=, NSErrorFailingURLKey=https://awsusor0-cdn.fds-ssl.api.xiaomi.com/default/com.wyze.light.smartbulb01.iosr_2018083014573676639.zip?GalaxyAccessKeyId=5721718224520&Expires=3079662536000&Signature=e4Oua+zg0sWboFXztF4aZMQ5W6s=, _kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4, NSLocalizedDescription=请求超时。}}, NSErrorFailingURLStringKey=https://awsusor0-cdn.fds-ssl.api.xiaomi.com/default/com.wyze.light.smartbulb01.iosr_2018083014573676639.zip?GalaxyAccessKeyId=5721718224520&Expires=3079662536000&Signature=e4Oua+zg0sWboFXztF4aZMQ5W6s=, NSErrorFailingURLKey=https://awsusor0-cdn.fds-ssl.api.xiaomi.com/default/com.wyze.light.smartbulb01.iosr_2018083014573676639.zip?GalaxyAccessKeyId=5721718224520&Expires=3079662536000&Signature=e4Oua+zg0sWboFXztF4aZMQ5W6s=, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-2102, NSLocalizedDescription=请求超时。}
但是在浏览器中
输入
https://awsusor0-cdn.fds-ssl.api.xiaomi.com/default/com.wyze.light.smartbulb01.iosr_2018083014573676639.zip?GalaxyAccessKeyId=5721718224520&Expires=3079662536000&Signature=e4Oua+zg0sWboFXztF4aZMQ5W6s=
是可以正常下载插件内容
在用MHXiaomiBLE.registerXiaoMiBLE()接口时,回调返回 error。{"message":"register failed.","code":3},屏幕上显示:YellowBox.js:56 Unable to load source map: Source code is not available。
请问会不会影响后面的操作。如果影响,是app错误?还是硬件设备没有实现什么协议?我们应该怎么做?
iOS这边一个新的报错问题。
下面这个characteristic uuid 安卓和设备交互是可以的,iOS这边却提示没有。
报错:"not found device with characteristic uuid 524F534E-4553-5F47-5F45-49585F4E5558 on service uuid FEFE5245-5652-4553-5F45-49585F4E5558 on peripheral with identifier B2CBF943-5309-4D39-A6FA-E2C6B211683B "
在插件的主页面,登陆并连接设备,无法登陆
如代码所示:
componentDidMount() {
//获取当前的设备信息
MHXiaomiBLE.getDefaultDevice((error, device) => {
if (!error) {
MHPluginSDK.showLoadingTips('连接设备中');
MHXiaomiBLE.loginXiaoMiBLE(device.did, device.mac, 10, (error, result) => {
MHPluginSDK.dismissTips();
if (!error) {
this.state.device = result.device;
this._initDevice();
}
else {
MHPluginSDK.showFailTips("连接设备失败,XiaomiBLE无法登录");
this.props.navigator.pop();
}
});
}
else {
MHPluginSDK.showFailTips("连接设备失败,XiaomiBLE无法获取设备");
this.props.navigator.pop();
}
});
}
报错信息
19:27:15.849934 +0800 MiHome [REACT][-]-: loginXiaoMiBLE-----device.did:1010008820
19:27:15.850134 +0800 MiHome [REACT][-]-: loginXiaoMiBLE-----device.mac:D5:25:50:9F:00:36
19:27:31.024586 +0800 MiHome [REACT][-]-: loginXiaoMiBLE--error--{"message":"login timeout.","code":404}
文档写的不够详细,那请问,我进入设备,是这样连接蓝牙设备吗
插件打点的API->addRecord(type, value, extra)
已弃用,是否有替代的方法?
安卓端打点接口是可用的https://github.com/MiEcosystem/NewXmPluginSDK/blob/master/API%E5%BC%80%E5%8F%91%E6%96%87%E6%A1%A3/%E7%BB%9F%E8%AE%A1%E7%9B%B8%E5%85%B3API.md
MHLog 模块提供扩展程序内的日志打点、统计打点(内测中)功能。
我看方法addLog
只是在用户反馈的时候上传日志,和打点统计不太一样
peripheral_didUpdateValueForCharacteristic_error监听收到蓝牙设备的通知,返回notification中带的value是什么类型数据,文档上面没有说明
问题描述
我打包了一个包名为 com.chuangmi.remoteversion2.ios 插件,适配了多个model;
实际上只有在 本地调试这个插件的时候获取图片路径是ok的;
在把RN的js 上传到服务端后,下载路径变了;
例如(com.chuangmi.remoteversion2.ios_143_41/Resoucres),然后图片就没有,加载不到数据
1.现在插件里调用删除设备,删除后没有提供一个回调来通知插件删除本地数据
2.如果用户没打开插件,直接在列表里删除设备/直接重置设备,本地保存的用户数据是不是也要处理下
在开发过程中我们想利用MHXiaomiBLE.encryptMessageXiaoMiBLE()进行加密时,报错{"message":"login first","code":1},貌似说我要登陆。
我修改了逻辑,在加密前,想先用MHXiaomiBLE.loginXiaoMiBLE()进行登录,结果这方法直接导致米家app崩溃。
请注意,这里是米家app崩溃,而不是扩展程序崩溃。
我后来移植了米家自带的Demo(com.xiaomi.croebledemo.io)中的XiaoMiBLEMainPage.js逻辑,结果发现登录方法依然会导致米家app直接崩溃。
请问我应该如何加解密?
app.setIsNavigationBarHidden()
和
route = {
isNavigationBarHidden: true,
}
均不起作用
如下图所示,我现在有个历史数据是2018-6-20产生的,我2018-6-29 读出来了,那time字段用哪个时间?目前用的是2018-6-20。
另外,关于获取历史数据的API,如下所示,取月数据时,time_end 是当前时间,那time_start 是怎么算的?按照年获取的时候怎么算?
"did":"123",//设备的did
"uid":'123',//用户uid
"key":"4112",//Object ID,甲醛(0x1010)十进制转化
"type":"event", //甲醛(0x1010)定义为属性
"time_start":"1514649599", //例:2017-12-31 00:00:00
"time_end":"1514822399", //例:2018-01-01 23:59:59
"group":"raw" //返回数据的方式,默认 raw , 可选值为 hour、day、week、 month。
"limit":"20" //返回数据的条数,默认 20,最大 1000
MHPluginSDK.privacyAndProtocolReview("license","https://www.xiaomi.com","privacy","https://www.xiaomi.com");
样例种所需要传入的URL是我们自己维护的使用和隐私协议吗?还是由小米提供的?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.