Android: streaming de video por servidor HTTPS local: certificado SSL rechazado
Tengo que transmitir video a través de un servidor HTTPS local (por supuesto para hacer algo de DRM de fondo) en Android. El reproductor de medios Android se conecta al servidor local, "transmitiendo" el contenido de vídeo a la pantalla.
Todo funciona bien con un servidor HTTP, pero tan pronto como habilito SSL, el reproductor de video se detiene.
- Android: Transmitir datos de la cámara y escribirlos en el servidor
- Biblioteca para apoyar H.264 AVC. Mp4 en Android 2.2, 2.3?
- Se ha abandonado BufferQueue: Al reproducir vídeo con TextureView
- Reproducción de vídeo desde el directorio caché de la aplicación
- Grabación de vídeo en Android usando JavaCV (Actualizado 2014 02 17)
Si me conecto al servidor HTTPS desde fuera de mi aplicación usando un navegador, recibo una advertencia SSL que puedo ignorar y luego se inicia el reproductor de vídeo.
¿Existe alguna manera de deshabilitar el manejo estricto del certificado para el módulo reproductor multimedia? He visto un montón de mensajes sobre cómo hacer esto utilizando mi propia conexión HTTP, pero nada sobre cómo hacer esto para el reproductor multimedia.
¡Gracias!
ACTUALIZACIÓN: Google para "certificado de intranet" o "certificado instantáneo" y encontrará algo que se supone que funciona. Lo probaremos mañana y publicaré la respuesta aquí.
- Android - Integración de ffmpeg y android-ndk-r9c
- En Android, usando exoplayer, ¿cómo rellenar surfaceview con un video que no tiene la misma relación de aspecto con el dispositivo?
- Reducción de tamaño de archivo de vídeo MediaMuxer (compresión, disminución de resolución)
- Vídeo inverso en android
- Cómo encontrar y reproducir videos descargados por Lynda.com Aplicación para Android o Windows
- Compresión rápida de video en Android
- Android Marshmallow "No se puede reproducir este video" error
- El comando de cambio de velocidad falla cuando el flujo de audio no está presente en el video - ffmpeg
Usted debe intentar esto para seguro ,
// Create a trust manager that does not validate certificate chains TrustManager[] trustAllCerts = new TrustManager[]{ new X509TrustManager() { public java.security.cert.X509Certificate[] getAcceptedIssuers() { return null; } public void checkClientTrusted( java.security.cert.X509Certificate[] certs, String authType) { } public void checkServerTrusted( java.security.cert.X509Certificate[] certs, String authType) { } } }; // Install the all-trusting trust manager // Try "SSL" or Replace with "TLS" try { SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, trustAllCerts, new java.security.SecureRandom()); HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); } catch (Exception e) { } // Now you can access an https URL without having the certificate in the truststore // Your Code Goes Here
Aquí hay más soluciones para esto
Validación de certificados en una conexión HTTPS
Android: confianza en los certificados SSL https://stackoverflow.com/a/6378872/1008278
- ¿Cómo instalo APK usando el script de actualización de Android?
- ¿Por qué el "" BluetoothAdapter: startLeScan (): null "" ocurrió cuando BLE Scan en Android?