Custom WebView de Android para abrir todos los enlaces internamente, excepto los enlaces de YouTube.
Tengo una aplicación WebView que quiero actuar así:
El usuario puede seguir cualquier enlace y la nueva página se abrirá dentro del mismo WebView, excepto si el objetivo es YouTube, en cuyo caso quiero dos posibles escenarios:
- YouTubeAndroidPlayerAPI no puede reproducir algunos videos
- Youtube iframe player no mostrará videos en android 4.x WebView
- ¿Qué diferencia hay entre el uso de WebView y el navegador para la api de vídeo de YouTube?
- Android youtube API reproduce dos o más jugadores de Youtube en una actividad principal
- Se bloquea el SDK de Youtube al cargar vídeos en directo
- Abre la aplicación YouTube para Android para ver el video.
- Abra el navegador estándar para ver el video.
Mi actividad principal es la siguiente:
package com.prgguru.android; import android.os.Bundle; import android.annotation.SuppressLint; import android.app.Activity; import android.webkit.WebView; @SuppressLint("SetJavaScriptEnabled") public class MainActivity extends Activity { WebView browser; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); browser=(WebView)findViewById(R.id.webkit); browser.getSettings().setJavaScriptEnabled(true); browser.getSettings().setDefaultFontSize(20); browser.loadUrl("http://exo-agency.com/funnytube/"); } }
Gracias por adelantado.
- Forzar anuncio del youtube para que aparezca para la prueba
- Android Java Youtube API v3.0 obtener enlace de vídeo RTSP
- Reproduce youtube / vimeo vídeo incrustado en HTML en Android WebView
- Youtube API "Se ha producido un error al inicializar el reproductor de YouTube".
- Reproducir Youtube HTML5 incrustado de vídeo en Android WebView
- ¿Cómo se juega a los videos MP4 de Youtube?
- Integración de youtube para fragmentar
- El video de YouTube no se abre en webView
Respuesta de user2180451 :
Acabo de editar como Respuesta:
FINALMENTE han resolver este problema.
Para cualquier persona que tenga este problema aquí es cómo consigo conseguirlo que trabaja
Aquí dejo una actividad principal de la plantilla para poner en el src> MainActivity.java llenarlo con sus urls
/** YOUR PACKACGE NAME SHOULD GO HERE **/ import android.app.Activity; import android.net.Uri; import android.os.Bundle; import android.webkit.WebView; import android.webkit.WebViewClient; import android.content.Intent; import android.net.Uri; public class MainActivity extends Activity { /** Called when the activity is first created. */ @ Override public void onCreate (Bundle savedInstanceState) { super. onCreate (savedInstanceState); setContentView (R.layout.main); WebView web = (WebView) findViewById (R.id.webView); web.getSettings().setJavaScriptEnabled (true); web.getSettings().setJavaScriptCanOpenWindowsAutomatically(false); web.getSettings().setPluginsEnabled (true); web.getSettings().setSupportMultipleWindows (false); web.getSettings().setSupportZoom (false); web.setVerticalScrollBarEnabled (false); web.setHorizontalScrollBarEnabled (false); web.loadUrl ("THE URL TO YOUR WEBVIEW SITE SHOULD GO HERE"); web.setWebViewClient(new WebViewClient () { @ Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if (url.startsWith("vnd.youtube")){ startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); return true; } else { return false; } } }); } }
Después de que en su página web real HTML aplicación web se puede llamar a la aplicación de YouTube para reproducir los videos con esta entrada
<a href="vnd.youtube://VIDEOID">WATCH ME</a>
Simplemente reemplace VIDEOID, con el ID de video actual del video que desea ver y al hacer clic en él, lanzará la aplicación de YouTube con el video.
Si desea una imagen en miniatura en lugar del enlace de texto para abrir el video, simplemente
- Android MP4 stream – El video no se puede reproducir
- Script `create` para Cordova Android falla al crear nuevos errores de proyecto con la configuración java / ant