草庐IT

c# - 在 Unity3D 中创建 Android XMPP 聊天客户端的最佳方式

我正在尝试使用Unity/C#/Mono创建一个iOS和AndroidXMPP聊天客户端。我使用Jabber.net获得了适用于iOS的功能齐全的聊天客户端,但它不适用于Android。那么有没有人知道适用于Android的Unity/C#的库?这篇文章讨论了Android和XMPP解决方案,但没有找到将其连接到Unity的任何方法:AndroidandXMPP:Currentlyavailablesolutions这是我关于让Jabber.net使用Unity为Android工作的问题:Jabber.netonUnity/Androiderror(NoJNI_OnLoadfoundi

android - 发件人离线时如何发送XMPP消息?

我正在为我的聊天应用程序使用aSmack和Openfire。我能够很好地发送和接收消息。Openfire支持在收件人离线时进行离线消息传输,方法是保持消息直到他上线。但是当发件人离线或他的互联网在通信之间掉线时该怎么办?aSmack/Smack是否提供任何api来保持消息直到互联网恢复?或者我应该通过SQLite发送消息吗? 最佳答案 如果您连接到openfire并且互联网关闭,那么您仍然在openfire上在线,因为如果互联网关闭,您将无法更改在线状态。对于这个openfire使用http://xmpp.org/extension

Android xmpp MUC设置默认配置

我正在使用Xabber开源项目并且能够创建一个新组,但它总是说:这个房间在确认配置之前无法进入。我试图设置默认配置,但它抛出异常:401未授权。究竟是什么问题。finalMultiUserChatmultiUserChat;try{multiUserChat=newMultiUserChat(xmppConnection,room);//CHANAKYA:setdefaultconfigfortheMUC//Sendanemptyroomconfigurationformwhichindicatesthatwewant//aninstantroomtry{multiUserChat.s

使用 XMPP 的 Android 推送通知

我已经仔细阅读了所有关于主题和Android推送通知的帖子。基本上,为了一小笔钱,根据这篇文章Android&(millionsof)pushnotifications,定义了三种可能性:GoogleCloudMessage、MQTT和XMPP。关于GoogleCloudMessage,我看到了一些优点和一些缺点(Android版本、已安装GooglePlay、活跃的google数量、不保证按顺序发送通知等......)MQTT不知道,但我放弃了我的阅读或它们的复杂性和与其他组件的难以集成。我选择了XMPP,因为它是我用来制作游戏应用程序的服务器。当您玩游戏并且玩家A移动时,它会在他与

android - 使用 Smack for Android 通过 XMPP 实现 FCM

我正在使用XMPP在我的Android应用程序中实现聊天功能,并且为此使用了SmackAPI。我的聊天工作正常,我将所有聊天消息保存在本地Android设备上。以下是我目前面临的一些问题。在聊天期间,如果连接因某种原因丢失,则需要很长时间才能恢复再次重新连接,有时甚至无法连接。即使在连接已连接,它停止发送聊天消息,因为它不再在另一方接收。我有再次初始化资源,但有时会起作用如果我的USER断开连接,我想使用FCM发送消息(离线)。我已经为其他事情及其工作实现了FCM美好的。但是我想知道如果另一端的用户离线,我该如何使用FCM和SMACKAPI。我正在尝试,但我不知道FCM的正确方法使用X

android - 在断开连接的设备上通过 XMPP 丢失消息

我正在尝试开发基于XMPP的回合制游戏。(我为多平台游戏找到的唯一解决方案)。我可以毫无问题地发送消息。如果其他用户不在线,服务器(OpenFire)会保存它以供以后传送。当设备更改网络(从3g更改为WiFi、更改3gIP...)或设备丢失网络(关闭3g、wifi或丢失连接)时,问题就会出现。服务器认为设备在线并发送消息但它(显然)从未到达,因此数据包丢失。我知道一个解决方案。通过我的游戏协议(protocol)实现ACK,但我不太喜欢这个想法。你还有什么建议吗?我认为这是一个服务器问题。你知道另一个服务器女巫实现TCP或ACK吗?谢谢!!编辑:我这样做:将设备连接到服务器。我关闭了设

用于 Smack (XMPP) 聊天应用程序的 Android 后台服务

我正在使用asmack库实现一个聊天应用程序。我想启动一个始终运行的服务,其中将完成所有连接管理任务,并且应该继续接收传入的数据包并将消息保存在我的sqlite数据库中。当我的应用程序启动时,我希望在后台服务将消息插入sqlite数据库时,我的应用程序也收到传入消息的通知。如何使用粘性服务实现这种结构。是否还需要部分唤醒锁。因为,有时也会根据特定需求使用http部分下载图像。 最佳答案 在服务器上注册后即可启动服务。服务登录用户的onStartCommand。用PacketListener、ConnectionListener、In

java - 发送和接收 IQ XMPP ASMACK Android

背景:我已经能够使用asmack库在android中通过XMPP实现一对一聊天。我也可以将状态发送到服务器。我正在为基于聊天的应用程序使用OpenFire服务器。问题:我正在使用connection.addPacketListener(newPacketListener()来接收消息和IQ数据包,对于消息数据包我是这样分类的PacketFilterChatfilter=newMessageTypeFilter(Message.Type.chat);connection.addPacketListener(newPacketListener(){publicvoidprocessPack

android - 如何获得从一项 Activity 到另一项 Activity 的相同 xmpp 连接?

我是新程序员。我想通过使用xmpp服务器实现聊天示例应用程序。在这个实现中,我使用ConnectionConfiguration对象创建了连接,如下所示:ConnectionConfigurationconnConfig=newConnectionConfiguration(host,Integer.parseInt(sport),service);我正在通过调用连接方法将connConfig对象传递给XMPPConnection类,我正在获取连接,并通过调用使用用户名和密码传递的登录方法,然后我登录到密码。要登录,我正在使用一个按钮。当我单击按钮时我正在使用Intent来更改Acti

android - 使用 XMPP 在 Android 上推送用户通知 - 以任何方式定位这些用户,这样他们就不会去 Google Talk 等

我想使用XMPP将数据推送到我的客户端,这将转化为用户的通知,并计划使用他们的google-id登录我的应用程序。我对XMPP的理解是,它是一条直接发送到地址的简单消息,但我希望客户端将其作为指令获取并将其转化为游戏状态信息。如果用户在他们的谷歌聊天中得到一堆命令元组或十六进制垃圾,那将是非常令人沮丧的!我是不是误解了这一切的运作方式? 最佳答案 JID(Jabber/XMPPID和GoogleTalkID)有多种形式。首先是“纯JID”,例如:user@example.com其次是“完整的JID”,例如:user@example.