Home » Android » android – Why I getting "SMS and CALL_LOG permissions warning"

android – Why I getting "SMS and CALL_LOG permissions warning"

Posted by: admin May 14, 2020 Leave a comment


I have so many permission in my app but I dont have any call_log permission but Im getting this warning from play console . Is this common warning or this permissions below have hidden call_log permission.

enter image description here

 <uses-permission android:name="android.permission.INTERNET" />
        <uses-permission android:name="android.permission.WAKE_LOCK" />
        <uses-permission android:name="android.permission.CALL_PHONE" />
        <uses-permission android:name="android.permission.READ_PHONE_STATE" />
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <uses-permission android:name="android.permission.READ_CONTACTS" />
        <uses-permission android:name="android.permission.WRITE_CONTACTS" />
        <uses-permission android:name="android.permission.BLUETOOTH" />
        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
        <uses-permission android:name="android.permission.CAMERA" />
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
        <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
        <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
        <uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
        <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
        <uses-permission android:name="android.permission.GET_ACCOUNTS" />
        <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
        <uses-permission android:name="android.permission.VIBRATE" />
        <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
        <uses-permission android:name="android.permission.RECORD_AUDIO" />

        <uses-permission android:name="android.permission.WRITE_SETTINGS"
            tools:ignore="ProtectedPermissions" />
        <uses-permission android:name="android.permission.READ_SYNC_STATS" />
        <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
        <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
        <uses-permission android:name="android.permission.BROADCAST_STICKY" />
        <uses-permission android:name="android.permission.READ_LOGS"
            tools:ignore="ProtectedPermissions" />
        <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
        <uses-permission android:name="android.permission.READ_PROFILE" />
        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.SEND_SMS" />
How to&Answers:

You have

uses-permission android:name="android.permission.SEND_SMS"

which comes under sms

Google Play may provide a temporary exception to apps that aren’t Default SMS, Phone, or Assistant handlers when:

  1. Use of the permission provides core app functionality to users

  2. There is currently no alternative method to provide the core functionality

you must fill this form and google must approve it

enter image description here

you can find more info here


For any one who is still getting this error after removing the permissions . Try deleting all previous APK from your account (from alpha,beta, internal testing if any)


Please see the following instructions to submit the declaration form:

A1. Go to the Console > App release > Click ‘Create a release’ > Upload a new APK that you want to release
A2. Retain the current version of APK
A3. Click ‘Add from library’ > Upload all active APKs to cover all permissions across the tracks in your app

You can find active APK in Release management > Artifact library

A4. Fill out the Permissions Declaration Form for extension
‘Compliance status’ > check “No, this release does not meet the SMS and Call log”
‘Declarations’ > check all
A5. Click “Save” at the bottom of the page

After that, please stay on the same page and follow the next steps:

B1. Deactivate and remove ONLY the old APKs which you do not want to release.
B2. Click “Save” again then select “Review”
B3. Then, you’ll be able to release a new version of APK by clicking “Start Roll Out” button.

After finished all the steps, if your APK does NOT have sensitive or high-risk permissions anymore, please skip the steps below(C1~4) and no additional action is required. However, if you uploaded the new APK with sensitive or high-risk permissions, please note that your app will be removed after Mar 9, 2019.

If your new APK has sensitive or high-risk permissions & you want to utilize the permission after Mar 9, you need to finish the additional step to submit the declaration form to enable further review.

C1. After the new APK release(Step B1~3), please go to the Console > App release > Click ‘Create a release’

C2. Click ‘Add from library’ > Select the APK(which will be utilized after Mar.9)
C3. Retain newly updated APK in step B3
C4. Fill out Permissions Declaration Form (not for extension),

‘Compliance status’ > check “Yes, this release meets the SMS and Call log”

Choose core functionalities as well

C5. Submit the form by Clicking “Save” at the bottom of the page

Also, to make sure your app be safe after Mar 9, please do not forget to update all the APKs(with sensitive or high-risk permission) in other track with the same steps.


enter image description here

If you believe your app meets the policy requirements for acceptable
use or is eligible for an exception, submit a Permissions Declaration
Form as soon as possible for Google Play to review. You will be
notified if your request has been approved. You do not need to have
implemented APK changes in order to submit the Declaration Form.

All Developers seeking to access the Call Log or SMS permissions must successfully complete the Permissions Declaration Form. By submitting this form, you verify that the app’s access to these permissions are only for the purposes described below and that you will submit an updated Form to seek additional approval prior to any revised / new scope for permission usage. You must fill out one Declaration Form for each app.

You should only access Call Log or SMS permissions when your app falls within permitted uses, and only to enable your app’s core functionality.



I have faced this issue and solved as follows.If you dont need sms and call logs permission in your app please remove all from your manifest file and take latest apk.

Scenario 1: If you have published your app as beta or alpha or internal testing, please update your old apk with the latest one. Here your old apk may contains those permissions they will reject your app once again.

Scenario 2:.If you really need those permissions then you have to follow the latest API’s to handle SMS and CALL Log permissions.

They will check all the old builds(beta,alpha and internal) for dangerous permissions.

For Ex : Hi,
Thanks for contacting the Google Play team.

I’ve reviewed your appeal request and found that

Version code 74 on Production track: SEND_SMS
Version code 46 on BETA track: READ_SMS, RECEIVE_SMS and SEND_SMS
Version code 50 on ALPHA track: READ_SMS, RECEIVE_SMS and SEND_SMS
Version code 53 on QA track: READ_SMS, RECEIVE_SMS and SEND_SMS

I find this info when I appeal to play store team.


you can remove permission of call and SMS permission (all SMS and call ) from your manifeast file, after then you have to fill Google Play Permissions Declaration Form before
january 9, 2019 will have until March 9, 2019 to bring their app(s) into compliance.

If your app does not require access to Call Log or SMS permissions, you must remove these permissions from your app’s manifest. Details on policy compliant alternative implementation are also detailed below.

For apps with Declaration Forms submissions received by Jan 9, 2019, Google Play, at its option, may grant extensions until March 9, 2019 for you to make changes to bring your app(s) into compliance with this Play policy. If you do not plan on using these permissions, but still require additional time to bring your app(s) into compliance, please complete the Declaration Form.

for more info please review on below link

and find the deceleration form which you can find in the below link:



If SMS and call is not the core feature of your app then its best to remove and use alternatives, as its difficult to get exception from google, and your application will get rejected right away.

Below alternative you can consider to initiate phone call : Don’t use CALL permission use dialer instead.

    val intent = Intent().apply {
    action = Intent.ACTION_DIAL
    data = Uri.parse("tel:0123456789")

To send Text message:

val intent = Intent().apply {
    action = Intent.ACTION_SENDTO
    data = Uri.parse("smsto:0123456789")
    putExtra("sms_body", "text message")
if (intent.resolveActivity(packageManager) != null) {

Reference : https://proandroiddev.com/no-more-sms-call-log-permissions-now-what-9b8226de7827


see , first of all , you need to check the permission in your manifest file ,like 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.Your app manifest requests the SMS permission group (e.g. READ_SMS, SEND_SMS, WRITE_SMS, RECEIVE_SMS, RECEIVE_WAP_PUSH, RECEIVE_MMS) , if this permission is available then you need to check the Default hander on the google play console otherwise unchecked the checkbox.and you need to fill the declaration form on the google play console. its mandatory