Skip to main content
Skip table of contents

Editing the MainActivity file

Use this to add the minimum amount of code to enable playback of a single clear stream (identified by a hard-coded string) as soon as the app starts.

Expand appsrcmainjavafilename and open the MainActivity file.

  1. Add the following imports:

    JAVA
        import nagra.otv.sdk.OTVSDK;
        import nagra.otv.sdk.OTVVideoView;
  2. Below the line public class MainActivity extends AppCompatActivity { add:

    JAVA
        static final String  TAG = "MainActivity";
        private OTVVideoView mOTVVideoView = null;
        private int          mPausePos = 0;
        private String       mVideoURI = "https://d3bqrzf9w11pn3.cloudfront.net/basic_dash_bbb_clear/bbb_public.mpd";
  3. Replace the contents of the onCreate method with the following to set a reference to the video view and load the SDK.

    JAVA
        @Override
        protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          OTVSDK.load(this);
          setContentView(R.layout.activity_main);
          mOTVVideoView = findViewById(R.id.otvVideoView);
        }

    OTVSDK.load(Context context); must be called before accessing any SDK 5 methods as it starts up the libraries. The method needs to be called only once; either at application start-up or before the first use of the SDK.

  4. Add the following Android onStart method to set and start the stream.

    JAVA
    	@Override
    	public void onStart()
    	{
    	super.onStart();
    	mOTVVideoView.setVideoPath(mVideoURI);
    	mOTVVideoView.start();
    	}
  5. Add the following Android onPause method to save the current position and pause the playback.

    JAVA
        @Override
        public void onPause()
        {
          super.onPause();
          if(mOTVVideoView != null)
          {
            mPausePos = mOTVVideoView.getCurrentPosition();
            mOTVVideoView.pause();
          }
        }
  6. Add the following Android onResume method to seek to the paused position and start playback.

    JAVA
        @Override
        public void onResume()
        {
          super.onResume();
          if(mOTVVideoView != null && mPausePos > 0)
          {
            mOTVVideoView.seekTo(mPausePos);
            mPausePos = 0;
          }
        }

Next step: Add a video view element to the layout.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.