@kotlin_lang

Страница 126 из 982
Максим
16.05.2017
10:24:30
А как это сделать в данном случае?

Максим
16.05.2017
10:25:31
какой метод?)
Ниже же написал

balolam
16.05.2017
10:26:00
Посмотри в оф документации как написать свой делегат. И сделай делегат который создаётся некоторым фабричными методом и кладётся в некоторый лист внутри своего фрагмента/Активити и в onDestroy*** ты можешь чистить делагаты

Google
Михаил
16.05.2017
10:26:32
Ниже же написал
с лейзи делегатом у тебя не получится

надо своего делать

щас кину примерный пример. был похожий кейс

Максим
16.05.2017
10:27:49
какой метод?)
То есть на каждый Realm.getDefaultInstance() нужно вызывать .close. И вот я хочу вызвать .close только если я обращался к property (в случае by lazy инициализировал его)

Михаил
16.05.2017
10:28:43
class RealmInitializer { private val TAG = "RealmInitializer" private var mRealm: Realm? = null operator fun getValue(thisRef: RealmManager, property: KProperty<*>): Realm { fun init() { mRealm = Realm.getDefaultInstance() } when { mRealm == null -> init() mRealm!!.isClosed -> init() } return mRealm!! } }

private val mRealmQueryInstance: Realm by RealmInitializer()

Максим
16.05.2017
10:29:03
Михаил
16.05.2017
10:29:14
это пример как свой делегат сделать. думаю именно этот не подойдет, но суть понятна

Максим
16.05.2017
10:29:49
Всем спасибо! Буду копать в стороны кастомных делегатов

Михаил
16.05.2017
10:30:49
тут получится так, что пока ты его не закрыл тебе вернетя старый реалм инстанс.

Igor
16.05.2017
13:50:24
Народ а что сейчас есть из коррутин для андроид, если не хочется rx тащить?

Google
Руслан
16.05.2017
13:52:00
https://github.com/Kotlin/kotlinx.coroutines/tree/master/ui/kotlinx-coroutines-android

https://kotlin.link/?q=coroutines

Dzmitry
16.05.2017
13:54:08
Ниче нет. Напиши сам и поделись с сообществом ))

? animufag ?
16.05.2017
13:55:51
https://github.com/gildor/kotlin-coroutines-retrofit просто услышал в слаке, сам ничего не знаю

Igor
16.05.2017
13:56:55
https://github.com/Kotlin/kotlinx.coroutines/tree/master/ui/kotlinx-coroutines-android
Лучший, просто 10 из 10, пример использования коррутин на андроид https://github.com/Kotlin/kotlinx.coroutines/blob/master/ui/kotlinx-coroutines-android/example-app/app/src/main/java/com/example/app/MainActivity.kt Спасибо тебе Руслан

? animufag ?
16.05.2017
14:00:59
думаю там очень всё на коленке слеплено (21 коммит и последний 2 месяца назад)

Руслан
16.05.2017
14:01:08
Aliaksei
16.05.2017
14:01:26
Так и знал что подвох где то

Igor
16.05.2017
14:01:35
Руслан
16.05.2017
14:02:45
Жалко нет эмоджи на сарказм ?
ну в котлин линке есть еще async/await

либа для андроида

Sasha
16.05.2017
14:05:18
ну в котлин линке есть еще async/await
линке? что за либа? вроде тока в anko что то есть из этой пьесы.

Igor
16.05.2017
14:06:00
либа для андроида
Да я уже и пару своих написал, это не проблема. Прощупывал пульс на решения "из коробки" (kotlinx тоже считается).

Вообще считаю неправильным полагаться на такие базовые абстракции из third-party библиотек. Они же по всему коду пролезут, попробуй потом мигрировать на что то другое.

Виталий
16.05.2017
17:49:26
https://medium.com/square-corner-blog/generating-kotlin-code-with-kotlinpoet-119dc20f74d4

Из слаки)

Igor
16.05.2017
17:53:29
Михаил
16.05.2017
17:54:21
Иногда может быть пллезно)

Google
Виталий
16.05.2017
17:55:17
И зачем это обычным людям?
Обычные это какие?)

Михаил
16.05.2017
17:55:29
Хотя в котлине и без кдогенерации ништяков хватает

Igor
16.05.2017
17:58:46
Обычные это какие?)
Не авторы dagger/butter knife и тд

Виталий
16.05.2017
18:00:05
Ну и тут нет никого, кто пишет/писал библиотечку с кодогенерацией?) Только "обычные" люди?)

Igor
16.05.2017
19:03:34
Кстати, тут идиоматичный Kotlin подвезли (для тех кто slack не читает) https://habrahabr.ru/company/inforion/blog/328218/

Алексей
17.05.2017
00:16:21
Sasha
17.05.2017
00:52:02
guga
17.05.2017
06:53:13
@HeapyHop что посоветуешь из видосов jetconf глянуть?

Руслан
17.05.2017
09:18:55
По котлину?

Dibro
17.05.2017
09:39:34
привет, какие есть способы получить имена параметров лямбды в рантайме?

Михаил
17.05.2017
09:40:11
:/

Quantum Harmonizer
17.05.2017
09:40:25
привет, какие есть способы получить имена параметров лямбды в рантайме?
Кажется, это задача для аннотации kotlin.ParameterName. Если она сохраняется.

Dibro
17.05.2017
09:40:38
я нашёл экспериментальный метод Function.reflect(), но его первый вызов подгружает иерархию классов на 1.5 секунды

java reflection не даёт мне информацию об опциональности параметров, а она мне тоже нужна

Quantum Harmonizer
17.05.2017
09:42:36
Есть причины, по которым не используется kotlin-reflect?

Dibro
17.05.2017
09:42:56
я нашёл экспериментальный метод Function.reflect(), но его первый вызов подгружает иерархию классов на 1.5 секунды

он как раз оттуда

но там ещё куча левой инфы подгружается

Google
Admin
ERROR: S client not available

Dibro
17.05.2017
09:46:09
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect.jvm/reflect.html

Quantum Harmonizer
17.05.2017
09:49:18
На самом деле, вся специфичная для Котлина информация хранится в аннотации @Metadata, а этот метод, вероятно, как раз её и парсит.

Dibro
17.05.2017
09:51:18
но её парсинг очень долгий из-за подгрузки кучи десериализующих классов

ещё я нашёл библиотечку под джаву, она читает названия параметров из байткода и довольно быстро загружается

Paranamer

но инфы об опциональности нет. ещё я заметил в декомпиле, что у параметров генерятся джетбреиновские аннотации nullable/notnull, но у меня почему-то не получилось найти их в рантайме

Dibro
17.05.2017
09:56:49
да, что-то забыл глянуть

тогда они бесполезны...

?FLERRY?
17.05.2017
17:10:09
Ребята, кто-нибудь работал с апи перископа? Может просто кто поможет: нужно взять поток оттуда и кинуть на свой сайт. Поток взять через апи проблем не составляет, точнее ссылку на него (hls), а вот когда встраиваешь его на сайт - получаешь ошибку. Мол cross-domain запрещен. Через ffmpeg и всякое разное отлично играется. Может есть какой-то вариант обойти этот кросс доменный запрос? Желательно еще и так, что-бы свой сервису грузить не сильно. Как вариант был ffserver, но хотелось бы что-то другое. P. S. Заранее спасибо за помощь :)

Boris
17.05.2017
17:12:29
А апи у него на Котлине?

?FLERRY?
17.05.2017
17:13:17
Воу. Врятли :D

Просто мало ли, здесь есть те, кто работал с ним

А то тема уж очень узкая, а интересная

?FLERRY?
17.05.2017
17:15:02
Я в курсе :)

Вопрос в том, как это обойти

Возможно не нативно через браузер, а куда то запихать поток, а потом отдать на страницу

balolam
17.05.2017
17:15:54
Вопрос в том, как это обойти
А вот как бы никак, иначе бы разные злые программисты стырили бы твои куки

Google
?FLERRY?
17.05.2017
17:17:01
Дак просто проксируй через свой сервер
Получается фулл трафик через сервер будет скакать. Ладно, спасибо. Гляну.

balolam
17.05.2017
17:18:06
Получается фулл трафик через сервер будет скакать. Ладно, спасибо. Гляну.
Ну или апи перископа должно это позволять (как ты выяснил - не позволяет)

?FLERRY?
17.05.2017
17:19:23
Не, оно то вообще не публичное

Я его скомуниздил

Но ссылку оно отдает

И легко играется всем, кроме плеера сайта

Страница 126 из 982