Cette question a une réponse acceptée, mais je pense qu'il y a plus à dire sur le sujet - concernant la vitesse.
Les préférences partagées et la base de données Sqlite d'une application sont toutes deux de simples fichiers, stockés dans les répertoires de l'application sur le système de fichiers du périphérique. Si la quantité de données n'est pas trop importante, l'option Sqlite impliquera un fichier plus grand et plus compliqué avec plus de frais de traitement pour un accès simple.
Donc, si la nature des données ne dicte pas votre choix (comme expliqué dans la réponse acceptée), et que la vitesse compte, alors il est probablement préférable d'utiliser SharedPreferences.
Et la lecture de certaines données est souvent sur le chemin critique de l'affichage de l'activité principale, donc je pense que la vitesse est souvent très importante.
Une dernière réflexion concernant la vitesse et l'efficacité : si vous devez utiliser une base de données Sqlite pour certaines données structurées, il est probablement plus efficace de stocker également les préférences de l'utilisateur dans la base de données afin de ne pas ouvrir un deuxième fichier. Il s'agit d'une considération assez mineure - qui ne vaut probablement la peine d'être prise en compte que si vous devez accéder à la fois aux données structurées et aux préférences avant de pouvoir afficher l'activité principale.