2016-10-26 5 views
0

Я работаю над воспроизведением видео, когда когда-либо меняю ориентацию экрана, видео возобновляется. Я хочу, чтобы пользователь менял ориентацию, которую видео должно начинаться только с этой точки. действие не должно перезапускаться.Изменение ориентации экрана для экрана Android

Мой код:

public class Activity_Play_Video extends Activity { 

VideoView videoView; 
String uri; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_activity__play__video); 
//  Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
//  setSupportActionBar(toolbar); 

    Intent intent1 = getIntent(); 
    String stream = intent1.getStringExtra("Stream_url"); 
    uri = "http://s5.wwl.tv/wowzastroage/content/" + stream + ".mp4"; 
    videoView = (VideoView) findViewById(R.id.video_view); 
    videoView.setVideoPath(uri); 
    Log.e("####", uri); 
    videoView.setMediaController(new MediaController(this, true)); 
    videoView.start(); 
} 

@Override 
public void onConfigurationChanged(Configuration newConfig) { 
    super.onConfigurationChanged(newConfig); 

    if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) { 
     setContentView(R.layout.activity_activity__play__video); 
    } else if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { 

     setContentView(R.layout.activity_activity__play__video); 
    } 
} 
} 

Menifest:

 <activity 
android:name="com.wowza.gocoder.sdk.sampleapp.Activity_Play_Video" 
android:label="@string/title_activity_activity__play__video" 
android:configChanges="orientation|keyboardHidden|screenSize" 
android:theme="@style/AppTheme.NoActionBar"> 
    </activity> 

ответ

0

В вашем методе сохранить текущее время видео в общих предпочтений и onCreate() метод проверки, если у вас есть любое сохраненное время в общих предпочтениях или нет.

Если yes, то найдите к этому времени и начните свое видео.

Вы можете использовать following code, чтобы перейти к определенному времени.

videoView.seekTo(int msec); 

А чтобы получить текущее время видео вы можете сделать это следующим образом:

long duration=videoView.getDuration(); 
+0

я дам ему попробовать. –

+0

Я думаю, что лучшая практика будет экономить время в 'onSaveInstanceState()' и снова получить его в 'onCreate()' method – Farid

Смежные вопросы