0

Android アプリでカスタム メディア コントローラーを使用したいので、vidtry コード ( http://github.com/commonsguy/vidtry )、特に Player.java を調べます。

サンプルはそのままで問題なく動作します。ただし、アプリの起動時にサンプルで固定ビデオを自動的に再生したい (そのため、URL を入力したくありません)。追加した:

 @Override
 public void onResume() {
  super.onResume(); 
  address.setText("/sdcard/mydata/category/1/video_agkkr6me.mp4");
  go.setEnabled(true);
  onGo.onClick(go);  
 }

ここで奇妙なことに、アプリを実行すると、ビデオの音声は再生されますが、画像は表示されません。他のすべては正常に機能します (進行状況バーなど)。goボタンの手動クリックとプログラムによるクリックの違いがわかりません。コードを確認したところ、手動​​クリックとプログラムによるクリックで違いが見られませんでした。

要素(特に表面)が隠されている可能性があるかどうかを確認しましたが、そうではありません。私も試してみました

surface.setVisibility(View.INVISIBLE);
surface.setVisibility(View.VISIBLE);

再描画に問題がある場合でも、違いはありません。

手動で移動ボタンを押すとビデオ画像が表示されますが、自動的に起動しないだけです。

4

1 に答える 1

5

onResume ではまだサーフェスの準備ができていないようでした。SurfaceHolder.Callback を実装してから、surfaceCreated(SurfaceHolder holder) からビデオを開始すると、問題が解決します。

于 2010-06-03T06:01:12.223 に答える