fix: v2.0.4+24 — login fixes, signup toggle, forgot-password, guest SnackBar, Google OAuth
- Google Sign-In: wire serverClientId (639347358523-mtkm...apps.googleusercontent.com) so idToken is returned on Android - Email login: raise timeout 10s→25s, add single retry on SocketException/TimeoutException - Forgot Password: real glassmorphism bottom sheet with safe-degrade SnackBar (endpoint missing on backend) - Create Account: same-page AnimatedSwitcher toggle with glassmorphism signup form; delete old RegisterScreen - Desktop parity: DesktopLoginScreen same-page toggle; delete DesktopRegisterScreen - Guest mode: remove ScaffoldMessenger SnackBar from HomeScreen outer catch (inner _safe wrappers already return []) - LoginScreen: clearSnackBars() on postFrameCallback to prevent carried-over SnackBars from prior screens - ProGuard: add Google Sign-In + OkHttp keep rules - Version bump: 2.0.0+20 → 2.0.4+24; settings _appVersion → 2.0.4 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
59
android/app/proguard-rules.pro
vendored
59
android/app/proguard-rules.pro
vendored
@@ -26,3 +26,62 @@
|
||||
-dontwarn com.google.android.play.core.tasks.OnFailureListener
|
||||
-dontwarn com.google.android.play.core.tasks.OnSuccessListener
|
||||
-dontwarn com.google.android.play.core.tasks.Task
|
||||
|
||||
# Razorpay
|
||||
-keepattributes *Annotation*,Signature,*Annotation*
|
||||
-dontwarn com.razorpay.**
|
||||
-keep class com.razorpay.** { *; }
|
||||
-optimizations !method/inlining/
|
||||
-keepclasseswithmembers class * {
|
||||
public void onPayment*(...);
|
||||
}
|
||||
-keep class proguard.annotation.Keep
|
||||
-keep class proguard.annotation.KeepClassMembers
|
||||
-keep @proguard.annotation.Keep class * { *; }
|
||||
-keep @proguard.annotation.KeepClassMembers class * {
|
||||
<fields>;
|
||||
<methods>;
|
||||
}
|
||||
|
||||
# Google Sign-In / Play Services
|
||||
-keep class com.google.android.gms.** { *; }
|
||||
-keep interface com.google.android.gms.** { *; }
|
||||
-dontwarn com.google.android.gms.**
|
||||
-keep class com.google.firebase.** { *; }
|
||||
-dontwarn com.google.firebase.**
|
||||
|
||||
# Geolocator / Geocoding
|
||||
-keep class com.baseflow.** { *; }
|
||||
-dontwarn com.baseflow.**
|
||||
|
||||
# url_launcher, share_plus, image_picker, path_provider, etc.
|
||||
-keep class io.flutter.plugins.** { *; }
|
||||
-dontwarn io.flutter.plugins.**
|
||||
|
||||
# OkHttp (used by many network libs)
|
||||
-dontwarn okhttp3.**
|
||||
-dontwarn okio.**
|
||||
-dontwarn javax.annotation.**
|
||||
-keep class okhttp3.** { *; }
|
||||
-keep interface okhttp3.** { *; }
|
||||
|
||||
# Keep native methods
|
||||
-keepclasseswithmembernames class * {
|
||||
native <methods>;
|
||||
}
|
||||
|
||||
# Keep Parcelable classes
|
||||
-keep class * implements android.os.Parcelable {
|
||||
public static final android.os.Parcelable$Creator *;
|
||||
}
|
||||
|
||||
# Keep Serializable classes
|
||||
-keepclassmembers class * implements java.io.Serializable {
|
||||
static final long serialVersionUID;
|
||||
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
||||
!static !transient <fields>;
|
||||
private void writeObject(java.io.ObjectOutputStream);
|
||||
private void readObject(java.io.ObjectInputStream);
|
||||
java.lang.Object writeReplace();
|
||||
java.lang.Object readResolve();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user