Nella parte inferiore della sezione della guida di sviluppo di Google sui file di espansione (http://developer.android.com/guide/market/expansion-files.html#ZipLib) è presente il seguente testo.Dov'è la classe SampleZipfileProvider?
APEZProvider - La maggior parte delle applicazioni non ha bisogno di utilizzare questa classe. Questa classe definisce un ContentProvider che effettua il marshalling dei dati dai file ZIP tramite un provider di contenuti Uri per fornire l'accesso ai file per determinate API Android che prevedono l'accesso Uri ai file multimediali. L'applicazione di esempio disponibile nel pacchetto Apk Expansion dimostra uno scenario in cui questa classe è utile per specificare un video con VideoView.setVideoURI(). Vedi la classe dell'app di esempio SampleZipfileProvider per un esempio su come estendere questa classe all'utilizzo di nell'applicazione.
L'esempio di applicazione in questione non contiene questa classe. Ma contiene un riferimento a un file .SampleVideoPlayerActivity in AndroidManifest.xml, che non è presente nel progetto.
Qualcuno ha provato a implementare una classe concreta basata su APEZProvider
e l'ha utilizzata con VideoView.setVideoURI()
?
ho implementato la classe:
public class ZipFileContentProvider extends APEZProvider {
@Override
public String getAuthority() {
return "com.myCompany.myAppName.provider.ZipFileContentProvider";
}
}
Ma non so come usarlo con la chiamata VideoView.setVideoURI()
. Qualcuno può aiutare?
non riuscivo a trovare il SampleZipfileProvider sia. Non ho idea di come funzioni la tua risposta, ma lo fa; Grazie! – Blundell
Vorrei aggiungere che se i file si trovano in una cartella all'interno dello zip (come il mio), è necessario includerlo nel percorso. Ad esempio Uri.parse (CONTENT_URI + "/ MyFolder /" + videoFileName + ".mp4") – dnorcott
Sei il mio eroe! Come Blundell, non so come funziona, ma lo fa e lo prenderò: D Grazie! +1 –