Кое е по-бързо; Споделено предпочитание или Sqlite база данни

Това изглежда често срещан въпрос, но не мога да намеря директен отговор.

Получавам JSONObject от сървъра, всяка дейност трябва да получи достъп до него и да получи някои данни от него, това е причината да съм по-загрижен за производителността тук.

Това е което правя. Следващата операция се изпълнява за всяка дейност.

DatabaseHandler db = new DatabaseHandler(context);
dataObject = db.getAllData();
jsonObject = new JSONObject(dataObject );
value = jsonObject.optString(key);

Данните са доста ясни, просто JsonObject, мога също да поставя това в sharedPreference, но преди да премина към sharedPreference, искам да съм сигурен, че sharedPreference са по-бързи от sqlite database или преминаването към sharedPreference може да ми даде подобрение на производителността.


person dev90    schedule 06.01.2018    source източник
comment
Да, мисля, че това ще ви даде по-добра производителност и асинхронна обработка на записването на данни с .apply() вместо .commit() единственото предимство, което виждам, е количеството данни, които съхранявате в sharedPreferences   -  person Reda    schedule 06.01.2018


Отговори (1)


Ако данните ви са малко и въвеждате само текст, със сигурност променливата е най-добрият вариант

В противен случай, ако вашите данни са големи и са много и различни, трябва да използвате мощни бази данни на Android като: MySqlite, Realm, ...

person Majid ahmadi    schedule 06.01.2018