相关疑难解决方法(0)

如何从Android获取whatsapp联系人?

我试图通过电话获得whatsapp联系,我得到whatsapp联系的总数,但是从RawContacts如何获得whatsapp我不知道的号码和名称.我试图找到解决方案,但无法得到确切的解决方案.请帮我.

我把我的代码放在下面.

ContentResolver cr = context.getContentResolver();

Cursor c = cr.query(
                        ContactsContract.RawContacts.CONTENT_URI,
                        new String[] { ContactsContract.RawContacts.CONTACT_ID, ContactsContract.RawContacts.DISPLAY_NAME_PRIMARY },
                        ContactsContract.RawContacts.ACCOUNT_TYPE + "= ?",
                        new String[] { "com.whatsapp" },
                        null);

                ArrayList<String> myWhatsappContacts = new ArrayList<>();

                String projection[] = { ContactsContract.CommonDataKinds.Phone.NUMBER };

                if(c != null) {
                    if (c.getCount() > 0) {
                        while (c.moveToNext()) {

                            String whatsappContactId = c.getString(c.getColumnIndex(ContactsContract.RawContacts.Data._ID));

                            Cursor dataCursor = cr.query(
                                    ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
                                    projection,
                                    ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
                                    new String[]{whatsappContactId}, null);
                            // You can also read RawContacts.CONTACT_ID to read the
                            // …
Run Code Online (Sandbox Code Playgroud)

android contacts android-contentresolver android-contacts whatsapp

17
推荐指数
1
解决办法
9712
查看次数

Android - 新数据记录被添加到错误的联系人

我正在尝试将数据记录添加到已存在的联系人中,我使用电话查找找到该联系人,我将联系_id字段,并添加一个新数据,并将raw_contact_id设置为_id字段.在一些联系人它只是不起作用,它将数据与不同的联系人匹配.(我认为它与存储在SIM卡上的联系人有关)

请指教,也许你有不同的方式来添加数据

代码示例:

LinkedList<Long> lcv = new LinkedList<Long>();
    ContentResolver cr = getContentResolver();
    Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber));
    Cursor c = cr.query(uri, null, null, null, null);
    try {
        while (c.moveToNext()) {
            Uri lookupUri = Uri.withAppendedPath(Contacts.CONTENT_LOOKUP_URI,
                    c.getString(c.getColumnIndex(PhoneLookup.LOOKUP_KEY)));
            Cursor c2 = getContentResolver().query(lookupUri, new String[] { Contacts._ID, Contacts.DISPLAY_NAME },
                    null, null, null);
            try {
                if (c2.moveToNext()) {
                    Log.i(TAG, "found: " + c2.getLong(c2.getColumnIndex(Contacts._ID)) + ", " + c2.getString(c2.getColumnIndex(Contacts.DISPLAY_NAME)));
                    lcv.add(c2.getLong(c2.getColumnIndex(Contacts._ID)));
                } else {
                    Log.e(TAG, "failed to lookup");
                }
            } finally {
                c2.close();
            }
        }
    } finally …
Run Code Online (Sandbox Code Playgroud)

android contacts

9
推荐指数
1
解决办法
5780
查看次数

如何在各种流行的聊天/社交网络应用程序中打开特定的联系人聊天屏幕?

背景

我发现,有开在WhatsApp的特定联系人的对话屏幕,这是一种在这里.

不仅如此,我发现一款名为" Drupe " 的应用程序也是如此,甚至更多:

https://lh3.googleusercontent.com/EQrs1jplMlP8SkOTdpqT4NzmgzGa5Wz2qageG1Pkjc6rKg0HBb-rwlOVW07_G7bAWgo=h900

问题

我找不到任何以这种方式打开它的官方API,所以我不确定它有多安全.

我找到了SDK,但没有意图说明.

问题

我想更多地了解各种社交网络和聊天应用程序的可用内容:

  • WhatsApp的
  • Facebook Messenger
  • Viber的
  • 线
  • 电报
  • 视频群聊

可能的功能可能是:

  • 当输入是他的电话号码时,打开联系人的对话
  • 有一个新文本准备好在新屏幕上发送
  • 对于Facebook,也许还能够使用该人的Facebook-ID(这意味着这是输入)而不是电话号码打开.

这些功能是否适用于每个社交网络和聊天应用?

android facebook viber whatsapp telegram

5
推荐指数
1
解决办法
7808
查看次数