ورود

View Full Version : نمایش ویدئو در اندروید و حفظ بافر در rotation صفحه



biodread
چهارشنبه 15 خرداد 1392, 20:36 عصر
سلام
دوستان همونطور که میدونید نمایش ویدئو در اندروید بدین نحو است



VideoView bioVideoView = (VideoView) findViewById(R.id.bioVideoView);

bioVideoView.setVideoURI(Uri.parse("http://asdeveloper.com/test/mobile.mp4"));
bioVideoView.setMediaController(new MediaController(this));
bioVideoView.requestFocus();



تا اینجا مشکلی نیست
اما اگه از حالت portrait به حالت landscape بریم و بلعکس , ویدئو دوباره لود و play میشه و بافر از بین میره

برای جلوگیری از این مشکل چه کار باید کرد؟
مرسی

Modernidea
پنج شنبه 16 خرداد 1392, 00:14 صبح
سلام

از SaveInstanceState (http://stackoverflow.com/questions/10492637/android-saveinstancestate-understanding) استفاده کنید.
مطمئن نیستم اما شاید لازم باشد که مقداری که بافر شده است را در حافظه به صورت موقتی ذخیره کنید.

موفق باشید.

biodread
پنج شنبه 16 خرداد 1392, 09:29 صبح
بالاخره راه حلش رو پیدا کردم
نباید re-create بشه activity
میشه در configChange بگی که موقع rotate هیچ اتفاقی نیوفته

Modernidea
پنج شنبه 16 خرداد 1392, 10:35 صبح
در این لینک هم کاملا در مورد این مطلب توضیح داده شده.
http://developer.android.com/guide/topics/resources/runtime-changes.html

srfarzad
جمعه 17 خرداد 1392, 13:27 عصر
اینکارو کنید

android:configChanges="orientation"
من چند روز پیش که اپلیکیشن Hamrah TV را تموم کردم این رو پیاده سازی کردم،اما مشکی که داره اینکه باید در هر حالت بیاید و ratio صفحه رو بگیرید تا اندازه ویدئو اشتباه بدست نیاید

biodread
جمعه 17 خرداد 1392, 18:44 عصر
بله
درسته ولی برای orientation در شبیه ساز من کار نمیکرد
من علاوه بر orientation از screenSize هم استفاده کردم

srfarzad
شنبه 18 خرداد 1392, 01:37 صبح
برای اینکه بدونید ایا کار بدرستی انجام شده،امولاتور ابراز خوبی برای اینکار نیست لطفا روی دیوایس های واقعی مانند گوشی،تبلت یا ستاپ باکس تست کنید.آموزش اندروید (http://p30droid.com/) آموزش برنامه نویسی اندروید (http://p30droid.com/) برنامه نویسی اندروید (http://p30droid.com/) اندروید استودیو (http://p30droid.com/) آموزش اندروید استودیو (http://p30droid.com/)
بنطرم کلا نمایش ویدئو در حالت portait درست نیست و بیشتر پلیرهای اندرویدی این رو ندارن چون وقتی تصویر کشیده باشد اصلا برای کاربر جذاب نیست.

biodread
شنبه 18 خرداد 1392, 18:40 عصر
تصویر رو نمیکشیم با حفظ ratio کوچک میشه و در landscape فول میشه

roohola2434
پنج شنبه 02 مرداد 1393, 13:35 عصر
سلام
یه اکتیویتی دارم پر دکمه است میخام رو هرکدوم کلیک شد فیلم فول اسکرین پخش بشه وقتی هم که بک زد برگرده به همون دکمه ها
سوالم اینه که باید یک اکتیویتی جدا برای پخش فیلم تعریف کنم ؟
چجوری فول اسکرینش کنم؟