Paypal is not working after removing IO card

2019-02-11 01:42发布

I added paypal in my application,previously it was working fine,but then i noticed that my apk size become larger, so i found one solution for that

i added this to my gradle

 compile('com.paypal.sdk:paypal-android-sdk:2.12.3') {
        exclude group: 'io.card'
    }

with use of that, my apk size did not increase,but then i run my app it crash

 Process: com.android.msahakyan.expandablenavigationdrawer, PID: 16317
    java.lang.RuntimeException: An error occurred while executing doInBackground()
            at android.os.AsyncTask$3.done(AsyncTask.java:309)
            at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
            at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
            at java.util.concurrent.FutureTask.run(FutureTask.java:242)
            at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
            at java.lang.Thread.run(Thread.java:818)
     Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lio/card/payment/CardIOActivity;
            at com.paypal.android.sdk.payments.ds.doInBackground(Unknown Source)
            at android.os.AsyncTask$2.call(AsyncTask.java:295)
            at java.util.concurrent.FutureTask.run(FutureTask.java:237)
            at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
            at java.lang.Thread.run(Thread.java:818)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "io.card.payment.CardIOActivity" on path: DexPathList[[zip file "/data/app/com.android.msahakyan.expandablenavigationdrawer-1/base.apk"],nativeLibraryDirectories=[/data/app/com.android.msahakyan.expandablenavigationdrawer-1/lib/x86, /vendor/lib, /system/lib]]
            at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
            at com.paypal.android.sdk.payments.ds.doInBackground(Unknown Source)
            at android.os.AsyncTask$2.call(AsyncTask.java:295)
            at java.util.concurrent.FutureTask.run(FutureTask.java:237)
            at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
            at java.lang.Thread.run(Thread.java:818)
    Suppressed: java.lang.ClassNotFoundException: io.card.payment.CardIOActivity
            at java.lang.Class.classForName(Native Method)
            at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
            at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
            ... 8 more
     Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available

2条回答
冷血范
2楼-- · 2019-02-11 01:57

Replace your code with this:

packagingOptions{
        exclude 'AndroidManifest.xml'
        exclude 'lib/arm64-v8a/libcardioDecider.so'
        exclude 'lib/arm64-v8a/libcardioRecognizer.so'
        exclude 'lib/arm64-v8a/libcardioRecognizer_tegra2.so'
        exclude 'lib/arm64-v8a/libopencv_core.so'
        exclude 'lib/arm64-v8a/libopencv_imgproc.so'
        exclude 'lib/armeabi/libcardioDecider.so'
        exclude 'lib/armeabi-v7a/libcardioDecider.so'
        exclude 'lib/armeabi-v7a/libcardioRecognizer.so'
        exclude 'lib/armeabi-v7a/libcardioRecognizer_tegra2.so'
        exclude 'lib/armeabi-v7a/libopencv_core.so'
        exclude 'lib/armeabi-v7a/libopencv_imgproc.so'
        exclude 'lib/mips/libcardioDecider.so'
        exclude 'lib/x86/libcardioDecider.so'
        exclude 'lib/x86/libcardioRecognizer.so'
        exclude 'lib/x86/libcardioRecognizer_tegra2.so'
        exclude 'lib/x86/libopencv_core.so'
        exclude 'lib/x86/libopencv_imgproc.so'
        exclude 'lib/x86_64/libcardioDecider.so'
        exclude 'lib/x86_64/libcardioRecognizer.so'
        exclude 'lib/x86_64/libcardioRecognizer_tegra2.so'
        exclude 'lib/x86_64/libopencv_core.so'
        exclude 'lib/x86_64/libopencv_imgproc.so'
    }

and in your build.gradle file add this depedency compile 'com.paypal.sdk:paypal-android-sdk:2.14.1' and remove your existing paypal dependency.

查看更多
该账号已被封号
3楼-- · 2019-02-11 02:02

replace your build.gradle file with this

apply plugin: 'com.android.application'    
    android {
        compileSdkVersion 23
        buildToolsVersion "23.0.1"

        defaultConfig {
            applicationId "com.android.msahakyan.expandablenavigationdrawer"
            minSdkVersion 16
            targetSdkVersion 23
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                shrinkResources true
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }

      packagingOptions{
            exclude 'AndroidManifest.xml'
            exclude 'lib/arm64-v8a/libcardioDecider.so'
            exclude 'lib/arm64-v8a/libcardioRecognizer.so'
            exclude 'lib/arm64-v8a/libcardioRecognizer_tegra2.so'
            exclude 'lib/arm64-v8a/libopencv_core.so'
            exclude 'lib/arm64-v8a/libopencv_imgproc.so'
            exclude 'lib/armeabi/libcardioDecider.so'
            exclude 'lib/armeabi-v7a/libcardioDecider.so'
            exclude 'lib/armeabi-v7a/libcardioRecognizer.so'
            exclude 'lib/armeabi-v7a/libcardioRecognizer_tegra2.so'
            exclude 'lib/armeabi-v7a/libopencv_core.so'
            exclude 'lib/armeabi-v7a/libopencv_imgproc.so'
            exclude 'lib/mips/libcardioDecider.so'
            exclude 'lib/x86/libcardioDecider.so'
            exclude 'lib/x86/libcardioRecognizer.so'
            exclude 'lib/x86/libcardioRecognizer_tegra2.so'
            exclude 'lib/x86/libopencv_core.so'
            exclude 'lib/x86/libopencv_imgproc.so'
            exclude 'lib/x86_64/libcardioDecider.so'
            exclude 'lib/x86_64/libcardioRecognizer.so'
            exclude 'lib/x86_64/libcardioRecognizer_tegra2.so'
            exclude 'lib/x86_64/libopencv_core.so'
            exclude 'lib/x86_64/libopencv_imgproc.so'
        }
    }

    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:24.0.0'
        compile 'com.mcxiaoke.volley:library:1.0.19'
        compile 'com.android.support:design:23.1.0'
        compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'
        compile files('libs/android-query-full.0.24.3.jar')
        compile 'com.android.support:cardview-v7:23.1.0'
        compile 'com.android.support:recyclerview-v7:23.3.0'
        compile('com.paypal.sdk:paypal-android-sdk:2.12.3') 
        compile 'com.paypal.sdk:paypal-android-sdk:2.14.1'
        compile 'com.google.android.gms:play-services-wallet:8.4.0'
        compile files('libs/universal-image-loader-1.9.3.jar')
        compile files('libs/imagezoom.jar')
        compile 'com.squareup.okhttp:okhttp:2.4.0'
        compile 'com.squareup.okhttp:okhttp-urlconnection:2.2.0'
        compile 'com.squareup.picasso:picasso:2.4.0'
        /*compile 'com.github.bumptech.glide:glide:3.7.0'*/
    }
查看更多
登录 后发表回答