Portmone / Android-e-Commerce-SDK

GNU General Public License v3.0
3 stars 0 forks source link

SDK info #10

Open Popda opened 11 months ago

Popda commented 11 months ago

Hi, I am trying to update sdk in our project but have few questions:

Also, do you use compose in payment activities? I got a strange crash: when calling payment activity with Activity Result APIs from fragment like this:

val contractParams = CardPaymentContractParams( / paymentParams = / paymentParams.createPaymentParams(), / showReceiptScreen = / true, / returnToDetailsAfterErrorEnabled = / true ) resultLauncher?.launch( / input = / contractParams )

payment activity opens and in a second i am getting crash that looks like possible version conflict for compose dependencies

SDK version: 2.2.0 device: Android studio emulator Pixel 7 Pro API 33

image

E FATAL EXCEPTION: main Process: com.kyivstar.tv.mobile, PID: 4176 java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/compose/foundation/relocation/BringIntoViewRequester$DefaultImpls; at s$c.invokeSuspend(Unknown Source:53) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at androidx.compose.ui.platform.AndroidUiDispatcher.performTrampolineDispatch(AndroidUiDispatcher.android.kt:81) at androidx.compose.ui.platform.AndroidUiDispatcher.access$performTrampolineDispatch(AndroidUiDispatcher.android.kt:41) at androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.run(AndroidUiDispatcher.android.kt:57) at android.os.Handler.handleCallback(Handler.java:942) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:201) at android.os.Looper.loop(Looper.java:288) at android.app.ActivityThread.main(ActivityThread.java:7872) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936) Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@1cd1ae1, androidx.compose.runtime.BroadcastFrameClock@d8b3006, StandaloneCoroutine{Cancelling}@78976c7, AndroidUiDispatcher@ca264f4] Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.compose.foundation.relocation.BringIntoViewRequester$DefaultImpls" on path: DexPathList[[zip file "/data/app/PzHGwttL3k6ZPnOOUjPVjA==/com.kyivstar.tv.mobile-HbY19XOyx9fKo1tDBBEbtg==/base.apk"],nativeLibraryDirectories=[/data/app/PzHGwttL3k6ZPnOOUjPVjA==/com.kyivstar.tv.mobile-HbY19XOyx9fKo1tDBBEbtg==/lib/x86_64, /data/app/~~PzHGwttL3k6ZPnOOUjPVjA==/com.kyivstar.tv.mobile-HbY19XOyx9fKo1tDBBEbtg==/base.apk!/lib/x86_64, /system/lib64, /system_ext/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 14 more

Popda commented 11 months ago

Привіт, оновлюючи сдк у проекті зявилось кілька питань:

-Де можна знайти ченджлог версій і останнью актуальну версію сдк?

Краш виникає при виклику Оплати картою через Метод Activity Result APIs з фрагменту, відкривається актівіті оплати і в наступну секунду краш з логом описаним вище

Popda commented 11 months ago

Looks like accompanist libs might be source of the problem. Can you update dependencies for your sdk?

mika9229 commented 10 months ago

Which version compose do you use?

Popda commented 10 months ago

we use version 1.4.3 version for libs androidx.compose.foundation:foundation: androidx.compose.material:material: androidx.compose.ui:ui: androidx.compose.ui:ui-test-manifest: androidx.compose.ui:ui-tooling

ZaurAmirov commented 10 months ago

in version 2.2.0 used next library versions your versions must match otherwise the library may not work correctly (compose, navigation, animate)

implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.appcompat:appcompat:1.4.1' implementation 'com.google.android.material:material:1.5.0' implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.4.0' implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.0" implementation "androidx.compose.ui:ui:$compose_version" implementation "androidx.compose.material:material:$compose_version" implementation "androidx.compose.ui:ui-tooling-preview:$compose_version" implementation "androidx.lifecycle:lifecycle-viewmodel-compose:2.4.0" implementation "androidx.compose.runtime:runtime-livedata:$compose_version" implementation 'androidx.activity:activity-compose:1.4.0' implementation 'com.google.dagger:dagger:2.40.5' kapt 'com.google.dagger:dagger-compiler:2.40' implementation 'androidx.biometric:biometric-ktx:1.2.0-alpha04' implementation "com.google.accompanist:accompanist-insets:$accompanist_version" implementation "com.google.accompanist:accompanist-systemuicontroller:$accompanist_version" implementation "com.google.accompanist:accompanist-navigation-animation:$accompanist_version" implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.3.2" implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.4' implementation "com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:0.8.0" implementation 'com.google.android.gms:play-services-wallet:19.1.0' implementation "com.mixpanel.android:mixpanel-android:6.0.0"

coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
implementation 'io.card:android-sdk:5.5.1'

    compose_version = '1.1.0-beta04'
    accompanist_version = '0.21.0-beta'
ZaurAmirov commented 10 months ago

Привіт, оновлюючи сдк у проекті зявилось кілька питань:

-Де можна знайти ченджлог версій і останнью актуальну версію сдк?

  • Які залежності викоритовує сдк?
  • Чи зустрічалась вам бага описана вище і чи є у вас пропозиції як це можна пофіксити?

Краш виникає при виклику Оплати картою через Метод Activity Result APIs з фрагменту, відкривається актівіті оплати і в наступну секунду краш з логом описаним вище

Доброго дня. Актуальна версія 2.2.0 и 2.1.0 Відмінність у тому що у останній виправлено декілька несуттєвих UI помилок, а також додано функціонал оплати декількох рахунків одночастно.

Залежності sdk відповів вище, але якби ви уважніще дивилися приклад, там в build.gradle усі залежності продублювані Перш за все версії ваших бібліотек повинні бути такими ж як і в sdk На жаль там версії бібліотек дуже залежать одна від одної

Зараз проводится оновлення бібліотек, і як тільки усі недоліки будуть усунені, буде оновлена sdk.

mika9229 commented 10 months ago

pls check this issue in version 2.2.1

mika9229 commented 10 months ago

we updated to wersion 2.2.2 pls check this issue in this version