2016-03-02 4 views
-1

Итак, у меня есть mp3-плеер. Я хочу, чтобы все воспроизведение было неровным, поэтому оно не остановится. Я попытался услуги, и у меня есть несколько проблем:Android-сервис для Android

1. Услуги связи с деятельностью:
я могу начать службу с передачей данных по намерениям
Я могу отправить через данные resiever широковещательных от службы к деятельность
Как я могу отправить данные от деятельности до service?
ли мне действительно нужно сделать, как

@Override 
public int onStartCommand(Intent intent, int flags, int startId) { 
    Flags flag = Flags.values()[intent.getIntExtra("flag", 0)]; 
    switch(flag) { 
     case Start: 
      //Starts the playback 
      break; 
     case Repeat: 
      //Do stuff 
      stopSelf() //How to stop it right: stop this, but leave first call? 
      break; 
     case Shuffle: 
      //Do stuff 
      stopSelf() 
      break; 
     case Move: 
      //Do stuff 
      stopSelf() 
      break; 
     case Song: 
      //Do stuff 
      stopSelf() 
      break; 
     case GetData: 
      //Do stuff 
      stopSelf() 
      break; 
     default: 
      //Do stuff 
      stopSelf() 
      break; 
    } 
    return START_STICKY; 
} 

И каждое сообщение заставляет меня начать новую услугу, со всеми вытекающими последствиями

2. Бессмертный обслуживание: Для Бессмертного службы мне нужно сделать, чтобы использовать намерение оказание услуг. Или нет? Я не нашел слишком много документов об этом.

4. Уведомления
Кроме того, я хочу сделать что-то вроде notification with control-buttons

5. Docs:
я не нашел слишком много документации на все услуги. И то, что я нашел, было 2-3 лет = (
буду благодарен за любую помощь^_^
По крайней мере, скажем, что мне нужно использовать: или услугу intentservice

+0

Я думает, что мне нужен связывающее обслуживание:/ – Masafi

ответ

0

Вы просите слишком много . вопросы в этой теме я буду стараться изо всех сил, чтобы ответить как можно больше, как я не могу понять, что вы говорите

1. Обслуживание связи с деятельностью:. Если вы хотите общаться между деятельность и услуга a BroadcastReceiver

2. Справочная информация: Я не знаю, что вы на самом деле имеете в виду здесь, я предполагаю, что вы хотите что-то, что не будет убито, когда ваше приложение перейдет на задний план. Для этого используйте Service. Служба предназначена для выполнения кода, когда ваше приложение не находится на переднем плане. Он работает на основном потоке точно так же, как и активность, и может быть убит, когда система работает с низким уровнем памяти.

3. Нужна ли вообще услуга? Да! если вы не хотите, чтобы ваша песню (ы), чтобы остановить воспроизведение, когда приложение переходит к фону

4. Уведомление: Читайте андроид developer guide

+0

1. Как отправлять данные с активности на запуск службы? 2. Я имею в виду неквалифицированный сервис. Но простое обслуживание убито (когда я долгое время нажимаю кнопку «домой» и убиваю мое приложение, останавливается сервис тоже), так как создать некалиброванный сервис? – Masafi

+0

Используйте BroadcastReceiver, как я уже сказал. [Это] (http://www.tutorialspoint.com/android/android_broadcast_receivers.htm) tutorial покажет вам как –

+0

Спасибо, я попробовал BR сделать это, но это не сработало. Я попробую этот материал – Masafi

Смежные вопросы