【问题标题】:getting Null Pointer Exception when getting of media status in onstatusUpdated() while casting in android在android中投射时在onstatusUpdated()中获取媒体状态时出现空指针异常
【发布时间】:2014-11-02 10:13:09
【问题描述】:

我在第一次投射时在RemoteMediaPlayeronstatusUpdated() 方法中获取媒体状态时得到NullPointerException。如何解决这个问题,我想知道

mRemoteMediaPlayer.requestStatus(mApiClient).setResultCallback(new ResultCallback<RemoteMediaPlayer.MediaChannelResult>(){});

但在使用不同媒体进行第二次投射时效果很好,同时保持同一 chromecast 设备的会话。

mRemoteMediaPlayer.setOnStatusUpdatedListener(new RemoteMediaPlayer.OnStatusUpdatedListener() {

    @Override
    public void onStatusUpdated() {
        MediaStatus mediaStatus = mRemoteMediaPlayer.getMediaStatus();
        MediaInfo mediaInfo = mRemoteMediaPlayer.getMediaInfo();

        RemoteisPlaying = mediaStatus.getPlayerState() == MediaStatus.PLAYER_STATE_PLAYING;                                                 
    }
});

【问题讨论】:

  • 显示 LogCat 所说的内容

标签: android chromecast


【解决方案1】:

只需用简单的空指针检查包围您的代码,如下所示:

mRemoteMediaPlayer.setOnStatusUpdatedListener(new RemoteMediaPlayer.OnStatusUpdatedListener() {

@Override
public void onStatusUpdated() {
    MediaStatus mediaStatus;
    MediaInfo mediaInfo;
    if(mRemoteMediaPlayer!=null){
        mediaStatus = mRemoteMediaPlayer.getMediaStatus();
        mediaInfo = mRemoteMediaPlayer.getMediaInfo();
        if(mediaStatus!=null){
            //you could even check if mediaStatus.getPlayerState() is not null here
            //before the next line of code
            RemoteisPlaying = mediaStatus.getPlayerState() == MediaStatus.PLAYER_STATE_PLAYING;         
        }
    }                                                
}
});

【讨论】:

  • 感谢您的回答@tmalseed,现在可以正常工作而不会出现异常,但即使在启动媒体(歌曲)在接收器应用程序上播放时,RemoteisPlaying 值也是错误的,为什么会发生这种情况我如何才能获得正确的值在电视上播放媒体时,请帮助我
  • 您可能应该将此作为一个新问题提出。 '为什么 getPlayerState 为 null / 不返回 MediaStatus.PLAYER_STATE_PLAYING,即使音乐正在投射到 Chromecast'。如果我的回答解决了您的问题,请将其标记为“已接受”。
  • 至于你的第二个问题,你是在换歌之前在远程媒体播放器上调用 stop() 吗?如果是,请尝试删除 stop() 调用并加载新媒体。这解决了我遇到的类似问题。
猜你喜欢
  • 2011-12-31
  • 1970-01-01
  • 1970-01-01
  • 2013-07-27
  • 1970-01-01
  • 2023-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多