2

1 つの Android アプリケーションを開発する必要があります。

ここでは、全画面モードと通常モードで YouTube ビデオを再生する必要があります。

私はyoutubeplayerfragmentを使用しています。

ここでは、ビデオがフルスクリーン モードで適切に再生されています。

同じビデオが通常モードで再生されませんでした。

私の正確な問題は、

ビデオを再生しようとすると、空白のビデオしか表示されませんが、すべてのオーディオと字幕が表示されます。

戻るボタンを押すと、ビデオ プレーヤーが閉じる前に最後のビデオ フレームが表示されます。

なぜこれらの問題に直面しているのですか???

解決策を教えてください??

次のxmlコードを使用しています:

<fragment
  android:name="com.google.android.youtube.player.YouTubePlayerSupportFragment"
  android:id="@+id/youtube_fragment"
  android:layout_width="match_parent"
  android:layout_below="@+id/title"
  android:layout_height="wrap_content"/>

これはアクティビティ コードです。

    _Video = articlevideo.substring(1);

        FragmentManager fragmentManager = getChildFragmentManager();
          FragmentTransaction fragmentTransaction = fragmentManager
                  .beginTransaction();
        YouTubePlayerSupportFragment fragment = new YouTubePlayerSupportFragment();
        fragmentTransaction.add(R.id.youtube_fragment, fragment); 
         fragmentTransaction.commit();


       fragment.initialize(DeveloperKey.DEVELOPER_KEY, new OnInitializedListener() {


            public void onInitializationSuccess(YouTubePlayer.Provider provider,
                    YouTubePlayer player, boolean wasRestored) {
                if (!wasRestored) {
                    player.cueVideo(_Video);
                }
            }
            private static final int RECOVERY_DIALOG_REQUEST = 1;
            @Override
            public void onInitializationFailure(YouTubePlayer.Provider provider,
                    YouTubeInitializationResult errorReason) {


              if (errorReason.isUserRecoverableError()) {
                errorReason.getErrorDialog(getActivity(), RECOVERY_DIALOG_REQUEST).show();
              } else {
                String errorMessage = String.format(getString(R.string.error_player), errorReason.toString());
                Toast.makeText(getActivity(), errorMessage, Toast.LENGTH_LONG).show();
              }
            }

        });

私のコードで何が問題なのですか。何か提案があれば教えてください。

4

1 に答える 1

0

YouTube Direct Lite アプリを参考に確認できます。全画面表示または方向変更への切り替え中に、アクティビティが強制終了され、Android で再度作成されます。したがって、次のようなものが必要になる場合があります

android:configChanges="方向|画面サイズ" >

マニフェストで確認してください。

于 2013-05-13T02:35:43.837 に答える