Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Big G disallowed the app on the store #721

Open
Catfriend1 opened this issue Nov 4, 2020 · 9 comments
Open

Big G disallowed the app on the store #721

Catfriend1 opened this issue Nov 4, 2020 · 9 comments
Assignees
Labels
discussion Discussion

Comments

@Catfriend1
Copy link
Owner

Catfriend1 commented Nov 4, 2020

Update 2023/11:

Hey there, I am now totally fed up with Big G not understanding why this app has a native compiled executable on board which needs appropriate permissions on Android to
a) run
b) do its core functionality to sync files

This led me to the decision to close my goog play dev account. Is anyone interested to take over the task of publishing Syncthing-Fork on Gplay? Then I could send a ticket to Goog to transfer the app over to you. My time should no longer be wasted to G discussing "why a sync app needs all files access". I could invest that to bug fixing, keeping up with new Android versions, etc.

Of course I could still help a future gplay release manager by providing the app bundle readily compiled for every new release and, if really necessary, some small adjustments to meet G policies.

Regards,
Catfriend1

========

Big G disallowed the app on the store

  • Reason: According to big G, Syncthing-Fork is not eligible to use the background location permission.
  • Implementation: I've made sure that I've followed G Play Developer Policies by ...
    a) making the welcome explanation screen
    b) making the location permission optional
    c) allowing to use the app without granting the permission
    d) handing over a description of why the app requires the location permission including the required text and video demonstration where to find the explanation screen and where the WiFi SSID whitelist can be configured within the app
  • Action: I've filed the request to G more than 5 times and extending the explanation, made 3 videos and ever got rejected.
  • Consequences:
    a) I'm giving up on the G Play Store.
    b) Please get the app from GitHub or F-Droid.
    c) Please don't bother me about "What has happened to the store version".

If it's now starting that bad what should be better when we need to apply for "all files access" in January 2021? I don't expect big G will "gracefully" allow that as they seem to be more interested in pushing their own apps to the people instead and widening their market influence.

One last question: Has anyone reading this successfully submitted a "reasoning document, text or video" to the G Play Console review team which was accepted and then they granted "background location permission" for your app?

@Catfriend1 Catfriend1 added the discussion Discussion label Nov 4, 2020
@Catfriend1 Catfriend1 self-assigned this Nov 4, 2020
@Catfriend1 Catfriend1 pinned this issue Nov 4, 2020
@Catfriend1
Copy link
Owner Author

Catfriend1 commented Nov 8, 2020

Sent to G Review:

Die Synchronisation großer Dateien wird auf die Nutzung bestimmter, vom Nutzer festgelegter WLAN Netzwerke die i.d.R. nicht kostenpflichtig sind eingeschränkt. Das Beschränken der Synchronisationsaktivität auf bestimmte WLAN Netzwerke ist freiwillig.

Die WLAN SSID, die der Nutzer in den Einstellungen für erlaubte Synchronisierung festlegt, kann nach aktuellem Stand des Android OS nur mit der Standortberechtigung verglichen werden. Der Standort selbst wird von der App nicht abgefragt. Beispiel: Der Nutzer möchte automatisch das Synchronisieren beginnen, sobald er mit seinem Heimnetz verbunden ist.

@Catfriend1
Copy link
Owner Author

Catfriend1 commented Nov 26, 2020

Happy fail. I've removed location permissions from the APK uploaded to G Play for fun to get a laugh again AND: Google rejected this release as well, reason: "I did not explain why the app needed location permission" (v1.12.0.0) lol. Filed an appeal and told them they should learn reading as the play console also states I no longer declare location permission.

@Catfriend1 Catfriend1 unpinned this issue Dec 21, 2020
@gsauthof
Copy link

gsauthof commented Feb 6, 2021

Since the Google Play store isn't linked from the README and after reading this thread I'm wondering whether

https://play.google.com/store/apps/details?id=com.github.catfriend1.syncthingandroid

is legit.

If it is perhaps you could add a direct link to the README. If it's not perhaps you could add a note to the README which explicitly discourages/warns about the Google Play store. I think either one would help to avoid any confusion on the part of the slightly paranoid new Syncthing android user.

@Catfriend1
Copy link
Owner Author

@gsauthof It's legit. But as I don't know how long I'll keep play releases I've removed the link button from the GitHub README.md. If Google accepts ALL FILES ACCESS this year, it will return - if not, gplay release will die

@Catfriend1
Copy link
Owner Author

After a recent review, we found that your app Syncthing-Fork (com.github.catfriend1.syncthingandroid) is not compliant with one or more of our Developer Program Policies. See below for more information about your app's status and how to correct the issue.

Publishing Status
App Status: Rejected
Your app has been rejected and wasn't published due to the policy issue(s) listed below. If you submitted an update, the previous version of your app is still available on Google Play.

Issue found: Access to device storage not required
It appears that the feature you identified does not require unrestricted access to all files on the device.

To comply with our All Files Access policy, update your app to use a privacy-friendly option for accessing files in shared storage, such as the system file picker, which lets users choose specific content on the device. For details, see Android storage use cases and best practices Alternatively, depending on the use case, you can follow the recommendations listed in Receiving simple data from other apps and select an appropriate option.

Update your app so that the feature uses MediaStore APIs and remove All files access (MANAGE_EXTERNAL_STORAGE) permission.

If you still believe your app needs All files access permissions, then you must clearly demonstrate how your app would be broken or unusable without this core feature when you complete the Permissions Declaration Form. Follow the steps to Declare permissions for your app.

To bring your app into compliance, follow these steps:

Review the All Files Access Permission policy.
Read more about Use of All files access permission better understand permitted and invalid uses.
Learn about privacy-friendly storage options in Android storage use cases and best practices.
Review Open files using storage access framework to see how users can access files across all of their preferred document storage providers.
About the All Files Access Permission policy
Files and directory attributes on a user's device are regarded as personal and sensitive user data subject to the Personal and Sensitive Information policy and the following requirements:

Apps should only request access to device storage which is critical for the app to function, and may not request access to device storage on behalf of any third-party for any purpose that is unrelated to critical user-facing app functionality.
Android devices running Android "R" (Android 11) or later, will require the MANAGE_EXTERNAL_STORAGE permission in order to manage access to shared storage. All apps that target R or later and request broad access to shared storage ("All files access") must successfully pass an appropriate access review prior to publishing. Apps allowed to use this permission must clearly prompt users to enable "All files access" for their app under "Special app access" settings. For more information on the R requirements, see Use of All files access (MANAGE_EXTERNAL_STORAGE) permission.
Action required: Submit an updated app for review
Here's what to do to help get your app on Google Play:
Make sure to read the applicable policies or requirements listed below:
All Files Access Permission policy
Make appropriate changes to your app (if possible), and be sure to address the issue described above. You may also want to check your app's store listing for compliance, if applicable.
Double check that your app is compliant with all other Developer Program Policies.
If you made changes to your app bundle, store listing, or APK, please sign in to your Play Console and submit the update(s).

@Catfriend1
Copy link
Owner Author

image

image

image

@Catfriend1 Catfriend1 pinned this issue Nov 19, 2023
@Catfriend1 Catfriend1 removed this from the v1.12.0 milestone Nov 19, 2023
@Catfriend1 Catfriend1 reopened this Nov 19, 2023
@Catfriend1
Copy link
Owner Author

Catfriend1 commented Nov 23, 2023

Fun fact:

As I recall the last years of doing gplay releases, it was quite often when the rare case occurred where the app had a critical bug and needed an urgent hotfix update that G's review blocked the hotfix update from being rolled out to the store due to "policy violations".

Interestingly, the "reasons" from G not accepting aren't plausible. In chronological order:

  • Oh no, install permissions - remove them! - ok, removed (but they were there a long time before, why in the moment people gave feedback comments on the store the app is crashing on startup?)
  • Oh no, all files access permission - remove it! - no, why? - it's not needed by your app - sorry, you're wrong, it IS needed
  • (ten times the same, blocked, please remove, migrate to saf, we have a go native that can't use SAF.., file appeal, declined, ... I gave up)
  • lots of weeks later : suddenly approved all files access
  • Today: app is crashing due to bug in SyncthingNative, upstream fixed it, I compiled the fix
  • The crashing version which google accepted and rolled out after policy review contains (foreground service) and as all over the last years (all files access)
  • I hand in the update, review takes place (now for 8. time without approval) and the result is :

Oh no, all files access is not necessary for your app.
Oh no, foreground service certainly more not.
Reeeeeemove it dev!

😁😆😅😂😂🤣😭

I really look forward happy that my gplay dev account will be deleted. As there is no way to request app or account deletion from G, this might be my chance to leave. I'll just go silent with them and then the deadline will come. Should have done that earlier instead of letting me trick by "sorry , we approved your release in the end and after "months" would you stay with us and go on".

Let's focus on GitHub (fastest way to release stuff) and f-droid, where the team is very helpful and friendly.

@Dnominated
Copy link

I upgraded one of my pixel xx phones to Android 14 (PB), after being on 13 (PE). What a disaster! No apps can see user storage, unless the App specifically requests 'All Files' permission. What? If it's an older app that doesn't understand that - 'Too bad!' - say the Google Idiots with purple hair who are clueless. They got rid of everyone with problem-solving skills when they fired James Damore.

Now, reading your last comment, the developer has to PETITION purple-haired nazis to have requested permissions. Brother, when I install an app, I individually get prompted and approve permissions as I see fit. I don't need some morons pre-screening apps for me, particularly as your story points out what incompetent people they are at life. It would not surprise me if they have to hire someone to tie their shoes for them.

I realized after the 'refresh' of a total wipe and reinstall of Android 13, on said Pixel, I had installed Syncthing-Fork from F-Droid, when a refresh came out today on the Google Play store, but 'it couldn't install'. Even after I uninstalled the F-Droid-installed copy, and tried to install again. Delete cache and storage from the Google Play Store App - no that did not work. Reboot - nope, sorry. Can't install.

Then realized you must be on Github: grabbed the non-gplay Github version. Installed with the (non-Gplay) Total Commander, and we're off and running! Does the Github version check for updates and update itself, like Fork Gram or other non-Google Play apps?

Thanks.

@Catfriend1
Copy link
Owner Author

It has no auto updater nor update checker builtin.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Discussion
Projects
None yet
Development

No branches or pull requests

3 participants