【问题标题】:Exoplayer in recycler view keeps playing when app goes in background当应用程序进入后台时,回收站视图中的 Exoplayer 会继续播放
【发布时间】:2021-03-24 11:04:42
【问题描述】:

这是我的 exoplayer 在回收器视图中的实现。当应用程序进入后台时,我希望 exoplayer 停止。

protected void onBindViewHolder(@NonNull AudioModelHolder holder, int position, @NonNull AudioModel model) {
    AudioAttributes audioAttributes = new AudioAttributes.Builder()
            .setUsage(C.USAGE_MEDIA)
            .setContentType(C.CONTENT_TYPE_MUSIC)
            .build();

    holder.textViewTitle.setText(model.getTitle());
    player = new SimpleExoPlayer.Builder(context).build();
    player.setAudioAttributes(audioAttributes, true);
    holder.playerView.setPlayer(player);
    holder.playerView.setShutterBackgroundColor(Color.WHITE);
    MediaItem mediaItem = MediaItem.fromUri(model.getUrl());
    player.setMediaItem(mediaItem);
    player.setPlayWhenReady(false);
    player.prepare();

}

音频片段

 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    view = inflater.inflate(R.layout.fragment_audio, container, false);

    MobileAds.initialize(getActivity(), initializationStatus -> {
    });

    AdView mAdView = view.findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder().build();
    mAdView.loadAd(adRequest);
    Query query = FirebaseFirestore.getInstance()
            .collection("audios");

    FirestoreRecyclerOptions<AudioModel> options = new FirestoreRecyclerOptions.Builder<AudioModel>()
            .setQuery(query, AudioModel.class)
            .build();
    adapter = new AudioAdapter(options, getActivity());
    RecyclerView recyclerView = view.findViewById(R.id.audio_recycler);
    recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
    recyclerView.setAdapter(adapter);

      return view;
}


@Override
public void onStart() {
    super.onStart();
    adapter.startListening();

}

我在标签布局中使用这个播放器。进入后台时播放器布局会重置,但音频会继续播放。

【问题讨论】:

    标签: android firebase exoplayer2.x android-viewpager2


    【解决方案1】:

    当应用程序进入后台时你应该停止视频播放,recyclerview 和应用程序不会处理这个

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-23
      • 2018-02-04
      • 1970-01-01
      • 2014-01-06
      相关资源
      最近更新 更多