лучший способ, у меня есть то же самое, что и у тебя. из API я получу тысячи XML и нужно его хранить в 3 таблицах базы данных. это произойдет, когда я запустите приложение. для лучшей практики я буду делать выборку данных из API и сохранять их в 3 таблицах в Async Task следующим образом:
do in background(){
do your fetching data from remote
store in db.
}