Différence entre préférence partagée et sqlite
Je sais que ce sujet a été discuté précédemment sur un Débordement de Pile. Mais il y a encore certaines choses qui ne sont pas claires quand j'ai lu les posts précédents à ce sujet. Donc, ici, ils sont:
- Je sais que nous utilisons partagé préférence pour les petits jeux de données et sqlite pour les grands de manipulation de données, de sorte que si nous voulons juste d'enregistrer un nom d'utilisateur et le mot de passe doit-on utiliser les préférences?
- Ne sera pas partagé préférences-être perdu lorsque l'utilisateur désinstalle l'appli? Par exemple, j'ai télécharger une application appelée abc et enregistrer mon nom d'utilisateur et mot de passe. Puis-je désinstaller cette application à partir d'un téléphone et d'essayer d'y accéder à partir d'un autre téléphone à l'aide du même nom d'utilisateur et mot de passe. Cela sera sauvé de l'utilisation partagée des préférences ou les données seront-elles perdues?
- Que sont la principale raison pour laquelle nous utilisons l'un sur l'autre, à côté de grands et de petits ensembles de données?
source d'informationauteur NoviceMe
Vous devez vous connecter pour publier un commentaire.
Vous pouvez penser à la différence entre les préférences partagées et d'une base de données SQLite en termes de taille des données, mais ce n'est pas tout à fait exacte. Une meilleure façon de penser, il est en fonction de la structure des données que vous souhaitez stocker.
Partagé préférences ne peut stocker que de clé-valeur des accords mets tout en une base de données SQLite est beaucoup plus souple. Donc partagé les préférences sont particulièrement utiles pour stocker les préférences de l'utilisateur, par exemple si l'application d'affichage des notifications etc. Alors qu'une base de données SQLite est utile pour à peu près n'importe quoi.
Les deux sources de données sont locales, mais quelque chose que vous devriez être conscient, c'est la possibilité de sauvegarder vos données d'application de stockage en nuage qui est lié à l'utilisateur à son compte Google. Cela le rend beaucoup plus facile pour vos utilisateurs à changer d'appareil et de leurs applications pour faciliter le transfert vers le nouvel appareil. Pour plus d'infos, jetez un oeil ici.
Dans la situation que vous avez décrite sur vous perdrez le nom d'utilisateur et le mot de passe dans les deux situations. Les données sont stockées sur le téléphone, lorsque vous désinstallez l'application, les données que certains avec il sera également perdue. L'utilisateur devra entrer de nouveau ces informations.
Vous pouvez enregistrer le nom d'utilisateur et le passer dans les Préférences partagées ou un DB, qui est de préférence personnelle. Assurez-vous de verrouiller ce soit vers le bas, c'est à dire de ne pas partager la DB ou Partagé Préférences que vous gardez cette information.
Que de la différence... partagé Préférences doivent se tiennent bien... partagé Préférences... voici un exemple:
Si je créer une option pour changer la couleur d'arrière-plan, je stocke toutes les options disponibles dans une base de données qui peut être chargé dans un adaptateur d'affichage pour l'utilisateur de choisir à partir. Mais je vais mettre la couleur qu'ils ont choisi dans les Préférences Partagées. De cette façon, lorsque le chargement de l'application, je peux obtenir l'Partagé valeur de Préférence de la couleur d'arrière-plan doit être utilisé.
SharedPreferences
est utilisé pour cela, stocker les préférences de l'utilisateur de l'application partagée. Vous pouvez l'utiliser, par exemple, pour stocker un nom d'utilisateur, ou peut-être quelques options qu'il ou elle a configuré dans votre application dans laquelle vous souhaitez mémoriser.SQLite est un relationnel base de données. Il est utilisé pour stocker des données de votre application, pas de préférences ou des informations de configuration.
Les deux sont stockés localement sur l'appareil.
1.SharedPreferences les magasins ne Boolean, int, float, long, String cinq sortes de types de données simples, tels que ne peut pas être conditionnelle de la requête. Donc, si SharedPreferences de stockage de données de fonctionnement est simple, il ne peut être qu'un supplément de stockage, mais ne peut pas remplacer complètement les autres données telles que la base de données SQLite est stocké.
2.SharedPreferences basé sur le fichier XML pour stocker les clés de la valeur de la clé utilisée pour stocker les informations de configuration(principalement de préférence de l'utilisateur de votre application).
3.Sharedprefrece comme
cookies
web qui stockent des informations de base à côté client.à la fois de stocker leurs données localement, de sorte que la désinstallation de l'application va supprimer à la fois. autres que que, SharedPreferences est plus facile à programmer, et vous avez raison sur les quantités de données.
En général, partagé préférences doivent être utilisés si vous souhaitez permettre à vos utilisateurs de manipuler directement certains champs de données. Partagé préférences sont essentiellement les préférences de l'utilisateur; si vous souhaitez que l'utilisateur de reconfigurer l'application à se comporter de différentes manières, vous devriez exposer que des fonctionnalités communes, de préférence. D'autre part, la base de données SQLite doit être utilisé si vous souhaitez limiter la visibilité des données de l'application, si vous souhaitez une plus forte garantie que les données d'être persistant, et si vous souhaitez que l'application se comporter de manière indépendante de ce qui est stocké dans la base de données. Bien sûr, vous pouvez utiliser les deux en une seule application.
Partagé des préférences et de la base de données font partie des données locales que les boutiques d'applications. Si vous désinstallez l'application, les deux banques de données seront supprimées.