Бақылау сұрақтары:
1. Тізімдерді қалай толтыруға болады?
2. Тізімдерде қандай әдістер қолданылады?
Пайдаланылған әдебиеттер:
Нег: 1-6
Қос: 1-2
Элек: 1-4
1. http://developer.alexanderklimov.ru/android/views/listview.php
2. https://habrahabr.ru/post/133569/
3.http://developer.alexanderklimov.ru/android/listview/icon_twotext_simpleadapter.php
ЛЕКЦИЯ № 10
Тақырыбы: Мультимедиалық файлдарды пайдалану.
Лекция мазмұны:
1. MediaPlayer мультимедиялық платформасы
2. Мемлекеттік басқару
3. Дыбыс пен бейнені ойнату үшін MediaPlayer қолданбасын қолданыңыз.
1 MediaPlayer мультимедиялық платформасы
Мультимедиялық ойнату ұялы құрылғыларда қолданылатын ең танымал үлгілердің бірі болып табылады. Пайдаланушылар мобильді құрылғыларда танымал мультимедиа түрлерін ойнап, бейне ойнататындығын күтуде. Бұл құжат Android үшін мультимедиялық қосымшаларды құру негіздерін талқылайды және MediaPlayer API интерфейсімен платформаларда пайдаланатын үлгі кодын ұсынады.
Android мультимедиялық платформасы әзірлеушілерге жалпы мультимедиа пішімдерін қолдайтын қосымшаларға аудио және бейне ойнатуды ыңғайлы түрде біріктіру мүмкіндігін береді. Android мультимедиалық платформасының негізі MediaPlayer класы болып табылады. Бұл класс жергілікті файлдық жүйеде сақталатын, бағдарлама ресурстарында сақталған медиа деректерді ойнату үшін немесе желілік қосылым арқылы ағымға пайдаланылуы мүмкін.
2 Күйді басқару
MediaPlayer класы мемлекеттік негізделген. Ол MediaPlayer өмірлік циклінің барлық жағдайларын бақылайтын мемлекеттік аппарат, мемлекеттік аппараты бар. Келесі диаграмма ойнатуды басқару үшін MediaPlayer нысанының күйін көрсетеді. Бұл схемада бір көрсеткі синхронды әдісті шақырады, ал қос көрсеткі асинхронды әдісті шақырады және кері шақыруларды көрсетеді.
Диаграмма MediaPlayer нысанының өмірлік циклі бірнеше күйден тұратынын көрсетеді. Біріншіден, сіз жаңа MediaPlayer құрған кезде немесе reset () әдісін шақырғанда, MediaPlayer нысаны Idle күйіне өзгереді. Бұл бастапқы күй, бірақ ойнату мүмкін емес. Start (), stop (), seekTo (int), және т.б. сияқты ойнатуды басқару әдістерін шақырсаңыз, бағдарлама қатесі орын алады.
Қолданба жарамды медиа дереккөзіне нұсқау үшін setDataSource () әдісін шақыруы керек. Нәтижесінде, ойыншы Initialized күйіне өтеді. Дерек көзі жергілікті файл болуы мүмкін немесе желілік байланыс арқылы ағындық деректерді ағынмен қамтуы мүмкін.
Initialized күйінде, ойнату басталмас бұрын, бағдарлама Дайындалған күйге өту үшін дайындау () немесе prepareAsync () әдісіне қоңырау шала алады. Prepare () әдісі медиа файлды деректерді іздеу, буферлеу және декодтауды орындайды. Дегенмен, prepare () әдісін қайтару желінің URL мекен-жайынан медиа деректерін алу үшін өте ұзақ уақыт алады, әсіресе желіге қосылу баяу болғанда. Сондықтан, қолданбаның пайдаланушы интерфейсінің ағынын дайындау () әдісін іске қосу ұсынылмайды: осы себепті қолданба пайдаланушы әрекеттеріне жауап бермеуі мүмкін. Оның орнына, пайдаланушы ақауларын пайдаланушы әрекеттеріне жауап беру қабілетін сақтай отырып, осы мәселені шешу үшін және мультимедиа деректерін дайындаудың ыңғайлы әдісін ұсынуға дайындалған prepareAsync () әдісін пайдалану керек. PreparAsync () әдісі фондық режимде іске қосылады және MediaPlayer құралын дайын күйге келтіру үшін OnPreparedListener.onPrepared () қайта жіберуді жіберіп, аяқталғаннан кейін бірден қайтарылады.
Достарыңызбен бөлісу: |