CallPermissionsCallback

Callback interface for receiving VoIP call permission request results.

This callback is invoked on the main thread after the user responds to the READ_PHONE_NUMBERS permission request dialog initiated by PushwooshCallSettings.requestCallPermissions.

Usage Pattern:

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

// Request permissions with callback
PushwooshCallSettings.requestCallPermissions(object : CallPermissionsCallback {
override fun onPermissionResult(
granted: Boolean,
grantedPermissions: List<String>,
deniedPermissions: List<String>
) {
if (granted) {
// All permissions granted
Log.d("App", "VoIP enabled: $grantedPermissions")
initializeVoIPFeatures()
} else {
// Some permissions denied
Log.w("App", "Denied: $deniedPermissions")
showPermissionRationale()
}
}
})
}
}

Lambda Syntax (Kotlin):

PushwooshCallSettings.requestCallPermissions { granted, grantedPerms, deniedPerms ->
when {
granted -> enableVoIPCalls()
deniedPerms.isNotEmpty() -> showPermissionDenied()
}
}

Java Usage:

PushwooshCallSettings.requestCallPermissions(new CallPermissionsCallback() {
@Override
public void onPermissionResult(
boolean granted,
List<String> grantedPermissions,
List<String> deniedPermissions
) {
if (granted) {
Log.d("App", "VoIP ready");
enableVoIPFeatures();
} else {
Log.w("App", "Permission denied: " + deniedPermissions);
}
}
});

See also

Functions

Link copied to clipboard
abstract fun onPermissionResult(granted: Boolean, grantedPermissions: List<String>, deniedPermissions: List<String>)

Called when the permission request is completed.