android - 如何像 WhatsApp 在 Firebase 聊天应用程序中那样从联系人列表中获取我的应用程序的所有用户

标签 android listview firebase firebase-realtime-database

我正在使用 firebase 开发像 WhatsApp 这样的聊天应用程序。一切都很好,但我无法像 WhatsApp 那样从联系人中获取所有使用我的应用程序的用户......我如何从我的联系人列表中获取所有用户到 recyclerView

最佳答案

您可以使用READ_CONTACTS 权限获取联系人列表。

Retrieving a List of Contacts

final ContentResolver cr = getContentResolver();
String[] projection = new String[] {Contacts.DISPLAY_NAME, Phone.NUMBER};
final Cursor c = cr.query(Data.CONTENT_URI, projection, null, null, null);
myCursorAdapter = new SimpleCursorAdapter(this, R.layout.list_item, c, new String[] {Phone.NUMBER}, new int[]{R.id.TVRow}, 0);
myPhoneList.setAdapter(myCursorAdapter);

myPhoneList.setOnItemClickListener(new AdapterView.OnItemClickListener(){
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id){
        c.moveToPosition(position);
        Toast.makeText(getApplicationContext(), c.getString(1), Toast.LENGTH_SHORT).show();
    }
});

Link to solution

然后您需要保证您的用户在注册您的应用程序时设置正确的电话号码。为此,我建议通过短信进行验证

Here it is a post explaining a registration with SMS validation

就在那时你会知道一个用户如何在他的联系人列表中有一个电话号码是你数据库中另一个用户的 friend 。

关于android - 如何像 WhatsApp 在 Firebase 聊天应用程序中那样从联系人列表中获取我的应用程序的所有用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45598056/

相关文章:

android - 合并 PullToRefresh 和 SwipeListView 库时出现了一些错误

c# - 关于用于 Unity 和线程任务的新 Firebase SDK

android - 可穿戴设备上未显示通知操作图标

Android CollapsingToolbarLayout 自定义快照滚动标志

android - 在代码中设置ListView行高

java - ListView 索引和 SearchView

firebase - 如何在 flutter 中使用分页显示 listview.builder 中的原生广告?

firebase - 与恶意用户合作 : In Firebase, 是由客户端进行反规范化吗?

Android 带有阴影的 View 的屏幕截图

android - 如何以编程方式更改壁纸?