Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
gradus
0 / 0 / 0
Регистрация: 30.10.2015
Сообщений: 41
#1

Сохранение данных в приложении - Программирование Android

09.11.2015, 16:20. Просмотров 306. Ответов 5
Метки нет (Все метки)

Через json общаюсь с сервером и при авторизации хочу в приложении сохранять пользовательские данные.
Прочитал про SharedPreferences и вот что хочу сделать отдельный класс
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class storage{
    private SharedPreferences mSettings;
 
    public storage(String Storage_name){
        this.mSettings = getSharedPreferences(Storage_name, MODE_PRIVATE);
    }
 
   public void set(String Key, String Value){
        SharedPreferences.Editor editor = this.mSettings.edit();
        editor.putString(Key, Value);
        editor.apply();
    }
 
    public String get(String Key){
        return this.mSettings.getString(Key,null);
    }
}
Ну понятно что ошибка в связи с отсутствием активити в классе.
Но мне то необходимо обращаться к данным из разных активити.
Как можно это сделать ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.11.2015, 16:20     Сохранение данных в приложении
Посмотрите здесь:

Хранение данных в приложении-справочнике - Программирование Android
Есть задача написать приложение со списком заведений города... Есть текстовой файл с набором данных в виде: Название организации, адрес,...

Хранение учетных данных в приложении - Программирование Android
Как правильно хранить учетные данные (логин/пароль) в приложении, чтобы их не смогли узнать посторонние лица?

База данных в Android приложении - Программирование Android
Такая проблема, у меня есть база в MySQL, а в приложении нужно, чтобы база была в формате Sqlite, никак не получается конвертировать ее,...

Загрузка Xml с сервера и отображение данных в приложении - Программирование Android
У меня такой вопрос: как можно загрузить xml файл в приложение и отобразить его чтобы потом без подключения к интернету можно было увидеть...

Сохранение данных - Программирование Android
Знаю, знаю что тема заезженная вдоль и поперек но всё таки задам вопрос, может поможете. Проблема в том, что в моем приложении...

Сохранение данных - Программирование Android
Беру JSON из интернета и делаю блоки с текстом и картинками. При скачивании данных сохраняю строку в БД. Как быть с картинками?

Сохранение данных из переменной - Программирование Android
Смотрите. У меня есть переменная money. Её значение изменяется. Как сделать с помощью Preferences сохранение данных из переменной? Код...

Сохранение данных в файл - Программирование Android
Здравствуйте. На сколько мне известно, чтобы сохранить данные в файл надо использовать класс SharedPreferences. Чтобы понять как это...

Сохранение в Bundle данных - Программирование Android
Вот когда идет сохранение состояния активити onSaveInstanceState(Bundle outState). Оно сохраняется в обьект Bundle. А где эти данные хранит...

Сохранение введенных пользователем данных - Программирование Android
Ребят прошу вашей помощи, возникла проблема, при записи введенных данных в текстовый файл, блок try{}catch(){} постоянно выдает...

Сохранение фото в базу данных - Программирование Android
Ребят помогите пожалуйста ! Суть такова есть Activity в ней EditText, ImageButton, Button и база данных. Как в ImageButton загонять фото...

Сохранение данных в vcf формате - Программирование Android
Есть прога, должна сохранять контакты в .vcf формате. На телефоне контакты определяет, но в vcf не сохраняет. Подскажите что не так. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1565 / 1307 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
09.11.2015, 16:41     Сохранение данных в приложении #2
gradus, унаследоваться от Application, прописать унаследованный класс в манифесте и использовать его
zoleg
14 / 14 / 1
Регистрация: 10.01.2012
Сообщений: 138
11.11.2015, 00:02     Сохранение данных в приложении #3
Так ить данные из SharedPrefs можно тащить из любой активити.
Java
1
2
3
4
5
6
7
8
9
10
SharedPreferences taxiCouter;
 
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
         taxiCouter = PreferenceManager.getDefaultSharedPreferences(this);
        TetDriverData.lastShownDistceOutOfCity = taxiCouter.getInt("intOutCity", 0) / 100;
        TetDriverData.lastShownPaymentOutOfCity = taxiCouter.getInt("payForOutOfCity", 0) / 100;
        TetDriverData.lastShownDistceInCity = taxiCouter.getInt("intInCity", 0) / 100;
        TetDriverData.lastShownPaymentInCity = taxiCouter.getInt("payForCity", 0) / 100;
gradus
0 / 0 / 0
Регистрация: 30.10.2015
Сообщений: 41
11.11.2015, 09:22  [ТС]     Сохранение данных в приложении #4
На сколько я понял, тогда для каждой активити будут свои данные в SharedPreferences, а не общие для всех.
Да и в любом случае сделать некий tools для хранения данных, без нативщины.
В идеале я бы хотел применить мультилон для хранения данных (где-то прочитал, что в java мультилон не применим). Где в instance конструктор передавать имя файла к примеру, для того что бы каждая информация хранилась в отдельном файле (данные о пользователе, настройки приложения, другие данные с сервера).
SharedPreferences для этого вроде бы подходит, но изначальная привязка к активити это бред (ИМХО), мануала по привязке к application пока не нашел, самому пока тяжело ибо только недавно взялся за разработку на java.
p.s. гребаный перфекционизм )
bako-95
9 / 9 / 4
Регистрация: 27.04.2015
Сообщений: 112
11.11.2015, 09:32     Сохранение данных в приложении #5
gradus, в коде
Java
1
this.mSettings = getSharedPreferences(Storage_name, MODE_PRIVATE);
надпись MODE_PRIVATE как бэ намекает что он приватный, то есть закрытый для других активностей
описание на англ
Кликните здесь для просмотра всего текста
File creation mode: the default mode, where the created file can only be accessed by the calling application (or all applications sharing the same user ID).


Добавлено через 4 минуты
Лично использую MODE_MULTI_PROCESS

Добавлено через 3 минуты
оказывается с появлением Android 6.0 «Marshmallow» MODE_MULTI_PROCESS признали устаревшим
Spelcrawler
525 / 495 / 111
Регистрация: 12.03.2014
Сообщений: 1,647
Завершенные тесты: 1
11.11.2015, 11:44     Сохранение данных в приложении #6
Цитата Сообщение от bako-95 Посмотреть сообщение
то есть закрытый для других активностей
Для других приложений. На активити ограничений нет.
Yandex
Объявления
11.11.2015, 11:44     Сохранение данных в приложении
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru