libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
9.79k stars 1.78k forks source link

RetroArch Play Store Build never got "automatic weekly updates" for almost a year now #14532

Open porg opened 1 year ago

porg commented 1 year ago

Problem

Environment

RetroArch for Android is offered in 3 basic build variants

1) APK Download from Website

https://www.retroarch.com/?page=platforms APK as 32bit or 64bit

2a) RetroArch Plus (Google Play Store)

https://play.google.com/store/apps/details?id=com.retroarch.aarch64 Latest version: 1.9.12 (2021-11-03)

2b) RetroArch (Google Play Store)

https://play.google.com/store/apps/details?id=com.retroarch Latest version: 1.9.12 (2021-11-03)

My initial considerations for choosing my preferred build variant on that device were

porg commented 1 year ago

Suspicion

hizzlekizzle commented 1 year ago

the problem is that google doesn't allow updating any apps that have not implemented their "scoped storage" requirements, so unless/until we can implement that, we can't update.

porg commented 1 year ago

Thanks for the info!

Currently the app info for "RetroArch" on the Play Store reads:

Pros of the Play Store version vs. the website APK: Automatic weekly updates of both cores and RetroArch.

Which is plain wrong as you now confirmed.

So with the available info I now assume that if I'm on a restricted device such as a Chromebook (no manual APK download) and want to get RetroArch frontend and Libretro core updates it's best to choose "RetroArch Plus" and then use its internal online updater mechanisms. Correct?

Followup

Could someone please get the documentation materials & publication policies in order? Because as it currently is, the info sources are easily contradicting:

  1. Official User Docs IMHO would be best suited as the primary information resource regarding which Android build versions there are and their pros and cons.
    • The CMS for the docs is https://github.com/libretro/docs which every Github user can contribute to via pull request.
    • That's quite an "open access".
    • High probability that this receives frequent and peer reviewed updates.
    • Warning: Currently offers no infos on the different Google Play Store variants and their pros / cons among themselves and compared to the direct APK download!
  2. Respective Google Play Store app infos:
    • I assume much more restricted access to maybe only a handful core devs.
    • High risk that outdated info remains there for long, and confuses users such as me.
    • Convenient plus for users to have infos there too (if guaranteed by a proper workflow which pulls from the official docs, and adds some marketing lingo on top maybe).
    • But in doubt it's better that it's very minimal and ends in a paragraph like: "Most recent info available on our website: XYZ."
    • And that guarantees a single point of truth.
LibretroAdmin commented 1 year ago

Take it up with Google who makes it a huge drag to get anything uploaded on there. We did not decide to stop uploading there - they are rejecting packages because of it failing to meet some arbitrary standards set by them.

Meanwhile, Samsung store, Huawei and Amazon have no such issues with our APKs.

PRs welcome.

porg commented 1 year ago

PRs welcome

I'm willing to update the documentation in that regard. But I can only speculate from the fragmented info I got.

Please answer my questions which I placed in my initial posts and comments, then I will be able to write a rough guideline.

RetroArch Plus: Its internal update mechanism can update the fronend (RetroArch) and the various Libretro cores (up to 50 max). Correct? Or is this now also suppressed by Google/Android ?

porg commented 1 year ago

I detected many more issues which I wanted to report, but without getting most recent versions via updates, reporting them wouldn't make too much sense.

One issue which I nevertheless mentioned in conjunction with the failing updates was the one with the main config failing to get written out, maybe just another aspect of the supposed issue of insufficient write access within the app's directories:

Main Menu > Configuration File > Save Current Configuration: When I trigger this it always fails with: "Failed saving to /storage/emulated/0/Android/data/com.retroarch.aarch64/files/retroarch.cfg"

Would appreciate a reaction on this too. Thanks.

hizzlekizzle commented 1 year ago

Thanks for offering to update the docs. It would be great if that got frequent contributions (which is why we made it relatively open, via github), but it ends up mostly being internal folks updating things, which is tough to stay on top of.

None of the Google Play Store bundles can update anything at the moment, since everything comes from Google's servers (i.e., instead of ours; this was a previous requirement they forced on us, along with limiting the number of cores available) and we're not allowed to update any of it.

And yeah, I would suspect that failing to write the config file is related to the restrictive permissions.