razorpay / react-native-razorpay

React Native wrapper for Razorpay's mobile SDKs
https://www.npmjs.com/package/react-native-razorpay
MIT License
124 stars 107 forks source link

Unable to start activity ComponentInfo com.razorpay.CheckoutActivity : Didn't find class "com.razorpay.G_G #210

Closed ArvindKer09 closed 5 years ago

ArvindKer09 commented 5 years ago

React-Native Version: 0.59.8 Gradle Version: 5.1.1

java.lang.RuntimeException: Unable to start activity ComponentInfo{in.abc.app/com.razorpay.CheckoutActivity}: java.lang.ClassNotFoundException: Didn't find class "com.razorpay.G_G" on path: DexPathList[[zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/base.apk", zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.armeabi_v7a.apk", zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.en.apk", zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.xhdpi.apk"],nativeLibraryDirectories=[/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/lib/arm, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/base.apk!/lib/armeabi-v7a, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.armeabi_v7a.apk!/lib/armeabi-v7a, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.en.apk!/lib/armeabi-v7a, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.xhdpi.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]] at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2814) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892) at android.app.ActivityThread.-wrap11(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1613) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:173) at android.app.ActivityThread.main(ActivityThread.java:6634) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:822) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.razorpay.G_G" on path: DexPathList[[zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/base.apk", zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.armeabi_v7a.apk", zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.en.apk", zip file "/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.xhdpi.apk"],nativeLibraryDirectories=[/data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/lib/arm, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/base.apk!/lib/armeabi-v7a, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.armeabi_v7a.apk!/lib/armeabi-v7a, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.en.apk!/lib/armeabi-v7a, /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.xhdpi.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at com.razorpay.O_Y.G_G(:1100) at java.lang.reflect.Method.invoke(Native Method) at com.razorpay.eb.(Unknown Source:1664) at com.razorpay.eb.a(Unknown Source:0) at com.razorpay.c.f(Unknown Source:13) at com.razorpay.i.b(Unknown Source:19) at com.razorpay.t.onCreate(Unknown Source:70) at com.razorpay.Ca.onCreate(Unknown Source:114) at com.razorpay.CheckoutActivity.onCreate(Unknown Source:0) at android.app.Activity.performCreate(Activity.java:7074) at android.app.Activity.performCreate(Activity.java:7065) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1215) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2767) ... 9 more Suppressed: java.io.IOException: No original dex files found for dex location /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.armeabi_v7a.apk at dalvik.system.DexFile.openDexFileNative(Native Method) at dalvik.system.DexFile.openDexFile(DexFile.java:353) at dalvik.system.DexFile.(DexFile.java:100) at dalvik.system.DexFile.(DexFile.java:74) at dalvik.system.DexPathList.loadDexFile(DexPathList.java:374) at dalvik.system.DexPathList.makeDexElements(DexPathList.java:337) at dalvik.system.DexPathList.(DexPathList.java:157) at dalvik.system.BaseDexClassLoader.(BaseDexClassLoader.java:65) at dalvik.system.PathClassLoader.(PathClassLoader.java:64) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:73) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:88) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:69) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:35) at android.app.LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:695) at android.app.LoadedApk.getClassLoader(LoadedApk.java:729) at android.app.LoadedApk.getResources(LoadedApk.java:956) at android.app.ContextImpl.createAppContext(ContextImpl.java:2282) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5714) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1682) ... 6 more Suppressed: java.io.IOException: No original dex files found for dex location /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.en.apk at dalvik.system.DexFile.openDexFileNative(Native Method) at dalvik.system.DexFile.openDexFile(DexFile.java:353) at dalvik.system.DexFile.(DexFile.java:100) at dalvik.system.DexFile.(DexFile.java:74) at dalvik.system.DexPathList.loadDexFile(DexPathList.java:374) at dalvik.system.DexPathList.makeDexElements(DexPathList.java:337) at dalvik.system.DexPathList.(DexPathList.java:157) at dalvik.system.BaseDexClassLoader.(BaseDexClassLoader.java:65) at dalvik.system.PathClassLoader.(PathClassLoader.java:64) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:73) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:88) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:69) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:35) at android.app.LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:695) at android.app.LoadedApk.getClassLoader(LoadedApk.java:729) at android.app.LoadedApk.getResources(LoadedApk.java:956) at android.app.ContextImpl.createAppContext(ContextImpl.java:2282) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5714) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1682) ... 6 more Suppressed: java.io.IOException: No original dex files found for dex location /data/app/in.abc.app-6JaCLtUU8i_xpQjmYbg4bQ==/split_config.xhdpi.apk at dalvik.system.DexFile.openDexFileNative(Native Method) at dalvik.system.DexFile.openDexFile(DexFile.java:353) at dalvik.system.DexFile.(DexFile.java:100) at dalvik.system.DexFile.(DexFile.java:74) at dalvik.system.DexPathList.loadDexFile(DexPathList.java:374) at dalvik.system.DexPathList.makeDexElements(DexPathList.java:337) at dalvik.system.DexPathList.(DexPathList.java:157) at dalvik.system.BaseDexClassLoader.(BaseDexClassLoader.java:65) at dalvik.system.PathClassLoader.(PathClassLoader.java:64) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:73) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:88) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:69) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:35) at android.app.LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:695) at android.app.LoadedApk.getClassLoader(LoadedApk.java:729) at android.app.LoadedApk.getResources(LoadedApk.java:956) at android.app.ContextImpl.createAppContext(ContextImpl.java:2282) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5714) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1682) ... 6 more

RishavKumar-3796 commented 5 years ago

Facing the same issue. Please help @ChinmayaRazorpay @pravinjhaRazorpay @Nik-noceps-razorpay

pronav commented 5 years ago

@ArvindKer09 Please add following proguard rules:

-keepattributes *Annotation*
-dontwarn com.razorpay.**
-keep class com.razorpay.** {*;}
-optimizations !method/inlining/
-keepclasseswithmembers class * {
  public void onPayment*(...);
}
RishavKumar-3796 commented 5 years ago

Yaayyyyyyy. This worked. Thanks @pronav

ArvindKer09 commented 5 years ago

It worked for me too. Thanks @pronav

vsp0393 commented 1 year ago

Fatal Exception: java.lang.RuntimeException Unable to start activity ComponentInfo{com.calvarytemple/com.razorpay.CheckoutActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference I am getting this error in live app and not able to resolve this is in your activity class please help on this I am using implementation 'com.razorpay:checkout:1.6.30' for android

vivekshindhe commented 1 year ago

@vsp0393 Could you please clarify on the implementation? i.e, are you using native integration or react-native?

vsp0393 commented 1 year ago

@vsp0393 Could you please clarify on the implementation? i.e, are you using native integration or react-native?

i am using native application for android

vivekshindhe commented 1 year ago

@vsp0393 In that case, the error is because Razorpay's ApiKey isn't set correctly. Please also set it in the manifest file and check. You can use this as reference.

vsp0393 commented 1 year ago

@vsp0393 In that case, the error is because Razorpay's ApiKey isn't set correctly. Please also set it in the manifest file and check. You can use this as reference.

the API key is only set in the manifest also not anywhere else