В основном я новичок в разработке для Android, и я использую множество глобальных переменных для обмена данными между функциями в рамках одного и того же действия, взаимодействие внутри действия. В основном это связано с тем, что никто не вызывает onCreate() из действия, поэтому я не могу вернуть элементы пользовательского интерфейса и данные, которые могут быть отредактированы позже в действии.
В дополнение к интерактивному общению я обнаружил, что использую дополнения Intent для небольших данных и внешние классы со статическими переменными для передачи больших данных, строк изображений, когда активность умирает. Я прочитал здесь, что контекст приложения также можно использовать для поддержки глобальных переменных, так что это может быть решением , однако это сохраняет переменную для связи внутри действия даже после того, как оно умирает, что не нужно. Кроме того, некоторые из этих переданных данных могут не требоваться все время для всех действий.
Это кажется плохой практикой, поэтому мои вопросы:
1) Для интерактивного общения постоянно используются дополнительные намерения и статические переменные для передачи данных, хорошо?
2) Для связи внутри действия, что я могу использовать вместо глобальных переменных для передачи данных между различными функциями, которые не вызывают друг друга, но имеют какое-то значение, и значение умирает вместе с действием? Есть ли опасность такого использования глобальных переменных?
Если это слишком самоуверенно или абстрактно, я закрою это.