Я думаю, что в этом примере мы можем избавиться от
private val coroutineContext: CoroutineContext
get() = parentJob + Dispatchers.Main
и просто написать
private val scope = CoroutineScope(parentJob + Dispatchers.Main)
, поэтому код результата будет выглядеть так:
class WordViewModel(application: Application) : AndroidViewModel(application) {
private var parentJob = Job()
private val scope = CoroutineScope(parentJob + Dispatchers.Main)
// ...
}
[116 ] Я полагаю, что в данном случае писать геттер - дело стиля. Ничего не изменится, если мы удалим это.
Вы видели, как другие подобные системы контроля работают? Например, контроль PayPal на eBay? Они берут Вас канавка процесс контроля "полный экран" и назад на исходный сайт, когда транзакция является завершенной.
Да, iframe был бы безопасен, но Вы корректны, что клиент на самом деле не смог бы сказать, что это безопасно. С другой стороны, большинство пользователей не может сказать, безопасна ли страница так или иначе - несколько изображений замков, рассеянных вокруг, убедят большинство в них.
Могли Вы, когда они нажимают к всплывающему контроль, отправьте их в тот же URL под HTTPS, затем высовывают его (Вам был бы нужен Ваш собственный сертификат SSL, конечно)?