Necesito llamar al setVolumeControlStream
desde un servicio que reproduce algún sonido a través de STREAM_SYSTEM
. Obviamente en una actividad que no es un problema, pero ¿cómo puedo hacer esto con un servicio?Llamando a setVolumeControlStream desde un Servicio
Respuesta
creo que esta biblioteca puede proporcionar lo que necesita:
Desde el aspecto de la misma, esto no es posible la forma en que están tratando de hacerlo.
Como se ha dicho en el android reference
El flujo de audio sugerido estará ligada a la ventana de esta actividad
lo tanto, con un servicio que no tiene actividad, no hay ninguna ventana para atar el transmisión de audio a.
Sin embargo, parece que debería poder recibir eventos de clave multimedia (incluidas las teclas de volumen) de una emisora como se muestra en here que le permitiría cambiar el volumen de servicio sin que una actividad sea visible.
He visto esta solución y parece que no funciona: no hay forma de usar receptores de transmisión para recibir eventos de teclas de volumen. En el enlace que publicó, android.intent.action.MEDIA_BUTTON se usa para los botones de reproducción, como reproducir/pausa, siguiente, anterior, etc. ... Pero no hay botones de volumen. –
Mi error, entonces, supongo que esto no es posible a partir de un servicio. El motivo aparentemente es, por lo tanto, detener las aplicaciones que capturan los eventos de volumen e interfieren con la capacidad del usuario para cambiar el volumen del volumen/volumen del sistema. ¿Hay alguna razón por la cual no puedes usar STREAM_MUSIC? – Guykun
En mi caso, es porque me gustaría silenciar otras aplicaciones mientras mi aplicación reproduce música. Como todas las demás aplicaciones usan STREAM_MUSIC, la solución que encontré fue silenciar STREAM_MUSIC y usar otra transmisión. –
- 1. Llamando al servicio web desde C++
- 2. Llamando al Servicio WCF desde MS Access
- 3. Llamando a métodos web desde el mismo servicio web
- 4. llamando a un servlet java desde javascript
- 5. llamando a Restful Service desde Java
- 6. Llamando a PowerShell desde NodeJS
- 7. Llamando a Perl desde php?
- 8. Llamando a Clojure desde .NET
- 9. Consultas WPAD llamando al servicio web desde ASP.NET
- 10. Llamando al servicio web ASP.net desde la aplicación C#
- 11. Llamando al servicio web ASP.NET ASMX desde jQuery
- 12. llamando a la red IO desde haskeline
- 13. llamando a la función c desde C#
- 14. llamando a los métodos C++ desde C
- 15. llamando a funciones de ensamblado desde c
- 16. Llamando a Clojure desde dentro de R?
- 17. Llamando a gnuplot desde java? (ubuntu)
- 18. Llamando a C++ dll desde Java
- 19. Llamando a C# dll desde Java
- 20. llamando a Javascript desde C# usando awesomium
- 21. Llamando C# desde C
- 22. llamando a la función Jquery desde javascript
- 23. llamando a la función php desde jquery?
- 24. llamando a la función javascript desde php
- 25. Llamando ASMX desde jQuery
- 26. Llamando a IronRuby desde C# con un delegado
- 27. Llamar a un servicio web desde C++
- 28. error llamando a la tostada del servicio Android
- 29. Llamando al método getIntent en el servicio
- 30. Llamando API Cocoa desde C
No es posible si la biblioteca tampoco (aunque se ve bien). – Force