Open alexanderadam opened 3 years ago
Some showstoppers there. Here's the report from one of the library scanners:
Libraries detected:
-------------------
* Android Support v4 (/android/support/v4): Development Framework
* Arch (/androidx/arch): Utility
* AppCompat (/androidx/appcompat): Utility
* Browser (/androidx/browser): Utility
* Androidx Core (/androidx/core): Utility
* Documentfile (/androidx/documentfile): UI Component
* Exifinterface (/androidx/exifinterface): Utility
* Leanback (/androidx/leanback): Utility
* androidx.legacy (/androidx/legacy): Utility
* Lifecycle (/androidx/lifecycle): Utility
* Loader (/androidx/loader): Utility
* Media (/androidx/media): Utility
* Preference (/androidx/preference): Utility
* Print (/androidx/print): Utility
* Room (/androidx/room): Utility
* Sqlite (/androidx/sqlite): Utility
* Vectordrawable (/androidx/vectordrawable): UI Component
* WorkManager (/androidx/work): Utility
* Glide (/com/bumptech/glide): Utility
* Crashlytics (/com/crashlytics): Mobile Analytics Tracking
* Firebase Data Transport (/com/google/android/datatransport): Utility NonFreeNet
* ExoPlayer (/com/google/android/exoplayer2): Utility
* Google Mobile Services (/com/google/android/gms): Development Framework NonFreeDep
* Google Core Libraries for Java 6+ (/com/google/common): Utility
* Firebase (/com/google/firebase): Utility NonFreeNet,NonFreeDep
* Firebase Analytics (/com/google/firebase/analytics): Mobile Analytics Tracking
* Google Gson (/com/google/gson): Utility
* Disk LRU Cache (/com/jakewharton/disklrucache): Utility
* Jayway JsonPath (/com/jayway/jsonpath): Utility
* OkHttp (/com/squareup/okhttp): Utility
* Dagger (/dagger): Utility
* RxJava (/io/reactivex): Utility
* JavaX Dependency Injection (/javax/inject): Utility
* json-smart-v2 (/net/minidev/json): Utility
* OkHttp okio Framework (/okio): Utility
* Apache Commons (/org/apache/commons): Development Framework
* ASM (/org/objectweb/asm): Utility
* Reactive Streams (/org/reactivestreams): Utility
* Simple Logging Facade for Java (/org/slf4j): Utility
* dnsjava (/org/xbill/DNS): Utility
* Retrofit (/retrofit2): Utility
Offending libs:
---------------
* Crashlytics (/com/crashlytics): Tracking
* Firebase Data Transport (/com/google/android/datatransport): NonFreeNet
* Google Mobile Services (/com/google/android/gms): NonFreeDep
* Firebase (/com/google/firebase): NonFreeNet,NonFreeDep
* Firebase Analytics (/com/google/firebase/analytics): Tracking
5 offenders.
The 5 offenders are not permitted at F-Droid (and before you ask: I wouldn't take it into my repo either unless at least Crashlytics and Firebase Analytics are removed; 5 non-free libraries is a bit much for free/libre software).
Sounds like this needs a post patched version to be releasable on fdroid.
Ah no. Apparently you have to implement some parts yourself in order to be able to compile this, as not the whole source code of the app is publicly available: https://github.com/yuliskov/SmartTubeNext/issues/622
Try this branch. It compiles, but does not run propperly: https://github.com/theScrabi/SmartTubeNext/tree/fdroid
Sounds like this needs a post patched version to be releasable on fdroid.
Also Fdroid doesn't have official Support for Android TV (Leanback) which is too bad.
That does not matter. You can still install apps from adb or use a different fdroid client ;)
That does not matter. You can still install apps from adb or use a different fdroid client ;)
Although if it were put on Fdroid I imagine a lot of Mobile (Phone & Tablet) users would download it then complain that it doesn't work correctly, without understanding that it's for TV devices. This is because Fdroid is targeted towards mobile users more so than TV users.
The fdroid client is targeted for mobile users yes, but Fdroid is primarily a repository of free/open source software, which is not and should not be bound by how you use the applications or where they will run. This satisfies the reason to add the app there.
Also there is something like an app description in fdroid so you can tell the user that it is ment for TV use ;)
users would download it then complain that it doesn't work correctly, without understanding that it's for TV devices.
To mitigate that fear: what is the minimum screen size of an Android TV device? Assuming there's none for the pockets of your trousers, you could set supports-screens
to omit "small" and "normal", just featuring "large" and "xlarge", so it wouldn't even offered to be installed on phones (and tablet users are few in comparison). Further, are there any features not (or rarely) supported by phones but always by TVs? That's what uses-feature
is for. If you declare such a feature there, the app will only be offered to devices which can supply it.
Also there is something like an app description in fdroid so you can tell the user that it is ment for TV use ;)
And there's that :rofl: As you might argue some folks won't read that (the very same folks won't read it anywhere else then either), there are things like emphasis. So you could say as first thing Android TV only!!!11!! (using <b>Android TV only!!!11!!</b>
). Those who still miss it then cannot be helped anyway…
To mitigate that fear: what is the minimum screen size of an Android TV device? Assuming there's none for the pockets of your trousers, you could set
supports-screens
to omit "small" and "normal", just featuring "large" and "xlarge", so it wouldn't even offered to be installed on phones (and tablet users are few in comparison). Further, are there any features not (or rarely) supported by phones but always by TVs? That's whatuses-feature
is for. If you declare such a feature there, the app will only be offered to devices which can supply it.
I don't know if Android TVs have a Minimum "screen size", All depends on the size of the TV (which obviously isn't known by the manufacturer). Also if you include users of MXQ and MBOX devices you can forget about those methods since it will register as a tablet or even a Phone thus you'll exclude those devices which unfortunately are the Majprity of Android TVs out there.
(I'm not saying they're good at all, I've owned on, they are lousy TV devices that need a Mouse and keyboard to be even remotely usable. You Should never buy them, get something decent).
There is a working proof-of-concept for F-Droid on Android TV: https://gitlab.com/fdroid/fdroidclient/-/merge_requests/685
It would be great to see that work progress further. I think the cleanest development path would be to take that merge request and make a development fork. We can add that development fork to fdroiddata/f-droid.org so that people can easily use releases. Then as that gets finalized, the changes can be split out into patches and merged into fdroidclient.
It's sad to see that this client contains that account of crap and that's it's not fully open source. Do we have any forks or is the developer perhaps interested in fixing this?
I would love to see this or a similar client on F-Droid.
Maybe there is a small chance of getting this to work using the NewPipeExtractro. Maybe this could be possible if someone wrote a wrapper that behaves exactly like the MediaServiceCore this way the fronted of SmartTubeNext would still be usable. Some things like login and account support would have to be removed however.
Maybe there is a small chance of getting this to work using the NewPipeExtractro. Maybe this could be possible if someone wrote a wrapper that behaves exactly like the MediaServiceCore this way the fronted of SmartTubeNext would still be usable. Some things like login and account support would have to be removed however.
Not worth it, accounts are kind of a vital feature of SmartTubeNext. People want an Ad free YouTube TV client that otherwise functions the same as regular YouTube TV, not a NewPipe TV client.
Although if it were put on Fdroid I imagine a lot of Mobile (Phone & Tablet) users would download it then complain that it doesn't work correctly, without understanding that it's for TV devices. This is because Fdroid is targeted towards mobile users more so than TV users.
I think this should be a question of the past : we invented responsive design and on the same way I think any application built for android should work on any device. It's called convergence and I have no doubt it will happen eventually. Though we might not have the use for a calculator or a calendar on a TV (it might still be the case with mouse and keyboard plugged in), it makes perfect sense for both an app store and a video player, and it's absolutely doable. I guess it's mainly a matter of having the right shortcuts on a remote control. On this matter F-droid official client is still not great to use on a TV but it already works.
I wonder what's the use of this proprietary bits ? Look mostly related to Google analytics... Are they mandatory ?
F-droid official client is still not great to use on a TV but it already works.
Which f-droid client does work best on ATV?
F-droid official client is still not great to use on a TV but it already works.
Which f-droid client does work best on ATV?
Neo store does auto updates.
Any hope this night be solved any time soon?
Any updates on this please?
Definitely more comfortable and trustworthy to install from F-Droid instead of manually. I would really like to see this added before I try this app.
Would love to see this as well. I'm tired of using adb to install SmartTube on new ATV devices
I was searching for SmartTubeNext on F-Droid but I was unable to find it. IMHO the license should be fine but I don't know about the dependencies.
It would be great if you could make SmartTubeNext available on F-Droid.
PS: Thank you for creating SmartTubeNext :pray: PPS: If you are considering to publish SmartTubeNext on F-Droid, you probably might be interested the FAQ and maybe this guide PPPS: I'm not an Android developer or related to F-Droid. So I don't know about technical limitations in case there are some.