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

集成PayUCheckoutPro支付网关时找不到Activity类报错如何解决

安卓集成PayUCheckoutPro找不到Activity问题解决方法

根因说明

PayU官方SDK的所有组件Activity默认会通过Android的Manifest合并机制自动注入到主项目Manifest中,你遇到反复找不到不同Activity的问题,本质是Manifest合并流程失效/被阻断,或类被混淆删除导致的。

分步解决方案

1. 开启Manifest合并功能

检查你项目主module的build.gradle文件,确认android节点下没有关闭Manifest合并的配置:

android {
    // 删掉下面这行,或者把false改成true
    // manifestMergerEnabled false
}

2. 补全仓库配置

检查项目级build.gradle(或新版本的settings.gradle)的repositories节点,确认已添加PayU所需的maven仓库:

repositories {
    maven { url "https://jitpack.io" }
    google()
    mavenCentral()
}

3. 补充混淆规则

如果你的项目开启了R8/Proguard混淆,需要在proguard-rules.pro中添加PayU相关类的防混淆规则,避免类被删除:

-keep class com.payu.** { *; }
-dontwarn com.payu.**

4. 修正Activity声明配置

如果以上配置都确认无误仍有报错,再手动补全缺失的Activity声明,注意安卓12及以上版本必须添加android:exported属性,无需额外添加无用的intent-filter:

<!-- PayU支付页 -->
<activity
    android:name="com.payu.ui.view.activities.CheckoutActivity"
    android:exported="true" />
<!-- UPI支付回调页 -->
<activity
    android:name="com.payu.upisdk.upiintent.PaymentResponseUpiSdkActivity"
    android:exported="true" />

如果后续仍报其他Activity找不到,按同样格式将报错中提示的Activity类添加到Manifest即可。

5. 检查编译版本适配

确认你项目的compileSdkVersion≥31,符合PayUCheckoutPro 1.7.5版本的最低编译要求,过低的编译版本会导致Manifest合并失败。

额外排查技巧

打开项目的AndroidManifest.xml文件,点击底部的「Merged Manifest」标签,可查看完整的合并后Manifest内容和合并过程中的错误日志,直接定位冲突点。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 10:06:00