Commit Graph

284 Commits

Author SHA1 Message Date
Jannik 236ca9a6c9
Implement media fragment for tv shows 2022-02-01 17:21:42 +01:00
Jannik a46fd4c6d2
implement index call
index is needed to retrieve identifiers necessary for streaming
2022-02-01 17:21:42 +01:00
Jannik c4bc3c7ea2
add rudimentary parsing for browsing results 2022-02-01 17:21:42 +01:00
Jannik 844ff41dd3
add crunchyroll login and browse (no parsing for now) 2022-02-01 17:21:42 +01:00
Jannik 3935f37267
update libraries
* kotlinx-coroutines-android 1.5.1 -> 1.5.2
* exoplayer 2.14.2 -> 2.15.0
* jsoup 1.13.1 -> 1.14.2
* gradle agp 7.0.1 -> 7.0.2
2021-09-05 13:43:27 +02:00
Jannik eeb1c33e43
use the epsidoeId for the next epsiode in PlayerViewModel 2021-09-05 11:54:55 +02:00
Jannik 8753d4f36f
fix tmdb episode description in player 2021-09-05 00:08:53 +02:00
Jannik 5ea94b7ded
add numberStr to AoDEpisode type & show tmdb episode info in player
* use numberStr instead of index to display the correct episode number, allowing for number such as "12.5"
* show tmdb episode description in player if found and aod description is missing
2021-09-05 00:08:03 +02:00
Jannik 062013489d
use notifyItem...() instead of notifyDataSetChanged() in MediaFragment 2021-09-05 00:04:59 +02:00
Jannik ed9eff433b
AoDParser Media handling rework [Part 2/2]
* move Player to new AoD media Implementation
* remove old AoD media Implementation from AoDParser
2021-09-04 13:33:46 +02:00
Jannik c2a5f768b8
AoDParser Media handling rework [Part 1/2] 2021-08-31 19:47:18 +02:00
Jannik a505315781
fix crash if media is not found in tmdb 2021-08-29 15:05:34 +02:00
Jannik d76538cf28
use locale instead of string for language in AoDPlaylist 2021-08-29 15:05:34 +02:00
Jannik 309a991007
fix for AoDParser related code clean up 2021-08-29 15:05:34 +02:00
Jannik 0340c83b47
clean up some AoDParser related code 2021-08-29 15:05:34 +02:00
Jannik 9dfd2cf70b
added skip opening for tv shows
* available for tv shows, where metaDB has the needed information
2021-08-29 15:05:34 +02:00
Jannik 26d2da923b
use Gson in TMDBApiController, adapt tmdb types to api documentation
* use gson fromJson() to parse tmdb response
* adapt tmd types to documentation (nullable/non nullable)
2021-08-29 15:05:34 +02:00
Jannik c66c725ee3
use tmdb data if missing on aod
*  episode description
2021-08-29 15:05:34 +02:00
Jannik 44f99295e9
rework the tmdb controller
the tmdb interation now provides additional information:
* tv seasons & episodes
* movie & tv show (air date, status)
2021-08-29 15:05:34 +02:00
Jannik d417181b70
update kotlin, gradle & libraries
* kotlin 1.5.21 -> 1.5.30
* gradle wrapper 7.0.2 -> 7.2
* gradle agp 7.0.0 -> 7.0.1
* constraintlayout 2.0.4 -> 2.1.0
2021-08-29 15:02:40 +02:00
Jannik 9df5be003b
update agp, kotlin, appcompat and exoplayer
* agp 4.2.2 -> 7.0.0
* kotlin 1.5.20 -> 1.5.21
* appcompat 1.3.0 -> 1.2.1
* exoplayer 1.14.1 -> 1.14.2
2021-08-15 00:39:17 +02:00
Jannik cf3b1802d5
update kotlin coroutines
1.5.0 -> 1.5.1
2021-07-10 20:37:02 +02:00
Jannik 4de97ca42e
version 0.4.2 2021-07-09 18:54:44 +02:00
Jannik 664959641f
fix tmdb search for movies
movies don't have name but titles
2021-07-04 13:01:49 +02:00
Jannik ba7d82bc2b
replace deprecated OnNavigationItemSelectedListener 2021-07-03 15:58:20 +02:00
Jannik e0a6485ed7
tmdb api improvements
* sort tmdb results by name
* remove season information in media title before searching
2021-07-03 15:51:52 +02:00
Jannik 5555269877
sort tmdb results with String.compareTo 2021-07-03 13:46:13 +02:00
Jannik 3fcd1a96b2
update kotlin, some libs & agp
* kotlin 1.5.10 -> 1.5.20
* core-ktx 1.5.0 -> 1.6.0
* material-components-android 1.3.0 -> 1.4.0
2021-07-03 13:45:59 +02:00
Jannik 03e9c3dae5
fix crash on myList element not present in overall itemMediaList
fixes #42
2021-07-03 13:36:15 +02:00
Jannik 8afbae1e1a
set pip source hint & update exo player
* exo player 2.14.0 -> 2.14.1
2021-06-17 19:36:13 +02:00
Jannik 164db8ebd1
remove unneeded import 2021-06-12 21:03:19 +02:00
Jannik 44d1825095
minor code clean up 2021-06-12 21:02:09 +02:00
Jannik 1d071eafdb
add media session & update exo player to 2.14.0 2021-06-12 20:57:12 +02:00
Jannik 0decf317d9
remove some unneeded resources 2021-06-06 18:06:59 +02:00
Jannik 5e48e724a7
update some libraries & coroutines 1.5.0
* androidx.core 1.3.2 -> 1.5.0
* androidx.appcompat 1.2.0 -> 1.3.0
* gson 2.8.6 -> 2.8.7
* coroutines-android 1.4.3 -> 1.5.0
  * don't use GlobalScope, use lifecycleScope and vieModelScope instead. This fixes a few issues when fragments where destroied befor the coroutine finished.
* gradle wrapper 7.0 -> 7.9.2
2021-06-06 17:54:19 +02:00
Jannik 46e3d1f1b6
don't use "save" when selecting the media language, use "apply" instead 2021-06-04 00:18:33 +02:00
Jannik a3a89c6b64
don't use deprecated startActivityForResult() use registerForActivityResult() instead 2021-05-27 19:50:00 +02:00
Jannik 7ce67f57cd
add export/import of my list
fixes #39
2021-05-26 19:46:46 +02:00
Jannik 063b5405fc
add dev settings gui
enable dev settings by clicking the app icon in the about screen 5 times
2021-05-09 20:31:51 +02:00
Jannik be591a961a
update agp and kotlin
apg 4.1.3 -> 4.2.0
kotlin 1.4.32 -> 1.5.0
2021-05-09 19:32:31 +02:00
Jannik 8160641b8f
update exoplayer and gradle wrapper
* exoplayer 2.13.2 -> 2.13.3
* gradle 6.7.1 -> 7.0
* remove jcenter repository (fixes #29)
2021-04-17 21:38:03 +02:00
Jannik 86dfd69b4b
add subscription info to settings fragment
* update androidx.navigation: 2.3.4 -> 2.3.5
2021-04-17 20:59:37 +02:00
Jannik e8ab11d5ff
version 0.4.1 2021-03-13 22:17:25 +01:00
Jannik 0bb433b5cb
set timeout for laoding the playlist to 120 seconds
fixes #36
2021-03-13 22:08:53 +01:00
Jannik b05ecf64a6
minor code clean up 2021-03-11 19:11:12 +01:00
Jannik 7a2f3ad265
update some libraries
* coroutines-android 1.4.2 -> 1.4.3
* androidx.navigation 2.3.3 -> 2.3.4
2021-03-11 18:25:28 +01:00
Jannik 06770559ee
version 0.4.0 2021-03-04 20:35:11 +01:00
Jannik 1a9de4124d
minor pip mode fixes 2021-03-04 20:19:54 +01:00
Jannik 6cc59a72fc
don't exclude player from history
Previously it was possible to exit the player without going into pip mode and having no option to open this player activity again.
2021-03-02 14:52:46 +01:00
Jannik a07f291098
only update media title if there is one & update exoplayer to 2.13.2 2021-02-27 21:12:42 +01:00
Jannik fad64ad385
update exoplayer to version 2.13.1 2021-02-21 13:59:23 +01:00
Jannik 9d3e9c5019
dsiable scrolling on appbar if no tabs where added to media fragment
fixes #33
2021-02-20 22:57:00 +01:00
Jannik 09191f6732
fix possible and rare index out of bounds 2021-02-13 00:31:58 +01:00
Jannik e762745705
use CoordinatorLayout instead of NestedScrollView in media fragment 2021-02-08 00:22:50 +01:00
Jannik f342d1a3f4
udpate some libraries
* kotlin 1.4.21 -> 1.4.30
* material components 1.3.0-rc01 -> 1.3.0
* glide 4.11.0 -> 4.12.0
2021-02-06 23:01:14 +01:00
Jannik b02fadaa89
fix unchecked single choice button in theme dialog beeing white 2021-02-06 22:45:28 +01:00
Jannik 5bb51c9054 Add similar titles to media fragment (#28)
* update androidx navigation libraries
* add similar media to MediaFragment
* parse similar media in AoDParser

Reviewed-on: #28
Co-Authored-By: Jannik <seil0@mosad.xyz>
Co-Committed-By: Jannik <seil0@mosad.xyz>
2021-02-06 19:02:12 +01:00
Jannik 67c1e2bfdc
minor clean up 2021-01-21 20:31:15 +01:00
Jannik 70aafb1a14
update gradle plugin to 4.1.2 2021-01-21 19:57:01 +01:00
Jannik 373f5c56c9
rework the about fragment 2021-01-21 19:53:16 +01:00
Jannik 4c5d6e6e24
add top ten to home screen & minor fixes
* use plural for runtime and episodes
* code clean up
2021-01-21 18:22:53 +01:00
Jannik c6874d0e54
move showFragment to ActivityUtils 2021-01-20 16:10:41 +01:00
Jannik a740ccfee1
update libs
* exoplayer 2.12.2 -> 2.12.3
* material components 1.3.0-beta01 -> 1.3.0-rc01
2021-01-16 00:22:31 +01:00
Jannik 8a22554846
add onboarding (login), change default theme to dark
closes #14
2021-01-16 00:16:47 +01:00
Jannik 3f45d769d2
rework initial loading, don't crash on login timeout on app start
closes #25
2021-01-13 20:57:21 +01:00
Jannik 7a95304ee1
fix episodes not showing, if scroll is not needed in MediaFragment 2021-01-11 22:12:21 +01:00
Jannik 8e8db386a0
play new media if selected while player is in pip & minor code clean up
move some player avtivity stuff to ActivityUtils
2021-01-08 10:58:24 +01:00
Jannik 86e07ba2cf
return to main activity if pip was launched before 2021-01-08 09:31:50 +01:00
Jannik e5037cf9ac
add pip support to player activity 2021-01-06 15:07:31 +01:00
Jannik e4ac01605f
fix crash after clicking on the highlight play button 2021-01-01 13:08:25 +01:00
Jannik 75ecac6144
always visible next ep button fix
the always visible next ep button cloud be hidden, when playing the last ep of a tv show and changing to a previous ep via the episodes list
2021-01-01 12:15:17 +01:00
Jannik 1efc108bd7
version 0.3.0 2020-12-31 13:43:57 +01:00
Jannik 31197a5d44
minor fixes
* fix current language is set to preferred and not to actual language
* fix player episodes lists sometimes missing the play icon
2020-12-31 13:12:37 +01:00
Jannik 489ef02a35
fix controls autohide not working when epsiodes list was shown
fixes #19
2020-12-30 20:08:19 +01:00
Jannik 9705a752fb
don't crash if initial loading was not successful 2020-12-30 14:18:04 +01:00
Jannik 7a5f90cb82
don't initialize exoplayer, if view model exists and player is ready
this prevents the media being reloaded, when the app is moved to the background and to the foreground again
2020-12-28 20:45:52 +01:00
Jannik 800c2a144c
polish player episodes list ui
closes #16
2020-12-28 20:17:11 +01:00
Jannik 6bec0512ba
minor player fixes
* fix exoplayer access on wrong thread
* fix remaining time calculation sometimes failed
2020-12-27 20:41:18 +01:00
Jannik b3ce43c614
release player in PlayerVIewModel onCleared()
this fixes playback after the activity has been destroyed, while being in background
2020-12-27 20:31:18 +01:00
Jannik 7845770067
Clean up PlayerActivity and PlayerViewModel
* use Local instead of streamURL to save selected language, this allows nextEp/ selected Eps to use previously selected language
* hide episodes button, if media is a movie
2020-12-27 20:11:01 +01:00
Jannik 94da8c6cee
player language settings [Part 2]
* move player object to PlayerViewModel
* minor code clean up
2020-12-26 20:09:35 +01:00
Jannik 8a43567737
rework how different streams/languages per episode are handled
* potentially support more than 2 streams
* part of language settings in player
2020-12-26 14:39:35 +01:00
Jannik 8f60a30d61
improve media parsing / loadStreams()
* fix #20, return 0 as episode number on NumberFormatException
* don't crash if a episode can not be parsed
* update material components: 1.3.0-alpha04 -> 1.3.0-beta01
2020-12-26 11:32:09 +01:00
Jannik 00699aaec7
add language settings to player [Part 1] 2020-12-20 20:21:27 +01:00
Jannik bba642e9e3
use a random new title, if highlights is empty 2020-12-18 17:23:04 +01:00
Jannik 04893060e4
add episodes list to player [Part 2] 2020-12-15 23:15:14 +01:00
Jannik 6fc7bb2c1e
add episodes list to player [Part 1] 2020-12-14 23:46:55 +01:00
Jannik ab180ddd89
add new simulcasts and new titles to home screen
* simulcasts and new titles
* update some libraries
* don't crash if AoDPraser fails to parse mediaId
2020-12-11 10:54:40 +01:00
Jannik 98636d326e
make sure highlighted media has a valid mediaId
this also prevents non media from showing as highlights
2020-12-07 17:50:10 +01:00
Jannik 6775a4da2e
show AoD highlights on home fragment 2020-12-06 15:18:15 +01:00
Jannik a390bc9686
update exoplayer to version 2.12.2 2020-12-05 22:17:54 +01:00
Jannik 82bf34e4cb
update theme colors to better reflect material design guidelines
* dark primary: #000000 -> #121212
2020-12-05 21:51:12 +01:00
Jannik e34e5b2bbd
replace licenses dialog and about dialog with about fragment 2020-12-05 21:03:14 +01:00
Jannik 77e657d37c
version 0.2.1 2020-12-02 11:25:36 +01:00
Jannik 20407d9cac
add permanently visible next episode button & fix autoplay
* autoplay / play next episode could sometimes skip episodes
2020-12-02 11:14:09 +01:00
Jannik dbd4b26a65
minor text change 2020-11-29 20:25:22 +01:00
Jannik ac5aee20de
update material components to alpha 4 2020-11-29 18:23:02 +01:00
Jannik 32844223fc
minor episodes ui improvements
* show 3 lines of episode description
* episodes title: Episode xy -> Ep. xy
2020-11-28 15:09:39 +01:00
Jannik d01e87bf14
use suspending functions for coroutines when possible
* fix crash, when media is selected, but MediaFragment is removed before AoDParser could load data
2020-11-27 11:06:16 +01:00
Jannik 3ed55ca3c9
fix episodes without a streaming link make AoDParser crash 2020-11-26 17:32:15 +01:00
Jannik dfaf359952
fix poster not being scaled correctly
regression from 2de1419d36
2020-11-26 17:07:33 +01:00
Jannik 78d9f3cfa5
version 0.2.0 2020-11-26 15:01:19 +01:00
Jannik db5758edf9
minor code clean up 2020-11-25 23:33:06 +01:00
Jannik 2de1419d36
fix theme not applying to nav bar
regression from 7df99ea0cc
2020-11-25 23:26:46 +01:00
Jannik 7df99ea0cc
use view binding wherever possible 2020-11-25 22:35:55 +01:00
Jannik 8d1c3d9a3f
move some player data to PlayerViewModel 2020-11-25 16:04:04 +01:00
Jannik c0c5cb9110
change themeSecondaryDark to #202020 2020-11-24 18:07:48 +01:00
Jannik 21b6e358e7
theme selection & gradle update
* it's now possible to change the app theme (light/dark)
* update gradle to version 6.7.1
* update gradle pugin to version 4.1.1
* update kotlin to  1.4.10
2020-11-23 20:11:10 +01:00
Jannik 0e5c697bce
set theme for dialogs 2020-11-23 09:53:44 +01:00
Jannik 830f7e753b
theme account fragment, new primary & accent color 2020-11-22 23:23:28 +01:00
Jannik 71079ddc92
add light and dark theme
* currently the theme can not be changed
2020-11-22 14:24:02 +01:00
Jannik 57897077ab
fix next episode button 2020-11-22 14:20:17 +01:00
Jannik dcd6ebccea
theme rework preparation 2020-11-21 19:40:55 +01:00
Jannik 91c9b6d716
fix some minor player gui issues
* hide rwd_10 button when indicator is shown
* update remaining time more often
2020-11-21 18:05:34 +01:00
Jannik 256c32aa3c
add rwd/ffwd double tap indicator & pause/play on long press 2020-11-20 11:20:11 +01:00
Jannik 3880b3ab75
add watched callback for next episode 2020-11-18 18:58:39 +01:00
Jannik 0f0573e5bd
adjust size of rewind/fast forward button 2020-11-16 20:42:25 +01:00
Jannik 6ce263832b
use custom rewind/fast forward button with animations 2020-11-16 19:23:06 +01:00
Jannik fd099e97e6
add visual indicator for rewind/forward gesture 2020-11-15 17:17:56 +01:00
Jannik d4fa726f9c
improve autoplay next episode
* add animations to show/hide next episode button
* add option to disable/enable autoplay
2020-11-15 13:39:33 +01:00
Jannik c8d80ddc9f
Fix my-list issues
* fix entries can be added multiple times to my list
* fix entries can’t be removed from my list after the app was restarted
* closes #15
2020-11-14 13:10:05 +01:00
Jannik 14377c3f18
don't show next episode, if there is no 2020-11-13 15:45:52 +01:00
Jannik 23713fc1e6
Player: add auto play next episode 2020-11-13 15:36:12 +01:00
Jannik 353ae6937a
Player: get media info by id
This allows us to get additional data (needed for "play next episode")
2020-11-13 11:23:09 +01:00
Jannik 2e0a114a80
player interface part 3
add double tap to rewind/forward
2020-11-08 18:05:46 +01:00
Jannik 0e9500e39d
Player: increase clickable area of back button 2020-11-07 18:30:12 +01:00
Jannik 27e8e1c3c2
player interface part 2
* replace current time position with remaining time
* show title and back button at the top
2020-11-07 18:23:09 +01:00
Jannik e51fb0b290
add remaining time to player 2020-11-07 13:33:59 +01:00
Jannik d3f078c661
disable time-bar animation 2020-11-06 10:21:57 +01:00
Jannik 1118c8339c
custom player interface: add progress-bar, rewind/forward 2020-11-05 20:07:41 +01:00
Jannik 1595ef52bc
start working on custom play controls 2020-11-05 18:47:49 +01:00
Jannik 1523e0235a
tv shows: play next episode, on play btn click 2020-11-03 18:21:23 +01:00
Jannik 4ec5d0fdc4
add fastlane metadata 2020-11-01 20:52:45 +01:00
Jannik 8a516c640d
add splash activity 2020-11-01 20:17:17 +01:00
Jannik 49430e10bf
update exoplayer to version 2.12.1 2020-10-30 10:03:10 +01:00
Jannik 81b041ab61
added a app icon
closes #11
2020-10-25 20:04:48 +01:00
Jannik cf6a110455
set player rewind/forward to 10 sec 2020-10-23 11:51:09 +02:00
Jannik c138ab4587
add option to prefer the secondary stream, if present 2020-10-23 11:28:47 +02:00
Jannik f0ed6aa379
enable code shrink 2020-10-20 20:22:50 +02:00
Jannik a5fffd5d02
don't use gson.fromJson for a potentially unstable api 2020-10-20 20:07:59 +02:00
Jannik ff0727da22
fix movie parsing 2020-10-19 22:07:55 +02:00
Jannik ce84cb57a8
rework media parsing, parse secondary stream (sub/jap)
* use the secondary stream if no primary is present
2020-10-19 21:57:02 +02:00
Jannik 4c274eb062
made AoDParser an object 2020-10-19 19:59:53 +02:00
Jannik a25ec81f6b
added new episodes to home screen 2020-10-19 17:34:41 +02:00
Jannik aeb74dcb29
rework MediaItemAdapter to use ItemMedia instead of Media
This allows us to get the media onClick directly from the AoDParser. Media inforamtion are now only stored in the parsers mediaList.
2020-10-16 19:56:08 +02:00
Jannik 5458b43354
fix #9 & replace my list checkbox with layout for easier gui building 2020-10-16 18:24:34 +02:00
Jannik d912ed34a3
add a circular transparent background to the episode play icon 2020-10-16 14:08:17 +02:00
Jannik 9f1717e646
update my list on home screen, when changed 2020-10-16 11:23:32 +02:00
Jannik 085b2013ab
play episode on poster click
closes #7
2020-10-16 10:05:11 +02:00
Jannik 474b72df49
add favorite list to home screen 2020-10-15 21:00:31 +02:00