privada navegacion modo incógnito incognito hoja google directo chrome celular acceso abrir android cookies webview webkit privacy

android - navegacion - modo incógnito en celular



La navegación privada está desaprobada en Android WebView a partir de API 17. ¿Cuál es la alternativa? (1)

Además de lo que tengo en el comentario, este es otro lugar donde se justifica tener múltiples procesos. Como CookieManager es un singleton, los procesos separados tendrán instancias separadas de CookieManager . Las instancias de WebView "navegación privada" podrían estar en un proceso separado de las instancias de WebView "navegación normal".

Esto tiene desventajas:

  • No pueden estar en la misma actividad, ya que una View desde un proceso no se puede representar en otro proceso. Entonces, si la metáfora de UI para el navegador implica varios widgets de WebView en una sola actividad (por ejemplo, pestañas), esa metáfora de UI deberá modificarse para permitir el "cambio de contexto" entre la navegación regular y la privada.

  • Esto consumirá más memoria RAM del sistema, lo cual es malo para el usuario, aunque bueno para el desarrollador (menor probabilidad de excepciones OutOfMemoryError ).

La especificación API dice lo siguiente para el constructor WebView que permite que la navegación privada esté habilitada:

(desde http://developer.android.com/reference/android/webkit/WebView.html )

WebView (Contexto contextual, AttributeSet attrs, int defStyle, boolean privateBrowsing)

Este constructor quedó en desuso en el nivel de la API 17. La navegación privada ya no se admite directamente a través de WebView y se eliminará en una versión futura. Prefiera usar WebSettings, WebViewDatabase, CookieManager y WebStorage para un control detallado de los datos de privacidad.

A partir de API 19 (KitKat) la navegación privada está deshabilitada. Intentando invocar este constructor con un valor de resultados verdaderos en una IllegalArgumentException.

Las alternativas sugeridas no serán ni siquiera marginalmente efectivas para replicar el comportamiento de la navegación privada. La clase CookieManager es un singleton, con todas las configuraciones aplicadas a toda la aplicación. No existe un "control detallado de los datos de privacidad" con este enfoque. El único control proporcionado por CookieManager es la capacidad de deshabilitar las cookies por completo, para CADA WebView presente en la aplicación. Este cambio significa que los navegadores de terceros ya no pueden replicar la función de navegación privada del propio navegador de Google en cualquier capacidad.

Agradecería cualquier sugerencia para evitar este comportamiento. Hasta el momento no puedo encontrar nada en la API que haga posible alguna semejanza con la anterior capacidad de navegación privada.