Làm cách nào để bao gồm Smack 4.1 trong dự án Android của tôi trong Eclipse?
Giống như bạn sẽ bao gồm mọi thư viện Java khác trong dự án Eclipse Android. Bằng cách đặt các tệp .jar
vào thư mục libs/
, plugin Android của Eclipse và hệ thống xây dựng Android Ant sẽ cung cấp chúng cho đường dẫn lớp dự án và đưa chúng vào kết quả .apk
.
Điều với Smack 4.1 là, nó được mô đun hóa rất nhiều. Nếu bạn muốn một Smack đầy đủ tính năng trên Android, bạn cần một cái gì đó xung quanh 11 .jar
tệp. Giờ đây, bạn có thể sử dụng Android Studio bằng cách sử dụng gradle, theo cách này bao gồm Smack đơn giản như thêm
dependencies {
compile "org.igniterealtime.smack:smack-android:4.1.0-rc1"
compile "org.igniterealtime.smack:smack-tcp:4.1.0-rc1"
// optional features
compile "org.igniterealtime.smack:smack-android-extensions:4.1.0-rc1"
}
và gradle sẽ chăm sóc giải quyết các phụ thuộc transitive.
Nhưng, Android Studio hoặc plugin Gradle Android chính xác, không hỗ trợ tải xuống và gỡ lỗi với tệp đính kèm nguồn . Và đây là điều bạn muốn rõ ràng khi làm việc với thư viện nguồn mở.
Đó là ví dụ một trong những lý do tôi không tự mình sử dụng plugin gradle. Tôi không thể phát triển Smack sau đó (tôi cũng giống như Eclipse, nhưng đó là một câu chuyện khác).
Vì vậy, chúng tôi đang trở lại làm việc với Eclipse/Ant cho dự án Android của chúng tôi. The Smack 4.1 README cho bạn biết sử dụng tập lệnh MavenToAndroidAnt Python3, sẽ tự động tải xuống các tạo phẩm và xóa các tệp cũ trên bản cập nhật. Nếu bạn móc nó vào quá trình xây dựng của bạn, nó gần như tốt bằng cách sử dụng gradle mà còn hỗ trợ tệp đính kèm nguồn.
Tất nhiên bạn cũng có thể thêm 11 .jar
tệp theo cách thủ công, nhưng ai muốn làm điều đó và có các tệp nhị phân trong kho lưu trữ nguồn của chúng?
Mã sẽ giữ nguyên cho Android không?
Có, bắt đầu với Smack 4.1, Smack là Smack. Vì vậy, bạn có thể tham khảo cùng một javadoc, không có vấn đề nếu bạn đang ở trên Android hay không. Lưu ý rằng điều này cũng đúng với aSmack, vì nó chỉ là một cổng Smack cho Android.
1: Đúng với tôi nếu tôi sai, nhưng lần cuối tôi thử là không thể. Tình hình có thể tốt hơn trong thời gian chờ đợi.
có giao diện https://github.com/fangzhen/androidxmppclient –
@NaveenTamrakar Tôi không thấy cách liên quan đến câu hỏi của mình. –
http://im-a-developer-too.blogspot.ca/2014/04/creating-android-xmpp-client-using.html –