IOS真机上使用XMPP 调试时遇到的问题

本文介绍了在Mac上搭建XMPP环境时遇到Openfire服务启动问题的解决方法,包括修改权限和设置JAVA_HOME。此外,还详细讲述了iOS真机调试时遇到的连接问题,主要解决通过MAC IP地址代替localhost以及确保JID的domain与Openfire一致以解决连接授权失败的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从在MAC上搭建 XMPP 环境遇到 杂七杂八 的问题 。  


1.openfire 无法启动服务 。 一般来说 是JAVA JDK的问题 。 然而我下了JDK 之后 每次还是会启动不了 。 于是找到以下解决方案

openfire 无法start 的问题
   打开终端,按顺序输入以下命令:(注意细小的标点符号,建议逐一复制命令到终端运行)
                                            ①:sudo chmod -R 777 /usr/local/openfire/bin
                                            ②:sudo su
                                            ③:cd /usr/local/openfire/bin
                                            ④:export JAVA_HOME=`/usr/libexec/java_home`
                                            ⑤:echo $JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
                                            :   cd /usr/local/openfire/bin
                                            :  ./openfire.sh
不过就算这样之后 , 我的mac 重启后 还是我不能 直接 start 这个 我还要去看看是怎么回事。

2.上真机调试

在搭建好XMPP的环境之后 , 我就开始在XCode 上写代码了 ,按照流程来, 测试登陆, 在模拟器上是完全没有问题的。然而在真机上 运行 用模拟器的代码 就出了问题 ,

首先是 IPhone 用浏览器 打开 本机的127.0.0.1是打不开的 ,所以登陆 会连接连接不上服务器,也不会执行相关的delegate。

SO,这里用了MAC的IP地址来替换 。然后Run ,发现成功连接 ,但是会报这样一个错误

<failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>.

网上找过答案之后说是JID 的问题,自己通过一些调试,确定了是 jid 的domain应该何 OPENFIRE 上的一致,hostName这里填本机的IP地址 问题解决了。

真机测试这里纠结了整整一天 心累!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值