GCM LÀ GÌ

     

GCM hay có cách gọi khác là Google Cloud Messageing, đó là một Service được Google trở nên tân tiến giúp

android developer dễ ợt triển khai câu hỏi send message từ server tới di động của bạn.

Bạn đang xem: Gcm là gì

Bạn vẫn xem: Gcm là gì

Server mà bạn develop có thể là Android, cùng cũng rất có thể là Browser. Những kiểu data hoàn toàn có thể là các

message nhỏ tuổi hoặc các dữ liệu bao gồm dung lượng nhỏ dại hơn hoặc bởi 4kb. GCM xử lý dữ liệu theo kiểu

hàng chờ (queue) các message và gửi tới những ứng dụng game android dạng Push notification. GCM thay

thế mang lại phiên bản beta C2DM (Cloud to lớn Device Messaging).

1. Các đặc thù đặc trưng của GCM

Cho phép server của các ứng dụng phía sản phẩm công nghệ 3 (3rd-party) giữ hộ message cho từng ứng dụng.

Phía vận dụng không quan trọng phải chạy tính năng nhận lời nhắn liên tục. GCM sẽ đánh thức các

thiết bị và broadcast message.

không hỗ trợ các interface hay những thư viện xử lý thông tin mà đối chọi thuần chỉ nhắn tin nhắn

đến thiết bị.

Android > 2.3 + Google Play Store or Emulator chạy bằng Google APIs.

Sử dụng kết nối cho Google Service hiện tại có. (đối với apk version google account).

2. Tổng quan bản vẽ xây dựng GCM


*

Một GCM bao gồm 1 Google connection server, một app server phía bên trong môi trường ở kia tương

tác với server thông qua giao thức HTTP hoặc XMPP, với một ứng dụng client là apk hoặc iOS,...

** Làm nạm nào để những thành phần liên hệ với nhau?**

Google GCM Connection Servers gật đầu đồng ý downstream message từ tiện ích server của công ty and gưỉ chúng

tới ứng dụng client. Giao thức XMPP cũng có thể có thể gật đầu đồng ý message được gửi lên từ client phầm mềm và chuyển

tiếp bọn chúng tới ứng dụng server.

Trên ứng dụng server của bạn, bạn vận dụng cho 2 cách thức HTTP hoặc XMPP để giao tiếp với GCM

Connection server. App server giữ hộ downstream message tới GCM connection server, connection server

sẽ tàng trữ message vào hàng ngóng và gửi chúng tới client app. Nếu như khách hàng sử dụng XMPP giao thức thì

app vps của chúng ta có thể nhận messages gửi từ client app.

Client phầm mềm để nhận cùng gửi GCM message, vận dụng này phải đk với GCM và một định danh duy

nhất điện thoại tư vấn là registration token.

3. Những thành phần của GCM

Components - toàn bộ vai trò chủ yếu trong GCM

Credentials - Là IDs với token được thực hiện trong GCM để đảm bảo an toàn rằng toàn bộ các thành phần

được xác nhận, cùng tin nhắn được giữ hộ đi thiết yếu xác.

3.1 Components

GCM Connection Servers: Google server liên quan đến việc gửi tin nhắn nhắn giữa tiện ích server và

client app.

Client app: Một GCM client app chất nhận được ứng dụng giao tiếp với phầm mềm server.

App Server: Một phầm mềm server để gửi dữ liệu tới phầm mềm client trải qua GCM connection server. Nếu

app server áp dụng giao thức XMPP, nó cũng rất có thể nhận tin nhắn được giữ hộ từ client apps.

3.2 Credentials

Sender ID: Số Project ID khi cấu hình project API của bạn. Số ID này đk với phầm mềm server để

cam kết rằng server sẽ gửi dữ liệu tới Client app.

API Key: Một API key được giữ trên app server để ứng dụng server đảm bảo quyền truy vấn tới Google

service. Trong HTTP, API key bao hàm trong phần Headed của cách tiến hành POST được yêu mong gửi tin

nhắn. Cùng với XMPP, API key được bao gồm trong SASL PLAIN xác thực yêu cầu như mật khẩu để kết nối.

API key ko được bao gồm trong client code.

Xem thêm: Sự Thật Về Net Sale Là Gì ? Cách Tính Gross Sales Và Net Sales

3.3 Cách đăng ký Application ID

Android: sử dụng package name trong tệp tin manifest.

iOS: thực hiện app"s bundle để xác định.

Chrome: sử dụng tên chrome extension.

Registration Token: Một token được đk giữa client và server để chất nhận được client app nhận

tin nhắn. Việc đăng ký tokens bắt buộc là túng mật.

Vòng đời của GCM:

Đăng ký GCM: Client app đk token với phầm mềm server.

Client app kết nối với tiện ích server thông qua token đang đăng ký.

App server đã lưu token đã đk từ client.

Gửi với nhận messages:

Gửi tin nhắn: app server nhắn tin nhắn cho tới client app:

GCM connection server báo tin nhắn vào hàng ngóng và lưu lại tin nhắn nếu đồ vật offline.

Khi thứ online, GCM connection server gửi tin nhắn nhắn cho tới thiết bị.

Trên thiết bị, tiện ích client nhấn tin nhắn phụ thuộc vào từng gốc rễ đã đk với ứng dụng server.

Nhận tin nhắn: Client phầm mềm nhận tin nhắn từ GCM connection server.

4. Setup GCM Client tiện ích on Android

Google Cloud Messaging (GCM) Android là một trong những app client điều khiển xe trên thiết bị Android. Để viết code

ứng dụng bọn họ sử dụng GoogleCloudMessaging API và game android Studio cùng với Gradle.

Yêu ước để chạy GCM game android client:

GCM yêu cầu thiết bị chạy android 2.2 hoặc cao hơn nữa và phải thiết lập ứng dụng Google Play

Store, hoặc máy giả lập chạy android 2.2 cùng với Google APIs.

Nếu bạn muốn tiêp tục sử dụng những thuộc tính GCM được phân phát thông qua Google Play

Services, thiết bị đề nghị chạy apk 2.3 hoặc cao hơn. Bạn có thể sử dụng mang lập chạy

Android 2.3 trở lên với Google APIs.

Trên những thiết bị Android, GCM sử dụng connection tồn tại đến Google services. Với các thiết

bị chạy android version bên dưới 3.0 thì phải cài đặt tài khoản google, với thứ chạy Android

version tự 4.0.4 trở lên trên thì không cần thông tin tài khoản google.

5. Setup Google Service trong app android studio:

dependencies compile "com.google.android.gms:play-services-gcm:8.1.0"Trong tập tin Application"s Manifest:

+ ".permission.C2D_MESSAGE" đk quyền chất nhận được ứng dụng

nhận gửi với nhận tin nhắn từ GCM.

Xem thêm: Bột Ngũ Cốc Navan Giá Bao Nhiêu, Ngũ Cốc Navan Giá Tốt Tháng 4, 2022

permission android:name="com.example.gcm.permission.C2D_MESSAGE" android:protectionLevel="signature" /> uses-permission android:name="asia.geeeksplay.permission.C2D_MESSAGE" />com.google.android.c2dm.permission.SEND cung ứng quyền dìm tin nhắn trường đoản cú GCM. Receiver android:name="com.google.android.gms.gcm.GcmReceiver" android:exported="true" android:permission="com.google.android.c2dm.permission.SEND" > intent-filter> kích hoạt android:name="com.google.android.c2dm.intent.RECEIVE" /> category android:name="asia.geeeksplay" /> /intent-filter> /receiver>-GcmListenerService xử lý các kiểu lời nhắn được giữ hộ từ phầm mềm server và hiển thị Notification

service android:name=".service.GeeekGCMListenerService" android:exported="false" > intent-filter> kích hoạt android:name="com.google.android.c2dm.intent.RECEIVE" /> /intent-filter> /service>InstanceIDListenerService thuộc tính này để cách xử lý như tạo, update của việc đk tokens. Service android:name=".service.GeeekInstanceIDListenerService" android:exported="false"> intent-filter> kích hoạt android:name="com.google.android.gms.iid.InstanceID"/> action android:name="com.google.android.c2dm.intent.REGISTRATION" /> /intent-filter> /service>BIND_NETWORK_TASK_SERVICE: sử dụng bởi Google Play Services, hỗ trợ quyền bảo mật thông tin cho việcgửi cùng nhận tin nhắn.

service android:name=".service.RegistrationGCMService" android:exported="true" android:permission="com.google.android.gms.permission.BIND_NETWORK_TASK_SERVICE" > intent-filter> action android:name="com.google.android.gms.gcm.ACTION_TASK_READY" /> /intent-filter> /service>Để đăng ký Tokens ID với ứng dụng server chúng ta sử dụng cách tiến hành onTokenRefresh() như sau:public class GeeekInstanceIDListenerService extends InstanceIDListenerService { private static final String TAG = "GeeekInstanceIDListenerService";