清单合并失败并出现多个错误,将项目迁移到 android 12 后查看日志

N-R*_*YAN 5 android payment-gateway gradle android-manifest android-studio

android:exported needs to be explicitly specified for element <activity#com.razorpay.CheckoutActivity>. Apps targeting Android 12 and higher are required to specify an explicit value for `android:exported` when the corresponding component has an intent filter defined. See https://developer.android.com/guide/topics/manifest/activity-element#exported for details.
C:\Users\naray\OneDrive\Desktop\Indiahaat\Indiahaat\app\src\main\AndroidManifest.xml:12:9-16:20 Error:
    android:exported needs to be explicitly specified for element <receiver#com.razorpay.RzpTokenReceiver>. Apps targeting Android 12 and higher are required to specify an explicit value for `android:exported` when the corresponding component has an intent filter defined. See https://developer.android.com/guide/topics/manifest/activity-element#exported for details.
Run Code Online (Sandbox Code Playgroud)

我已经尝试解决这个问题,从 android 12 开始,我为 android:exported 指定了一个明确的值 ,所以我对 main 和其他活动也做了同样的事情,错误也开始消失,

但对于RazorPay 活动和接收器我无法在项目清单中找到它们。我不知道它们位于哪里,以便我可以明确标记导出的属性

我是支付网关的新手。

提前致谢!!!

Sam*_*wal 12

您可以找出其中的问题Merged Manifest,然后解决它们。要导航至Merged Manifest,请执行以下步骤:

AndroidManifest.xml->Merged Manifest从底部选项卡。在那里你会看到任何错误Red color。这样你就会找到你的问题并最终解决它!

  • “exported”设置为 true 还是 false? (2认同)

Nik*_*tel 7

尝试将 androidx.test.ext:junit 依赖项更新到 1.1.3 或更高版本。这应该可以解决你的问题。

androidTestImplementation "androidx.test.ext:junit:1.1.3"
Run Code Online (Sandbox Code Playgroud)