Commit graph

116 commits

Author SHA1 Message Date
Tobi
cdd8a91c07 Ask for consent before starting update checks
NewPipe is contacting its servers without asking for the users' consent. This is categorized as "tracking" by F-Droid (see https://github.com/TeamNewPipe/NewPipe/discussions/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 <stypox@pm.me>
2024-03-28 23:42:00 +01:00
Stypox
4164bf36f6 Implement better image selection strategy 2023-09-22 10:14:44 +02:00
Stypox
a6a7c2271a Add image quality preference 2023-09-22 10:14:43 +02:00
Isira Seneviratne
6f77ff6c53 Use List.of(). 2022-07-20 04:39:11 +05:30
litetex
abe2745b4a Remove MultiDex 2022-07-13 19:02:24 +02:00
TacoTheDank
37bec602ae Update ACRA library 2022-04-14 22:08:42 -04:00
TobiGr
c75babedb8 Merge branch 'dev' into feature/notifications 2022-02-19 12:34:44 +01:00
TacoTheDank
f77adbceae Update ACRA library 2022-02-02 13:12:29 -05:00
litetex
88b8945149 Refactored `initNotificationChannels` 2022-01-05 15:48:46 +01:00
Stypox
c70713a925 Merge branch 'dev' into pr2335 2021-12-31 19:20:18 +01:00
Stypox
5583f71a8e Replace ErrorActivity with ErrorUtil 2021-12-04 10:36:36 +01:00
Stypox
04138dc602 Create ErrorUtil class with three ways to report errors
Activity, snackbar and notification
2021-12-04 10:36:31 +01:00
litetex
9270bf01cc Reformatted code so that it's better readable 2021-11-02 22:48:49 +01:00
TobiGr
8e3a7fcfc7 Merge remote-tracking branch 'origin/dev' into notifications-1 2021-11-02 07:56:09 +01:00
TobiGr
d7bf370bfc Start service for update checks in onPastCreate() 2021-10-20 23:55:18 +02:00
TobiGr
fecdab9897 Fix new version check still occassionally started in background 2021-10-17 12:55:06 +02:00
TobiGr
dbd91d15b7 Merge remote-tracking branch 'origin/dev' into notifications 2021-10-14 21:15:43 +02:00
TobiGr
d17ece226a Move checking for new version to MainAcitvity
When the service is started from the Application class, the app might be still in the background. This is definetly not the case when MainActivity.onCreate() is called.

Fixes #7227
2021-10-12 16:45:01 +02:00
TobiGr
ebb49377ee Merge remote-tracking branch 'origin/dev' into notifications-1 2021-10-11 16:37:49 +02:00
Tobi
c95ac17837 Merge pull request #6980 from bravenewpipe/check-for-update-after-toggle-and-restart
resets the expire date for checking for updates
2021-10-02 09:07:05 +02:00
Koitharu
a18d818dfc Merge branch 'dev' of https://github.com/TeamNewPipe/NewPipe into feature/notifications 2021-09-20 07:26:01 +03:00
Koitharu
f0d919e4a3 Refactor FeedLoadService to use it within the notification worker 2021-09-07 13:30:26 +03:00
Vasiliy
51d972eeb9 Notifications about new streams 2021-09-07 13:30:16 +03:00
litetex
6f0ea582d9 Fixed the app restarting not working properly
* Using [``process-phoenix``](https://github.com/JakeWharton/ProcessPhoenix)
2021-09-06 20:47:44 +02:00
evermind
666b6a8323 check immediately for updates if user enables 'check for updates setting'
- Convert CheckForNewAppVersion to IntentService
- reset expire date to 0 after user enables check for updates setting
2021-09-02 07:20:35 +02:00
Stypox
12ad678d14 Apply review: move thumbnail loading out of Player 2021-08-24 10:56:25 +02:00
Stypox
3236b3a882 Add debug setting to enable Picasso indicators 2021-08-24 10:56:25 +02:00
Stypox
8602beed0b Replace UniversalImageLoader with Picasso 2021-08-24 10:56:25 +02:00
Isira Seneviratne
924e8703e2 Use NotificationChannelCompat. 2021-08-01 14:59:30 +05:30
wb9688
4e133a3599 Support SAF properly 2021-06-08 10:40:44 +02:00
TobiGr
a991b2ad4d Do not set reChaptache cookie when there is no cookie stored
In DownloaderImpl#getCookies(String url) the reChaptcha cookie is set if it is not null. For this reason, the cookie was set in every request.
2021-04-04 12:27:12 +02:00
Stypox
22c92f1fb3 Completely remove return activity, now outdated 2021-03-12 23:21:54 +01:00
Stypox
0ea6b4928c Add report/solve-recaptcha button in error panel
It will be shown even when nothing could be loaded not due to a network error, and the user can choose to ignore or report it.

Also improve error reporting arguments
Also completely refactor error activity
Also improve some code here and there
2021-03-12 23:21:49 +01:00
Stypox
bb398189d6 Move all error-related classes into error package 2021-03-07 17:49:28 +01:00
TiA4f8R
e44495af9a Apply the requested changes and little improvements
Apply the requested changes, use ShareUtils.shareText to share an stream in the play queue and optimize imports for Java files, using Android Studio functionality.

Apply the requested changes and do little improvements
Apply the requested changes, use ShareUtils.shareText to share an stream in the play queue and optimize imports for Java files, using Android Studio functionality.
2021-01-16 13:23:42 +01:00
Stypox
747d629732 Merge pull request #4947 from Isira-Seneviratne/Convert_ExceptionUtils_to_extensions
Rewrite ExceptionUtils methods as extension functions.
2021-01-14 14:54:37 +01:00
Isira Seneviratne
4d59466977 Rewrite ExceptionUtils methods as extension functions. 2021-01-11 16:49:45 +05:30
XiangRongLin
6a03ac88d3 Make Localization.relativeTime testable
Problem is global state in static variable prettyTime. But for performance reasons on Android that is preferred.
Now allow injecting prettyTime dependency by making init function public.
2021-01-06 14:48:34 +01:00
bopol
c12b55600c dynamically get package name
it fixes issues with forks or debug builds, e.g. when you open two newpipe apps (with debug or fork apps), close one notification, it closes all newpipe notifications
fixes https://github.com/TeamNewPipe/NewPipe/issues/4653
2020-12-20 13:52:20 +01:00
Isira Seneviratne
288a9ce2af Use a notification instead of a ProgressDialog in MissionAdapter. 2020-12-13 05:21:38 +05:30
Stypox
34dd7c0fbf Update most dependencies 2020-11-22 14:03:10 +01:00
Stypox
0ff63c94cb Fix crash on startup without internet: Cbservable callable returning null
Use Maybe instead
2020-11-21 12:02:03 +01:00
Isira Seneviratne
39a008db6e Convert ErrorInfo to Kotlin and use the Parcelize annotation. 2020-11-21 12:47:35 +05:30
Isira Seneviratne
82ba67ca82 Use RxJava instead of AsyncTask to check for new app versions. 2020-11-05 11:06:50 +05:30
Isira Seneviratne
e4b31a30aa Use multidex for all build types. 2020-10-18 14:14:27 +05:30
Isira Seneviratne
27c0e408fb Combine initNotificationChannel() and setUpUpdateNotificationChannel() into a single method. 2020-10-09 08:52:05 +05:30
Isira Seneviratne
3da55d9f40 Use ContextCompat.getSystemService() and the Context.getSystemService() extension function. 2020-10-09 08:52:05 +05:30
TacoTheDank
7db90c0561 Clean up SDK version checks 2020-09-06 12:55:30 +02:00
wb9688
25b56bf5e4 Use final where possible 2020-08-16 10:25:09 +02:00
Stypox
b5e7b86df8 Remove deprecated calls to set Sender class to ACRA
setReportSenderFactoryClasses() is deprecated, now extensions (ReportSenderFactory is an extension) should be registered using AutoService: https://github.com/ACRA/acra/wiki/Custom-Extensions#by-annotation
2020-07-29 10:56:33 +02:00