22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
||||||
1 | ||||||
Потоковый проигрыватель16.12.2015, 19:26. Показов 3278. Ответов 32
Метки нет (Все метки)
Добрый вечер!
Пишу потоковый проигрыватель, который воспроизводит интернет-радио. Но суть в том, чтобы при каком-то сбое воспроизведение автоматически возобновлялось. Каким образом это можно сделать? Так же, хотелось бы сделать приложение неуязвимым (ну, чтобы не выгрузилось там или еще что-то), и есть еще одна странная проблема, при перевороте экрана перестает играть. Тоже хочется это исправить. Вот мой код:
0
|
16.12.2015, 19:26 | |
Ответы с готовыми решениями:
32
При нажатии на первую кнопку открывать проигрыватель музыки, а на вторую - проигрыватель видео потоковый ввод потоковый звук Потоковый итератор |
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
||||||
16.12.2015, 19:34 | 2 | |||||
Сообщение было отмечено Stass48 как решение
Решение
ну начнем с малого
что бы при повороте не переставало играть (то есть не пересоздавалось активити) надо в манифест дописать строку (между тегами activity)
1
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
|
16.12.2015, 19:45 [ТС] | 3 |
Спасибо)
Вроде мелочь, а приятно) А вот как отследить сбой в трансляции? Когда вот выдергиваю кабель с транслирующего ноута, то в логкате проскакивает варнинг 703, кажется... Ну это я просто сказал, может есть какие-то другие методы отслеживания сбоев?
0
|
411 / 275 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
|
|
17.12.2015, 01:47 | 4 |
Повесьте ексепшен на то место где указывает что произошла ошибка, и впишите в кетче старт новоего плеера, и будет по циклу гонять пока не запустится. Правда я не знаю какой у вас ексепшен и где, нужен лог.
0
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
|
17.12.2015, 12:21 [ТС] | 5 |
Вот у человека тоже проблема была, только на 4PDA и вот что ему посоветовали:
0
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
|
17.12.2015, 12:30 [ТС] | 7 |
Паблито, вполне верное замечание, но в отличии от остальных, я сам нашел инфо о том, что именно требуется сделать... Ну и как бы, конкретно писать я не заставляю, хотя бы скажите и ткните где можно посмотреть как правильно (синтаксис). На Java вообще другая логика, больше схожа с C# и мало чем схожа с C++, VB или Delphi, а прога нужна именно под Андроид, а на нем только Java, жизнь заставила полезть туда, где ни бум-бум... Уж простите(
0
|
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
||||||||||||||||
17.12.2015, 12:42 | 8 | |||||||||||||||
как один из вариантов - у медиа плеера есть слушатель ошибок, надо решить для себя кто будет обрабатывать ошибки? Предположим кода не много и это можно реализовать в активити, тогда
1
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
|
17.12.2015, 13:41 [ТС] | 9 |
Конкретно в логкат никаких error нету, зато есть warnings: Вот их мне и нужно обработать. А я не умею( Добавлено через 7 минут Да и Вы уверены, что нужно именно OnErrorListener? Судя по информации отсюда, то мне нужно поймать варнинги именно из OnInfoListener. Хотя, конечно, Ваш вариант логичнее... да и судя по описалову там слова более подходящие.. Но вот в лог то не эти коды сыпятся, а именно 701 и 703.
0
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
|
17.12.2015, 14:02 [ТС] | 11 |
Ну хорошо, а как написать так, чтобы при появлении варнинга 703 и/или 701 я мог бы выполнить свое любое действие? То есть сам синтаксис и сам код как написать? Ну, то, что делал для OnErrorListener, переделать под OnInfoListener, а что дальше?
Добавлено через 1 минуту Я просто не понимаю как написать код для отлова именно 703 и 701. Так бы в этом коде я бы просто переинициализировал плеер и все...
0
|
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
|
|
17.12.2015, 14:29 | 13 |
есть еще
onInfo(MediaPlayer mp, int what, int extra) он может ловить MEDIA_INFO_NETWORK_BANDWIDTH (703) http://developer.android.com/i... ,%20int%29 и другие две инфо
0
|
Pablito
|
17.12.2015, 14:31
#14
|
Не по теме: так он про него и говорит
0
|
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
|
||||||
17.12.2015, 14:35 | 15 | |||||
Сообщение было отмечено Stass48 как решение
Решение
1
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
|
18.12.2015, 11:44 [ТС] | 16 |
О, ну конечно...
Когда я сам уже вот здесь эти "концы" подхода нашел, то человек и ответил по сути то же самое, что я и нашел... Вот просто гражданину Паблито, было тяжело написать как правильно if написать, точнее его содержимое... Valakin, спасибо огромное. Добавлено через 20 часов 52 минуты Простите, а вот как раз это ловится как-то по-другому, там даже в мануале оно как-то по-другому выделено... Не подскажите как правильно словить эту ошибку?
0
|
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
|
||||||
18.12.2015, 11:58 | 17 | |||||
Сообщение было отмечено Stass48 как решение
Решение
Я бы попробовал
1
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
||||||
18.12.2015, 13:34 [ТС] | 18 | |||||
И еще мелкий вопросик такой. Вы возвращаете true, а вот среда по умолчанию когда создает код, то возвращает false. На что это влияет?
Добавлено через 6 минут Добавлено через 8 минут
0
|
435 / 101 / 15
Регистрация: 21.02.2015
Сообщений: 845
|
|
18.12.2015, 13:45 | 19 |
а
MediaPlayer.MEDIA_INFO_NETWORK_BANDWIDTH подсвечивает? extra<703 было бы логичнее, или вообще для начала не трогать extra, похоже ее можно определить только если what == MediaPlayer.MEDIA_INFO_NETWORK_BANDWIDTH
0
|
22 / 22 / 7
Регистрация: 26.05.2011
Сообщений: 256
|
|||||||||||
18.12.2015, 14:00 [ТС] | 20 | ||||||||||
Уже все хорошо)
Нашел пример. Надо так: Вверху объявить:
Скажите пожалуйста, что за непонятка что среда предлагает возвращать False, а Вы и в примерах тоже возвращаете True?
0
|
18.12.2015, 14:00 | |
18.12.2015, 14:00 | |
Помогаю со студенческими работами здесь
20
Потоковый сервер на С++ Потоковый вывод Потоковый сервер на С++ ПОТОКОВЫЙ ФАЙЛ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |