Page 1 of 1

Action required for Google Play: READ_CALL_LOG permission

Posted: Wed Nov 21, 2018 10:57 am
by giovanni_c
Some days ago I received an email from Google that says that some apps in our catalog don't meet the requirement for READ_CALL_LOG permission requests.
Having an eye to the standalone properties (attached) I can't see this permission so I'm not able to understand how this needs to be managed. The only that sounds similar is that the app can use the telephony features of the device (particularly in a card a phone number can be showed and clicking on it you can call the number) but this doesn't mean that I need to access to the call log.
The problem is that if the requirements will not be met within 9th of January the app will be removed from the store :shock: :shock:

Have you got suggestions?
Does this need to be treated as a bug to file in the QA center?

Thank you very much for your support.

Schermata 2018-11-21 alle 10.35.35.png

Re: Action required for Google Play: READ_CALL_LOG permission

Posted: Wed Nov 21, 2018 1:32 pm
by LiveCode_Panos
Hello Giovanni,

You'll probably have to explicitly ask for this permission.

So use LC 9.0.1 or LC 9.0.2 RC-1 to rebuild the standalone, and add this code before using the telephony features of the device:

Code: Select all

local tReadCallLogPermissionGranted
put androidHasPermission("android.permission.READ_CALL_LOG") into tReadCallLogPermissionGranted
if not tReadCallLogPermissionGranted then
   androidRequestPermission "android.permission.READ_CALL_LOG"
end if
put androidHasPermission("android.permission.READ_CALL_LOG") into tReadCallLogPermissionGranted
if not tReadCallLogPermissionGranted then
   answer "This app is not permitted to access the device call log. You can change this" && \
         "in the Settings app."
end if
Hope this helps.

Kind regards,
Panos
--

Re: Action required for Google Play: READ_CALL_LOG permission

Posted: Wed Nov 21, 2018 4:10 pm
by giovanni_c
Hi Panos, thank you for prompt reply.
My app doesn't need to access to the call log so I don't need the READ_CALL_LOG permission.
How can I disable this permission request?

Re: Action required for Google Play: READ_CALL_LOG permission

Posted: Wed Nov 21, 2018 4:36 pm
by LiveCode_Panos
Hello Giovanni,

What is the exact message you got from Google Play about this?

From your previous msg, I understood that Google thinks your app needs this permission, so the way to request this permission is with

Code: Select all

androidRequestPermission
command.

Best,
Panos
--

Re: Action required for Google Play: READ_CALL_LOG permission

Posted: Wed Nov 21, 2018 6:47 pm
by giovanni_c
Hi Panos, I'm sorry if misunderstanding is occurring.
Here follows what Google is writing (please note that the bold has been added by my, just to underline the key points):
Hello Google Play Developer,
In October, we announced updates to our Permissions policy that will limit which apps are allowed to request Call Log and SMS permissions. This policy will impact one or more of your apps.
Only an app that has been selected as a user's default app for making calls or text messages, or whose core functionality is approved for one of the exception use cases, will be able to request access to Call Log or SMS permissions.
Action required
Below, we've listed apps from your catalog which do not meet the requirements for permission requests. Please remove any disallowed or unused permissions from your app's manifest (specified below), migrate to an alternative implementation (e.g. SMS Retriever API for most cases of OTP verification), or evaluate if your app qualifies for an exception.
The point is: I think I don't need the READ_CALL_LOG permission as my app doesn't make calls itself or send text messages, so I would like to make my app to not require this permission and I don't know how to do this as the Android standalone screen doesn't allow me to manage this permission.
I hope to have explained well my need/request and if it's feasible (I.E. if I can modify manually the manifest used to create the APK).

Thank you very much for your support.

Re: Action required for Google Play: READ_CALL_LOG permission

Posted: Thu Nov 22, 2018 12:46 pm
by LiveCode_Panos
Hello Giovanni,

Thank you for the clarification.

Hmm, I cannot think of something in the standalone settings that adds this permission request in the manifest. I assume you have not used a custom manifest, is that correct?

I suggest you file a bug report at quality.livecode.com, as this sounds like something we should investigate.

Kind regards,
Panos
--

Re: Action required for Google Play: READ_CALL_LOG permission

Posted: Thu Nov 22, 2018 3:47 pm
by giovanni_c
Hi Panos, thank you very much for your support.
I tried to go deeper into the READ_CALL_LOG permission and found a related note in the Android Developers reference as follows (again, the bold is mine!):
Note: If your app uses the READ_CONTACTS permission and both your minSdkVersion and targetSdkVersion values are set to 15 or lower, the system implicitly grants your app this permission. If you don't need this permission, be sure your targetSdkVersion is 16 or higher.
And yes... my app request the READ_CONTACT permission!
So I guess that the apps that Google is telling me to review are all apps whose binary has been produced with LC prior to 9 in which the target version was set to 10 (while in the latest version it's set to 26 as requested by the latest Google Developers guidelines) so the READ_CALL_LOG permission is implicitly granted without any way to change this. I need to resubmit my indicted apps with latest LC available and I think (hope? ;) ) that the big G will like'em!

Thank you again and see you soon!

Re: Action required for Google Play: READ_CALL_LOG permission

Posted: Fri Nov 23, 2018 9:41 am
by LiveCode_Panos
Hello Giovanni,

Good investigation. Yes, that makes sense. Hopefully rebuilding with LC 9.0.1+ will fix the problem.

Let us know how if the new submission has passed :)

Kind regards,
Panos
--