No se ha encontrado actividad para manejar Intent – android.intent.action.OPEN_DOCUMENT
Estoy intentando mi mano en el marco de acceso de almacenamiento de android 4.4
He desarrollado una aplicación simulada que dispara una intención en el inicio de la actividad.
- La aplicación se bloquea después de recibir una llamada telefónica
- Iniciar una segunda actividad dentro de un TestCase (que no es la actividad bajo prueba)
- Android: eliminar la actividad del sabor
- Clic de notificación: actividad ya abierta
- Actividad de configuración botón Arriba
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT); intent.addCategory(Intent.CATEGORY_OPENABLE); startActivityForResult(intent, READ_REQUEST_CODE);
También he desarrollado otra aplicación falsa que sirve como el proveedor de archivos.
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.saf" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="19" /> <uses-permission android:name="android.permission.MANAGE_DOCUMENTS"/> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.saf.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <provider android:name="com.example.saf.MyFileProvider" android:authorities="com.example.saf.documents" android:exported="@bool/is_kitkat" android:enabled="@bool/is_kitkat" android:grantUriPermissions="@bool/is_kitkat" android:permission="android.permission.MANAGE_DOCUMENTS"> <intent-filter> <action android:name="android.content.action.DOCUMENTS_PROVIDER" /> </intent-filter> </provider> </application>
He implementado la clase MyFileProvider.
Pero cuando lanzo la user-app (la que dispara la intención), obtengo el siguiente error
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.OPEN_DOCUMENT cat=[android.intent.category.OPENABLE] }
Acabo de seguir los desarrolladores de Android. Alguna idea de lo que podría estar haciendo mal?
Edit: Aquí está mi último Manifiesto. También tengo que tener una "correcta" la aplicación de MyFileProvider "extends DocumentsProvider"? ¿Puedo devolver null en las funciones por ahora?
- Actividad iniciada con startActivityForResult () que no regresa a la actividad de llamada
- Widget simple de Android que inicia la actividad
- En Android, ¿cómo cambiar las actividades de forma programática?
- Permitir que el diálogo se muestre antes o durante onPause ()?
- Dificultades para implementar Model-View-Presenter en Android
- Animación de transición de actividad de izquierda a derecha en Android
- ¿Alguna ayuda de Java con la fuente de Android por favor?
- Dos actividades de lanzamiento
Agregue un tipo MIME o simplemente intent.setType("*/*")
.
Esto parece ser un problema conocido . setType()
es necesario.
Editar: también es necesario agregar android:enabled="true"
, tenga en cuenta que debe hacer referencia a ella de los valores y no directamente para que sólo para habilitarlo para> = kitkat. Así que android:enabled="@bool/is_kitkat"
, <bool name="atLeastKitKat">false</bool>
en /res/values/
y <bool name="atLeastKitKat">true</bool>
/res/values-v19/
Para abrir todos los archivos, añada esta línea:
intent.setType("*/*") ;
Y si necesita filtrar para mostrar imágenes, añada esta línea:
intent.setType("image/*");
Basta lanzar su intención, como,
Intent intent = new Intent("android.intent.action.GET_CONTENT"); ((Intent)intent).addCategory("android.intent.category.OPENABLE"); ((Intent)intent).setType("*/*");
- Problema de cierre de cámara en Samsung Galaxy S3 versión 4.1.1
- Cómo limitar EditText para introducir sólo valores de flotante en Java?