Zauważyłem problem z moją aplikacją do strumieniowego przesyłania dźwięku na urządzeniach z Androidem 6.0. Strumieniowanie audio odbywa się przez HLS przez połączenie sieciowe. Odtwarzanie dźwięku odbywa się w usłudze pierwszoplanowej z aktywnym powiadomieniem. Zauważyłem, że gdy aplikacja wchodzi w tryb drzemki/gotowości aplikacji, połączenie Wi-Fi jest tracone, a odtwarzanie zatrzymuje się. Moja usługa jest na pierwszym planie i ma aktywne powiadomienie, które zgodnie z dokumentami powinno zakwalifikować moją aplikację, aby się jej nie przerywało. Zdobywam i utrzymuję także Blokadę Wi-Fi. Czytałem o dodaniu do białej listy mojej aplikacji, jednak aplikacje takie jak Spotify nie żądają żadnych specjalnych uprawnień, aby uniknąć tego problemu. Wszelkie przemyślenia lub sugestie?Tryb Doze/App Standby podczas odtwarzania dźwięku
Odpowiedz
Zalecanym rozwiązaniem jest posiadanie oddzielnych procesów, jednego do odtwarzania audio i do interfejsu użytkownika. See this long thread for lots of details
Oto odnośny odcinek od pani Hackborn:
... mają swój bieg usług pierwszoplanowy w innym procesie niż aktywność. Z tego, co widzę, wszystko będzie dobrze. Byłbym ciekawy, czy dostaniesz tam pożądane zachowanie.
Jest to tak naprawdę nasza zalecana praktyka w tej sytuacji - jeśli masz długą usługę pierwszego planu, powinna ona być w oddzielnym procesie od działania, więc nie wymusza całej pamięci powiązanej z działalność należy utrzymać. (Właśnie dlatego ten błąd przeszedł, wszystkie nasze aplikacje [Google] używają tego wzorca).
Witam @ dhaag23 dzięki za odpowiedź. Próbowałem tego, ale moja aplikacja wciąż traci połączenie Wi-Fi na urządzeniach z systemem 6.0, ale działa poprawnie na urządzeniach z okresu wcześniejszego niż 6.0. – two1stnamz
Sprawdź ten wątek w google fix dla tego. Może to twoja sytuacja? https://code.google.com/p/android/issues/detail?id=193802 – dhaag23
Witam @ dhaag23 Mogłem zobaczyć sugerowane rozwiązanie na końcu wątku "najlepszym rozwiązaniem, które znalazłem, jest po prostu otwarcie innego pierwszego planu usługa z blokadą wybudzania w oddzielnym procesie, proces ten nie ma żadnych działań, nie ma odbiorników itp. Zapewnia to blokadę wybudzającą, która ma być trzymana " Czy ktoś wypróbował to rozwiązanie i czy to działa? – user669231
- 1. avplayer nie ma dźwięku podczas odtwarzania wideo
- 2. prędkość odtwarzania dźwięku pygame
- 3. Zakłócenie dźwięku podczas jednoczesnego odtwarzania dwóch plików dźwiękowych AVPlayer
- 4. Odtwarzanie dźwięku przez głośniki podczas odtwarzania muzyki przez słuchawki
- 5. Jak wykonywać operacje podczas odtwarzania dźwięku w telefonie iPhone?
- 6. Android - Wyłącz ekran bez wchodzenia w tryb StandBy
- 7. reagować natywnego odtwarzania dźwięku na razie
- 8. Odtwarzanie dźwięku podczas kompilowania
- 9. Odtwarzanie dźwięku w języku C++ ... Jednak gra zatrzymuje się podczas odtwarzania dźwięku ... jak mogę zatrzymać to opóźnienie?
- 10. StandBy lubię działalność
- 11. Najlepsza metoda odtwarzania krótkiego dźwięku w systemie iOS 8.2
- 12. Jak mogę utworzyć obietnicę do końca odtwarzania dźwięku?
- 13. Wprowadzanie tła w systemie iOS4 do odtwarzania dźwięku
- 14. MPMoviePlayerController odmawia odtwarzania dźwięku przez głośnik w iOS4
- 15. Jak zamienić link do pliku na nazwę podczas odtwarzania dźwięku Safari/Chrome na ekranie głównym?
- 16. Jak dodać odtwarzacz iPod EQ podczas odtwarzania dźwięku za pomocą AVPlayer?
- 17. Zanikanie/zanikanie dźwięku
- 18. Odtwarzanie dźwięków podczas odtwarzania muzyki ipod (iPad)
- 19. Wstrzymywanie karuzeli Bootstrap Podczas odtwarzania wideo
- 20. Ustawianie URL zwyczaj głównego podczas odtwarzania 2.0
- 21. Zmiana właściwości wideoComposition AVM (AVMutableVideoComposition) podczas odtwarzania
- 22. UI utknięcie podczas wyświetlania softkeyboard podczas odtwarzania mediaplayer?
- 23. Wstrzymaj osadzanie się YouTube'a podczas odtwarzania Soundcloud embed
- 24. Reagowanie na powiadomienia MPMoviePlayerController podczas odtwarzania w tle multimediów
- 25. Tryb tła w tle iOS
- 26. Odtwarzanie dźwięku w .Net/C#
- 27. zawiadomić raz audio zakończeniu odtwarzania
- 28. odtwarzania dźwięków niezależnie od poziomu głośności urządzenia
- 29. Konwersja dźwięku do formatu CAF do odtwarzania na iPhonie przy użyciu OpenAL
- 30. Jakie jest lepsze podejście do odtwarzania mp3/wav i zmiany tempa (prędkość dźwięku) Androida?
Czy zdołasz znaleźć jakieś rozwiązanie tego problemu? Mam też ten sam problem z moją aplikacją do strumieniowego przesyłania dźwięku na Androida 6.0 Kupuję również Wakelock i Wifilock, ale kiedy dzieje się Drzemka, przesyłanie audio zatrzymuje się. Jakieś pomysły? – user669231
Żadne rozwiązania do tej pory nie zostaną zaktualizowane, jeśli je znajdę. Proszę zrobić to samo @ user669231 – two1stnamz
OK, na pewno potwierdzi, jeśli znajdę rozwiązanie? Czy możesz również potwierdzić, po upływie czasu, przez jaki dźwięk się zatrzymuje (czyli po tym, jak długo telefon przechodzi w Drzemkę?). Moi użytkownicy skarżą się po kilku minutach. Ale czy drzemka nie może się wydarzyć po znacznym okresie czasu ... może być około godziny? – user669231