Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
jestev
0 / 1 / 0
Регистрация: 29.03.2015
Сообщений: 33
#1

Отредактировать несложный код - Android

27.01.2016, 11:51. Просмотров 199. Ответов 4
Метки нет (Все метки)

Здравствуйте, есть код от программы, которая воспроизводит различные видео и аудио файлы, умеет их приостанавливать, а также работать с различными источниками. Уберите, пожалуйста, всё ненужное из кода, так, чтобы осталась кнопка Raw (которая воспроизводит звук из папки btnStartRaw) и кнопка Stop(которая прекращает звучание трека btnStop). Главное, чтобы всё работало!
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
import java.io.IOException;
 
import android.app.Activity;
import android.content.ContentUris;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnPreparedListener;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
 
public class MainActivity extends Activity implements OnPreparedListener,
    OnCompletionListener {
 
  final String LOG_TAG = "myLogs";
 
  final String DATA_HTTP = "http://dl.dropboxusercontent.com/u/6197740/explosion.mp3";
  final String DATA_STREAM = "http://online.radiorecord.ru:8101/rr_128";
  final String DATA_SD = Environment
      .getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC)
      + "/music.mp3";
  final Uri DATA_URI = ContentUris
      .withAppendedId(
          android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
          13359);
 
  MediaPlayer mediaPlayer;
  AudioManager am;
  CheckBox chbLoop;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    am = (AudioManager) getSystemService(AUDIO_SERVICE);
    chbLoop = (CheckBox) findViewById(R.id.chbLoop);
    chbLoop.setOnCheckedChangeListener(new OnCheckedChangeListener() {
      @Override
      public void onCheckedChanged(CompoundButton buttonView,
          boolean isChecked) {
        if (mediaPlayer != null)
          mediaPlayer.setLooping(isChecked);
      }
    });
  }
 
  public void onClickStart(View view) {
    releaseMP();
 
    try {
      switch (view.getId()) {
      case R.id.btnStartHttp:
        Log.d(LOG_TAG, "start HTTP");
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setDataSource(DATA_HTTP);
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        Log.d(LOG_TAG, "prepareAsync");
        mediaPlayer.setOnPreparedListener(this);
        mediaPlayer.prepareAsync();
        break;
      case R.id.btnStartStream:
        Log.d(LOG_TAG, "start Stream");
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setDataSource(DATA_STREAM);
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        Log.d(LOG_TAG, "prepareAsync");
        mediaPlayer.setOnPreparedListener(this);
        mediaPlayer.prepareAsync();
        break;
      case R.id.btnStartSD:
        Log.d(LOG_TAG, "start SD");
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setDataSource(DATA_SD);
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        mediaPlayer.prepare();
        mediaPlayer.start();
        break;
      case R.id.btnStartUri:
        Log.d(LOG_TAG, "start Uri");
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setDataSource(this, DATA_URI);
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        mediaPlayer.prepare();
        mediaPlayer.start();
        break;
      case R.id.btnStartRaw:
        Log.d(LOG_TAG, "start Raw");
        mediaPlayer = MediaPlayer.create(this, R.raw.explosion);
        mediaPlayer.start();
        break;
 
      }
 
    } catch (IOException e) {
      e.printStackTrace();
    }
    if (mediaPlayer == null)
      return;
 
    mediaPlayer.setLooping(chbLoop.isChecked());
    mediaPlayer.setOnCompletionListener(this);
  }
 
  private void releaseMP() {
    if (mediaPlayer != null) {
      try {
        mediaPlayer.release();
        mediaPlayer = null;
      } catch (Exception e) {
        e.printStackTrace();
      }
    }
  }
 
  public void onClick(View view) {
    if (mediaPlayer == null)
      return;
    switch (view.getId()) {
    case R.id.btnPause:
      if (mediaPlayer.isPlaying())
        mediaPlayer.pause();
      break;
    case R.id.btnResume:
      if (!mediaPlayer.isPlaying())
        mediaPlayer.start();
      break;
    case R.id.btnStop:
      mediaPlayer.stop();
      break;
    case R.id.btnBackward:
      mediaPlayer.seekTo(mediaPlayer.getCurrentPosition() - 3000);
      break;
    case R.id.btnForward:
      mediaPlayer.seekTo(mediaPlayer.getCurrentPosition() + 3000);
      break;
    case R.id.btnInfo:
      Log.d(LOG_TAG, "Playing " + mediaPlayer.isPlaying());
      Log.d(LOG_TAG, "Time " + mediaPlayer.getCurrentPosition() + " / "
          + mediaPlayer.getDuration());
      Log.d(LOG_TAG, "Looping " + mediaPlayer.isLooping());
      Log.d(LOG_TAG,
          "Volume " + am.getStreamVolume(AudioManager.STREAM_MUSIC));
      break;
 
    }
  }
 
  @Override
  public void onPrepared(MediaPlayer mp) {
    Log.d(LOG_TAG, "onPrepared");
    mp.start();
  }
 
  @Override
  public void onCompletion(MediaPlayer mp) {
    Log.d(LOG_TAG, "onCompletion");
  }
 
  @Override
  protected void onDestroy() {
    super.onDestroy();
    releaseMP();
  }
}
Надо просто аккуратно удалить ненужное. Заранее благодарю
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2016, 11:51     Отредактировать несложный код
Посмотрите здесь:

Как отредактировать приложение? Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
27.01.2016, 12:05     Отредактировать несложный код #2
Кнопки нужно сначала удалить в вашем layout
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
27.01.2016, 12:15     Отредактировать несложный код #3
Цитата Сообщение от DarkVortex Посмотреть сообщение
Кнопки нужно сначала удалить в вашем layout
потом в коде удаляешь все что подчеркнуто красным и готово
jestev
0 / 1 / 0
Регистрация: 29.03.2015
Сообщений: 33
27.01.2016, 12:56  [ТС]     Отредактировать несложный код #4
Так программа перестаёт работать, может быть у кого есть код программы, где при нажатии на кнопку воспроизводится звук, а также присутствует кнопка stop?
gvsp
13 / 2 / 0
Регистрация: 10.11.2015
Сообщений: 71
27.01.2016, 14:33     Отредактировать несложный код #5
Я делал по опыту этой страницы http://developer.alexanderklimov.ru/...ces-theory.php
Читать можно начинать отсюда:
Давайте создадим практическое приложение для работы со службой. Наша служба будет запускать на воспроизведение музыкальный файл, который будет проигрываться в фоновом режиме. Управлять службой можно будет из активности. Создайте новый проект. Для службы создайте отдельный класс PlayService. Служба будет загружать музыкальный файл sample.mp3 из каталога res/raw/ (разместите там свой MP3-файл).
Yandex
Объявления
27.01.2016, 14:33     Отредактировать несложный код
Ответ Создать тему
Опции темы

Текущее время: 21:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru