Android Video не запускается снова - PullRequest
1 голос
/ 18 октября 2011

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

android:configChanges="keyboardHidden|orientation"

и изменить свою активность

public void onConfigurationChanged(Configuration newConfig)
    {
        super.onConfigurationChanged(newConfig);
        setContentView(R.layout.main);
        InitializeUI();
    }

не работает, и я снова запускаю видео, когда я меняю ориентацию.Кто-нибудь может мне помочь, пожалуйста?


Большое спасибо за помощь, но я думаю, что не очень хорошо объяснил, мой английский не очень хорош.
В разрабатываемом приложении у меня есть видео, которое воспроизводится автоматически при включении телефона, видео начинается снова.Мне нужно, продолжает видео, где он играл.Эта проблема похожа на эту one .Я попытался изменить код, как объяснено здесь , но у меня ничего не вышло.Я также просматривал ссылки, которые вы мне дали, но ни одна из них не работает.Есть ли метод, меняющий классы для решения проблемы?Большое спасибо.

1 Ответ

0 голосов
/ 20 октября 2011

Я решил проблему с помощью следующего кода:

private int timevideo;
//Oncreate()
    Bundle returnData = (Bundle) getLastNonConfigurationInstance();
        if (returnData == null) {
            String uri = "android.resource://" + getPackageName() + "/"
                    + R.raw.videoname;
            myvideo.setVideoPath(uri);
            myvideo.requestFocus();
            myvideo.start();
        } else {
            String uri = "android.resource://" + getPackageName() + "/"
                    + R.raw.videoname;
            myvideo.setVideoPath(uri);
            timevideo = returnData.getInt("POSVIDEO");
            myvideo.seekTo(timevideo);
            myvideo.requestFocus();
            myvideo.start();
        }
@Override
    public Object onRetainNonConfigurationInstance() {
        Bundle data = new Bundle();
        timevideo = myvideo.getCurrentPosition();
        data.putInt("POSVIDEO", timevideo);
        return data;
    }

Спасибо

...