
Max
07.03.2017
11:21:14

Igor
07.03.2017
11:27:30

Max
07.03.2017
11:27:55
нет, там для прогуарда же есть специальная аннотация
нахера костыли делать

Google

Igor
07.03.2017
11:29:16

Max
07.03.2017
11:29:35
есть android.support.annotation.Keep в андроиде
и если конфиг прогуарда настроен правильно в градле
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'project_custom_file.pro'
то все заведется как надо.
proguard-android-optimize.txt - этот файл автоматом должен подтянуться, он идет с android sdk
просто иплементить serializable, чтобы прогуард не трогал - это жесть

Igor
07.03.2017
11:32:34

Max
07.03.2017
11:33:41
ну вот аннотацию накинь тогда лучше, кастомную, выглядеть хотя бы лучше будет, а то не помнятно, нахрена у тебя синглтон имплементит serializable
почему весь? если тебе надо сохранить какой-то пакет, то юзай пакет в прогуарде

Igor
07.03.2017
11:34:29

Max
07.03.2017
11:34:43
а object - это не синглтон в котлине что ли?
а, там речь шла про data, сорян

Igor
07.03.2017
11:35:14

Quantum Harmonizer
07.03.2017
11:35:49
Ну, обвешать @Keep определённо лучше, чем Serializable.

Igor
07.03.2017
11:35:56

Google

Igor
07.03.2017
11:36:15
Serializable тоже не требует ничего имплеменить

Max
07.03.2017
11:36:21
тем, что аннотация явно говорит нахрена она тут нужна

Quantum Harmonizer
07.03.2017
11:37:54
Чем?
Тем, что @Keep чётко показывает, что класс не будет выпилен, а Serializable, во-первых, намекает на сохранение сохранение класса лишь косвенно, и, во-вторых, втаскивает функциональность, которая может быть не нужна.

Igor
07.03.2017
11:38:31

Max
07.03.2017
11:39:08
между активитей не надо классы гонять

Quantum Harmonizer
07.03.2017
11:39:20

Igor
07.03.2017
11:39:30

Quantum Harmonizer
07.03.2017
11:39:41

Sergey
07.03.2017
11:39:59

Igor
07.03.2017
11:40:02
хм...
А пруф что Гонять Serializable в Android между активитями не нужно.?

Sergey
07.03.2017
11:40:20

Quantum Harmonizer
07.03.2017
11:40:50

Igor
07.03.2017
11:40:59
размер IPC Binder’a мал
Ну мы же говорим про простые объекты с парой-тройкой полей.
Где то я видел примеры как в гугл Bitmap гоняли между активитей.

Max
07.03.2017
11:41:12
ой, да че они только не делали

Quantum Harmonizer
07.03.2017
11:41:13

Sergey
07.03.2017
11:41:15

Max
07.03.2017
11:41:22
parcelable тоже не надо гонять

Quantum Harmonizer
07.03.2017
11:41:31

Igor
07.03.2017
11:41:54

Google

Max
07.03.2017
11:42:04
ну объекты с 1-2 полем еще можно простить, но лучше id в бд и на новой активити из бд дергать

Quantum Harmonizer
07.03.2017
11:42:23

Igor
07.03.2017
11:42:34

Quantum Harmonizer
07.03.2017
11:42:55

Sergey
07.03.2017
11:43:07

Igor
07.03.2017
11:43:08

Sergey
07.03.2017
11:43:09
#1

Igor
07.03.2017
11:43:15
Можно ссылку

Sergey
07.03.2017
11:43:24
Можно ссылку
https://realm.io/news/romain-guy-chet-haase-developing-for-android/
Chet Haase

Max
07.03.2017
11:43:45
чет отошли от темы
в общем я бы не стал делать serializeble только ради сохранения прогуардом

Max
07.03.2017
11:44:18
а дальше дело автора :)

Igor
07.03.2017
11:44:56
#1
Там еще много крутых советов которым никто не следует.
В общем всегда надо искать компромисы.

Sergey
07.03.2017
11:45:23

Quantum Harmonizer
07.03.2017
11:46:12

Sergey
07.03.2017
11:46:16

Igor
07.03.2017
11:47:14

Sergey
07.03.2017
11:47:32

Igor
07.03.2017
11:48:01
Да я уже привык (правда за столько лет уже тошнит от это "архитектуры")

Google

Quantum Harmonizer
07.03.2017
11:48:26

Igor
07.03.2017
11:53:28

Slava
07.03.2017
12:40:43
Ребят, а я пользуюсь Gson'ом для сериализации/десериализации каких-то моделей и передачи их в качестве аргумента в интент или фрагмент. На сколько это хуже, чем парсел?

Quantum Harmonizer
07.03.2017
12:51:10

Slava
07.03.2017
12:52:35

Quantum Harmonizer
07.03.2017
12:52:57

Slava
07.03.2017
12:53:20
гуд, спасибо

Admin
ERROR: S client not available

Roman
08.03.2017
08:54:45
есть ли какой-то способ сделать чтобы объявленный в котлине метод был с точки зрения Java статическим и при этом не было дополнительного внутреннего индентификатора для доступа к нему? т.е. SomeClass.staticMethod() вместо SomeClass.INSTANCE.someMethod()

balolam
08.03.2017
08:58:06
@JvmStatic

Руслан
08.03.2017
08:58:16
class Some {
companion object {
@JvmStatic fun test() {
}
}
}

Roman
08.03.2017
09:00:57
спасибо!
а тоже самое для внутреннего статического класса существует?
@JvmStatic можно только к методу применить

Руслан
08.03.2017
09:02:49
А зачем внутренний именно? Можно просто сделать класс

Roman
08.03.2017
09:06:40
А зачем внутренний именно? Можно просто сделать класс
допустим есть класс на Java SomeClass в нем есть внутренний статический SomeStaticClass. И Есть код на Java которые использует SomeClass.SomeStaticClass. Теперь при конвертации SomeClass на котлин ломается весь код который использовал SomeStaticClass. А это как-то не очень. В моем случае это внутри проекта, могу поправить, но в общем случае может же стать проблемой

Руслан
08.03.2017
09:25:41
Ну так это просто
class SomeClass {
class SomeStaticClass {

Roman
08.03.2017
09:31:39

Ruslan
08.03.2017
20:34:32
Привет, кто-то уже юзает корутины ?
А то я вроде включил а они не пашут

Google

Igor
08.03.2017
20:34:53

Ruslan
08.03.2017
20:36:42

Igor
08.03.2017
20:37:44

Ruslan
08.03.2017
20:38:04
а, понял, сейчас погуглю

Igor
08.03.2017
20:39:56

Ruslan
08.03.2017
20:40:21

Igor
08.03.2017
20:42:09
пока ничего, я нуб еще
Выбираешь любой из https://github.com/Kotlin/kotlinx.coroutines
Я к примеру написал свои для CompletableFuture из https://github.com/streamsupport/streamsupport (по шаблону из kotlinx.coroutines)

Sergey
08.03.2017
20:42:29
корутинки уже активно юзаете в проде?

Igor
08.03.2017
20:47:07

Руслан
08.03.2017
20:48:13

Igor
08.03.2017
20:51:19

Руслан
08.03.2017
20:52:08
Я вот после релиза сел посмотреть, и мне показалось все даже проще и логичнее чем было в первой реализации
Ну и гибче при этом стало

Igor
08.03.2017
20:54:11

Руслан
08.03.2017
20:56:43

Igor
08.03.2017
20:58:50
Ну я скорее про писать
Ну хз, как по мне стало менее тривильно.
Сейчас не могу разобраться с CoroutineContext - какой юзать если я хочу синхронно выполнение (там больше 20 реализаций)?
EmptyCoroutineContext - это заглушка или дефолтная реализация?