-2

J'utilise couchbaselite dans Android, je veux utiliser ContentProvider et ContentValues ​​pour insérer des documents dans ma base de données. Une propriété de mes documents est une ArrayList, mais avec les ConentValues ​​je ne peux pas mettre directement une ArrayList. Voici mon code:Mettez ArrayList dans ContentValues ​​

ContentValues valuesTour = new ContentValues(); 
valuesTour.put(DBFields.COLUMN_PROGRESS_PERC,completionPercentage); 
valuesTour.put(DBFields.COLUMN_STEPS, new ArrayList()); //here I need to put an ArrayList 
update(DBFields.CONTENT_URI, valuesTour, 1234, null); 

Y a-t-il une solution pour contourner ce problème?

Merci à l'avance

Répondre

0

Vous ne pouvez pas mettre des tableaux directement dans une base de données. Dans votre code, vous sauvegardez essentiellement l'adresse du tableau qui est inutile. Une solution simple consisterait à convertir le tableau en une chaîne en utilisant votre propre implémentation de toString() ou en utilisant une bibliothèque tierce (c'est-à-dire Gson).