你好,EMAS的RN例子中只有消息的回调 我想问下通知类的我该怎么做?我需要拿到extras额外的参数做逻辑?
您好,您可以通过以下步骤来获取通知类的额外参数:
MainActivity
中,在 onMessageReceived
方法中添加以下代码:if (message.getData() != null) {
// 获取额外参数
Bundle extras = message.getData();
String extra1 = extras.getString("extra1");
String extra2 = extras.getString("extra2");
// 使用额外参数进行逻辑处理
// ...
}
AndroidManifest.xml
中,在 <application>
标签中添加以下代码:<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="@string/default_notification_channel_id" />
strings.xml
中,添加以下代码:<string name="default_notification_channel_id">default_notification_channel</string>
build.gradle
中,添加以下代码:dependencies {
implementation 'com.google.firebase:firebase-messaging:20.2.1'
}
AndroidManifest.xml
中,添加以下代码:<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
AndroidManifest.xml
中,添加以下代码:<service
android:name=".MyFirebaseMessagingService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
MyFirebaseMessagingService.java
中,添加以下代码:public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
// ...
}
}
AndroidManifest.xml
中,添加以下代码:<receiver
android:name=".MyBroadcastReceiver"
android:exported="false">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
MyBroadcastReceiver.java
中,添加以下代码:public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// ...
}
}
AndroidManifest.xml
中,添加以下代码:<service
android:name=".MyJobIntentService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
MyJobIntentService.java
中,添加以下代码:public class MyJobIntentService extends JobIntentService {
@Override
protected void onHandleWork(@NonNull Intent intent) {
// ...
}
}
AndroidManifest.xml
中,添加以下代码:<service
android:name=".MyIntentService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
MyIntentService.java
中,添加以下代码:public class MyIntentService extends IntentService {
public MyIntentService() {
super("MyIntentService");
}
@Override
protected void onHandleIntent(@Nullable Intent intent) {
// ...
}
}
AndroidManifest.xml
中,添加以下代码:<service
android:name=".MyService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
MyService.java
中,添加以下代码:```java
public class MyService extends Service {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
// ...
移动推送Android SDK:透传消息+用户自建通知最佳实践 https://help.aliyun.com/document_detail/434789.html
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。