Сохранение настроек, которые могут быть прочитаны и изменены другим приложением - PullRequest
2 голосов
/ 27 октября 2011

Я создал приложение, которое будет загружать и устанавливать APK из WebService, используя описанную здесь методику:

Установить приложение программно на Android

Во время этой установки,веб-служба отправляет «флаг», указывающий, следует ли удалять базу данных SQLite из обновляемого приложения во время первого запуска.

Есть ли способ установить «Глобальные предпочтения», которыеможет быть прочитан (если установлен флаг true, база данных должна быть удалена) и очищен (после удаления он должен иметь значение false, чтобы избежать удаления базы данных при каждом запуске приложения) во время первого использования обновленного приложения без сохраненияэто на SDCard?

Я знаю, как читать настройки из обновляемого приложения, но я не понимал, как изменить эти настройки из другого приложения.

Большое спасибо.

Ответы [ 2 ]

1 голос
/ 27 октября 2011

SharedPreferences уникальны для каждого приложения / APK - нет способа поделиться ими, о которых я знаю, и нет «глобального» эквивалента.

Если вы хотите поделиться данными, решение, как правило, является своего родаContentProvider, но это зависит от обоих приложений, работающих одновременно.

Если вы хотите передать только токен или состояние, я бы предложил записать файл на SDCARD, возможно, самый простой вариант?

0 голосов
/ 27 октября 2011

Вот учебник о том, как это сделать.

В основном вы должны использовать MODE_WORLD_WRITEABLE для файла prefs.

Чтобы получить контекст для другого пакета, который вы используете createPackageContext()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...