iOS MQTT不能連接成功,老是報錯MQTTSessionManagerStateError異常


老鐵們,實話告訴你們。2019之前的不加

 user:@"" //用戶名
 pass:@"" //密碼
是可以的
//         [self.manager connectTo:self.host //服務器地址
//                             port:self.port //服務端端口號
//                              tls:false //是否使用tls協議,mosca是支持tls的,如果使用了要設置成true
//                        keepalive:60 //心跳時間,單位秒,每隔固定時間發送心跳包
//                            clean:false //session是否清除,這個需要注意,如果是false,代表保持登錄,如果客戶端離線了再次登錄就可以接收到離線消息。注意:QoS為1和QoS為2,並需訂閱和發送一致
//                             auth:true //是否使用登錄驗證,和下面的user和pass參數組合使用
//                             user:@"" //用戶名
//                             pass:@"" //密碼
//                        willTopic:nil //下面四個參數用來設置如果客戶端異常離線發送的消息,當前參數是哪個topic用來傳輸異常離線消息,這里的異常離線消息都指的是客戶端掉線后發送的掉線消息
//                             willMsg:nil //異常離線消息體。自定義的異常離線消息,約定好格式就可以了
//                          willQos:0 //接收離線消息的級別 0、1、2
//                   willRetainFlag:false //只有在為true時,Will Qos和Will Retain才會被讀取,此時消息體payload中要出現Will Topic和Will Message具體內容,否則,Will QoS和Will Retain值會被忽略掉
//                     withClientId:self.clientId]; //客戶端id,需要特別指出的是這個id需要全局唯一,因為服務端是根據這個來區分不同的客戶端的,默認情況下一個id登錄后,假如有另外的連接以這個id登錄,上一個連接會被踢下線

2019年后,必須添加

 user:@"" //用戶名
 pass:@"" //密碼
NSString *passWord = [self macSignWithText:self.groupid secretKey:secretKey];


user:accessKey
pass:passWord

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM