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
Target SDK version is still 29, but must be 30 or higher #178
Comments
Correct, but we can't bump to 30 (or 31) because the app's download functionality would no longer work as it should, owing to severely restricted scoped-storage rules. Technically the app will still be able to download OTA ZIPs (because it uses its own app-directory), but it won't be able to move them to the correct location that's required by the system's "Local upgrade" screen: the topmost directory of internal storage (often called the "root" directory — unrelated to device root status). This is because scoped-storage doesn't allow apps to request permission for the topmost directory at all (not the There are a few options, but none of them are ideal: Request the
|
val externalFilesDir = context.getExternalFilesDir(null)!! |
I talked with @AnonymousWP few mintues ago, I have some ideas. I know a lot of developers leave Google Play Store because this API reason. Maybe use root permission can do it, for non-root users make some hints. Unlock FREE-AD service , and pair with main app. Or.... Hope I can help you, I don't have too much coding experience with Kotlin, I can't give some useful code. Have a nice day. Edward. |
The initial versions of this application were not beginner friendly, and over the years we've made several improvements to make it more accessible — even to users who aren't attuned to the technical aspects of updating a phone. Managing storage via root access would be a major hindrance to such users, maybe even to experienced folk. So whatever solution we go with, it will for sure not involve root bypasses. In fact, we've been thinking of removing the app's current root-related features since they're largely unnecessary. One of them is to automatically hide "incremental" update methods, since they don't work on rooted devices (or ones with an unlocked bootloader, in some cases). The other root-feature is automatic installation via recovery, but for a long time this method has proven to be useless. Using Magisk's "flash to other slot" method is far more effective. Anyway, all that needs to be done is choosing the best solution after exhausting all possibilities. I have already spent quite a bit of time thinking & testing (see previous comment), and I feel the second option (don't download to the topmost directory) is the easiest. Our installation guides would need to be edited, and it would require users on API>30 to do one extra step. Not perfect, but does the job. If we find nothing better, I will also talk to some Googlers I know and see if option 1 is a good idea. However, as I've said before, it has been some time and I'm sure I haven't explored everything yet. Thank you for your idea — I was hoping for others to suggest alternatives I haven't considered. Publishing releases on GitHub without changing target SDK would probably work, but at the moment I don't feel it's necessary. For any bugs the app has (e.g. "unsupported" warnings for 9-series on OOS12), the app's "advanced mode" feature is a saving grace to bypass those bugs. EDIT: ad-free unlocks is a not a concern at all, it's only the fact that scoped storage doesn't allow downloading to the topmost directory. Let's discuss more on Discord, and post our conclusions here. |
Small addition to option 1: If you request the Example from Acrobat (https://www.adobe.com/devnet-docs/acrobat/android/en/settings.html?highlight=star): |
https://github.com/oxygen-updater/oxygen-updater/releases/tag/oxygen-updater-5.7.1 Highlights: - v5.6.0 wasn't published to the Play Store, but this release is! - Fixed #189, #178 - Updated dependencies
https://github.com/oxygen-updater/oxygen-updater/releases/tag/oxygen-updater-5.7.1 Highlights: - v5.6.0 wasn't published to the Play Store, but this release is! - Fixed oxygen-updater#189, oxygen-updater#178 - Updated dependencies
No idea if the current development team is aware or not, but starting in 2 days, this app must target at least SDK version 30 or higher, otherwise it cannot be updated in Google Play anymore.
oxygen-updater/buildSrc/src/main/kotlin/Dependencies.kt
Line 47 in 1c1ed59
oxygen-updater/buildSrc/src/main/kotlin/Dependencies.kt
Line 48 in 1c1ed59
The text was updated successfully, but these errors were encountered: