Android推送通知数据
创始人
2024-08-21 21:00:34
0

Android中实现推送通知需要使用第三方库或者服务,比如Firebase Cloud Messaging(FCM),JPush等。以下是使用FCM实现推送通知的代码示例:

  1. 在项目根目录下的build.gradle文件中添加以下依赖:
dependencies {
    // ...
    implementation 'com.google.firebase:firebase-messaging:22.0.0'
}
  1. 在AndroidManifest.xml文件中添加以下代码:





    
        
    




    
        
        
    

  1. 在MyFirebaseMessagingService类中添加以下代码:
public class MyFirebaseMessagingService extends FirebaseMessagingService {

    private static final String TAG = "MyFirebaseMessagingService";

    @Override
    public void onMessageReceived(RemoteMessage remoteMessage) {
        super.onMessageReceived(remoteMessage);
        
        // 获取通知数据
        String title = remoteMessage.getNotification().getTitle();
        String body = remoteMessage.getNotification().getBody();
        Map data = remoteMessage.getData();
        
        // 处理通知
        sendNotification(title, body, data);
    }

    private void sendNotification(String title, String body, Map data) {
        // 构建通知
        NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "default");
        builder.setContentTitle(title)
                .setContentText(body)
                .setSmallIcon(R.mipmap.ic_launcher)
                .setDefaults(Notification.DEFAULT_ALL)
                .setPriority(NotificationCompat.PRIORITY_HIGH)
                .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
                .setContentIntent(getPendingIntent(data));

        // 发送通知
        NotificationManagerCompat notificationManager =
                NotificationManagerCompat.from(this);
        notificationManager.notify(0, builder.build());
    }

    private PendingIntent getPendingIntent(Map data) {
        Intent intent = new Intent(this, MainActivity.class);
        intent.setAction("OPEN_NOTIFICATION_ACTION");
        for (String key : data.keySet()) {
            intent.putExtra(key, data.get(key));
        }
        return PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
    }
}

上述代码中,使用MyFirebaseMessagingService类继

相关内容

热门资讯

2026版攻略!wpk控制牌是... 2026版攻略!wpk控制牌是真的吗,智星德州可以透视吗,切实真的有挂(有挂教学)暗藏猫腻,小编详细...
攻略辅助挂!wepoker养号... 攻略辅助挂!wepoker养号规律,德普之星透视免费,真是存在有挂(有挂存在)1、超多福利:超高返利...
有了最新消息!wpk模拟器多开... 有了最新消息!wpk模拟器多开,德普之星怎么设置埋牌,确实是真的有挂(的确有挂)1、德普之星怎么设置...
连日来!拱趴大菠萝万能挂,德普... 连日来!拱趴大菠萝万能挂,德普之星辅助软件,果然真的有挂(有挂分享)1、实时德普之星辅助软件透视辅助...
更值得关注的是!德州局透视脚本... 更值得关注的是!德州局透视脚本免费版下载手机版,如何下载德普之星辅助软件,原来是真的有挂(详细教程)...
昨日!wepoker分析,红龙... 昨日!wepoker分析,红龙poker辅助,真是确实有挂(有挂工具)红龙poker辅助脚本下载中分...
经调查!拱趴游戏破解器,德扑之... 您好,德扑之星辅助器app这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很...
做出回应!aapoker安装包... 做出回应!aapoker安装包怎么使用,德普之星怎么设置埋牌,其实真的有挂(真实有挂);1、用户打开...
经调查!hh poker插件下... 经调查!hh poker插件下载,德扑之星的辅助工具介绍,其实是真的有挂(存在有挂)1、德扑之星的辅...
日前!菠萝辅助器免费版的特点,... 日前!菠萝辅助器免费版的特点,德普之星有透视辅助吗,一贯是真的有挂(真实有挂)1、玩家可以在德普之星...