Elija un archivo de la tarjeta SD con Intent

¿Android tiene alguna manera de navegar y recoger cualquier archivo de la tarjeta SD con intentos? Algo como

String uri = (Environment.getExternalStorageDirectory()).getAbsolutePath(); Intent i = new Intent(Intent.ACTION_PICK,Uri.parse(uri)); 

Estoy tratando de enviar un archivo a otros dispositivos mediante Bluetooth. Puedo enviar si doy la trayectoria completa del nombre de archivo en mi código. Quiero que mis usuarios escogen el archivo que se debe enviar.

Puede utilizar el siguiente código

 Intent mediaIntent = new Intent(Intent.ACTION_GET_CONTENT); mediaIntent.setType("video/*"); //set mime type as per requirement startActivityForResult(mediaIntent,REQUESTCODE_PICK_VIDEO); 

Entonces usted puede conseguir la trayectoria en onActivityResult

 @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { // TODO Auto-generated method stub super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUESTCODE_PICK_VIDEO && resultCode == Activity.RESULT_OK) { Uri videoUri = data.getData(); Log.d("", "Video URI= " + videoUri); } } 

Para la navegación general utilice esto (por ejemplo, archivo de música):

 Intent intent = new Intent(); intent.setType("*/*"); if (Build.VERSION.SDK_INT < 19) { intent.setAction(Intent.ACTION_GET_CONTENT); intent = Intent.createChooser(intent, "Select file"); } else { intent.setAction(Intent.ACTION_OPEN_DOCUMENT); intent.addCategory(Intent.CATEGORY_OPENABLE); String[] mimetypes = { "audio/*", "video/*" }; intent.putExtra(Intent.EXTRA_MIME_TYPES, mimetypes); } startActivityForResult(intent, Constants.REQUEST_BROWSE); 

Y recibe los datos aquí:

 @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == Constants.REQUEST_BROWSE && resultCode == Activity.RESULT_OK && data != null) { Uri uri = data.getData(); if (uri != null) { // TODO: handle your case } } } 
  • java.io.IOException: accept: La conexión no se crea (falla o se anula)
  • Problemas de conexión Bluetooth con IntentService
  • La conexión BluetoothSocket de Android devuelve cero
  • ¿Cómo en realidad BOND un dispositivo?
  • No se puede cancelar el proceso de descubrimiento de Bluetooth
  • ¿Cómo puedo conectar correctamente una aplicación de Android a un socket RFCOMM en un microcontrolador Arduino habilitado para Bluetooth?
  • Cómo utilizar Broadcom BLE SDK (SMART 4.0) en Android 4.X
  • Cómo borrar mediante programación la caché Bluetooth utilizando GattServer
  • Cómo enviar un archivo desde un dispositivo Android a otro dispositivo a través de Bluetooth por código
  • Servidor Android Bluetooth de Baja Energía
  • Android mata a mi lanzador en BT connect
  • Interesting Posts
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.