G
Guest
Guest
The official Google Play Licensing extension modifies your APK so that it requests read_phone_state. This permission does not appear checked in either Android Options or in the extension's list of permissions.
This bug was originally reported in 2017, and it sits in Mantis as a "low" priority "suggestion." It's popped up on the forum once or twice but without a fix. I've looked at the Android manifest for both the runner and the extension, and neither requests this permission. I've tried adding/injecting a line to remove the permission, but when compiling I just get the message "this line of code is trying to remove something that wasn't asked for" (or, to be precise, "uses-permission#android.permission.READ_PHONE_STATE was tagged at AndroidManifest.xml:17 to remove other declarations but no other declaration present").
That's my technical limit... according to the bug report, the extension might simply be doing something wrong: "I suspect that the extension uses the TelephonyManager in order to get access to unique identification id:s, which should be replaced by the modern way of doing it: ANDROID_ID."
So, my options next are to (1) learn barely enough Java and Google API stuff to figure out what that comment meant, then go in and fix it; (2) beg our heroes @Mert or @Appsurd to fix it for YYG; or (3) just don't use Google Play Licensing.
Or maybe I'm goofy and doing something wrong? I'd really like that to be the answer.
Edit: Okay, the extension's own java code is only 158 lines, and it does appear to use android_id to get the device id, contrary to the bug report comment. Disclaimer, I don't know anything about this...
Edit: This stackoverflow thread (which is about Play Services) suggests the issue may be in Google's SDK circa 2016 when YYG made their extension (and haven't since updated). I wonder how possible it would be to update the SDK within the extension. Probably more complicated than it sounds. ... Edit: I deleted the SDK in the extension, copied over the market licensing SDK library from android-sdk\extras, copied strings.xml from the original extension's sdk\allib\res\values folder to the new (because it needed it), and the thing actually compiled, but it still ultimately requests read_phone_state according to the Play Store console. I'm completely out of ideas.
This bug was originally reported in 2017, and it sits in Mantis as a "low" priority "suggestion." It's popped up on the forum once or twice but without a fix. I've looked at the Android manifest for both the runner and the extension, and neither requests this permission. I've tried adding/injecting a line to remove the permission, but when compiling I just get the message "this line of code is trying to remove something that wasn't asked for" (or, to be precise, "uses-permission#android.permission.READ_PHONE_STATE was tagged at AndroidManifest.xml:17 to remove other declarations but no other declaration present").
That's my technical limit... according to the bug report, the extension might simply be doing something wrong: "I suspect that the extension uses the TelephonyManager in order to get access to unique identification id:s, which should be replaced by the modern way of doing it: ANDROID_ID."
So, my options next are to (1) learn barely enough Java and Google API stuff to figure out what that comment meant, then go in and fix it; (2) beg our heroes @Mert or @Appsurd to fix it for YYG; or (3) just don't use Google Play Licensing.
Or maybe I'm goofy and doing something wrong? I'd really like that to be the answer.
Edit: Okay, the extension's own java code is only 158 lines, and it does appear to use android_id to get the device id, contrary to the bug report comment. Disclaimer, I don't know anything about this...
Edit: This stackoverflow thread (which is about Play Services) suggests the issue may be in Google's SDK circa 2016 when YYG made their extension (and haven't since updated). I wonder how possible it would be to update the SDK within the extension. Probably more complicated than it sounds. ... Edit: I deleted the SDK in the extension, copied over the market licensing SDK library from android-sdk\extras, copied strings.xml from the original extension's sdk\allib\res\values folder to the new (because it needed it), and the thing actually compiled, but it still ultimately requests read_phone_state according to the Play Store console. I'm completely out of ideas.
Last edited by a moderator: