Open progamer75 opened 2 years ago
Вы пытаетесь подключить SDK к проекту для Android? Насколько мне известно, там используется Java 8, в то время как SDK требует не менее чем 11.
Да, вопрос в том как использовать ваше api в андроид. Первая версия нормально работала, ну не совсем нормально, но работала. Переписал под вторую версию api и получил обломс.
Четверг, 24 марта 2022, 21:13 +03:00 от Vladimir Ivanov @.***>: Вы пытаетесь подключить SDK к проекту для Android? Насколько мне известно, там используется Java 8, в то время как SDK требует не менее чем 11. — Reply to this email directly, view it on GitHub , or unsubscribe . You are receiving this because you authored the thread. Message ID: <Tinkoff/invest-api-java-sdk/issues/14/1077907947 @ github . com>
Владимир Трибунский Отправлено из Почты Mail.ru
Тоже столкнулся с этой проблемой. Попытался обойти ошибку No virtual method getPackageName(), но дальше появляется новая Didn't find class "java.time.Duration". Писать костыль для этого не хочется, так как неизвестно какие ошибки ещё могут появиться. Придется использовать gRPC. А жаль, этот api очень упростил бы разработку. Не планируете адаптировать api для андроид?
Там много чего появляется. grpc-netty-shaded не работает под андроид, надо заменить на grpc-okhttp. Но все равно не работает, пока не могу разобраться. Тинькофф обещали подумать над Android SDK, было бы неплохо.
Удалось таки подправить SDK так чтобы оно работало под Android. Исправлений не много, но разбираться пришлось почти неделю )
Удалось таки подправить SDK так чтобы оно работало под Android. Исправлений не много, но разбираться пришлось почти неделю )
@progamer75 Спасибо. А можете поделиться PR-ом с сообществом?)
вот собственно... https://github.com/progamer75/InvestAPI В InvestApi.java: public static Channel defaultChannel(String token) {... keepAliveTime и keepAliveTimeout поставил от балды 60 сек
При вызове InvestApi.create(...) приложение вылетает с ошибкой: java.lang.NoSuchMethodError: No virtual method getPackageName()Ljava/lang/String; in class Ljava/lang/Class; or its super classes (declaration of 'java.lang.Class' appears in /apex/com.android.runtime/javalib/core-oj.jar)