2012-03-05 9 views
39

Tôi mới sử dụng Android và muốn sử dụng MQTT làm trình thông báo đẩy cho Android từ Máy chủ.
tôi đã đọc khoảng MQTT nhưng không hiểu rõ. nếu bất kỳ ai có thể sử dụng thư viện này để plz cho tôi biết tôi phải làm gì để bắt đầu sử dụng nó ..Các bước cơ bản để sử dụng MQTT trong android

tôi có một Java Server (chạy trên Windows) và rất nhiều Khách hàng (điện thoại android mà ứng dụng của tôi sẽ được cài đặt). Máy chủ của tôi sẽ gửi tin nhắn đến tất cả hoặc một số khách hàng cụ thể bất cứ lúc nào.

yêu cầu cơ bản của tôi là gì? ý tôi là có

  1. yêu cầu máy chủ?
  2. một số loại đăng ký?
  3. Thư viện để đưa vào android?
  4. số nhận dạng cho thiết bị Android? (Như C2DM yêu cầu tài khoản Google cho từng thiết bị)

plz giúp tôi trong vấn đề này

Trả lời

52

Bạn cần:

  1. một nhà môi giới MQTT mà chạy trên phía máy chủ. Điều này có thể là một cái gì đó giống như môi giới mosquitto là mã nguồn mở.
  2. thư viện khách hàng MQTT mà bạn đưa vào ứng dụng Android, cho phép ứng dụng của bạn kết nối, đăng ký và xuất bản thư. Có một số tùy chọn Java được liệt kê tại http://mqtt.org/software
  3. để tìm ra cách xác định duy nhất người dùng hoặc thiết bị và sau đó sử dụng làm chủ đề để bạn có thể xuất bản riêng một thư tới một thiết bị.

Dale ngõ đã viết một hướng dẫn tốt đẹp về vấn đề này (http://www.dalelane.co.uk/blog/?p=1599) và đó cũng là một tập tốt các nguồn lực về MQTT (https://github.com/mqtt/mqtt.github.io/wiki)

+4

Liên kết cũ của Dale Lane bị hỏng. Đây là cái mới http://dalelane.co.uk/blog/?p=1599 – nanospeck

+3

Nếu ai đó đang tìm kiếm một cổng Android Studio của ứng dụng mẫu, tôi đã thực hiện một ở đây: https://github.com/bytehala/ android-mqtt-quickstart – lemuel

+1

@lemuel Tôi đến đây vì tôi đang tìm cách viết ứng dụng Android cho MQTT. Mặc dù blog của Dale Lane giải thích nó, nhưng ví dụ của ông đã sử dụng một thư viện IBM MQTT cũ hơn và nhiều mã trong ứng dụng không được chấp nhận. Điều gì thực sự giúp tôi là ứng dụng mẫu của bạn. Nó thật sự rất đẹp! Cảm ơn bạn. – eepty

7

Nếu bạn muốn sử dụng MQTT cho thông báo gửi push trong thiết bị Android sau đó bản trình diễn này sẽ phù hợp nhất với bạn.

Bằng cách sử dụng ví dụ này, bạn có thể gửi thông báo đẩy tới thiết bị Android của mình.

https://github.com/tokudu/AndroidPushNotificationsDemo 

Nếu bạn muốn tạo dịch vụ Push của riêng bạn như LEADBOLT, AIRPUSH, v.v. thì bạn phải yêu cầu những điều sau đây.

[1] Cấu hình máy chủ của riêng bạn để thông báo gửi push. (Như tokudu làm việc trong PHP, WAMP) Đối với cấu hình máy chủ .. [A] Cài đặt PEAR [B] Cài đặt SAM [C] Cấu hình SAM

[2] Bạn cần có bộ nhớ RSMB của mosquitto hoặc IMB để chọn thiết bị Android đích. [3] Bạn cần một số mã android để nhận thông báo, gửi tín hiệu còn sống tới máy chủ, tạo kết nối với máy chủ, v.v ... (Có thể tìm thấy trong ví dụ TOKUDU).

Nếu bạn có bất kỳ vấn đề gì thì hãy cho tôi biết, tôi chắc chắn sẽ giúp bạn.

+0

Cảm ơn. bạn có thể vui lòng hỗ trợ tôi trong việc thiết lập và cấu hình các nhà môi giới tin nhắn, SAM trong máy chủ apache? – Viswa

+0

WARN: Dự án này sử dụng phiên bản MQTT trước đó hoạt động tốt nhưng không cung cấp khả năng xác thực (tên người dùng/mật khẩu). –

8

bước cơ bản

  1. Cài đặt server WAMP với PHP (phiên bản nên có cao hơn so với 5.1.0)
  2. Như server WAMP được cài đặt, khởi động server WAMP (để nó có thể nhận cấu hình mặc định).
  3. mở command prompt và thay đổi thư mục vào PHP {version},

Đối với Ex. Cd C:\wamp\bin\php\php5.3.0

[1] Cài đặt PEAR

  • Bây giờ chúng ta phải cài đặt PEAR PHP (ví dụ: không được cài đặt theo mặc định) bằng cách chạy lệnh dưới đây.

    php phar.require_hash -d = 0 ./PEAR/go-pear.phar

    HOẶC

    php -d phar.require_hash = 0 đi-pear.phar

  • Bây giờ kiểm tra thư mục PEAR theo số C:\wamp\bin\php\php5.3.0\PEAR (Đã cài đặt hoặc Không).

  • Bây giờ trong Danh bạ C:\wamp\bin\php\php5.3.0PEAR_ENV.reg (Registry File) là tạo ra, vì vậy hãy kích đúp vào đó để thay đổi PHP.ini tập tin với PEAR invironment

  • Bây giờ là lê được cài đặt chúng ta phải chạy các lệnh sau (Không bắt buộc).

    lê nâng cấp

    lê cài đặt nâng cấp kênh

    Vì vậy, việc thiết lập PEAR hiện đang hoàn thành

[2] Cài đặt SAM (Simple Asynchronous Tin nhắn)

  • Để cài đặt SAM, chúng tôi phải chạy Lệnh sau

    Chuyển đến C: \ wamp \ bin \ php \ php5.3.0

    PECL cài đặt -B SAM

[3] Chọn và Run Mosquitto hoặc RSBM

  • Môi giới thư thực sự nhỏ (RSMB) là một nhà môi giới MQTT đơn giản cũng là do IBM http://www.alphaworks.ibm.com/tech/rsmb cung cấp.Nó chạy trên cổng 1883 theo mặc định. Trong kiến ​​trúc của chúng tôi, nó chấp nhận tin nhắn từ máy chủ và chuyển chúng đến đúng thiết bị. RSMB cũng có thể được thay thế bằng máy chủ Mosquitto http://mosquitto.atchoo.org/
  • cho phép sử dụng RSMB.
  • Tải về và goto của Windows thư mục trong rsmb (phiên bản của bạn)
  • Bắt đầu Broker.exe

VỚI DOANH NGHIỆP MÁY CHỦ bạn được cấu hình. BẠN CÓ THỂ SỬ DỤNG CNTT CHO THÔNG BÁO PUSH.