• @satorufujiwara
• CyberAgent, Inc / AbemaTV, Inc
• FRESH! by AbemaTV
• ExoPlayer / Kotlin
• Organizer of Shibuya.apk
Slide 3
Slide 3 text
Tips of ExoPlayer
@satorufujiwara
Slide 4
Slide 4 text
qiita.com/satorufujiwara
Slide 5
Slide 5 text
Tips of ExoPlayer
• About player state
• SurfaceView or TextureView
• Handle many callbacks
• How to update to new version
Slide 6
Slide 6 text
About player state
• ExoPlayer.Listener#onPlayerStateChanged(boolean,int)
Slide 7
Slide 7 text
SurfaceView or TextureView
• https://google.github.io/ExoPlayer/faqs.html
• If smooth animation or scrolling is not
required then SurfaceView should be
preferred.
Slide 8
Slide 8 text
Handle many callbacks
Slide 9
Slide 9 text
Too many callbacks…
Slide 10
Slide 10 text
Handle many callbacks
• Rearrange callbacks by it’s use-cases.
• Implements only ExoPlayer.Listener to player
class.
Slide 11
Slide 11 text
How to update to new version
Slide 12
Slide 12 text
Only 1 main contributor?
Slide 13
Slide 13 text
Happenings in new releases
• Change interfaces
• Change constructor params
Slide 14
Slide 14 text
How to update to new version
• Don’t use ExoPlayer’s classes in Activity or
Fragment
• Create wrapper classes