假设您已经获取了联系电话。
步骤1: 您需要从联系人中获取相应的whatsapp联系人ID。
String contactNumber = "Your Contact Number"; // to change with real valueCursor cursor = context.getContentResolver () .query ( ContactsContract.Data.CONTENT_URI, new String [] { ContactsContract.Data._ID }, ContactsContract.RawContacts.ACCOUNT_TYPE + " = 'com.whatsapp' " + "AND " + ContactsContract.Data.MIMETYPE + " = 'vnd.android.cursor.item/vnd.com.whatsapp.video.call' " + "AND " + ContactsContract.CommonDataKinds.Phone.NUMBER + " LIKE '%" + contactNumber + "%'", null, ContactsContract.Contacts.DISPLAY_NAME );if (cursor == null) { // throw an exception}long id = -1;while (cursor.moveTonext()) { id = cursor.getLong (cursor.getColumnIndex (ContactsContract.Data._ID));}if (!cursor.isClosed ()) { cursor.close ();}步骤2: 您使用whatsapp视频意图拨打电话。
Intent intent = new Intent ();intent.setAction (Intent.ACTION_VIEW);intent.setDataAndType (Uri.parse ("content://com.android.contacts/data/" + id), "vnd.android.cursor.item/vnd.com.whatsapp.voip.call");intent.setPackage ("com.whatsapp");startActivity (intent);注意: 显然,查询代码应该在后台线程上。以上只是如何触发whatsapp视频通话的工作总结。
哦,别忘了添加阅读联系人权限
<uses-permission android:name="android.permission.READ_CONTACTS" />
并在运行时将其请求给用户,因为它被归类为“危险”许可。



