Android отключить видеовызов WhatsApp от приложения - PullRequest
0 голосов
/ 22 апреля 2020

Я инициировал WhatsApp видеовызов из моего приложения Android, как показано здесь .

String contactNumber = "Your Contact Number"; // to change with real value

Cursor 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 ();
}


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 и начнется видеовызов. Теперь пользователь возвращается в мое приложение, чтобы продолжить рабочий процесс, пока видеовызов продолжается в качестве наложения на экран. Через некоторое время я хочу, чтобы пользователь мог отключить вызов WhatsApp от моего приложения.

Могу ли я также программно отключить видеовызов от моего приложения? В противном случае вызов продолжает выполняться в фоновом режиме.

...