We have received a policy notice from playStore as:
Your app manifest requests the Call Log permission group (e.g. READ_CALL_LOG, WRITE_CALL_LOG, PROCESS_OUTGOING_CALLS)
It must be actively registered as the default Phone or Assistant handler on the device.
I am not able to understand what Assistant handler on the device. Any inputs or suggestions are most welcome.
what are the minimum requirements by the android application to fullfil the requirement.
Check the documentation at: https://developer.android.com/reference/android/telecom/TelecomManager#ACTION_CHANGE_DEFAULT_DIALER
Sample code:
Intent intent = new Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER);
intent.putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, getActivity().getPackageName());
startActivity(intent);
You can't make it the default programmatically. The entire point is the user gets to choose the default, so they can choose what app gets their texts and calls. You may be able to do it with root, but nothing else.
By the way if your application is not a phone handler, but you still need them for functionality to work, you can try getting a waiver (see the last paragraph in the article): https://support.google.com/googleplay/android-developer/answer/9047303?hl=en so your app won't be a phone handler but still will be able to get those permissions.
来源:https://stackoverflow.com/questions/52707938/how-to-make-an-application-default-phone-or-assistant-handler-on-the-device-by-g