- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用来自 http://asmack.freakempire.de/4.0.5/ 的 asmack-android-8-4.0.5.jar 我能够成功连接和登录,但是当我尝试加载我自己的 vcard 时,它会在 vcard.doload 方法中抛出 classcastexception。请帮助任何人。下面是我正在使用的完整代码。
private class ConnectTask extends AsyncTask<URL, Integer, Long> {
protected Long doInBackground(URL... urls) {
Roster.setDefaultSubscriptionMode(SubscriptionMode.accept_all);
configure(new ProviderManager());
ConnectionConfiguration config = new ConnectionConfiguration(
"my host here", 5222, "xmpp.jp");
config.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled);
config.setCompressionEnabled(true);
ProviderManager.addIQProvider("vCard", "vcard-temp",
new VCardProvider());
connection = new XMPPTCPConnection(config);
try {
connection.connect();
System.out.println("sanidhya09 connected");
try {
connection.login("sanidhya09", "*****");
System.out.println("sanidhya09 logged in ");
} catch (SaslException e) {
e.printStackTrace();
} catch (XMPPException e) {
e.printStackTrace();
} catch (SmackException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} catch (Exception e) {
System.err.println("sanidhya09 Failed to connect to "
+ "xmpp.jp");
return null;
}
return null;
}
protected void onPostExecute(Long result) {
Presence pres = new Presence(Presence.Type.available);
try {
connection.sendPacket(pres);
} catch (NotConnectedException e1) {
e1.printStackTrace();
}
VCard vCard = new VCard();
try {
ProviderManager.addIQProvider("vCard", "vcard-temp",
new VCardProvider());
System.out.println("sanidhya09 vcard trying");
vCard.load(connection);
System.out.println("sanidhya09 vcard loaded");
} catch (Exception e) {
e.printStackTrace();
}
}
}
这是异常(exception)情况:
java.lang.ClassCastException: org.jivesoftware.smack.util.PacketParserUtils$2 cannot be cast to org.jivesoftware.smackx.vcardtemp.packet.VCard
11-05 16:09:57.379: W/System.err(26675): at org.jivesoftware.smackx.vcardtemp.packet.VCard.doLoad(VCard.java:560)
11-05 16:09:57.379: W/System.err(26675): at org.jivesoftware.smackx.vcardtemp.packet.VCard.load(VCard.java:542)
11-05 16:09:57.379: W/System.err(26675): at com.sanidhya.chatdemo.MainActivity$ConnectTask.onPostExecute(MainActivity.java:111)
11-05 16:09:57.379: W/System.err(26675): at com.sanidhya.chatdemo.MainActivity$ConnectTask.onPostExecute(MainActivity.java:1)
11-05 16:09:57.380: W/System.err(26675): at android.os.AsyncTask.finish(AsyncTask.java:632)
11-05 16:09:57.380: W/System.err(26675): at android.os.AsyncTask.access$600(AsyncTask.java:177)
11-05 16:09:57.380: W/System.err(26675): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)
11-05 16:09:57.380: W/System.err(26675): at android.os.Handler.dispatchMessage(Handler.java:102)
11-05 16:09:57.380: W/System.err(26675): at android.os.Looper.loop(Looper.java:136)
11-05 16:09:57.380: W/System.err(26675): at android.app.ActivityThread.main(ActivityThread.java:5086)
11-05 16:09:57.380: W/System.err(26675): at java.lang.reflect.Method.invokeNative(Native Method)
11-05 16:09:57.380: W/System.err(26675): at java.lang.reflect.Method.invoke(Method.java:515)
11-05 16:09:57.380: W/System.err(26675): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
11-05 16:09:57.380: W/System.err(26675): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
11-05 16:09:57.380: W/System.err(26675): at dalvik.system.NativeStart.main(Native Method)
最佳答案
我现在开始工作了。实际上他们是 xml 响应中的问题。它没有头像或头像出现故障。我什至在保存头像时出现了错误的 base64。
通过以这种方式保存头像使其工作:
private void uploadProfilePic() {
try {
Bitmap resized = Bitmap.createScaledBitmap(selected_img,128, 128,
true);
obj_UserInfo.setProfilePic(resized);
String get64BaseString = get64BaseString(resized);
VCard vCard = new VCard();
vCard.setAvatar(get64BaseString, "image/jpeg");
vCard.save(CGlobalVarriables.connection);
System.out.println("image upload successfuls");
CGlobalVarriables.obj_UserInfo.setProfilePic(resized);
} catch (Exception e) {
e.printStackTrace();
}
}
通过这种方式加载Vcard:
private Bitmap getProfilePic() {
VCard vCard = new VCard();
try {
vCard.load(CGlobalVarriables.connection);
byte[] array = vCard.getAvatar();
Bitmap bitmap = BitmapFactory.decodeByteArray(array, 0,
array.length);
return bitmap;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
关于调用 vcard.load(conn) 时 Android asmack vcard classcastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26752285/
我正在使用 [EZ-VCards 库][1] 在 Java Web 应用程序中生成一些 VCard 数据。 除了编码问题之外,它工作正常并且使用起来非常简单。这些值是使用 UTF-8 编写的(我使用十
我正在尝试使用 Android ez vcard library从我的对象创建 vcf 文件。我的问题是我不知道如何实例化 VCard 的 List,如下所示: List vcards = null
我正在使用 ezvcard 库从我自己的应用程序中导出联系人数据。我的问题是,无法在我的股票联系人应用程序中读取导出的 vcard。这是输出: BEGIN:VCARD VERSION:4.0 N:;U
我的代码必须解析 Vcard 2.1 格式。我正在使用 vpim(没有其他库) 当我运行 Vpim::Vcard.decode(data) 时出现错误: undefined method `each'
我找不到添加像 CATEGORIES 这样的节点的可能性或 ORG使用 perl 模块 时到 vcard 对象电子名片::通讯录 (https://metacpan.org/pod/vCard::Ad
我正在尝试将网站 URL 添加到名片。我已经创建了 vCard 字符串,并且名片正在使用图像生成。剩下的就是网站 URL。 我生成的字符串是: $vcard = 'BEGIN:VCARD VERSIO
我正在使用 ez-vcard ( https://github.com/mangstadt/ez-vcard ) 来解析 VCARD 字符串。例如 VCARD 字符串之一是 "BEGIN:VCARD\
我正在使用来自 http://asmack.freakempire.de/4.0.5/ 的 asmack-android-8-4.0.5.jar 我能够成功连接和登录,但是当我尝试加载我自己的 vca
我知道 vCard 4.0 会引入一些常用的联系人属性字段(类型),如 GENDER、ANNIVERSARY 等。在 vCard 3.0 格式中没有标准方法来表示这些。 我的问题是如果 vCard 3
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 6 个月前
我正在扫描电子名片二维码中的数据。我收到的字符串总是看起来像这样: BEGIN:VCARD VERSION:2.1 N:Lastname;Firstname FN:Firstname Lastname
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 2 年前。 Improve this qu
我想将 ABRecordRef 转换为 vCard 或 NSData 以通过蓝牙传输。我遇到了你的问题,我想知道你是否能弄清楚该怎么做。 谢谢 最佳答案 非常简单,我正在使用 iOS 6 并使用以下代
我想通过简单的短信发送 vCard。 我不打算用电子邮件的 iMessage 发送 vCard。 我已经创建了以下格式的 vCard。 BEGIN:VCARD VERSION:3.0 N:;Sahil
我的网站上有一项新功能,允许用户获取 vcard 文件。此功能从我的数据库(这个有效)读取数据并生成 vcard。 文件是:vcard.php,我将用户 ID 作为 GET 传递 然后我使用那个id得
我正在建立一个移动网站(适用于 Iphone 和 Android ......我认为 Blackberry 已经不行了) 这是我遇到的问题。我们想要一个链接,当点击它时,自动将 .vcf 文件中的联系
我正在使用 XCode 4.2 开发一个应用程序,并且尝试使用 initWithVCardRepresentation 和/或 ABPersonCreatePeopleInSourceWithVCar
在 smack 库中是否有任何方法可以使我能够更新我的任何联系人的 vcard 中的更改我尝试了监听 Iq 数据包的名册监听器和数据包监听器,但我无法得到任何东西 最佳答案 简短回答:否。 长答案:当
我完全按照答案建议的操作( Asmack not loading VCard ),但它仍然不起作用。 DEBUG 输出显示 Smack 收到带有 VCard 信息的数据包,但随后在 https://g
我正在使用 cardme 库来处理电子名片。以下是我的代码 package vcardtest; import java.io.*; import java.util.Iterator; import
我是一名优秀的程序员,十分优秀!