Ausführung für Aufgabe „:app:minifyReleaseWithR8“ fehlgeschlagen – Fehlende Klassen löschen?Android

Forum für diejenigen, die für Android programmieren
Anonymous
 Ausführung für Aufgabe „:app:minifyReleaseWithR8“ fehlgeschlagen – Fehlende Klassen löschen?

Post by Anonymous »

Hier ist eine verbesserte Version Ihres Textes mit einigen Anpassungen der Klarheit:
Hallo,
Ich habe eine Flutter-App, die perfekt funktionierte, bis ich habe mein Betriebssystem auf Windows 11 aktualisiert und Android Studio auf die Ladybug-Version aktualisiert. Nachdem ich einige anfängliche Fehler behoben und Gradle auf 8.9 aktualisiert hatte, gelang es mir, alles wieder zum Laufen zu bringen. iOS-Updates wurden reibungslos veröffentlicht, aber Android war eine kleine Herausforderung.
Das Ausführen der App funktioniert, aber das Kompilieren der App stürzt während der Minimierung ab und es scheint mit Stripes pushProvisioning zusammenzuhängen. Meine App verwendet Stripe nur für Direktzahlungen, bei denen ein Benutzer auf ein Bezahlsymbol klickt und ich eine Zahlungsabsicht für ihn erstelle. Ich bin mir nicht sicher, welche spezifischen Fehlerdetails hilfreich sein könnten, aber hier ist ein Auszug:

Code: Select all

    > Task :app:minifyReleaseWithR8 FAILED
ERROR: Missing classes detected while running R8. Please add the missing classes or apply additional keep rules that are generated in C:\Users\nilsm\AndroidStudioProcjects\Prosjekt\parkering\build\app\outputs\mapping\release\missing_rules.txt.
ERROR: R8: Missing class com.stripe.android.pushProvisioning.PushProvisioningActivity$g (referenced from: void com.reactnativestripesdk.pushprovisioning.PushProvisioningProxy$createActivityEventListener$listener$1.onActivityResult(android.app.Activity, int, int, android.content.Intent))
Um dieses Problem zu beheben, habe ich Folgendes zu android/app/build.gradle hinzugefügt:

Code: Select all

dependencies {
implementation 'com.stripe:stripe-android:20.48.6'
// Add other dependencies here if needed
}
Ich habe auch versucht, Folgendes hinzuzufügen:

Code: Select all

implementation 'com.stripe:stripe-push-provisioning:1.1.0'
Da dies jedoch zu weiteren Fehlern führte, habe ich es entfernt. Ich habe dann versucht, ProGuard wie im Fehler vorgeschlagen zu verwenden und alles hinzuzufügen, was in „missing_rules.txt“ aufgeführt ist. Mein proguard-rules.pro sieht derzeit so aus:

Code: Select all

# General Flutter rules
-keep class io.flutter.app.** { *; }
-keep class io.flutter.plugins.** { *; }
-keep class com.myappname.MainActivity { *; }

# Android core and Kotlin rules
-keepattributes *Annotation*
-keep class kotlin.Metadata { *; }
-keep class kotlin.reflect.** { *; }
-dontwarn kotlin.**
-dontwarn kotlinx.coroutines.**

# Required for core Android libraries
-keepclassmembers class * {
@androidx.annotation.Keep *;
}

# Handle known warnings for AndroidX
-dontwarn androidx.**

# General Proguard rules to support reflection
-keepclassmembers class * {
void *(android.content.Context, android.util.AttributeSet);
void *(android.view.View, android.util.AttributeSet);
}

# Stripe SDK rules
-keep class com.stripe.android.** { *; }
-dontwarn com.stripe.android.**

# Rules for Stripe push provisioning (ignore warnings for missing classes)
-dontwarn com.stripe.android.pushProvisioning.**
-dontwarn com.reactnativestripesdk.pushprovisioning.**

# Optionally keep push provisioning classes if they're used
-keep class com.stripe.android.pushProvisioning.** { *; }
-keep class com.reactnativestripesdk.pushprovisioning.** { *; }

# Disable side effects for unused Stripe push provisioning methods
-assumenosideeffects class com.reactnativestripesdk.pushprovisioning.PushProvisioningProxy { *; }
-assumenosideeffects class com.reactnativestripesdk.pushprovisioning.DefaultPushProvisioningProxy { *; }

# Additional recommended optimizations and rules
-optimizationpasses 5
-allowaccessmodification
-dontoptimize
-dontpreverify
-verbose
-ignorewarnings
Obwohl ich all diese Änderungen ausprobiert habe, stecke ich immer noch fest. Könnte der Fehler auf fehlende Stripe-Klassen zurückzuführen sein oder liegt ein anderes zugrunde liegendes Problem vor? Für Vorschläge für die nächsten Schritte wären wir sehr dankbar.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post