Google Cloud Messaging Là Gì
GCM hay còn được gọi là Google Cloud Messageing, đấy là một Service được Google cách tân và phát triển giúp
android developer thuận lợi triển khai việc send message từ vps tới mobile của bạn.
Bạn đang xem: Google cloud messaging là gì
Server mà bạn develop hoàn toàn 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 bé dại hoặc những dữ liệu gồm dung lượng bé dại hơn hoặc bởi 4kb. GCM xử lý tài liệu theo kiểu
hàng ngóng (queue) các message và gửi tới các ứng dụng android dạng Push notification. GCM thay
thế mang đến phiên bản beta C2DM (Cloud to lớn Device Messaging).
1. Các đặc điểm đặc trưng của GCM
Cho phép server của những ứng dụng phía trang bị 3 (3rd-party) gởi message cho từng ứng dụng.
Phía ứng 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ẽ thức tỉnh các
thiết bị với broadcast message.
không hỗ trợ các interface hay các thư viện xử lý tin tức mà đối kháng thuần chỉ nhắn tin nhắnđến thiết bị.
Android > 2.3 + Google Play Store or Emulator chạy bởi Google APIs.
Sử dụng liên kết cho Google Service hiện nay có. (đối với android version
google account).
2. Tổng quan bản vẽ xây dựng GCM

tác với server thông qua giao thức HTTP hoặc XMPP, và một app client là game android hoặc iOS,...
** Làm cụ nào để các thành phần liên tưởng với nhau?**
Google GCM Connection Servers chấp nhận downstream message từ app server của chúng ta and gưỉ chúngtới ứng dụng client. Giao thức XMPP cũng có thể có thể chấp nhận message được gửi lên từ client tiện ích và chuyển
tiếp bọn chúng tới phầm mềm server.
Trên app server của bạn, bạn vận dụng cho 2 phương thức HTTP hoặc XMPP để giao tiếp với GCMConnection server. Phầm mềm server gởi downstream message cho tới GCM connection server, connection server
sẽ tàng trữ message vào hàng hóng và gửi chúng tới client app. Nếu như bạn sử dụng XMPP giao thức thì
app vps của chúng ta có thể nhận messages giữ hộ từ client app.
Client ứng dụng để nhận với gửi GCM message, áp dụng này phải đăng ký với GCM cùng một định danh duynhất hotline là registration token.
3. Những thành phần của GCM
Components - tổng thể vai trò bao gồm trong GCM
Credentials - Là IDs với token được áp dụng trong GCM để bảo đảm rằng toàn bộ các thành phần
được xác nhận, cùng tin nhắn được gởi đi chủ yếu xác.
3.1 Components
GCM Connection Servers: Google server liên quan đến việc gửi tin nhắn giữa phầm mềm server vàclient app.
Client app: Một GCM client app cho phép ứng dụng giao tiếp với app server.
App Server: Một phầm mềm server nhằm gửi tài liệu tới ứng dụng client trải qua GCM connection server. Nếu
app server áp dụng giao thức XMPP, nó cũng hoàn toàn có thể nhận lời nhắn được giữ hộ từ client apps.
3.2 Credentials
Sender ID: Số Project ID khi thông số kỹ thuật project API của bạn. Số ID này đk với ứng dụng server đểcam kết rằng server sẽ gửi dữ liệu tới Client app.
API Key: Một API key được lưu lại trên tiện ích server để phầm mềm server đúng đắn quyền truy cập tới Googleservice. Vào HTTP, API key bao gồm trong phần Headed của phương thức POST được yêu ước gửi tin
nhắn. Với XMPP, API key được bao hàm trong SASL PLAIN xác xắn yêu ước như mật khẩu để kết nối.
API key ko được bao hàm trong client code.
Appication ID: Đây là ID của phầm mềm client được đăng ký để nhận tài liệu từ server.Xem thêm: ‘Đào Lại’ Video Sơn Tùng M Ruột Sơn Tùng M, Dân Mạng “Đào” Clip Sơn Tùng M
3.3 Cách đăng ký Application ID
Android: áp dụng package name trong tệp tin manifest.
iOS: áp dụng app"s bundle nhằm xác định.
Chrome: áp dụng tên chrome extension.
Registration Token: Một token được đăng ký giữa client và server để được cho phép client phầm mềm nhận
tin nhắn. Việc đk tokens nên là túng thiếu mật.
Vòng đời của GCM:
Đăng ký kết GCM: Client app đk token với ứng dụng server.
Client app kết nối với tiện ích server thông qua token đã đăng ký.
App server đã lưu token đã đk từ client.
Gửi với nhận messages:
Gửi tin nhắn: app server gửi tin nhắn tới client app:
GCM connection server báo tin nhắn vào hàng hóng và giữ tin nhắn nếu đồ vật offline.
Khi vật dụng online, GCM connection server gửi tin nhắn nhắn cho tới thiết bị.
Trên thiết bị, app client dấn tin nhắn tùy theo từng căn cơ đã đk với tiện ích server.
Nhận tin nhắn: Client ứng dụng nhận lời nhắn từ GCM connection server.
4. Setup GCM Client phầm mềm on Android
Google Cloud Messaging (GCM) Android là một trong những app client chạy xe trên thiết bị Android. Để viết codeứng dụng họ sử dụng GoogleCloudMessaging API và game android Studio cùng với Gradle.
Yêu ước để chạy GCM android client:
GCM yêu mong thiết bị chạy android 2.2 hoặc cao hơn và phải thiết đặt ứng dụng Google PlayStore, hoặc sản phẩm giả lập chạy app android 2.2 cùng với Google APIs.
Nếu bạn có nhu cầu tiêp tục sử dụng các thuộc tính GCM được phân phát thông qua Google PlayServices, thiết bị đề nghị chạy app android 2.3 hoặc cao hơn. Chúng ta cũng có thể sử dụng giả lập chạy
Android 2.3 trở lên trên với Google APIs.
Trên những thiết bị Android, GCM sử dụng connection tồn tại cho Google services. Với các thiếtbị chạy app android version dưới 3.0 thì phải cài đặt tài khoản google, với sản phẩm chạy Android
version trường đoản cú 4.0.4 trở lên trên thì không cần tài khoản google.
5. Setup Google Service trong game android studio:
dependencies compile "com.google.android.gms:play-services-gcm:8.1.0"Trong tập tin Application"s Manifest:
+ ".permission.C2D_MESSAGE" đăng ký quyền được cho phép ứng dụng
nhận gửi với nhận tin nhắn từ GCM.
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 thừa nhận tin nhắn từ bỏ 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ý những kiểu lời nhắn được giữ hộ từ ứng dụng server và hiển thị Notification
trên thiết bị.
Xem thêm: Kẻ Nguy Hiểm Nhất Châu Âu: Otto Skorzeny Ở Tây Ban Nha, Người Nguy Hiểm Nhất Thế Giới Là Ai
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 để xử trí như tạo, cập nhật 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"/> kích hoạt android:name="com.google.android.c2dm.intent.REGISTRATION" /> /intent-filter> /service>BIND_NETWORK_TASK_SERVICE: thực hiện 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> kích hoạt android:name="com.google.android.gms.gcm.ACTION_TASK_READY" /> /intent-filter> /service>Để đăng ký Tokens ID với phầm mềm 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";