2012-02-20 3 views
1

В моей деятельности я есть:Вызов метода обслуживания от деятельности

play.setOnClickListener(new View.OnClickListener() { 

     @Override       
     public void onClick(View v) { 

     service.playSong(MEDIA_PATH); 

     } 
    }); 

и это в службе:

void playSong(String file) { 
     try { 

       mp.reset(); 
       System.out.println(file+songs.get(currentPosition)); 
       mp.setDataSource(file+ songs.get(currentPosition)); 

       mp.prepare(); 
       mp.start(); 

       mp.setOnCompletionListener(new OnCompletionListener() { 

        public void onCompletion(MediaPlayer arg0) { 
          nextSong(); 
        } 
      }); 

     } catch (IOException e) { 
       Log.e(getString(R.string.app_name), e.getMessage()); 
     } 
} 

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

+0

Вы должны добавить StackTrace с исключением из LogCat. – Luksprog

+0

Не могли бы вы указать его немного больше, так как я новичок в Android? – Samuel

+0

Я действительно не понимаю, о чем вы говорите ... не могли бы вы показать мне какой-нибудь пример, как это сделать? – Samuel

ответ

1

Перед запуском необходимо связать с Service.

Проверить это ссылки:

+0

какой из этих двух в моем случае ??? я думаю, второй, не так ли? – Samuel

+0

это вызов вызова метода службы? Я все еще не могу заставить его работать – Samuel

+0

@ Самуэль: Да. Посмотрите пример того, как привязываться к 'Сервис'. – Macarse

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