У меня есть приложение, которое воспроизводит песню, отображающую текст на экране.Понимание Android-сервиса на примере
Две ситуации:
- Когда песня загружается из локального файла mp3.
- Когда песня загружаются из удаленного места через интернет
Я понимаю, что Android служба приходит на помощь, когда песня лилась из удаленного места через интернет. Служба Android помогает здесь из-за накладных расходов ввода-вывода. В первом случае, когда песня воспроизводится из локального местоположения, услуги, возможно, являются излишним. Я могу просто воспроизвести музыку, загружающую ее в действие, и использовать MediaPlayer API для ее воспроизведения.
Правильно ли это понимание? Я что-то пропустил?
Обновление: Размер песни превышает 10 МБ. Поэтому, когда вы перекачиваете его через медленный интернет по телефону, может быть какая-то буферизация и прочее, которое будет размещено для лучшего удобства пользователей.
Заранее спасибо.
«Правильно ли это понимание?» -- на самом деле, нет. «услуги, возможно, являются излишними» - для одной и той же песни в обоих сценариях примерно одинаковое количество операций ввода-вывода. Если вы используете услугу в этом случае, это будет продиктовано в значительной степени на основе того, что вы хотите, если пользователь покинет ваш пользовательский интерфейс во время воспроизведения музыки. – CommonsWare
@CommonsWare Я обновил вопрос в контексте размера файла и скорости подключения к Интернету в качестве варианта использования. Я могу с уверенностью предположить, что файл, воспроизводимый локально, быстрее, чем файл, который требует потоковой передачи через Интернет. В/в на самом деле не то же самое. Есть ряд факторов, которые вы принимаете во внимание при потоковой передаче чего-либо через Интернет? – karthiks
«i/o на самом деле не то же самое» - трехминутная песня занимает три минуты, независимо от того, хранится ли песня локально или поточно. Существует гораздо меньше использования полосы пропускания, если песня хранится локально. Я бы предположил, что немного меньше использования ЦП, если песня хранится локально. Если песня хранится локально, будет меньше использования батареи.Ничего из этого не имеет значения с точки зрения того, является ли услуга релевантной. – CommonsWare