سؤال

أنا غير قادر على الاستخدام صفعة على Android بينما asmack يعمل تماما؟ عند مقارنته ، يبدو رمز المصدر مشابهًا إلى حد ما ، من أين يأتي الفرق؟

ما هو الفرق بين Smack و Asmack؟

هل كانت مفيدة؟

المحلول

Smack <4.1 لا يعمل على Android ، في الغالب بسبب واجهات برمجة التطبيقات المفقودة على Android (على سبيل المثال ، معظم واجهات برمجة تطبيقات Javax). هذا هو السبب في أن بيئة بناء asmack ولدت. إنها وسيلة لتعديل Smack بحيث يمكن استخدامها على Android.

إلى جانب العديد من التغييرات البسيطة ، فإن أكبر التغييرات هي

  1. تعطيل أساليب مصادقة XMPP SASL غير المدعومة على Android
  2. باستخدام Apache Harmony لـ SASL بدلاً من API Javax

تأكد من قراءة ReadMe ويبدأ الكود ذي الصلة قبل القيام بأي إجراءات ذات صلة بـ XMPP.

يمكن العثور على مزيد من المعلومات @ https://github.com/flowdalic/asmack/wiki/Modifications

نصائح أخرى

كما ينص وصف المشروع ، يضيف Asmack مجموعة من التصحيحات إلى Smack العادية. افحص هذا محادثة لمزيد من التفاصيل.

يعتبر.

يمكنك أن ترى كيف تتم الأشياء TalkMyPhone. أعتقد أنهم يستخدمون Smack مع Android.

يعدل Smack للسماح لها بالعمل على Android.

لست متأكدًا مما هي عليه هذه التغييرات ، باستثناء تغيير آلية ProviderManager حتى يتمكن من تحميل ملف Smack.Providers من دليل صديق Android. بشكل افتراضي ، يقوم Smack بتحميل هذا من دليل الموارد الخاص به ، والذي لا يمكن الوصول إليه في Android.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top