Простий фоновий сервіс, який виявляє будь-яке відтворення на глобальному audiomix, а потім відкриває канал BluetoothSco так звук відтворюється на моно Bluetooth пристрою (вільні руки профілю).
Ідея
Включити динамічне відтворення будь-якого носія звуку на пристрої Bluetooth. Спеціально для направлення керівництва навігаційного програмного забезпечення. Канал Bluetooth повинен бути відкритий, коли запускається відтворення і закривається після завершення відтворення.
Порівняння з аналогічними додатками:
Всі інші додатки, які я бачив, не є динамічними або (я припускаю) використовувати функцію isMusicActive (), яка насправді не є надійним. Тому я використовую Visualizer API, щоб захопити анонімними інформацію з глобальної audiomix і може точно визначити визначити, якщо звук відтворюється. Функція визуализатор API я використовую доступний тільки з рівня API 19 (Kitkat - Android 4.4). Для рівнів API нижче я використовую функцію isMusicActive (а).
Державні Перенаправлення на основі
Обслуговування тільки дисководі, якщо адаптер Bluetooth включений, все інше було б не має сенсу так? Перенаправлення починається тільки якщо Bluetooth пристрій підключено до гучного зв'язку Bluetooth профілю. Якщо руки вільне з'єднання більше не доступний перенаправлення зупиняється.
Static Перенаправлення
Якщо ви виберете цей варіант аудіо Перенаправлення почнеться, як тільки ви почнете службу і зупиняється тільки з сервісом. Жодна звукова інформація не аналізується.
Якщо ви вибираєте перепідключення після опціону служба перезапускается після голосового виклику завершується (телефон додаток має пріоритет по відношенню до каналу SCO). Служба також перезавантажується, якщо ви в кінцевому "виклик" для перенаправлення засобів масової інформації. Ця опція доступна тільки в поєднанні зі статичним перенаправлення.
Intent для запуску / зупинки служби
Це дійсно дуже просто! Відправити з наступних намірів
& Бик; net.philipp_koch.dynamicmediabtrouter.ON
& Бик; net.philipp_koch.dynamicmediabtrouter.OFF
Вимоги:
& Бик; андроїд пристрої з мінімальним рівнем API 11 (Honeycomb - Android 3.0)
- Рівень API 18 (Jelly Bean - Android 4.3) для потоку сирого Bluetooth. Нижня версія може зажадати від вас, щоб прийняти "виклик"
- Рівень API 19 (Kitkit - Android 4.4) для розпізнавання звукових сигналів через визуализатора API.
& Бик; Bluetooth-пристрій, який буде тримати за руку вільний профіль (зазвичай гарнітури або автомобільні домофони)
& Бик; Ні менеджери задач! Вони лайно і нічого іншого! Вони вбивають фонову службу, так що не скаржаться!
Робота як вона була задумана (динамічний режим)
Якщо покласти край "виклик" перенаправлення не зупиняється і звук не прямує в нікуди. Так як додаток було призначене для навігації додатків це корисна конструкція:
Якщо перенаправлення починається і ви вже в курсі інформації, представленої Ви могли б закінчити "заклик", як тільки він починає. Після того, як відтворюється службова інформація буде закрити канал, як завжди, і відкрити його знову, як тільки виявляється аудіо.
Якщо ви використовуєте додаток для перенаправлення музики для постійної часу і завершення "виклик" випадково ви повинні призупинити музику, принаймні, кілька секунд. Служба зупинить перенаправлення і запустити його знову, як ви натисніть кнопку відтворення.
Ви відчуваєте погана якість звуку
Я не можу це виправити. Вільні руки профіль не призначений для високої якості. Ви повинні використовувати замість A2DP!
Що залишилося зробити?
& Бик; Зупинка служби з моменту повідомлення