En Android 6, el usuario tiene (¡finalmente!) La posibilidad de aprobar o denegar permisos específicos para una aplicación.
Sin embargo, no pude encontrar una manera de aprobar o denegar el acceso a la red, ya sea a través de Wi-Fi o mediante conexión de datos móviles. El permiso correspondiente aparece en "Otras capacidades de la aplicación" y es solo informativo, aparentemente no hay forma de cambiarlo.
Aquí hay un ejemplo con la aplicación Chess Free:
Respuestas:
No podrá lograr el éxito a través del mecanismo nativo de Android.
Cody Toombs de Android Police lo ha señalado muy bien en el artículo: Android M nunca pedirá permiso a los usuarios para usar Internet, y eso probablemente sea correcto .
En la sección Permisos normales y peligrosos del documento Descripción general de permisos , Google ha señalado:
(El énfasis es mío)
Sorprendente o no, los siguientes permisos se incluyen en la lista de permisos normales :
Si eso no es suficiente, revise los permisos administrados por AppOps aquí . Si no encuentra su permiso allí, no podrá hacer nada con él en la GUI.
Dado que los métodos alternativos ya están ampliamente cubiertos en este sitio, consulte:
fuente
Puede usar NetGuard (consulte mi lista de Firewalls de Internet para otras alternativas), que funciona sin root y le permite bloquear el acceso a Internet para aplicaciones de forma selectiva (WiFi o datos móviles, e incluso siempre o solo si la pantalla está apagada). Es del desarrollador de XPrivacy, por lo que tiene que ser bueno;)
NetGuard (fuente: Google Play ; haga clic en las imágenes para ver las variantes más grandes)
NetGuard es de código abierto, por lo que también puede encontrarlo en F-Droid .
Actualización: tenga en cuenta que las versiones recientes de Netguard incluyen Google Ads y Firebase Analytics, dos cosas que, en mi humilde opinión, no tienen nada que hacer en una aplicación de firewall (o cualquier otra seguridad), lo que probablemente sea la razón por la que ya no se actualiza en F-Droid repositorio oficial (todavía disponible en el mío con las advertencias apropiadas).
fuente
Hay algunas aplicaciones realmente geniales que pueden hacerlo sin rootear. Aquí hay dos ejemplos:
LostNet Firewall Gratis :
(Haga clic en la imagen para ampliarla)
Mobiwol: NoRoot Firewall
(Haga clic en la imagen para ampliarla)
fuente
Si tiene acceso de root también puede usar:
He actualizado mi dispositivo a Android 6.0.1 y hasta ahora ambos parecen funcionar.
fuente
No se puede negar el acceso a Internet para aplicaciones individuales en Android de forma nativa. Los anuncios son las principales fuentes de ingresos de Google.
Sin embargo, si está utilizando Opera Max, puede restringir el acceso a Internet a aplicaciones individuales. Incluso puede guardar datos, gracias a la tecnología de compresión de Opera.
Instala Opera Max desde Play Store. Es completamente gratis y fácil de usar. No se requiere root.
fuente
A la luz de algunos eventos recientes , me gustaría mejorar esta pregunta presentando Triangle de Google. Consíguelo en APKMirror o APKPure e instálalo con ADB .
Estas son algunas de las características clave.
No es una VPN, bloquea localmente el acceso de sus aplicaciones a Internet. Piense en ello como un nuevo permiso, como usar la cámara o tener acceso a su ubicación.
fuente
Preámbulo
Puede que sea tarde, pero deseo agregar mi propia opinión sobre su pregunta, por completo. Esta respuesta es una forma segura de bloquear el acceso a Internet a una aplicación. Los inconvenientes? No bloquea Intents, es complicado y puede hacer que la aplicación de destino se bloquee, y requiere privilegios de root .
Ha sido probado y confirmado para funcionar con Android 7.1.2.
Razón fundamental
Según lo mencionado por los otros respondedores, cualquier aplicación que desee acceder a Internet, debe declarar el
android.permission.INTERNET
permiso innegable dentro de suAndroidManifest.xml
. Sin embargo, ¿cómo recuerda Android qué permisos solicitó una aplicación? Al guardarlos dentropackages.xml
, un archivo protegido ubicado en/data/system
.No hace falta decir que alguien como nosotros podría estar interesado en editar dicho archivo, con el propósito de agregar o eliminar un permiso, siempre que tenga privilegios de root. Esta es nuestra forma de negar el acceso a Internet a una aplicación sin VPN o software de firewall.
El
packages.xml
archivoEl
packages.xml
archivo enumera todas las aplicaciones instaladas, junto con sus rutas y permisos. Cada aplicación se coloca entre las<package></package>
etiquetas; por el bien de mi respuesta, apuntaré a Nova Launcher por TeslaCoil. La sección de la aplicación en el archivo es la siguiente:La sangría se informa textualmente del archivo.
Procedimiento
Armados con el conocimiento anterior, ahora podemos proceder a examinar los permisos de Nova Launcher, envueltos entre ellos
<perms></perms>
. Muy pronto, encontraremos el único que necesitamos editar:Para denegar efectivamente el acceso a Internet a la aplicación, simplemente necesitamos eliminar toda la línea y reiniciar nuestro dispositivo. Es inútil comentarlo para uso futuro: Android examina este archivo en cada arranque y purgará sus comentarios .
Inconvenientes
Si sigue este procedimiento, obtendrá una aplicación que no puede comunicarse con Internet de ninguna manera. Sin embargo, las aplicaciones y el software mal codificados destinados a Marshmallow y superiores pueden bloquearse al intentar conectarse a Internet , como lo hace Nova.
Además, como señaló Firelord, la actualización de una aplicación hace que los cambios se reviertan, anulando nuestros esfuerzos y requiriendo que se elimine nuevamente el permiso.
Modificando este procedimiento
Para revertir lo que hicimos anteriormente, todo lo que se necesita es agregar el permiso que eliminamos entre los demás y reiniciar el dispositivo.
Renuncia
De ninguna manera estoy afiliado a Nova Launcher o sus desarrolladores.
fuente