2017-07-25 39 views
0

我使用泛美衛生組織MQTT JS(https://github.com/eclipse/paho.mqtt.javascript)上反應經由橋原生(https://github.com/Introvertuous/react_native_mqttMQTT上反應母語:AMQJS0016E無效MQTT消息類型0

它運作良好,在老版本的陣營本土

"react": "~15.4.0-rc.4", 
"react-native": "0.40.0", 
"react-native-elements": "^0.9.2", 
"react-native-storage": "^0.1.4", 
"react-native-vector-icons": "^4.0.0", 
"react_native_mqtt": "^1.1.4" 

但它不會用新版本的工作了:

"react": "16.0.0-alpha.12", 
"react-native": "0.46.4", 
"react-native-elements": "^0.15.0", 
"react-native-storage": "^0.2.2", 
"react-native-vector-icons": "^4.2.0", 
"react_native_mqtt": "^1.1.6" 

我總是得到錯誤「Object {invocationContext: undefined, errorCode: 16, errorMessage: "AMQJS0016E Invalid MQTT message type 0."}

我認爲有在RN的新版本可能打破MQTT功能(對WebSocket的可能與?)

我嘗試了很多辦法,但無法找到任何線索來解決這個問題的變化。請幫助我...任何想法都歡迎...

回答

0

這是/是由於一個React Native錯誤。

二進制的WebSockets在反應上Android本地按提交93a1d5(其在0.46釋放第一降落),後來由7e29b1固定(將在0.48降落但也cherry-picked到0.47最終)被打破。

因此,您應該發現將React Native更新爲0.47。*可以解決您的問題。如果您需要猴子補丁0.46,只需使用單行7e29b1。 HTH。