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

Flutter安卓Release打包R8混淆报错:缺失Stripe PushProvisioning类

问题分析

你的错误核心是React Native Stripe SDK的内部代码引用了Stripe PushProvisioning模块的类,但你未引入该模块,且Gradle 8.9搭配的R8混淆器(默认启用更严格的检查规则)会校验所有引用类的存在性——即使你的业务逻辑完全没用到PushProvisioning功能,SDK的代码依然触发了这个检查。

之前尝试的ProGuard规则存在冗余(比如keep一个不存在的类),且没有针对性地告诉R8忽略这类缺失类的引用,导致问题持续。

解决步骤

1. 对齐Stripe依赖版本(关键)

移除你手动添加的com.stripe:stripe-android:20.48.6依赖,让React Native Stripe SDK自动管理对应的Stripe Android版本——版本不兼容是引发这类隐性依赖问题的常见原因。

修改android/app/build.gradle的dependencies块:

dependencies {
    // 移除手动指定的stripe-android依赖
    // implementation 'com.stripe:stripe-android:20.48.6'
    // 保留其他原有依赖
}

2. 调整ProGuard规则(精准忽略缺失类)

替换你现有的PushProvisioning相关规则,改为以下内容(删除无效的keep规则,添加R8专属的忽略配置):

# 忽略未使用的PushProvisioning相关类的警告与引用检查
-dontwarn com.stripe.android.pushProvisioning.**
-dontwarn com.reactnativestripesdk.pushprovisioning.**
# 告诉R8允许这些类缺失(因为我们不会调用相关功能)
-allowmissingclasses com.stripe.android.pushProvisioning.PushProvisioningActivity$g
-allowmissingclasses com.reactnativestripesdk.pushprovisioning.**

同时可以简化你的Stripe核心规则,不需要keep所有类,使用官方推荐的基础规则即可:

# Stripe SDK 基础规则(官方推荐)
-keep class com.stripe.android.core.networking.ApiRequest { *; }
-keep class com.stripe.android.model.** { *; }
-dontwarn com.stripe.android.**

3. 临时关闭R8 Full Mode(适配Gradle 8.9)

Gradle 8.9默认启用了R8的Full Mode,该模式会进行更严格的代码校验。如果上述规则仍不生效,可暂时关闭该模式,在项目根目录的gradle.properties中添加:

android.enableR8.fullMode=false

4. 清理缓存并重新编译

执行以下命令清理Gradle缓存,避免旧配置残留:

./gradlew clean

然后重新编译Release版本:

./gradlew assembleRelease

备选方案:排除SDK中的PushProvisioning模块

如果上述方法无效,可以尝试在React Native Stripe SDK的依赖中排除PushProvisioning相关模块,在android/app/build.gradle中修改:

dependencies {
    implementation ('com.reactnativecommunity:stripe-android:你的SDK版本') {
        exclude group: 'com.stripe.android', module: 'push-provisioning'
    }
}

注意替换你的SDK版本为你实际使用的react-native-stripe-sdk版本。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 21:14:50