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

Борьба с фоновой музыкой - Android

Восстановить пароль Регистрация
Другие темы раздела
Android Проигрывание музыки по очереди http://www.cyberforum.ru/android-dev/thread931052.html
Есть список треков, как проиграть их поочереди. Использую MediaPlayer и MediaPlayer.OnCompletionListener, но он выполняется когда заканчивается первый трек и все... А как грузить следующие? OnClickListener oclbt_Continue_Ini = new OnClickListener() { @Override public void onClick(View v) { step = 1; fileName = getFileNameSound(step); Play();
Android Программное добавление View Доброго времени. Знаю что на эту тему много инфы, как на форуме так и на других ресурсах, но решения своей проблемы все же не нашел. суть вот в чем. есть активити в которую я могу добавлять View в её layout, для этого получаю сам layout: RelativeLayout layout = (RelativeLayout)findViewById(R.id.main); и добавляю свой (раннее созданный) View: layout.addView(testBar,layoutParams); здесь все... http://www.cyberforum.ru/android-dev/thread931043.html
Как обновить значение в ячейке, используя условие? Android
как будет выглядеть условие в андроид на SqLite используя примерный синтаксис: db.update("myDB", newValues, id + "= ?", new String { value }); мне нужно обновить ячейку в столбце "С" где у столбца "А" значение ячейки =(равно) 55 и где у столбца "B" значение ячейки =(равно) 99
Отладка на устройсве Android
У меня LoagCat непоказывает логи при отладке на устройсве, в девайсе "Отладка USB" стоит, приложение из ADT на смартфон компилируется и запускается, а вот логи не показывает.... В чем проблема? p.s. у меня samsung i9300 Добавлено через 16 минут В DDMS на проге, жму Debug the selected process, и нифга, как и прежде..... уже и дрова переустановил, и толку ноль..
Android Grow heap (frag case) to 54 MB http://www.cyberforum.ru/android-dev/thread930948.html
В программе для отображения информации использую 5 ImageView с Level-List. Все 5 xml файлов такого вида, различаются только ресурсы картинок <?xml version="1.0" encoding="utf-8"?> <level-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:maxLevel="1" android:drawable="@drawable/wave11"/> <item android:maxLevel="2" android:drawable="@drawable/wave12"/> <item...
Android Как правильно настроить ArrayAdapter? Создаю своё первое приложение, потому вопрос новичка. Статья, которой я руководствовался - поверхностная, потому во многом пришлось разбираться самому. За основу было взято SlidingMenu и ActionBarSherlok, все библиотеки были подключены и приложение работает, подскажите как правильно настроить ArrayAdapter для переключения активностей с бокового меню? protected void setMenuItems(){ String... подробнее

Показать сообщение отдельно
name?
 Аватар для name?
198 / 169 / 18
Регистрация: 01.06.2010
Сообщений: 371
Завершенные тесты: 1
31.07.2013, 13:48     Борьба с фоновой музыкой
я делал так:


Кликните здесь для просмотра всего текста

в Sound храниться вся инфа о нашей музыке ну и проигрывает ее
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
public class Sound {
 
    private MediaPlayer mediaPlayer;
    private Context context;
    private HashMap<Wave, Integer> sounds = new HashMap<Wave, Integer>();
 
    public Sound(Context context) {
        this.context = context;
        sounds.put(Wave.eatFruit, R.raw.eatfruit);
        sounds.put(Wave.menuSound, R.raw.pacman_song2);
        sounds.put(Wave.chomp, R.raw.pacman_coinin);
        sounds.put(Wave.beginning, R.raw.beginning);
        sounds.put(Wave.death, R.raw.death);
        sounds.put(Wave.eatSpirit, R.raw.eatspirit);
        sounds.put(Wave.sirenSound, R.raw.sirensound);
    }
 
    @SuppressWarnings("static-access")
    public void play(Wave wave, boolean looping, boolean isSound) {
        if (isSound) {
            mediaPlayer = mediaPlayer.create(context, sounds.get(wave));
            mediaPlayer.setLooping(looping);
            mediaPlayer.start();
        }
    }
 
    public void stop() {
        if (mediaPlayer != null) {
            mediaPlayer.setLooping(false);
            mediaPlayer.stop();
        }
    }
 
}
и контроллер


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
public class SoundController {
 
 
    private Sound sound;
    private Sound backgroundSound;
    private Sound menu;
    private boolean isSound;
    private Context context;
    
 
   
    public SoundController(Context context , boolean isSound) {
        this.context = context;
        this.isSound = isSound;
        sound = new Sound(context);
    }
    
    public void playBackground(){
        if(backgroundSound == null){
            backgroundSound = new Sound(context);
            backgroundSound.play(Wave.sirenSound, true, true);
        }
    }
        
    private void eatPoint(World world){
        if(world.eatPoint()){
            sound.play(Wave.chomp, false, isSound); 
        }
    }
    
    private void eatBonus(World world) {
        if (world.eatBonus()) {
            sound.play(Wave.eatFruit, false, isSound);
        }
    }
    
    private void collisionNPC(World world) {
        if (world.deadPlayer()) {
            sound.play(Wave.death, false, isSound);
        }
        if (world.deadSpirit()) {
            sound.play(Wave.eatSpirit, false, isSound);
        }
    }
 
    public void play(World world){
        eatPoint(world);
        eatBonus(world);
        collisionNPC(world);
    }
    
    public void stop() {
        if (backgroundSound != null) {
            backgroundSound.stop();
            backgroundSound = null;
        }
        if (sound != null) {
            sound.stop();
        }
        if (menu != null){
            menu.stop();
            menu = null;
            }
    }
    
    public void playMenu(){
        if(menu == null){
        menu = new Sound(context);
        menu.play(Wave.menuSound, true, isSound);
        }
    }
    
    public void setSound(boolean isSound){
        this.isSound = isSound;
    }
    
    public boolean getSound(){
        return isSound;
    }
}

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