Je ne connais rien à la notification Push. j'essaie d'apprendre. mais je ne peux pas comprendre . J'ai une table base de données mysql dans le serveur system.if si des modifications sont apportées dans la table signifie que je veux afficher comme notification dans le mobile Android donnez-moi s'il vous plaît les suggestions
voici une bonne explication à ce sujet:
http://quickblox.com/developers/SimpleSample-messages_users-Android
Les étapes globales sont les suivantes:
Ce n'est pas quelque chose que je peux écrire tous ici par des détails. Utilisez Google pour chaque étape.
en fait, récemment, je me sers surtout de la notification push FCM dans ce projet u ...... meilleur lien pour créer la notification push: link
étapes à suivre pour effectuer la notification Push - Didacticiel de messagerie en nuage Firebase pour Android
Du côté de l'application
Maintenant, allez dans votre fichier build.gradle de niveau racine et ajoutez le code suivant.
une. Ajouter cette ligne classpath 'com.google.gms: google-services: 3.0.0'
b. Ajouter cette ligne compiler 'com.google.firebase: firebase-messaging: 9.0.0'
Synchronisez maintenant votre projet.
Créez une classe nommée MyFirebaseInstanceIDService.Java et écrivez le code suivant:
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
}
}
Maintenant, créez MyFirebaseMessagingService.Java et écrivez le code suivant:
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());
}
}
Nous devons maintenant définir les services ci-dessus dans notre fichier AndroidManifest.xml. Alors, allez au manifeste et modifiez comme suit.
<!-- 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>
enfin
Accédez à la console Firebase et sélectionnez l'application que vous avez créée . Dans le menu de gauche, sélectionnez notification . Cliquez sur nouveau message . Saisissez le message, sélectionnez un périphérique, collez le jeton que vous avez copié et cliquez sur Envoyer. Le même que je l'ai fait sur la vidéo, et vérifiez votre appareil
Vous pouvez consulter Firebase ... Consultez ce lien
https://firebase.google.com/docs/cloud-messaging/
https://firebase.google.com/docs/notifications/
Ces liens sont suffisants pour en savoir plus sur la notification push
Pour ce qui est de l'envoi de notifications lorsque des données de la base de données sont modifiées, demandez à votre API d'envoyer une requête au serveur FCM afin que les données nécessaires soient transmises aux clients.
La première chose - les notifications Google Push s'appellent GCM (Google Cloud Messaging). Une mauvaise utilisation du nom peut vous conduire à de mauvaises informations ou à un tutoriel. L'autre chose, vous devriez compter sur Developer. Dans ce cas, commencez par le site Web de Google Developers, où vous trouverez la plupart des exemples d'informations de base et de codes. https://developers.google.com/cloud-messaging/ .
GCM est obsolète, vous devez utiliser Firebase Cloud Messaging (FCM)