Thursday, August 17, 2017

Hearing a Loud Beep at the End of Phone Calls? It might be related to Snapchat.

Snapchat has been known over the years to have problems on Android devices. Such issues have mostly included performance problems and high data usage. Recently the app crashed on Android devices at launch as well, but another really annoying issue has appeared. According to users on Reddit, if you are experiencing a loud beep at the end of phone calls through your phone's speaker it may be caused by Snapchat. This issue is fixed by disabling the telephone permission to the Snapchat app.

Looking into why Snapchat uses this permission in the first place, I found the explanation within their own app. But then why, when we disable the telephone permission, does the loud beep go away? If it's only used to autofill your phone number when registering, why does leaving the permission enabled cause other issues? I decided to take some system logs, analyzing my dmesg and logcat to see if I could find anything. A dmesg is the kernel log since boot and the logcat is a system log since boot. Dmesg handles SELinux denials, CPU changes, audio output and more while the logcat contains logs of applications running on the device. The logcat also includes permission denials and system denials.

The dmesg was largely empty as I suspected; I didn't think it would be an SELinux denial. What I found in the logcat was more interesting. I initially thought this issue may not be caused by Snapchat itself, which would correlate with some users who claimed this did not fix the beep sound. Instead, I thought it coincided with the system denying the "READ_PRIVILEGED_PHONE_STATE" permission. See below the logcat after I hung up a phone call.

As you can see highlighted in orange, Snapchat is denied the permission "READ_PRIVILEGED_PHONE_STATE". I thought this may have been the issue, but when I disabled the telephone permission the same error appeared. I hit a dead end here and there was no difference between the logs with the permission enabled or disabled. Interestingly, Android Wear has a similar request as visible in the screenshot, but I don't think it had any effect.

Overall I could not conclude the cause of the issue, and investigation only led me to the same logs between the permission enabled and disabled. Disabling the telephone permission does fix the issue, but investigation led me to no conclusion as to why. If anyone knows why this fix works please let me know, but for now hopefully this should stop that annoying beep at the end of every phone call.



from xda-developers http://ift.tt/2weweAc
via IFTTT

No comments:

Post a Comment