pagseguro / pagseguro-sdk-plugpagservicewrapper

Biblioteca para integrar aplicativos Android com o terminal Moderninha Smart.
https://pagseguro.github.io/pagseguro-sdk-plugpagservicewrapper/
30 stars 7 forks source link

Erro ao usar o método doAsyncPayment #10

Closed danieldeassis closed 3 years ago

danieldeassis commented 3 years ago

Olá, tenho trabalhado em um aplicativo de integração, mas até então vinha usando apenas o método doPayment, com sucesso. Observei que o doAsyncPayment poderia ser mais vantajoso, por já tratar os eventos, porém não consigo utilizá-lo. Sempre obtenho o seguinte Log:

E/AndroidRuntime: FATAL EXCEPTION: pool-1-thread-1
    Process: com.example.testepagseguro, PID: 5308
    java.lang.NoClassDefFoundError: Failed resolution of: Lbr/com/uol/pagseguro/plugpagservice/wrapper/asyncplugpag/PlugPagObservables$createPaymentObservable$1;
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagObservables.createPaymentObservable(PlugPagObservables.kt:57)
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagAsyncMethods.doAsyncPayment(PlugPagAsyncMethods.kt:40)
        at br.com.uol.pagseguro.plugpagservice.wrapper.PlugPag.doAsyncPayment(PlugPag.kt:612)
        at com.example.testepagseguro.TestePlugPag2$2.run(TestePlugPag2.java:91)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
        at java.lang.Thread.run(Thread.java:761)
     Caused by: java.lang.ClassNotFoundException: br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagObservables$createPaymentObservable$1
        at java.lang.VMClassLoader.findLoadedClass(Native Method)
        at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:742)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:362)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagObservables.createPaymentObservable(PlugPagObservables.kt:57) 
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagAsyncMethods.doAsyncPayment(PlugPagAsyncMethods.kt:40) 
        at br.com.uol.pagseguro.plugpagservice.wrapper.PlugPag.doAsyncPayment(PlugPag.kt:612) 
        at com.example.testepagseguro.TestePlugPag2$2.run(TestePlugPag2.java:91) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
        at java.lang.Thread.run(Thread.java:761) 
        Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lio/reactivex/ObservableOnSubscribe;
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagObservables.createPaymentObservable(PlugPagObservables.kt:57) 
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagAsyncMethods.doAsyncPayment(PlugPagAsyncMethods.kt:40) 
        at br.com.uol.pagseguro.plugpagservice.wrapper.PlugPag.doAsyncPayment(PlugPag.kt:612) 
        at com.example.testepagseguro.TestePlugPag2$2.run(TestePlugPag2.java:91) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
        at java.lang.Thread.run(Thread.java:761) 
     Caused by: java.lang.ClassNotFoundException: Didn't find class "io.reactivex.ObservableOnSubscribe" on path: DexPathList[[zip file "/data/app/com.example.testepagseguro-2/base.apk"],nativeLibraryDirectories=[/data/app/com.example.testepagseguro-2/lib/arm, /data/resource/lib, /vendor/lib, /system/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagObservables.createPaymentObservable(PlugPagObservables.kt:57) 
        at br.com.uol.pagseguro.plugpagservice.wrapper.asyncplugpag.PlugPagAsyncMethods.doAsyncPayment(PlugPagAsyncMethods.kt:40) 
        at br.com.uol.pagseguro.plugpagservice.wrapper.PlugPag.doAsyncPayment(PlugPag.kt:612) 
        at com.example.testepagseguro.TestePlugPag2$2.run(TestePlugPag2.java:91) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
        at java.lang.Thread.run(Thread.java:761) 

Parece estar relacionado à classe PlugPagObservables$createPaymentObservable$1, mas estou importando as dependências, como na documentação. Também estou executando em uma thread separada da principal, como já vinha fazendo com o doPayment, mas ainda não consegui identificar o problema. Mesmo seguindo exatamente o exemplo de uso da documentação, do método doAsyncPayment, obtenho o mesmo erro.

Vocês poderiam me ajudar a identificar o que pode estar causando isso?

danieldeassis commented 3 years ago

Resolvido com a importação das dependências de módulo:

    implementation 'io.reactivex.rxjava2:rxjava:2.1.16'
    implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'