待写
微前端解决方案
去年就在进行一些微前端工作,现在重新整理下相关方案以供选择:
乾坤qiankun
https://github.com/umijs/qiankun
介绍: https://zhuanlan.zhihu.com/p/78362028
single-spa
飞冰 icestark
https://github.com/ice-lab/icestark
mooa
https://github.com/phodal/mooa
介绍:
ngx-planet
angular8应用在IOS10中白屏
将
解决办法:
将polyfills.ts中的
import ‘zone.js/dist/zone’;
放到
main.ts中
xcode编译成功但无法安装到手机
Unable to install “”
Domain: com.apple.dtdevicekit
Code: -402620395
App installation failed
Domain: com.apple.dtdevicekit
Code: -402620395
Failure Reason: A valid provisioning profile for this executable was not found.
User Info: {
DVTRadarComponentKey = 487927;
“com.apple.dtdevicekit.stacktrace” = (
0 DTDeviceKitBase 0x00000001202e36e7 DTDKCreateNSError + 109
1 DTDeviceKitBase 0x00000001202e3de9 DTDK_AMDErrorToNSError + 792
2 DTDeviceKitBase 0x000000012032356a 90-[DTDKMobileDeviceToken installApplicationBundleAtPath:withOptions:andError:withCallback:]_block_invoke + 164
3 DVTFoundation 0x0000000107d40c12 DVTInvokeWithStrongOwnership + 73
4 DTDeviceKitBase 0x0000000120323301 -[DTDKMobileDeviceToken installApplicationBundleAtPath:withOptions:andError:withCallback:] + 1589
5 IDEiOSSupportCore 0x00000001201aba25 __118-[DVTiOSDevice(DVTiPhoneApplicationInstallation) processAppInstallSet:appUninstallSet:installOptions:completionBlock:]_block_invoke.352 + 4523
6 DVTFoundation 0x0000000107e71e7a __DVT_CALLING_CLIENT_BLOCK + 7
7 DVTFoundation 0x0000000107e73552 __DVTDispatchAsync_block_invoke + 809
8 libdispatch.dylib 0x00007fff6f960583 _dispatch_call_block_and_release + 12
9 libdispatch.dylib 0x00007fff6f96150e _dispatch_client_callout + 8
10 libdispatch.dylib 0x00007fff6f966ace _dispatch_lane_serial_drain + 597
11 libdispatch.dylib 0x00007fff6f967452 _dispatch_lane_invoke + 363
12 libdispatch.dylib 0x00007fff6f970a9e _dispatch_workloop_worker_thread + 598
13 libsystem_pthread.dylib 0x00007fff6fbc06fc _pthread_wqthread + 290
14 libsystem_pthread.dylib 0x00007fff6fbbf827 start_wqthread + 15
);
}
解决办法:
nrf52传输距离测试
Protocol / TX power output | 0dBm | 4dBm | 8dBm |
BLE @ 1Mbps | 248m | 276m | 345m |
BLE @ 2Mbps | 238m | 273m | 333m |
BLE @ 125kbps (long-range) | N/A | N/A | 756m |
ZigBee | 196m | 231m | 280m |
Thread | 209m | 270m | 328m |
P-NUCLEO-LRWAN3开发学习
P-NUCLEO-LRWAN3套件分两部分:
1.节点部分:STM32L073RZ+SX1278扩展板
比较浪费的是这个扩展板上还有一个STM32L071…
2.网关部分:STM32F746ZG+SX1301扩展板
SX1301是semtech出的室外网关芯片,但很坑的地方是,网关部分不提供源码,只有二进制固件提供…
ST官方还有个 P-NUCLEO-LRWAN2套件,功能一样,但频段是868 915,主要是用于欧美市场。
说到频段不得不提:
http://m.elecfans.com/article/1125804.html
《中华人民共和国工业和信息化部公告2019年第52号》 将470-510Mhz限制在“建筑楼宇、住宅小区及村庄等小范围内”。
解读方式众多,但管局怎么执行就难说了,貌似大家普遍认为因为该公告严重限制了lora应用场景,且阻断了很多企业将lora应用到城域网的想法。
Semtech官方的解读(49:00开始): http://ke.renrenjiang.cn/#/video?activityId=1928108
官方解读肯定是维护自己利益的,看看就行,执行起来也不是semtech说了算。其中还提到一点:loraWan在新规下,RF11模式下, 只能每次发30byte,这个长度,也基本让LoraWan只能用来抄抄表了。
但来都来了,还是简单了解下Lora相关知识吧。
LoraWan目前支持3种通信模式:
angular微前端实现
目前看到两套angular微前端项目:
https://github.com/worktile/ngx-planet
https://github.com/phodal/mooa
一个通用微前端方案:
Arduino物联网开发入门
物联网开发入门
物联网与Arduino
物联网(Internet of things,简称IoT),是通过网络将设备相互连接,从而实现设备与设备间通信的技术。数据传输、信息采集、行为控制是物联网的常见能力。
而信息采集、行为控制也是Arduino的优势所在,只要给Arduino扩展上联网能力,使其能通过网络进行数据传输,Arduino就是物联网设备开发的绝佳平台。
物联网的网络连接形式多样,相关的协议和方案更是繁多,因此Arduino扩展联网能力的方案也很多,如:Arduino加上485转换芯片,可以将多个设备连接到同一总线上,进行RS485、ModBus通信;Arduino加上蓝牙模块,实现和手机、电脑等设备的连接和互动。
本章的物联网开发内容都是基于WiFi,WiFi是生活中常见的物联网连接方式之一,在家庭和办公场景,普及度极高,因此其也是众多物联网设备的首选连接方式。大部分物联网连接方式都有空间限制,但使用WiFi的设备,通常可连接到互联网,可和全球各地的设备进行连接和通信,同时获取到网络中庞大的资源。
通过给Arduino UNO添加WiFi模块的方式,可以让Arduino接入到WiFi网络,但这样不仅会增加硬件成本,还要编写和处理Arduino和WiFi模块间的通信逻辑。笔者更为推荐直接使用支持WiFi通信的新型Arduino兼容开发板——WiFiduino。
WiFi开发板
WiFiduino-8266是使用esp8266作为核心的开发板,相对于传统Arduino控制器,WiFiduino-8266不仅有更强劲的性能,还提供了原生WiFi支持,可以更轻松地构建物联网项目。可以在附录中找到WiFiduino-8266的详细介绍。
esp8266和esp32是乐鑫(espressif)公司提供的WiFi 芯片,使用这两种芯片作为核心的开发板,都可以使用乐鑫提供的Arduino SDK进行开发。 相较于传统的AVR内核的Arduino开发板,esp8266/esp32开发板自带WiFi联网能力,且拥有更丰富的外设、更大存储空间(通常外扩了Flash芯片)、更快的处理速度和更低廉的价格,已经被广泛用于各种物联网项目。
图-ESP8266开发板和ESP32开发板
点灯物联网解决方案
本章还将用到一套完整的物联网解决方案——点灯(英文名 blinker)。这是由笔者领导开发的,一套跨硬件、跨平台的物联网解决方案,提供APP端、设备端、服务器端支持,使用公有云服务进行数据传输。可用于智能家居、远程控制、数据监测等领域,可以帮助用户更好更快地搭建和部署物联网项目。
blinker具备哪些优势
1. 支持多种连接方式 blinker提供当前最流行的连接方式支持,如蓝牙、WiFi、NBiot/GPRS,可以应对大多数物联网场景需求。
2. 支持多种开发平台 对于MCU,blinker提供Arduino、freeRTOS支持库,可以使用AVR / ARM / ESP8266 / ESP32等芯片进行开发。 对于Linux设备,可以使用python、javascript接入支持。
3. 提供丰富的附加功能 通信是blinker方案的核心,此外blinker也提供了多种附加功能,如: 定时控制、自动化控制、场景控制、云存储、固件更新、设备分享、微信通知、消息推送、短信报警、语音控制、智能音响接入等。这些功能都是物联网设备常见功能,使用blinker方案,不需要复杂的开发 ,只需调用blinker提供了功能函数即可。
blinker DIY
blinker DIY是针对diy爱好者、个人开发者推出的项目原型快速开发方案。
通常物联网项目开发,需要进行 设备端、客户端、服务器端开发,每一部分开发,都需要投入人力财力。对个人开发者,通常不可能一人完成这三部分的开发。blinker提供了手机APP到设备端的控制方案,有多种设备端SDK支持,让开发者更好的聚焦于设备端。配合由blinker团队运维的客户端(blinker APP)、服务器端,可以快速打造出自己的物联网设备。
本章将使用blinker DIY结合ESP8266开发板,实现手机对Arduino的控制。
google play提交应用被拒,提示违反了设备和网络滥用政策
提示如下:
裝置與網路濫用行為
我們禁止應用程式干擾、中斷、損害或以未經授權的方式存取使用者的裝置、其他裝置或電腦、伺服器、網路、應用程式設計介面 (API) 或服務,包括但不限於裝置上的其他應用程式、任何 Google 服務或授權電信業者的網路。
在 Google Play 發布的應用程式必須符合預設的 Android 系統最佳化需求,詳細內容請參閱《Google Play 核心應用程式品質指南》。
以下列舉一些常見的違規情況:
- 應用程式封鎖或干擾其他顯示廣告的應用程式。
- 應用程式提供遊戲作弊功能,影響其他應用程式遊戲過程。
- 應用程式協助使用者入侵服務、軟體/硬體或規避安全保護措施,或是提供相關操作說明。
- 應用程式以違反服務條款的方式存取或使用特定服務或 API。
- 應用程式試圖略過不在許可清單範圍內的系統電源管理設定。
- 應用程式協助第三方採用 Proxy 服務;不過如果這是應用程式的使用者端主要核心用途,則不構成違規。
暂时未找到原因。。。