プッシュ通知については何も知りません。私は学ぶことをしようとしています。しかし、私は理解していません。
サーバーシステムに1つのテーブルMySQLデータベースがあります。テーブルに変更が加えられた場合、Androidモバイルアプリで通知を表示します。
誰でも提案を提供できますか?
これについての良い説明があります:
http://quickblox.com/developers/SimpleSample-messages_users-Android
全体的な手順は次のとおりです。
ここですべてを詳細に記述できるものではありません。すべてのステップでGoogleを使用します。
実際、最近では主にそのuプロジェクト内のプッシュ通知FCMに使用されています....プッシュ通知を作成するための最良のリンク: link
プッシュ通知を実行する手順-Firebase Cloud Messaging Tutorial for Android
アプリ側
ルートレベルのbuild.gradleファイルに移動して、次のコードを追加します。
a。この行のクラスパス「com.google.gms:google-services:3.0.0」を追加します
b。この行を追加して、「com.google.firebase:firebase-messaging:9.0.0」をコンパイルします
プロジェクトを同期します。
MyFirebaseInstanceIDService.Javaという名前のクラスを作成し、次のコードを記述します。
public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {
private static final String TAG = "MyFirebaseIIDService";
@Override
public void onTokenRefresh() {
//Getting registration token
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
//Displaying token on logcat
Log.d(TAG, "Refreshed token: " + refreshedToken);
}
private void sendRegistrationToServer(String token) {
//You can implement this method to store the token on your server
//Not required for current project
}
}
次に、MyFirebaseMessagingService.Javaを作成し、次のコードを記述します。
import Android.app.NotificationManager;
import Android.app.PendingIntent;
import Android.content.Context;
import Android.content.Intent;
import Android.media.RingtoneManager;
import Android.net.Uri;
import Android.support.v4.app.NotificationCompat;
import Android.util.Log;
import com.google.firebase.messaging.FirebaseMessagingService;
import com.google.firebase.messaging.RemoteMessage;
/**
*
*/
public class MyFirebaseMessagingService extends FirebaseMessagingService {
private static final String TAG = "MyFirebaseMsgService";
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
//Displaying data in log
//It is optional
Log.d(TAG, "From: " + remoteMessage.getFrom());
Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody());
//Calling method to generate notification
sendNotification(remoteMessage.getNotification().getBody());
}
//This method is only generating Push notification
//It is same as we did in earlier posts
private void sendNotification(String messageBody) {
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent,
PendingIntent.FLAG_ONE_SHOT);
Uri defaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.mipmap.ic_launcher)
.setContentTitle("Firebase Push Notification")
.setContentText(messageBody)
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setContentIntent(pendingIntent);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, notificationBuilder.build());
}
}
次に、AndroidManifest.xmlファイルで上記のサービスを定義する必要があります。マニフェストに移動して、次のように変更します。
<!-- Adding Internet Permission -->
<uses-permission Android:name="Android.permission.INTERNET"/>
<application
Android:allowBackup="true"
Android:icon="@mipmap/ic_launcher"
Android:label="@string/app_name"
Android:supportsRtl="true"
Android:theme="@style/AppTheme">
<activity Android:name=".MainActivity">
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!--
Defining Services
-->
<service
Android:name=".MyFirebaseMessagingService">
<intent-filter>
<action Android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
<service
Android:name=".MyFirebaseInstanceIDService">
<intent-filter>
<action Android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
</application>
最後に
Firebaseコンソールに移動し、作成したアプリを選択します。左側のメニューから通知を選択します。新しいメッセージをクリックします。メッセージを入力し、単一のデバイスを選択して、コピーしたトークンを貼り付け、送信をクリックします。私がビデオでやったのと同じ、あなたのデバイスを確認してください
Firebaseをチェックアウトできます...このリンクをチェックアウトしてください
https://firebase.google.com/docs/cloud-messaging/
https://firebase.google.com/docs/notifications/
このリンクは、プッシュ通知について知るのに十分です
また、データベース内のデータが変更されたときに通知を送信する場合は、APIがFCMサーバーに要求を送信し、クライアントに必要なデータが配信されるようにします。
まず、Googleプッシュ通知はGCM(Google Cloud Messaging)と呼ばれます。間違った名前を使用すると、間違った情報やチュートリアルにつながる可能性があります。もう1つは、開発者に依存する必要があります。この場合、Google Developers Webサイトから開始します。ここから、基本的な情報とコード例のほとんどを見つけることができます。 https://developers.google.com/cloud-messaging/ 。
[〜#〜] gcm [〜#〜]は非推奨です。使用するには Firebase Cloud Messaging(FCM)