studio permission app android flash webview

permission - webview android studio 2019



Cargue un SWF en una WebView (3)

Lo averigué. Tienes que habilitar complementos.

webview.getSettings().setPluginsEnabled(true);

Estoy teniendo problemas con esto. Si voy a un archivo SWF directamente en el navegador, funciona bien. Si intento usar loadUrl en un archivo SWF, permanece en blanco y no carga nada.


La función WebView.getSettings().setPluginsEnabled(); el método ha quedado obsoleto desde el nivel 9 de la API, y se eliminó en el nivel 18 de la API.

Puede usar la función más nueva WebView.getSettings().setPluginState(WebSettings.PluginState.ON);
que se agregó en el nivel 8 de API y quedó obsoleto en el nivel de API 18.

De acuerdo con los niveles de la API de documentación de WebSettings más allá de 18 no admitirán complementos; Supongo que se debe a que el complemento principal para admitir era flash, que Adobe ya no está desarrollando para dispositivos móviles.

Citado de la fuente

Por lo tanto, por ahora puede usarlo hasta los 18 años y manejar la compatibilidad con API más altas (lamentablemente)


Niky, tienes un ejemplo de código aquí .

He usado este ejemplo para probar este código y confirmar que funciona. En este ejemplo, el qualibus.swf está dentro de los activos de la aplicación. Pruebe esto en un dispositivo real, ya que en el emulador muestra una página en blanco (probablemente el reproductor flash no está presente en el emulador)

Test3Activity.java:

package com.blabla.test3; import android.app.Activity; import android.os.Bundle; import android.webkit.WebView; public class Test3Activity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); String url ="file:///android_asset/qualibus.swf"; WebView wv=(WebView) findViewById(R.id.webView1); wv.getSettings().setPluginsEnabled(true); wv.loadUrl(url); } }

main.xml:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <WebView android:id="@+id/webView1" android:layout_width="match_parent" android:layout_height="match_parent"> </WebView> </LinearLayout>

Resultado: