Потоковое аудио BlackBerry / STOP Stream - PullRequest
0 голосов
/ 21 марта 2012

)

Я новичок в программировании и у меня проблемы.

Мой код:

  choiceFieldANTYFM = new ObjectChoiceField("Wybierz stację(6)", new String[]{"Warszawa [96kb]"});
  choiceFieldANTYFM.setChangeListener(this);
  btnSelectantyfm = new ButtonField("Słuchaj!", FIELD_HCENTER | ButtonField.CONSUME_CLICK);
  btnSelectantyfm.setChangeListener(this);
  stopplaying = new ButtonField("STOP", FIELD_HCENTER | ButtonField.CONSUME_CLICK);
  stopplaying.setChangeListener(this);

   add(choiceFieldANTYFM);
   add(btnSelectantyfm);
   add(stopplaying);

и другие:

public void fieldChanged(Field field, int context) {
 if (field == btnSelectantyfm)

  {
     System.out.println("Selected item: " + Integer.toString(choiceField.getSelectedIndex()));
  }if (field == btnSelect)
 {

     switch (choiceField.getSelectedIndex())
    {

case 0:

       try {
     String url = "http://94.23.220.75:6000;deviceside=false;ConnectionUID=GPMDSEU01";
      Player player;
      player = javax.microedition.media.Manager.createPlayer(url);
      player.start();
 } 
      catch (Exception e) {
      Dialog.alert(e.toString());
  }


        break;

Хорошо, когда я нажимаю кнопку воспроизведения, в приложении запускается музыка.

При повторном нажатии снова зацикливается. Это вторая проблема:)

Я хочу остановить поток при нажатии кнопки Стоп и даже если можно было поменять клавиши регулировки громкости + и -:)

JDE 5.0:)

Привет.

1 Ответ

0 голосов
/ 26 марта 2012

Вместо btnSelectantyfm.setChangeListener(this);, что подразумевает, что ваш экран реализует FieldChangeListener объявляет отдельные FieldChangeListener объекты для каждой кнопки следующим образом:

btnSelectantyfm.setChangeListener(new FieldChangeListener(){

    public void fieldChanged(Field field, int context){
        //start playing code here
        player.start();
    }
});

stopplaying.setChangeListener(new FieldChangeListener(){

    public void fieldChanged(Field field, int context){
        //stop playing code here
        player.stop();
    }
});

Теперь вам нужно объявить Playerобъект как переменная-член, так что playC и пауза FieldChangeListeners могут получить к нему доступ.Чтобы остановить проигрывание проигрывателя, просто выполните player.stop().

. Для изменения громкости при нажатии клавиш регулировки громкости вам необходимо:

  1. Реализовать KeyListener для выполнения действий, когдабоковые клавиши регулировки громкости нажимаются
  2. Чтобы получить VolumeControl из проигрывателя, выполните команду player.getControl("VolumeControl");
  3. Обновите VolumeControl новым требуемым уровнем громкости
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...