Add warning banner about ongoing google certification for android apps#13282
Add warning banner about ongoing google certification for android apps#13282TobiGr merged 2 commits intoTeamNewPipe:devfrom
Conversation
| final var now = Instant.now(); | ||
| final var kaoLastCheck = Instant.ofEpochMilli(prefs.getLong("kao_last_checked", 0)); | ||
|
|
||
| final var kaoURI = Uri.parse("https://keepandroidopen.org"); |
There was a problem hiding this comment.
If we want links point to translated webpages we need some sort of retrieving current lang code or maybe just put it in string resources?
There was a problem hiding this comment.
Still under question
There was a problem hiding this comment.
I woould not put this in string ressources that are translatable. This could lead to changes by translators adding unsupported locals. It is better to just use the default page and let the user change it if needed imo.
You could also use Localization.getAppLocale().getLanguage()
There was a problem hiding this comment.
I pushed something that is OK, but not a perfect approach (e.g. it is ignoring more locals from the locale list). However, I think it should be fine.
There was a problem hiding this comment.
Also I've just realized it is a "security" treat to put link into resources which can be translated because if we then merge weblate and overlook the change it could lead to problems...
|
Popup with title or not? Also there are three wordings: Original like:
Proposed by @Poolitzer
Previous + some rip of from KeepAndroidOpen site
We still probably need a way to remotely update the popup on user device because in this situation we can't just say: "dear users update". About which I would like hear some implementation proposals if I need to implement it in this PR |
Especially taking into account the answer I got (which I can't find) about infrastructure working on edge already |
|
Sorry why do we need to update the pop up? If the app stops working, users will go to the website/the github repo, no? And I don't quite like the app pinging our servers for new pop up content, just from a privacy and an infrastructure perspective. Automatic up dates are one thing and easily understandable, pop up content queries are another, for me at least. At least we should have another setting to disable that like the auto update. I realized that "NewPipe will no longer work on certified Android devices after that time." isnt actually true, it will work with the extra adb steps no? Should we go with like, "NewPipe will stop working on certified Android devices after that time unless you take some steps"? And then I also realized we definitely need a setting/button to disable this from appearing again, because at least I will be really annoyed if I have to click on it every 30 days. And then probably a button/link in some related menu to allow users to get back that information, either via again showing the pop up or just linking to the blog post. |
|
I now made a website update introducing the banner and a blog post, I am not sure if we will do a full new version release with features and want to rewrite the blog post accordingly, TeamNewPipe/website#426 |
I fully agree with it but I just remember first discussion where dynamic banner was discussed. And after day comes and superposition collapses to one state as a user at least I would probably like to know how it ends. I think the existing links are enough though But maybe there is a solution. When day comes we can open new popup (which should be added now), which will point to newpipe blog with more clarifications (?) The blog post which still doesn't exist and won't exist before the day comes but link to which can be predicted now
I am not even sure if idea of works or not works correct. Maybe already installed apps will continue working? Idk. I am not sure. But knowing google I would expect the worst
Generally yes but isn't 30 enough? Probably it is necessary evil. And you will see it only ~6 times
Showing pop up "Hey I am popup, you've disabled another popup, do you want to return the disabled one?" 🤨 Related menu? New menu in settings? Do users even look there? Even if after pressing button "do not show again" we additionally tell them they can open it again via settings |
I'd use a title, but with spaces between words which is also the spelling on their website ("Keep Android Open"). |
f715043 to
06e4548
Compare
|
Now as a remainder the strings must be manually marked as changed in weblate. Which probably can be done only by those who have rights (if can be done by anyone I still can't do it because didn't interact with weblate at all) |
|
|
||
| if (kaoLastCheck.plus(30, ChronoUnit.DAYS).isBefore(now)) { | ||
| final var dialog = new AlertDialog.Builder(this) | ||
| .setTitle("Keep Android Open") |
There was a problem hiding this comment.
I am not sure if keeping this in English only is a good idea.
There was a problem hiding this comment.
It is the name of the site.... And to be honest it seems to me that site itself not very sure if it should be translated. Because half of the translations use english version while another half translates without clear rule when so...
| dialog.getButton(AlertDialog.BUTTON_NEUTRAL).setOnClickListener(v -> | ||
| this.startActivity(new Intent(Intent.ACTION_VIEW, solutionURI)) | ||
| ); | ||
| } |
There was a problem hiding this comment.
ShareUtils.openUrlInBrowser should be used instead.
| ), | ||
| SoftwareComponent( | ||
| "FreeDroidWarn", | ||
| "2026", | ||
| "woheller69", | ||
| "https://github.com/woheller69/FreeDroidWarn", | ||
| StandardLicenses.APACHE2 |
There was a problem hiding this comment.
Why did you add this? The app does not use this library with your changes.
There was a problem hiding this comment.
We used initial translations from there
There was a problem hiding this comment.
Yes, but it doesn't change the fact we don't use this library, this should be removed.
What is it?
refactorbranchDescription of the changes in your PR
Before/After Screenshots/Screen Record
APK testing
The APK can be found by going to the "Checks" tab below the title. On the left pane, click on "CI", scroll down to "artifacts" and click "app" to download the zip file which contains the debug APK of this PR. You can find more info and a video demonstration on this wiki page.
Due diligence