Как сохранить String [] постоянно?

1

Я пытаюсь сэкономить

public   String [] myRemoteImages = {imageUrl,imageUrl2,imageUrl3,imageUrl4};

Persistantly.

Я хочу сохранить переменные в списке массивов, в постоянное хранилище, чтобы приложение было убито или уничтожено. URL по-прежнему доступен. Но URL будет меняться примерно каждый месяц. Я не хочу продолжать наращивать строки в базе данных с течением времени.

Так что лучший способ сделать это?

EDIT: Что-то вроде...

    @Override
    protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        Log.v("onSavedInstanceState", "Saved inside the bundle");
        SharedPreferences app_preferences = 
                PreferenceManager.getDefaultSharedPreferences(this);
        SharedPreferences.Editor editor = app_preferences.edit();
        editor.putString("URL1", imageUrl);
        editor.putString("URL2", imageUrl2)

    }
  • 0
    Это зависит от того, какую версию API вы используете. Практически вы застряли, используя базу данных SQLite, так как SharedPreference подходит только для примитивов, если только вы не хотите использовать тип CSV в строке.
  • 0
    Что вы имеете в виду, это хорошо только для примитивов?
Показать ещё 1 комментарий
Теги:

3 ответа

4
Лучший ответ

У вас есть ряд вариантов хранения данных, доступных для Android, см. Список опций и обзор здесь, причем самым простым из них является Shared Preferences. Если вы просто собираетесь держать несколько URL-адресов вокруг этого, вероятно, ваш лучший выбор. Очистка зависит от вас, но может быть очень простой с правильной стратегией именования пары ключ/значение.

Например:

"URL1", "google.com"
"URL2", "stackoverflow.com"
...
"URLn", "nthwebsite.com"

где ключи (URLn) останутся неизменными, но веб-страницы будут изменены по мере необходимости.

  • 0
    Не могли бы вы привести пример того, как я могу сохранить строку [] в своем вопросе в общем предпочтении, извлечь из нее информацию и выполнить очистку при изменении URL-адреса?
  • 0
    Есть ли пример использования настроек общего ресурса, которые предоставляют информацию о нем, и его использование?
Показать ещё 7 комментариев
2

Сохраните его в экземпляре SQLite приложения и вручную очистите или перезапишите старые URL-адреса.

  • 0
    Как бы я занялся ручной очисткой? И как приложение узнает, когда URL-адрес изменится и как перезаписать URL-адреса?
1

Или вы можете сохранить его в SharedPreference, если вы не хотите использовать DB

Ещё вопросы

Сообщество Overcoder
Наверх
Меню