MediaPlayer
を使用して Android を実行しようとしていますrunOnUiThread
。で例外をキャッチしませんでしたsetDataSource
。しかし、その後、何も起こりませんMediaPlayer
。サーフェスが変更されたときにコールバックを提供する必要がありonPrepared
ます。
この方法はサポートされてMediaPlayer
いないようです。本当の場合、回避策はありますか? ブロックされているネットワーククエリで情報を取得する必要があるため、この種のロジックが必要です。私はそこから逃げる必要がありますonSuccess
。
これに対するあなたの提案は何ですか?どうもありがとう!
onResume()
{
getInfo(xxx);
}
void getInfo(url, new DataListener() {
@Override
public void onDataSuccess(xxx) {
playVideoOnSuccess(xxx);
}
}
public void playVideoOnSuccess(xxx)
{
myBaseActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
try {
mPlayerListener = new VideoPlayerListener(null, content);
// create new mediaplayer
mVideoPlayer = VideoPlayer.getInstance();
mVideoPlayer.setVideoPlayerListener(mPlayerListener);
// setDataSource
mVideoPlayer.consumeContent(content);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}