SharedPreferences против БД против JSON - PullRequest
0 голосов
/ 03 ноября 2011

У меня есть набор параметров, которыми я хотел бы поделиться между процессами в моем приложении. Однако Android не поддерживает это в настоящее время. Я читал, что вы можете использовать синхронизированный, но я не могу найти примеры этого. Так что бы лучше всего обойти это? Может быть, есть способ, о котором я не знаю. Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 03 ноября 2011

Посмотрите на этот пост:

Когда мне следует использовать разные типы сообщений Android?

Я обычно использовал Интенты для некоторых основных коммуникаций. Если вы передаете большие объемы данных, используйте файловую систему или сокеты.

Надеюсь, это поможет.

0 голосов
/ 03 ноября 2011

Вы уверены, что запускаете отдельные процессы? Отдельные процессы выполняются в отдельных JVM и должны быть специально настроены для этого: см. Процессы и потоки .

Поскольку процессы выполняются в отдельных JVM, вы не можете просто обмениваться данными через общие объекты Java (и синхронизировать доступ с synchronized). Это можно сделать только при запуске нескольких потоков, работающих в одной и той же JVM.

Вы можете обмениваться данными между процессами с Межпроцессное взаимодействие .

Конечно, вы также можете обмениваться данными через Shared Preferences или файл, но это не уведомляет другой процесс о новых данных, поэтому вы вряд ли сможете назвать это «общением». Также у этого подхода есть проблемы с синхронизацией (чтение и запись одновременно.)

...