Sit*_*nya 5 amazon-web-services react-native aws-iot
我已经测试了aws-iot-device-sdk,如下图所示.在我的控制台上,我从aw物联网中获取主题.
我的问题是当我尝试将它集成到我的反应本机应用程序中时.下面是我的反应原生应用程序的package.json
当我引用aws-iot-device-sdk并在我的react-native应用程序中配置设置时,我得到与aws-iot-device-ssdk相关的错误.这个sdk是否兼容本机?如果是这样,我如何配置设置以从Aws IoT设备向我的反应本机推送通知?
要在 React-Native 中使用 aws-iot-device-sdk,您需要遵循 Viotti 上面的建议(https://github.com/aws/aws-iot-device-sdk-js/issues/86#issuecomment-371159865)但添加了一些新内容,包括在 nodeify 步骤中添加“url”和“events”。我们都面临的问题是,React-Native 使用 JavaScriptCore,它与 NodeJS 不同,也与任何特定浏览器 JS 引擎不同,尽管它在 Safari 中使用。为了使用 aws-sdk 和 aws-iot-device-sdk,您需要包含替换几个重要 NodeJS 库的库。rn-nodeify 是一个 NPM 包,可以让这件事变得容易一些。GitHub 上演练的关键步骤如下:
npx rn-nodeify --install "fs,util,path,tls,stream,buffer,global,process,events,url" --hack
这将安装库来替换不在 Nodejs 中时缺少的库,并创建一个 shim.js 文件,您需要将其复制到项目的文件中并导入。在该 Shim 文件中,您还需要进行进一步的修改。buffer
应该已经安装,但 require 或 import 语句必须读取 `import { Buffer } from 'buffer/'; 带有尾部斜杠,将其与 Nodejs 版本分开,以防止混淆的转译器。
我为此需要的其他库包括react-native-crypto,它可以用来替换 NodeJS 的 crypto。编辑 rn-nodeify 的 shim 文件以允许加密。为了在React-Native中使用AWS上的WSS,我还使用了react-native-wss,它有助于处理WSS中的证书。
归档时间: |
|
查看次数: |
1059 次 |
最近记录: |