В моей службе я добавляю представление WindowManager
с addView()
. Когда я готов скрыть представление, я вызываю removeView()
с помощью ссылки View
. Это отлично работает - большую часть времени.
У меня есть случайные отчеты Force Close, которые говорят, что View не привязан к WindowManager
. Это имеет смысл. Проблема в том, что я думаю, что услуга убивается Android, и когда пришло время скрывать представление, она пытается удалить View с неправильным View
.
Я попытался проверить, что представление имеет значение NULL, но, по-видимому, это не так, это просто не тот, который привязан к WindowManager
. Похоже, что если ссылка View потеряна, нет возможности снова получить к ней доступ.
Как я могу получить эквивалент findViewById()
самого WindowManager
? Является ли View
автоматически удаляться из WindowManager
, если моя служба остановлена (убита)? Есть ли способ сохранить ссылку на View
, чтобы, если служба остановлена, я все еще могу удалить View
позже (я также пытаюсь избежать утечки View
)?