Я хочу написать приложение для Android, которое в основном отображает названия песен в виде списка, и, выбрав одну песню в списке, тексты этих песен показаны в текстовом виде. На втором этапе может появиться перевод текстов для каждой песни.
Пока что ничего сложного, но поскольку я совершенно не знаком с программированием на Android, мне интересно, какой лучший способ хранить данные (т.е. Названия песен/тексты песен). Я думал о одном (xml?) -file для каждой песни, где имя файла - это название, а файл содержит лирику. Я думаю, что это облегчит добавление новых песен. где будут храниться такие файлы? /RES/XML?
Или другой подход будет более подходящим? хранилище базы данных? поставщик услуг?
Я бы использовал базу данных и поставщика контента, так как становится очень тривиально связывать содержимое с ListViews с помощью API Loader.
Согласно документации о хранилище данных у вас есть несколько вариантов.
Но стратегия хранения, которая, как представляется, соответствует вашим потребностям, - это база данных SQLite.
Вы можете использовать SQLiteOpenHelper и ContentProvider, чтобы заставить его работать.
Для его реализации потребуется довольно много работы и понимания, но это стоит усилий:
Если бы я был вами, я бы избегал:
SharedPreferences, потому что это не подходит для списка данных, так как нет никакого "механизма id". С другой стороны, это довольно легко использовать для небольших настроек.
Внутреннее хранилище, поскольку с ним трудно манипулировать данными после его хранения. Также не рекомендуется хранить этот тип данных.