в Activity выполняется viewChange, и полученное намерение также не равно нулю.Проблема в том, что сообщения об ошибках не отображаются.Также нет закономерностей, по которым возникает ошибка.Иногда просмотр изображения выполняется правильно, но в большинстве случаев это не так, что приводит к черному экрану.Конечно, я бы предпочел устранить проблему, но если есть способ проверить, не обнулен ли теперь экран, и повторите попытку пуска, которая также была бы приемлемым решением на данный момент.
Только функция InteractionManager.handleIntentсоздает и возвращает намерение, я отладил через него, все работает, как ожидалось.(это просто утверждение когда)
/**
* Update function that handles timer & content changes
* @param observable Observable that raised the call
* @param property property that is given by the observable
* */
override fun update(observable: Observable?, property: Any?) {
runOnUiThread {
if (property is ViewEvent) {
Log.d(TAG, "Received Event: $property")
if (checkForChange(property)) {
Log.d(TAG, "OK, checked for view change")
InteractionManager.deleteObserver(this)
Log.d(TAG, "OK, view dispached from Observer...")
val it = InteractionManager.handleIntent(property, this)
if(it==null)
Log.e(TAG,"!!!ERROR ERROR INTENT IS NULL!!!")
startActivity(it.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))
Log.d(TAG, "OK, view change done")
} else {/*SHOW ALERT WINDOW*/
}
} else if (property is Message) {
synchronized(isCreated) {
Log.d(TAG, "Gathering message: $property")
if (isCreated) {
Log.d(TAG, "Caling display function from update")
processDisplayContent(property)
} else {
Log.d(TAG, "(update) display not created yet")
}
}
}
}
}