You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native Android端FCM令牌通知权限请求:是否需添加代码实现弹窗?

Android端通知权限请求说明
  • Android 13(API 33)及以上版本:必须主动请求通知权限才会弹出用户选择弹窗,需要添加对应代码逻辑。
  • Android 12(API 32)及以下版本:系统默认开启通知权限,不需要主动请求,也不会弹出权限选择弹窗。

如果要适配Android 13+,可以在原有iOS代码基础上扩展,示例代码如下:

import { PermissionsAndroid, Platform } from 'react-native';
import messaging from '@react-native-firebase/messaging';

async function requestUserPermission() {
  let authStatus;

  if (Platform.OS === 'android' && Platform.Version >= 33) {
    // Android 13+ 需单独请求POST_NOTIFICATIONS权限
    const permissionResult = await PermissionsAndroid.request(
      PermissionsAndroid.PERMISSIONS.POST_NOTIFICATIONS
    );
    authStatus = permissionResult === PermissionsAndroid.RESULTS.GRANTED 
      ? messaging.AuthorizationStatus.AUTHORIZED 
      : messaging.AuthorizationStatus.DENIED;
  } else {
    // iOS 或 Android 12及以下版本用原有逻辑
    authStatus = await messaging().requestPermission();
  }

  const enabled =
    authStatus === messaging.AuthorizationStatus.AUTHORIZED ||
    authStatus === messaging.AuthorizationStatus.PROVISIONAL;

  if (enabled) {
    console.log('Authorization status:', authStatus);
  }
}

总结:

  • Android 13+ 需要额外添加权限请求代码,才能触发用户选择弹窗;
  • 低版本Android无需额外操作,默认允许通知权限。

内容的提问来源于stack exchange,提问作者IOSDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 16:20:31