Ask for consent before checking for updates#10790
Conversation
185211d to
df17ec2
Compare
|
df17ec2 to
801cda3
Compare
AudricV
left a comment
There was a problem hiding this comment.
If the user closes the app when it gets the dialog and reopens it, does the dialog appear again? From what I understood of the code changes in this PR, it doesn't seem to be the case.
Code looks good to me, even if the placement of the alert dialog code in the update settings fragment seems a bit weird to me.
I put it there because the dialog is working with the setting to keep that stuff in one place. For that reason, I did not put it into the MainFragment. If you want me to move it there, I'll do it. |
AudricV
left a comment
There was a problem hiding this comment.
I put it there because the dialog is working with the setting to keep that stuff in one place. For that reason, I did not put it into the MainFragment. If you want me to move it there, I'll do it.
That's fine, anyway, when this will be "compostified" in the future, it will be probably placed in the right place :)
Do you think that the first run code migration should be reverted? I don't think that's necessary, but do what you think is the best :)
The rest of the changes looks good to me except this comment (a small optimization). Thank you for your efforts!
eedf7d4 to
9a3c96c
Compare
The migration is not necessary anymore because |
I meant the refactoring of the first run code, sorry for the confusion. |
fd567f4 to
319ac46
Compare
Will do that tomorrow |
|
@AudricV I just looked at the code again. Now that we have the isFirstRun() check in the MainAcitivity again, the refactor is needed. I'd therefore keep it as it is and would squash the commits if you are ok with that. |
319ac46 to
cc3587d
Compare
NewPipe is contacting its servers without asking for the users' consent. This is categorized as "tracking" by F-Droid (see #10785). This commit disables checking for udpates by default and adds a dialog asking for the user's consent to automatically check for updates if the app version is eligible for them. After upgrading to a version containing this commit the user is asked directly on the first app start. On fresh installs however, showing it on the first app start contributes to a bad onboarding an welcoming experience. Therefore, the dialog is shown at the second app start. Co-authored-by: Stypox <[email protected]>
cc3587d to
a3bbbf0
Compare
|
Here an APK for you to test: NewPipe updatechecker.zip
The APK is signed with @Stypox keys. The fingerprint for which to check for updates has been set to |
|
Stypox
left a comment
There was a problem hiding this comment.
Thank you! I pushed two more commits to improve the checks a bit more (previously the default value when geting update_app_key was true, which would have resulted in update checks running without consent)
What is it?
Description of the changes in your PR
Ask for consent before enabling auto update check.
NewPipe is contacting its servers without asking for the users' consent. This is categorized as "tracking" by F-Droid (see #10785).
This PR disables checking for updates by default and adds a dialog asking for the user's consent to automatically check for updates if the app version is eligible for them. After upgrading to a version containing this commit the user is asked directly on the first app start. On fresh installs however, showing it on the first app start contributes to a bad onboarding an welcoming experience. Therefore, the dialog is shown at the second app start.
To Do
App.isFirstRunto be set inside App and read only (**should the variable be static?**)Before/After Screenshots/Screen Record
Fixes the following issue(s)
APK testing
Install this release APK for testing, singed by my dev key:
NewPipe-check-consent.zip
Due diligence