Я хотел бы спросить о вызове Activity с аргументами. Я видел много примеров. Но я хотел бы спросить объяснение, почему это так или иначе «нелегко» или «не просто» для создания (вызова) действия с настраиваемыми аргументами.Вызов с помощью настраиваемых аргументов
Я видел много сообщений, таких как this и другие. Люди передают строки, но не пользовательские объекты. Да, они передают пользовательские объекты, реализуя сериализуемые и анализируемые методы, но это не кажется эффективным (я могу ошибаться, потому что не видел его). Для final объявленных классов, это еще больше работы.
Когда мы передаем строку с (имя строки, значение строки) putExtras, почему функция как putExtras (имя String, объект Object) не определен? не будет ли проще передавать какие-либо пользовательские объекты?
И о сложности процесса, объяснение было дано в посте here
beacuse приложения находятся в разных процессах, и имеют отдельные памяти адресных пространств, вы не можете просто послать указатель (ссылку) на блок памяти в вашем процессе и ожидайте, что он будет доступен в другом процессе.
Но, тем не менее, я не мог найти причину, которая удовлетворяет меня или помогает мне понять, чего я не вижу. Хорошо, скажем, приложения находятся в разных процессах, а их пространства памяти разные. Итак, мы копируем данные, которые нужно передать в пространство памяти другого объекта? или, по крайней мере, не должны действия, принадлежащие к одному и тому же приложению (я считаю, что действия в приложении имеют нечто общее, что касается его приложения) имеют общее пространство памяти, чтобы они могли легко делиться или передавать данные?
Я просто пытаюсь разъяснить себе об этом. Я знаю, что Android не следует сравнивать с разработкой Windows, но похоже, что было бы лучше, если бы все было проще. Я знаю, что я что-то пропустил, иначе все будут проще. Но что мешает легче проезжать?
Спасибо.
Я согласен с этим и могу заключить, что Android построен довольно глупо. Чтобы заставить простые объекты быть Сериализуемыми, просто передать его из одной Деятельности в другую, просто ... безумный. Конечно, CommonsWare объясняет, почему, но если бы я работал дизайнером ОС Android, и я бы придумал такую вещь, я бы уволился с работы и снова запретил себе когда-либо кодирование ;-) – Ted