Intereting Posts
Исходный пакет, который добавляется в парцеллу Как я могу получить разницу между двумя датами в android ?, проверял каждую вещь и сообщение JDBC против веб-сервиса для Android BluetoothHeadset: зачем нужно использовать таймер для вызова startVoiceRecognition? Могу ли я настраивать глобальные пользовательские стили приложения для виджета для поддержки Android? Ткань / Crashlytics Android добавляет строковый ресурс для Apikey вызывает Crashlytics Developer Tools Error Google Maps Android – Карта больше не отображается после изменения хранилища ключей Android AsyncTask возвращает несколько значений в doInBackground, которые будут использоваться для onPostExecute Команда APDU для чтения данных кредитной карты с карты Visa Paywave NFC с поддержкой Samsung Galaxy S4 Почему AccountManager.invalidateAuthToken требует AccountType вместо AccountName? OnPause, onResume события в Android Регистрация проблем для C2DM в Android Как изменить ключевой фон любого ключа в мягкой клавиатуре Android Перевести вид с одного макета на другой с переводом анимации Доступен ли SQL или общий доступ к файлам в основном потоке пользовательского интерфейса Android?

Загрузите файл из внешнего хранилища в Inputstream

У меня есть видеофайл в моем внешнем каталоге. Как я могу загрузить его во входную переменную. Пока я читаю файл в папке res / raw, но я хочу прочитать его с SD-карты. Также я не знаю о имени файла, но его путь будет получен через намерение. Проверьте следующий код

public class SonicTest extends Activity { VideoView videoView; String uri; InputStream soundFile; File file; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public void play(View view) { new Thread(new Runnable() { public void run() { float speed= (float) 1.0; float pitch= (float) 1.5; float rate= (float) 1.0; uri= Environment.getExternalStorageDirectory().toString(); uri=uri+"/video.3gp"; AndroidAudioDevice device = new AndroidAudioDevice(22050, 1); Sonic sonic = new Sonic(22050, 1); byte samples[] = new byte[4096]; byte modifiedSamples[] = new byte[2048]; InputStream soundFile = null; //soundFile = getContentResolver().openInputStream(Uri.parse(uri)); soundFile=getResources().openRawResource(R.raw.video3); Log.i("testing","check if SoundFile is correct "+soundFile); int bytesRead; if(soundFile != null) { sonic.setSpeed(speed); sonic.setPitch(pitch); sonic.setRate(rate); do { try { bytesRead = soundFile.read(samples, 0, samples.length); } catch (IOException e) { e.printStackTrace(); return; } if(bytesRead > 0) { sonic.putBytes(samples, bytesRead); } else { sonic.flush(); } int available = sonic.availableBytes(); if(available > 0) { if(modifiedSamples.length < available) { modifiedSamples = new byte[available*2]; } sonic.receiveBytes(modifiedSamples, available); device.writeSamples(modifiedSamples, available); } } while(bytesRead > 0); device.flush(); } } } ).start(); }} 

Solutions Collecting From Web of "Загрузите файл из внешнего хранилища в Inputstream"