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

更新Flutter/Android Studio后添加razorpay_flutter遇主题资源未找到错误求助

解决razorpay_flutter导致的Theme.AppCompat.NoActionBar资源缺失问题

问题描述

将Flutter和Android Studio更新至最新版本后,添加razorpay_flutter包会触发Android资源链接错误,提示resource style/Theme.AppCompat.NoActionBar (aka com.example.sample:style/Theme.AppCompat.NoActionBar) not found。移除该包可解决问题,但回退Flutter和Android Studio至旧版本无法修复。

解决方案

1. 添加AppCompat依赖

打开android/app/build.gradle,在dependencies代码块中添加AppCompat库依赖:

dependencies {
    // 其他现有依赖
    implementation 'androidx.appcompat:appcompat:1.6.1'
}

添加后同步Gradle项目。

2. 确认主题继承关系

打开android/app/src/main/res/values/styles.xml,确保应用主题继承自Theme.AppCompat.NoActionBar:

<resources>
    <style name="LaunchTheme" parent="Theme.AppCompat.NoActionBar">
        <!-- 保留现有样式配置 -->
        <item name="android:windowBackground">@drawable/launch_background</item>
    </style>
</resources>

若不存在该文件,直接创建并添加上述内容。

3. 启用AndroidX自动迁移

打开android/gradle.properties,确保以下配置已启用:

android.useAndroidX=true
android.enableJetifier=true

这会自动将第三方库(包括razorpay_flutter)迁移至AndroidX,避免AppCompat与AndroidX的兼容性冲突。

4. 清理并重建项目

执行以下命令彻底清理缓存并重建项目:

flutter clean
flutter pub get
cd android && ./gradlew clean
cd .. && flutter run

5. 更新razorpay_flutter版本

在pubspec.yaml中确保使用最新版本的razorpay_flutter:

dependencies:
  # 其他依赖
  razorpay_flutter: ^1.3.6

运行flutter pub get更新依赖。

原因说明

razorpay_flutter内部依赖AppCompat主题资源,但更新后的项目可能因缺少AppCompat库或未启用AndroidX自动迁移,导致系统无法找到该主题资源。启用Jetifier可自动处理第三方库的AndroidX适配,添加AppCompat依赖则直接提供所需的主题资源。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 23:39:57