Les données utilisateur de l'application Android ont été enregistrées dans une table Backendless. Je veux récupérer les données utilisateur de la table.Backendless Android: comment récupérer des données utilisateur spécifiques à partir d'une table?
J'ai essayé de chercher avec 'where clause', mais je ne sais pas comment afficher les données trouvées. https://backendless.com/docs/android/doc.html#data_search_with_where_clause
Le code suivant avait une erreur de serveur Backendless 1023.
void onFindContact() {
IDataStore<Map> contactStorage = Backendless.Data.of("Contact");
DataQueryBuilder queryBuilder = DataQueryBuilder.create();
// set where clause
queryBuilder.setWhereClause("age is not null");
// set related columns
queryBuilder.setRelated("address", "phoneNumber");
// request sorting
//queryBuilder.setSortBy("name");
//set offset and page size
//queryBuilder.setPageSize(20);
//queryBuilder.setOffset(40);
contactStorage.find(queryBuilder, new AsyncCallback<List<Map>>() {
@Override
public void handleResponse(List<Map> contactObjects) {
Log.i("MYAPP", "Retrieved " + contactObjects.size() + " objects");
Toast.makeText(FindContactActivity.this, "Retrieved " + contactObjects.size() + " objects from Backendless table", Toast.LENGTH_LONG).show();
BackendlessUser user = Backendless.UserService.CurrentUser();
if (user != null) {
// get user's phone number (i.e. custom property)
String phoneNumber = (String) user.getProperty("phoneNumber");
Toast.makeText(FindContactActivity.this, String.format("phone number: %s", phoneNumber), Toast.LENGTH_LONG).show();
// get user's age (i.e. custom property)
String age = (String) user.getProperty("age");
Toast.makeText(FindContactActivity.this, String.format("age: %s", age), Toast.LENGTH_LONG).show();
// get user's address (i.e. custom property)
String adress = (String) user.getProperty("address");
Toast.makeText(FindContactActivity.this, String.format("address: %s", adress), Toast.LENGTH_LONG).show();
}
}
@Override
public void handleFault(BackendlessFault fault)
{
Log.e("MYAPP", "Server reported an error " + fault.getCode());//compile error at 'getMessage'
Toast.makeText(FindContactActivity.this,"Backendless Server reported an error "+ fault.getCode(), Toast.LENGTH_LONG).show();
}
});
//</Map> //compile error at '</map>'
/**** from https://backendless.com/docs/android/doc.html#data_search_with_where_clause
* Find all contacts where the value of the "age" property equals 47:
*
String whereClause = "age = 47";
DataQueryBuilder queryBuilder = DataQueryBuilder.create();
queryBuilder.setWhereClause(whereClause);
Backendless.Data.of("Contact").find(queryBuilder, new AsyncCallback<List<Map>>(){
@Override
public void handleResponse(List<Map> foundContacts)
{
// every loaded object from the "Contact" table is now an individual java.util.Map
}
@Override
public void handleFault(BackendlessFault fault)
{
// an error has occurred, the error code can be retrieved with fault.getCode()
}
});
*/
}
}
Pouvez-vous fournir un exemple de code de ce que vous avez-vous essayé jusqu'ici? – Submersed
o & lien vers une documentation de ce dont vous parlez – Blundell
J'ai essayé d'utiliser des exemples de clause where à l'adresse https://backendless.com/docs/android/doc.html#data_search_with_where_clause – bryonss