java smack jar_android-SmackInitialization:无法确定Smack版本
我正在为Unity做一个android插件,我需要将XMPP集成到Unity中,因此首先我要尝试创建XMPP的连接并发送和接收消息.它在android中工作正常,我能够发送和接收消息,但是当我导出.jar文件并在Unity中使用时,在创建连接时出现以下错误
SmackInitialization: Could not determine Smack version
java.lang.NullPointerException: lock == null
at java.io.Reader.(Reader.java:64)
at java.io.InputStreamReader.(InputStreamReader.java:122)
at java.io.InputStreamReader.(InputStreamReader.java:57)
at org.jivesoftware.smack.SmackInitialization.(SmackInitialization.java:61)
at org.jivesoftware.smack.SmackConfiguration.getVersion(SmackConfiguration.java:96)
at org.jivesoftware.smack.ConnectionConfiguration.(ConnectionConfiguration.java:38)
at com.arvaan.myplugins.ToastExample.connectXMPP(ToastExample.java:99)
at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
at com.unity3d.player.UnityPlayer.a(Unknown Source)
at com.unity3d.player.UnityPlayer$b$1.handleMessage(Unknown Source)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:234)
at com.unity3d.player.UnityPlayer$b.run(Unknown Source)
我不知道Smack的问题是什么,我是Unity的新手,我知道如何在Unity中创建插件和调用方法,但是不知道这是怎么回事.
请检查代码:
public class ToastExample extends UnityPlayerActivity implements ConnectionListener, ChatManagerListener, RosterListener, PingFailedListener, StanzaListener, MessageListener, ChatMessageListener {
private static final String TAG = ToastExample.class.getSimpleName();
private AbstractXMPPConnection mConnection = null;
private ChatManager chatManager;
private Chat chat;
private Context context;
private String userName = "";
private String passWord = "";
private String objectName = "";
private static ToastExample instance;
public ToastExample() {
this.instance = this;
}
public static ToastExample instance() {
if (instance == null) {
instance = new ToastExample();
}
return instance;
}
public void setContext(Context context) { // This is also working fine
Log.e(TAG, "setContext called");
this.context = context;
}
public void showMessage(String message) { // I can able to see toast
Toast.makeText(this.context, message, Toast.LENGTH_SHORT).show();
}
public void connectXMPP(String host, int port, String userName, String passWord) {
Log.e(TAG, "_connectXMPP called");
XMPPTCPConnectionConfiguration.Builder configBuilder = XMPPTCPConnectionConfiguration.builder(); // Here i got error
configBuilder.setUsernameAndPassword(userName, passWord);
...............
...............
}
我在我的插件和Unity中使用以下.Jar文件
smack-core-4.1.4.jar
smack-extensions-4.1.4.jar
smack-im-4.1.4.jar
smack-android-4.1.4.jar
smack-android-extensions-4.1.4.jar
smack-tcp-4.1.4.jar
jxmpp-util-cache-0.4.2.jar
jxmpp-core-0.4.2.jar
jxmpp-jid-0.4.2.jar
jxmpp-stringprep-libidn-0.4.2.jar
minidns-core-0.2.0.jar**
有人也面临此问题,但未找到Check more
请帮助我解决此问题,在此先感谢.
java smack jar_android-SmackInitialization:无法确定Smack版本相关推荐
- hook java android_Android Hook Java的的一個改進版本
Hook Java的的一個改進版本 <注入安卓進程,並Hook java世界的方法>這篇好文相信大家都看這,里面所提到的方法估計大家也都試過.不過里面的所用的方法,我發現有兩個可以改進的地 ...
- java jdk 环境不一致_jdk(多版本)安装注意!
4.第二步,开始安装Jdk的运行环境,我将它安装在..../java_jdk1.8/jre8下: 5.安装完JDK后配置环境变量 计算机→属性→高级系统设置→高级→环境变量 系统变量→新建 JAVA ...
- java 获取apk版本号_纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限...
[实例简介] 纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限... 代码讲解地址:http://blog.csdn.net/chillax_li/article/details/4185 ...
- IDEA 运行maven项目时出错:Error java:错误: 不支持发行版本 XXX 5,12,14等
IDEA 运行maven项目时出错:Error : java:错误: 不支持发行版本 5 java学习笔记 报错截图 错误说明 [Error : java:错误: 不支持发行版本 5]错误是因为jav ...
- Java JDK中几个经典的版本
Java JDK中几个经典的版本 1. 1995年05月23日 JDK 1.0 版发布,于1996年JDK正式提供下载,标志着Java的诞生. 2. 1998年12月04日 JDK 1.2 版发布,而 ...
- java学习笔记:全部,txt版本
java学习笔记:全部,txt版本 笔者注: 1.不知道怎么上传附件,所以就把txt文本内容全部贴在这里吧. 2.已经把txt版本的笔记上传到CSDN了,我没有设置索要积分才能下载,但是不知道为什么C ...
- Word处理控件Aspose.Words功能演示:使用 Java 处理 Word 文档的原始版本或修订版本
Aspose.Words是一种高级Word文档处理API,用于执行各种文档管理和操作任务.API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word. A ...
- java运行平台的3个版本,目前 Java 平台主要分为哪3个版本?
目前 Java 平台主要分为哪3个版本? 更多相关问题 FusionInsight LibrA完全继承了PostgreSQL的用户和角色的. E-105与C-101连通的物料线上各有一手阀. 足够大的 ...
- java xmpp smack_【XMPP】Smack源码之初步认识
Smack 概述 Smack是一个用于和XMPP服务器通信的类库,由此可以实现即时通讯和聊天. Smack主要优势 非常简单易用,并且有十分强大的 API.只需三行代码就可以向用户发关文本消息: XM ...
最新文章
- 用python快速画小猪佩奇
- Redis初学:9(Zset类型)
- 中国牙科用人工骨替代材料市场供需态势与未来投资方向分析报告2022年
- 自然语言12_Tokenizing Words and Sentences with NLTK
- 2016 China Collegiate Programming Contest Final
- consul的安装配置 一centos7环境
- Android中用OpenGL ES Tracer分析绘制过程
- Kotlin入门(10)七十二变的输入参数
- windows7 iis安装 Windows Modules Installer服务无法启动
- php usort的用法,PHP usort()用法及代码示例
- POJ 1365 Prime Land
- 推荐个51CTO家园的活动哈
- 打车界的“拼多多”?
- vue文件的三大组成部分
- 黑马程序员视频加源码
- SocksCap64应用程序通过SOCKS代理
- 【PR】一看就会的常用视频效果
- SCSI 设备热插拔
- lob 索引 oracle,oracle 12c lob索引
- ThreeJS自带网格线
热门文章
- springboot学习文档
- 惠普召回16万块笔记本电池 存在安全隐患
- 二叉搜索树--基础篇
- 计算机辅助实验圆弧连接画法,机械制图常识:圆弧连接画法
- react项目启动报错”无法使用 JSX,除非提供了 “--jsx“ 标志。ts(17004)“
- 弹性盒模型实现两栏布局
- fr4走线宽度_如何调整PCB中走线宽度的大小
- STM32-NUCLEO-F411RE-USART_串口
- 调用第三方接口报java.net.UnknownHostException
- 286型计算机什么知识,那个向往