¿Dónde está la clase SampleZipfileProvider?
En la parte inferior de la sección en la guía de dev de Google en archivos de expansión ( http://developer.android.com/guide/market/expansion-files.html#ZipLib ) está el siguiente texto.
APEZProvider – La mayoría de las aplicaciones no necesitan usar esta clase. Esta clase define un ContentProvider que organiza los datos de los archivos ZIP a través de un proveedor de contenido Uri para proporcionar acceso a archivos para ciertas APIs de Android que esperan acceso de Uri a archivos multimedia. La aplicación de ejemplo disponible en el paquete Apk Expansion muestra un escenario en el que esta clase es útil para especificar un vídeo con VideoView.setVideoURI (). Consulte la clase SampleZipfileProvider de la aplicación de ejemplo para ver un ejemplo de cómo extender esta clase para usarla en su aplicación.
La aplicación de ejemplo en cuestión no contiene esta clase. Pero contiene una referencia a un archivo .SampleVideoPlayerActivity en el AndroidManifest.xml, que no está presente en el proyecto tampoco.
¿Alguien ha intentado implementar una clase concreta basada en APEZProvider
y la utilizó con VideoView.setVideoURI()
?
He implementado la clase:
public class ZipFileContentProvider extends APEZProvider { @Override public String getAuthority() { return "com.myCompany.myAppName.provider.ZipFileContentProvider"; } }
Pero no sé cómo utilizarlo con la llamada VideoView.setVideoURI()
. ¿Alguien puede ayudar?
- ¿Las llamadas a un Content Resolver deben realizarse en un Servicio (es decir, un hilo separado)?
- ¿Cómo sabe CursorLoader con LoaderManager para enviar el cursor a un CursorAdapter?
- ¿Cómo compartir archivos desde cualquier ruta usando un FileProvider?
- ContentResolver.notifyChange no funciona
- ¿Error al insertar datos en Proveedor de contenido propio?
- ¿Cuáles son la semántica de withValueBackReference?
- ¿Cómo insertar correctamente valores en la base de datos SQLite utilizando el método insert () de ContentProvider mediante un CursorLoader?
- SyncAdapter no se sincroniza automáticamente
Resultó que mi ZipFileContentProvider era suficiente. Para aquellos que vienen a través de este problema. Esto es lo que hice para usar el proveedor de contenido para el método VideoView.setVideoURI ().
Agregar proveedor a Manifest.
<provider android:authorities="com.myCompany.myAppName.provider.ZipFileContentProvider" android:name=".ZipFileContentProvider"></provider>
En clase de reproductor de video:
final String AUTHORITY = "com.myCompany.myAppName.provider.ZipFileContentProvider"; final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY); video = (VideoView) findViewById(R.id.video); video.setVideoURI(Uri.parse(CONTENT_URI + "/" + videoFileName + ".mp4"));
- GetHeight () vs getLayoutParams (). Altura
- Dropdown Spinner fuera de la barra de acción? (IceCream Sandwich estilo, con ActionBarSherlock)