مشاكل مع آخر دورة حياة المنتج مع تشغيل VideoView
-
20-09-2019 - |
سؤال
ومرحبا جميعا ركض لقد ط في مشاكل أخرى مع VideoView
.
ثم يتم تشغيل الفيديو، وأضع جهاز نائما، وذلك باستخدام زر الصعب، ويسمى onPause()
. ولكن تليها:
03-17 11:26:33.779: WARN/ActivityManager(884): Activity pause timeout for HistoryRecord{4359f620 com.package/com.package.VideoViewActivity}
وبعد ذلك لدي onStart()
/ onResume()
مرة أخرى والفيديو يبدأ اللعب. لقد حاول نقل كود حول onStart()
/ onStop()
- لا يبدو لجعل الفرق
ونموذج التعليمات البرمجية:
public class VideoViewActivity extends Activity {
private String path = "";
private VideoView mVideoView;
private static final String MEDIA_URL = "media_url";
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.videoview);
mVideoView = (VideoView)findViewById(R.id.surface_view);
path = getIntent().getStringExtra(MEDIA_URL);
}
@Override
public void onResume() {
super.onResume();
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.start();
}
@Override
public void onPause() {
super.onPause();
mVideoView.stopPlayback();
mVideoView.setMediaController(null);
}
}
لماذا يحدث ذلك؟ وكيف يمكنني التوقف عن ذلك؟
وانها ليست أعظم تجربة من كنت وضعت الجهاز إلى النوم ويبدأ تشغيل الفيديو
المحلول
وOK، يبدو أن السلوك يرتبط دورة حياة النشاط وحقيقة أن يتم تعيين VideoViewActivity إلى أفقي في البيان. مضيفا
android:configChanges="keyboardHidden|orientation"
ولهذا النشاط يبدو أن علاج هذه المشكلة ثم قمت بوضع جهاز للنوم onPause فقط () دعا مباراة قبل - أعدم جميع طرق دورة الحياة. سأفعل أكثر اختبار للتأكد من أنها ثابتة ...
لا تنتمي إلى StackOverflow