通过 Parse 在我的 Android 应用中检索与我的电话联系人列表匹配的用户列表 [英] Retrieving list of users in my Android App through Parse that match my Phone Contact List
问题描述
我正在使用 Parse 开发一个 Android 聊天消息应用程序,在我成功完成的注册过程中,我正在保存用户的电话号码、用户名和密码.现在,我想获取已保存在电话联系人列表下与其电话号码匹配的用户列表,并在列表视图中显示用户.我被困在编写 Parse 查询并在列表视图中显示获取的用户.
I am developing a Android Chat Messaging App Using Parse where I am saving user's phone number, username and password during the sign up process that I have completed successfully. Now I want to fetch the list of users already saved under the Phone Contact list matching their phone numbers and display the users in a list view. I am stuck of writing the Parse query and showing the fetched users in a list view.
我正在尝试使用以下代码,但仍然一无所知.
I am trying to play around the following code, but clueless yet.
ParseUser user1 = ParseUser.getCurrentUser();
ParseQuery<ParseUser> parseQuery = user1.getQuery();
parseQuery.whereEqualTo("PhoneNumber", some_ph_no_from_my_contact);
parseQuery.findInBackground(new FindCallback<ParseUser>() {
@Override
public void done(List<ParseUser> numberList, ParseException e) {
// TODO Auto-generated method stub
if(e == null){
for (int i = 0; i < numberList.size(); i++)
{
// What to do here?
}
}
else{
Log.d("userId", "Error: " + e.getMessage());
}
}
});
请帮忙.
推荐答案
您可以使用 OR
查询:
public void getFriends(List<String> numbers) {
List<ParseQuery<ParseUser>> queries = new ArrayList<ParseQuery<ParseUser>>();
for (String number : numbers) {
ParseQuery<ParseUser> parseQuery = ParseUser.getQuery();
parseQuery.whereEqualTo("PhoneNumber", number);
queries.add(parseQuery);
}
ParseQuery<ParseUser> userQuery = ParseQuery.or(queries);
userQuery.findInBackground(new FindCallback<ParseUser>() {
@Override
public void done(List<ParseUser> numberList, ParseException e) {
if (e == null) {
for (int i = 0; i < numberList.size(); i++) {
// What to do here?
//Use this list of ParseUser (numberList) in an ArrayAdapter
//or save it in a database
}
}
}
});
}
List
将是用户地址簿中的电话号码列表.
List<String> numbers
would be the list of phone numbers from the user's addressbook.
一旦你有了 List
只需将它提供给 ArrayAdapter
或将它保存在本地数据库中,你的选择(我会选择数据库).
Once you have the List<ParseUser>
just feed it to an ArrayAdapter<ParseUser>
or save it in a local database, your choise (I'd go with the database).
这篇关于通过 Parse 在我的 Android 应用中检索与我的电话联系人列表匹配的用户列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!