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

React Native集成Azure推送通知Hub安卓构建失败求助

解决React Native Azure推送通知安卓构建错误及库可用性问题

一、解决"Maven仓库使用不安全协议"的构建错误

这个错误是因为Android Gradle Plugin(AGP)7.0+默认阻止使用HTTP的Maven仓库,必须显式允许或替换为HTTPS源:

方法1:临时允许HTTP仓库(快速解决)

在你的React Native项目的**项目级android/build.gradle**文件中,找到包含http://dl.bintray.com/microsoftazuremobile/SDK的maven仓库配置块,添加allowInsecureProtocol = true:

allprojects {
    repositories {
        // ...其他仓库配置
        maven {
            url "http://dl.bintray.com/microsoftazuremobile/SDK"
            allowInsecureProtocol = true // 添加上这一行
        }
    }
}

注意:这只是临时 workaround,HTTP协议存在安全风险,建议后续替换为HTTPS源。

方法2:替换为HTTPS仓库(推荐)

Bintray已停止服务,微软已将相关SDK迁移到官方Maven仓库。你可以替换原HTTP仓库地址为以下HTTPS源,确保依赖能正常拉取:

maven {
    url "https://pkgs.dev.azure.com/MicrosoftDeviceSDK/DuoSDK-Public/_packaging/Duo-SDK-Feed/maven/v1"
    content {
        includeGroup "com.microsoft.azure"
    }
}

如果依赖已同步到Maven Central,也可以直接用:

mavenCentral()

二、关于react-native-azurenotificationhub的可用性

这个库的维护已停滞多年,最后一次更新在2020年左右,对React Native 0.60+的新版本兼容性较差,容易出现构建或运行时问题。

如果上述方法仍无法解决问题,更推荐的替代方案:

  • 直接使用Azure Notification Hubs原生Android SDK,自行编写React Native原生模块桥接推送逻辑;
  • 使用维护活跃的通用推送库(如react-native-push-notification),配合Azure通知中心的REST API完成推送;
  • 采用微软官方推荐的方案,结合Firebase Cloud Messaging(FCM)与Azure通知中心,通过原生代码实现集成。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 12:14:55