чтение с SD

SQLite, Preferences, файлы, SD, Content Provider, XML, JSON
Ответить
Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

чтение с SD

Сообщение Kot_Programist » 12 май 2012, 13:02

Простите за нубский вопрос, просто я еще пока в этом новичок.

Вопрос:
Как сделать так, чтобы Приложение читало файлы только из определенной папки? В уроках есть пример, но там немного не то.

P.S. Бывал на многих форумах, там просто посылают куда подальше, когда задаешь этот вопрос.

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: чтение с SD

Сообщение KamiSempai » 12 май 2012, 14:18

Kot_Programist писал(а):Как сделать так, чтобы Приложение читало файлы только из определенной папки?
Написать приложение так, чтобы оно читало файлы только из определенной папки.

Что именно Вы хотите сделать?
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

Re: чтение с SD

Сообщение Kot_Programist » 12 май 2012, 14:25

KamiSempai писал(а):
Kot_Programist писал(а):Как сделать так, чтобы Приложение читало файлы только из определенной папки?
Написать приложение так, чтобы оно читало файлы только из определенной папки.

Что именно Вы хотите сделать?
я хочу чтобы приложение читало аудиофайл из определенной папки
я жму кнопку, и приложение начинает воспроизводить аудиозапись из определенной папки на сд

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: чтение с SD

Сообщение KamiSempai » 12 май 2012, 19:26

Я бы сделал это так:

Код: Выделить всё

    private final static String SOUND_DIR = "Documents/Musik/Нужные";
    private final static String SOUND_FILE = "Trail Of Tears - Illusion.mp3";
    private MediaPlayer mMedia;
	
    // Нажатие на кнопку Старт
    public void play(View view){
        // Если файл уже воспроизводится остановим воспроизведение
        if(mMedia!=null && mMedia.isPlaying()){
            mMedia.stop();
        }
        //Получаем состояние SD карты (подключена она или нет)
        String sdState = android.os.Environment.getExternalStorageState();
        if (sdState.equals(android.os.Environment.MEDIA_MOUNTED)) {// если true
            // Получаем путь к SD карте
	    String folderSD = Environment.getExternalStorageDirectory().toString();
	    mMedia = new MediaPlayer();
	    try {
	        // Указываем источник
	        mMedia.setDataSource(folderSD + "/" + SOUND_DIR + "/" + SOUND_FILE);
	        mMedia.prepare(); // Подготавливаем
	        mMedia.start(); // Запускаем
	    } catch (Exception e) {
	        Toast.makeText(this, "Упс! Не удалось воспроизвести файл " + SOUND_FILE, Toast.LENGTH_SHORT).show();
	    }
        }
        else Toast.makeText(this, "SD карта отсутствует.", Toast.LENGTH_SHORT).show();
    }
    // Нажатие на кнопку Стоп
    public void stop(View view){
        mMedia.stop();
    }
Еще стоит учитывать, что при повороте экрана активити пересоздастся (ссылка на mMedia уничтожится) и повторное нажатие на Старт запустит воспроизведение но не остановит то, что было уже запущено.
Об этом, конечно, нужно будет указать в файле манифеста.

И не забудьте остановить воспроизведение при закрытии приложения.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

Re: чтение с SD

Сообщение Kot_Programist » 12 май 2012, 19:54

:) спасибо, буду изучать

Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

Re: чтение с SD

Сообщение Kot_Programist » 12 май 2012, 20:39

блин хорошо бы уже в java... а то ни нписать не могу ни скопировать

Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

Re: чтение с SD

Сообщение Kot_Programist » 12 май 2012, 20:50

мда. лог ошибок в 16 шт

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: чтение с SD

Сообщение KamiSempai » 13 май 2012, 22:10

Какие ошибки? У меня все отлично работает.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

Re: чтение с SD

Сообщение Kot_Programist » 14 май 2012, 14:17

Короче.. блин, я незнаю как подогнать под себя(

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: чтение с SD

Сообщение KamiSempai » 14 май 2012, 17:09

Даже и не знаю, что сказать. Вы не забыли изменить константы SOUND_DIR и SOUND_FILE ?

Вот на всякий случай исходники: http://zalil.ru/33235639
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

Re: чтение с SD

Сообщение Kot_Programist » 14 май 2012, 22:14

2. ERROR in /mnt/sdcard/andjedi/projects/MyTest/src/org/MyTest/LaunchActivity.java (at line 16)
setContentView(R.layout.main);
               ^
R cannot be resolved to a variable

Немного подогнал, но все равно такие ошибки

Kot_Programist
Сообщения: 15
Зарегистрирован: 12 май 2012, 12:56
Откуда: Москва

Re: чтение с SD

Сообщение Kot_Programist » 14 май 2012, 22:57

все получилось, спасибо

Ответить