XTV用Androidプロジェクトの設定

ほんの簡単な手順で、XTV用Androidプロジェクトを設定することができます。

プロジェクトにXTVを用いるには多くの選択肢があります。たとえば、既存のプロジェクトを設定して、XTVのjarとライブラリを利用するようにできます。

しかし、この例では、Eclipse IDEを使ってXTVを使う新しいAndroidのプロジェクトを設定します。これら手順から既存のプロジェクトをどのように変更するかをご理解いただけるはずです。
注: DLNA再生ができるよう設定し、設定のテストができるようにしてください。例としてXBMCを使用してDLNA再生の設定とテストをご覧ください。
こちらのプロセスには、次のような一般的な構成要素があります。
  • 新規Androidプロジェクトを作成
  • 必須 jarとライブラリをインクルードする
  • AndroidManifest.xmlへの権限、およびactivity_main.xmlのレイアウトをコピーする
  • MainActivity.javaをコピーする
  • プロジェクトをビルドする

新規Androidプロジェクトを作成

  1. ファイル -> 新規 -> プロジェクトダイアログから、 手順に従い新しいAndroidアプリを作成します。

必須 jarとライブラリをインクルードする

  1. プロジェクトの既存libsサブダイレクトリ(必要に応じて、新しいサブダイレクトリを 作成)に、次の jarとライブラリをコピー(またはドラッグ&ドロップ):
    • Android用OoyalaモバイルSDKのベースラインから: OoyalaSDK.jar
    • Android用Ooyala XTVコネクトDLNAプラグインSDKから:
      • OoyalaDLNASDK.jar
      armeabiフォルダとそのコンテンツ

    プロジェクトのライブラリディレクトリは次のようになるはずです。

AndroidManifest.xmlへの権限、およびactivity_main.xmlの レイアウトをコピーする

  1. Ooyala XTVコネクトDLNAプラグインSDKのディレクトリで SampleAppサブダイレクトリを開きます。
  2. INTERNETACCESS_NETWORK_STATEACCESS_WIFI_STATE権限をプロジェクトに追加します。AndroidManifest.xml ファイルのXMLビューで、次の行を <Application>タグへコピーします。
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>      
         
  3. OoyalaPlayerLayoutをメインアクティビティに追加します。サンプルアプリのres/layout/activity_main.xmlファイルを開いてクリップボードへ次の行をコピーします。
          <com.ooyala.android.OoyalaPlayerLayout
            android:id="@+id/player"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="top|center_horizontal"
            android:layout_marginTop="20dp"
            android:background="#000000">
    
        </com.ooyala.android.OoyalaPlayerLayout>
  4. 新規プロジェクトのres/lout/activity_main.xmlファイルを開いて <RelativeLayout>タグを 閉じる前にコピーした行をクリップボードから貼り付けます。

MainActivity.javaをコピーして定数を設定する

  1. サンプルアプリのsrc/com/ooyala/dlnasampleappディレクトリから、MainActivity.javaファイルを新しいAndroidプロジェクトソースディレクトリへコピーします。 複数のオプションがあります。
    • 新規プロジェクトのMainActivity.java の一番上にファイルを直接コピーします。
    • サンプルアプリのMainActivity.javaファイルと新規プロジェクトのファイルを開いて、 ファイルからファイルへ行をコピーします。
    MainActivity.javaはこのようになります。
    package com.ooyala.dlnasampleapp;
    
    import com.ooyala.android.OoyalaPlayerLayout;
    import com.ooyala.android.dlna.DlnaOoyalaPlayerLayoutController;
    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    
    public class MainActivity extends Activity {
      private static final String PCODE = "yourPcodeHere";
      private static final String PLAYERDOMAIN = "www.ooyala.com";
      private static final String EMBEDCODE = "yourEmbedCodeHere"; 
    
      private DlnaOoyalaPlayerLayoutController layoutController;
    
      @Override
      protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        layoutController = new DlnaOoyalaPlayerLayoutController((OoyalaPlayerLayout) findViewById(R.id.player), PCODE, PLAYERDOMAIN);
        layoutController.getPlayer().setEmbedCode(EMBEDCODE);
      }
      
      @Override
      protected void onStart() {
        super.onStart();
        layoutController.startDiscovery();
      }
    
      @Override
      protected void onStop() {
        super.onStop();
        layoutController.stopDiscovery();
        if (layoutController.getPlayer() != null) {
          layoutController.getPlayer().suspend();
        }
      }
    
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
      }
    
    }
    
          
  2. ファイルをコピーすると、ファイルのpackageステートメントが新規プロジェクトの packageステートメントに一致するように修正します。
    MainActivity.javaの一番上で、この行を変更してアプリの正しいパッケージ名を示すようにします。
    package com.ooyala.dlnasampleapp;          
            
  3. プロバイダーID(PCODE)をBacklotアカウントから取得します。
  4. ビデオのコレクションから、新規アプリで使用するビデオの中から1つ、embedコード(コンテンツID)を取得します。
  5. 次の行の値をプロバイダーID(PCODE)とコンテンツID (EMBEDCODE)で置き換えます。PLAYERDOMAINの値はを変更せず、そのままにします。
      private static final String PCODE = "yourPcodeHere";
      private static final String PLAYERDOMAIN = "www.ooyala.com";
      private static final String EMBEDCODE = "yourEmbedCodeHere";          
            

プロジェクトをビルドする

  1. 必要なコンポーネントをすべて開発環境にコピーしたら、実行を選択して、プロジェクトをビルドします。
    注: DLNA再生をテストするには、Androidエミュレーターではなく実際のデバイスを使用する必要があります。 エミュレーターでは不十分です。
トラブルシューティング

ビルド、またはビルド結果に問題があれば、次のトラブルシューティングのヒントをすべて試してみてください。

  • デバイスがすべて同じWifiネットワーク上にあり、次のポートが指定されたプロトコルに対して開かれて いるか確認します。
    • UDP: ポート 1900
    • TCP: ポート 2869
  • XBMC DLNA/Airplayレンダラーで設定を検証します。XBMCを使用してDLNA再生の設定とテストをご覧ください。

この記事はお役にたちましたか?