Google의 표준 SimpleExoPlayer 구현에 '전체 화면'버튼을 추가하고 싶습니다. ImageButton을 추가하면 모든 것이 잘 작동합니다.ExoPlayer를 서비스 내에서 ExoPlayerView로 연결하는 방법
다음은 전체 화면이 다음 단계에서 작동하기로 결정했습니다. 버튼을 누른 후 전체 화면 SimpleExoPlayerView로 새로운 활동을 열고 동영상 URL 및 현재 위치를 전달하고 플레이어를 초기화하고 주어진 위치를 찾습니다. 작동하지만 플레이어가 다시 초기화하는 데 필요한 장치에 따라 1-3 초가 걸립니다. 이 같은 지금
내가 의도 서비스 내에서 플레이어의 인스턴스를 가지고 그냥 (미리보기 또는 전체 화면보기)를 보여주고 싶어 모든보기에 기존의 플레이어를 다시 연결하고 싶습니다 :
mPlayerView.setPlayer(mPlayer);
문제는 해당 서비스에는 플레이어가 있고 활동에 대한 견해가 있습니다. 그들 중 어느 누구도 플레이어를 볼 수 있도록 둘 다 가질 수 없습니다. 이 문제를 해결하려면 서비스 클래스에 플레이어에 대한 정적 링크가있을 수 있으므로 활동은 정적 참조를 통해 가져올 수 있습니다. 하지만 이것은 약간의 코드 냄새처럼 보이고 스레드 간의 통신에 문제가 없는지 나는 알지 못합니다.
그렇다면 어떻게 플레이어를 서비스 (Serializable 또는 Parcelable이 아닌)에서 활동으로 전달할 수 있습니까? 아니면 어떻게 플레이어 뷰를 서비스에 전달할 수 있습니까?
시도 :
또한 활동 재로드를 방지하기 위해 매니페스트 활동이를 추가해야합니다. https://developer.android.com/guide/components/bound-services.html –