Les services Google Play pour les applications instantanées se téléchargent / s'installent sans autorisation, téléchargent / mettent à jour d'autres composants, comment désactiver?

28

Contexte

" Les services Google Play pour les applications instantanées " se sont installés sur mon appareil sans ma permission. Il a cassé la fonctionnalité de mon pare-feu (AFWall et quelques autres applications). Et il se met à jour lui-même et d'autres applications / composants sans autorisation. Lorsque je désinstalle ce composant, il se télécharge à nouveau et s'installe immédiatement. (C'est-à-dire que ce sont probablement les "services Google Play" qui font cela en arrière-plan)

Il n'y a aucune confirmation ni aucune notification de téléchargement, de mise à jour ou d'installation de quoi que ce soit. La façon dont je l'ai découvert était en remarquant que certaines fonctionnalités de mes applications avaient été modifiées / cassées. J'ai donc utilisé une application ("System Info for Android") et cela montre qu'en fait ce "Google Play services pour Instant Apps" a été installé il y a un jour.

Ma question est: comment désactiver complètement les mises à jour non autorisées d'un appareil Android, tout en préservant les fonctionnalités suivantes:

  • Synchronisation des contacts
  • Google Play Store
  • Application Google Maps

Dans ces captures d'écran, vous pouvez voir que tous les paramètres responsables des mises à jour automatiques sont désactivés. Par conséquent, ce téléchargement et cette installation ne sont clairement pas autorisés et ne devraient pas avoir lieu. La capture d'écran du paramètre Instant Apps apparaît une fois que la chose est déjà installée. Ne laissant que le paramètre global de Google Play Store.

entrez la description de l'image ici
Paramètres ›Applications // Paramètres› Google ›Applications instantanées (désactivées!) // Paramètres Play Store (mise à jour automatique désactivée!)

Tout a commencé après avoir suivi une suggestion trompeuse , vous pouvez voir dans cette capture d'écran, pour mettre à jour les "services Google Play":

entrez la description de l'image ici
cliquez sur l'image pour une plus grande variante


Mise à jour 1:

Ce que j'ai découvert jusqu'à présent, c'est que quelque chose (très probablement "Google Play Services") demande le téléchargement + l'installation. La façon dont il le fait est de placer la demande avec Google Download Manager. Manque de clarté ce qui déclenche, mais si l' appareil est en regardant de près une icône de Download Manager fait apparaître dans une notification indiquant le pourcentage de téléchargement. Cependant, une fois terminé, il disparaît instantanément. Pourtant, rien n'indique l'installation.

Ce que j'ai essayé jusqu'à présent:

  1. Installez le suivant comme niveau utilisateur au lieu des applications au niveau du système qu'ils sont à l' origine: compte Google, GP Store et cadre de service ( com.google.android.gms; com.android.vending; com.google.android.gsf) Cela n'a pas marché . Le téléchargement est toujours demandé puis installé.
  2. Il semble que tout moyen de bloquer l'installation le fera télécharger encore et encore (jusqu'à ce que vos données soient utilisées). La meilleure approche serait donc probablement d'empêcher le téléchargement en premier lieu. Je n'ai pas pu installer Download Manager en tant qu'application utilisateur, ce qui semble être la partie à contrôler.
  3. Bloquer le Gestionnaire de téléchargement et / ou le Play Store via un pare-feu est possible, mais cela brise la seule manière fiable de télécharger des applications.

Mise à jour 2:

La mise à niveau vers la version précédente de GP Services (v11.3.02) a fonctionné pendant quelques jours, mais aujourd'hui, les services GP pour Instant Apps ont été téléchargés et installés. Peu importe la version que vous utilisez. Il est fort probable que Google mettra à jour tous les téléphones de cette façon.

Mise à jour 3:

Alors maintenant, Google se met à jour régulièrement à peu près chaque fois qu'il en a envie. Si je diffuse un film, paralysant ma vitesse, utilisant ma bande passante Internet pour laquelle je paie de l'argent par Mo. Dans cette image, vous pouvez voir 3 applications Google mises à jour sans autorisation.

entrez la description de l'image ici

Emil
la source
1
Bonjour @Firelord Juste pour être clair, je parle de "services Google Play pour les applications instantanées", pas des "services Google Play" standard. Ce dernier est un développement récent et se comporte comme un malware (bien qu'il s'agisse de l'application Google officielle). Je n'irais pas trop en détail sur les fonctions de l'application qu'elle a cassées principalement parce qu'elle dépendra probablement d'un périphérique / ROM (j'utilise la ROM standard et elle est enracinée, mais pour la question, j'aimerais pour trouver une solution non-root "normale"). AFWall il s'est cassé de telle manière qu'il me donne une erreur "Impossible d'appliquer les règles", par intermittence.
Emil
1
@Izzy merci pour les modifications, c'est plus clair.
Emil
1
Heureux de lire, Emil! Et oui, testez-le un peu plus. Quand il n'y a pas d'effets secondaires, pensez à répondre à votre propre question :)
Izzy
1
Voici le lien vers une discussion connexe sur le forum Google Play.
Stan
3
Salut @frans, le truc c'est que ce n'est pas seulement la bande passante / les coûts. C'est également l'installation de logiciels indésirables que j'essaie d'empêcher. De plus, je télécharge des applications et des mises à jour sur Internet du téléphone car je n'ai actuellement pas accès au WiFi. Et une autre chose est que ce programme de mise à jour "écoute" les changements d'état, donc si vous passez au WiFi, il priorise les choses Google et les signale en premier immédiatement. Dans la solution de contournement que j'ai publiée ci-dessous, il s'agit essentiellement d'une condition de concurrence.Je téléchargerais une application avant qu'il ne réalise qu'il est possible de télécharger des mises à jour, mais je la verrouille à nouveau, mais ce n'est pas un moyen fiable à 100%.
Emil

Réponses:

7

Mise à jour : dans les versions récentes d'Android, vous pouvez le faire à partir de Settings-> Google-> Instant Apps-> OFF.

La réponse originale suit ci-dessous:

Dans le meilleur des cas, cela devrait suffire à empêcher Instant Apps de se mettre à jour automatiquement.

Exécutez sur l'appareil via un terminal (connectbot, juicessh, etc.).

pm hide com.google.android.instantapps.supervisor

Ou, si vous exécutez via adb sur un PC tout en étant connecté via un câble (ou wifi adb), utilisez alors:

adb shell pm hide com.google.android.instantapps.supervisor

Contrairement à pm disable pm hidefonctionne également sur les appareils non rootés. Jusqu'à présent, je n'ai plus vu de notifications Instant Apps apparaître.

Si ce qui précède ne fonctionne pas pour vous, une autre approche serait de modifier le contexte SELinux du fichier / dossier (par exemple avec chcon).


Pour annuler la pm hidecommande ci-dessus, utilisez:

pm unhide com.google.android.instantapps.supervisor
ccpizza
la source
Eh bien, cela ciblerait cette application particulière, mais j'aimerais bloquer toutes les mises à jour ou l'installation non autorisées de nouvelles applications. En outre, ce type d'installation et de téléchargement "au niveau du système" se produit caché à l'utilisateur. La façon dont cela fonctionne est, il vérifie la version et s'il doit être mis à niveau, il télécharge un fichier dans les coulisses. Une fois le téléchargement terminé, il tente de faire l'installation et si l'installation échoue, il réessaiera à un autre moment. Les fichiers temporaires sont supprimés périodiquement, donc s'il ne les trouve pas ... il les téléchargera à nouveau. Si vous surveillez le dossier temporaire, vous pouvez le voir faire ça encore et encore ...
Emil
@Emil: com.google.android.instantapps.supervisorl'application qui effectue la surveillance n'est-elle pas mentionnée? Ou s'agit-il d'un service spécifique des services google play? Si c'est le deuxième, je suppose que la recette n'est pas terminée. J'ai également refusé au package l'autorisation de s'exécuter en arrière-plan et de démarrer au démarrage.
ccpizza
Je n'ai pas pu déterminer exactement ce que fait la surveillance. Sur Android, il existe un système de configuration d'écouteurs et il existe quelques applications qui prétendent les ajuster, mais elles se sont révélées inefficaces. Je n'ai pas pu trouver un moyen d'accéder / contrôler directement cette "file d'attente" ou de l'intercepter d'une manière ou d'une autre. Fondamentalement, tout ce que Google considère comme essentiel peut contourner les paramètres des applications ordinaires
Emil
3

Comme son nom l'indique, il fait partie des applications de services Google. PlayStore l'utilise pour exécuter des applications sans les installer (nouveau service). Il est possible de désactiver mais pas de supprimer (pour autant que je sache, il continuera à s'installer lui-même comme faisant partie des services de base).

Pour désactiver, accédez à Paramètres ›Google› Applications instantanées et activez l'interrupteur à bascule ( référence ).

Je crois que ce sera une application système sur les nouveaux appareils à leur sortie, pour le reste d'entre nous avec des appareils plus anciens, ils forceront simplement l'installation sur des appareils compatibles.

Edit: En raison du fait que la question a été modifiée après avoir répondu. Cette réponse s'applique à aucun appareil rooté. Avec un appareil rooté, cela pourrait être possible, mais je ne pense pas à une solution facile ou permanente.

Josue Rivera
la source
Continuons cette discussion dans le chat .
Josue Rivera
@Emil Je viens de nettoyer tous les commentaires sauf le lien vers votre chat (où les commentaires sont toujours disponibles). De plus, je ne peux pas être d'accord avec vous que ce n'est pas une réponse: dans votre question, vous avez écrit "il ne semble pas y avoir de moyen facile de désactiver définitivement" et "Ma question est: comment désactiver complètement cette fonctionnalité" - c'est ce que Josue présente dans cet article: "Pour désactiver, allez dans Paramètres, Google, Instant Apps et basculez l'interrupteur à bascule." Si vous l'avez fait et que cela n'a pas fonctionné, veuillez l'indiquer.
Izzy
1
Quoi qu'il en soit, j'ai fini d'essayer d'expliquer cela. Il a posé une question, j'ai essentiellement dit non, a expliqué pourquoi et a donné des informations à toute autre personne qui pourrait se retrouver dans des situations similaires. La question a été modifiée, j'ai modifié pour exprimer que ma réponse s'appliquait à la question d'origine. Si je ne comprends pas comment les règles fonctionnent ici, supprimez ma réponse et dites-moi comment je peux faire mieux.
Josue Rivera
1
@JosueRivera quitte que si vous êtes convaincu que vous n'avez pas tort. Si la réponse est fausse, les gens peuvent voter contre et continuer.
Firelord
1
Il se met à jour automatiquement même lorsqu'il est désactivé. Je l'ai arrêté il y a plus d'un mois et il a été mis à jour automatiquement à nouveau aujourd'hui.
tgf
1

À propos de: [Root Only] Cette solution consiste à bloquer l'accès en écriture au dossier temp (cache) où Google télécharge ses applications système telles que les services Google Play, les services Google Play pour les applications instantanées, etc. C'est plus simple qu'il n'y paraît, car je suis tout expliquer, ça ressemble beaucoup. Ensuite, l'installation de nouvelles applications se fait essentiellement en 3 étapes et le processus est similaire à l'installation de programmes sur un PC.


Contexte: Sous mon système, les dossiers fonctionnent comme suit:

1) /data/data/com.android.providers.downloads/cache
* Il s'agit du dossier dans lequel les mises à jour du système Google (ainsi que les nouvelles applications système) sont installées.
* Malheureusement, ce dossier est également utilisé pour télécharger de nouvelles applications normales. Vous ne pouvez donc pas simplement le bloquer définitivement. Vous devez pouvoir le bloquer / débloquer lors du téléchargement de nouvelles applications.

2) /mnt/sdcard/Android/data/com.android.vending/files
* Ce dossier est utilisé pour mettre à jour les applications normales (non liées au système Google). Donc, pas besoin de bloquer cela ou de faire quoi que ce soit de spécial quand il s'agit de mettre à jour vos applications normales comme Facebook, jeux, etc.


Solution: le dossier de cache ci-dessus est verrouillé pendant le fonctionnement normal. Lorsque vous souhaitez installer une nouvelle application, le processus global est le suivant (bien que principalement automatisé): (1) déverrouiller le dossier de cache (2) verrouiller les dossiers d'application, au cas où il se faufiler pendant qu'il est débloqué et l'installe. (3) Téléchargez votre nouvelle application depuis la boutique (4) Copiez le programme téléchargé du dossier d'installation vers un autre endroit et renommez-le à partir du nom par défaut (download.apk) (5) Effacez et verrouillez le dossier du cache (6) déverrouillez les dossiers des applications ( 7) Cliquez sur le fichier apk pour l'installer.

Évidemment, vous ne voulez pas taper cela au terminal à chaque fois, ce sont donc des étapes automatisées. Ils impliquent l'utilisation de deux applications supplémentaires ainsi que l'installation de BusyBox (pour pouvoir utiliser la commande chattr par les scripts)

  1. Le déverrouillage du verrouillage est réalisé par une application appelée Gscript. Vous pouvez utiliser n'importe quelle autre application permettant d'exécuter des scripts. Il existe une version dans Google Store, mais elle se bloque pour moi et pour les autres. Il y a une fourchette stable disponible ici: https://bitbucket.org/Equidamoid/gscript (Merci au post de l'auteur ici: /programming//a/20328927/7609435 ) Collez simplement ces deux scripts là-bas. (Les deux ont besoin de SU)

    A) Exécuter avant le téléchargement - Verrouiller les applications / Déverrouiller le cache

    chattr +i /data/data/* chattr +i /data/data chattr +i /data/app/* chattr +i /data/app chattr -i /data/data/com.android.providers.downloads/cache

    B) Exécuter une fois le téléchargement terminé et après avoir copié le fichier - effacer et verrouiller le cache / déverrouiller les applications

    rm /data/data/com.android.providers.downloads/cache/* chattr +i /data/data/com.android.providers.downloads/cache chattr -i /data/data/* chattr -i /data/data chattr -i /data/app/* chattr -i /data/app

  2. Vous saurez que l'application est téléchargée lorsque le Play Store indique «Échec du téléchargement». Il dira cela car il n'a pas pu installer l'apk, mais le téléchargement a été réussi et se trouve dans le dossier cache . Avant d'exécuter le script (B) ci-dessus, vous devez déplacer le fichier du dossier de cache ailleurs. Vous pouvez le faire en utilisant n'importe quelle application bien sûr, mais j'aime utiliser Total Commander, car il peut avoir deux volets et il prend en charge les signets (j'y ai ajouté du cache ). Alors déplacez-le et renommez le fichier du nom par défaut en quelque chose d'autre, puis exécutez le script (B) ci-dessus. Notez également que lors de la copie de l'APK, il doit avoir une icône de l'application. S'il a l'icône par défaut, il s'agit probablement d'un téléchargement corrompu pour d'autres raisons indépendantes, vous pouvez donc réessayer de télécharger.

  3. Maintenant, le dossier de cache est effacé et verrouillé et les dossiers d'applications sont déverrouillés. (vous pouvez vérifier que le dossier de cache est vide juste pour être sûr à 100% mais je doute que cela soit nécessaire) Vous pouvez maintenant installer l'APK que vous avez téléchargé.

Remarque 1: Si vous cliquez sur un nouveau téléchargement et qu'il est dit "en attente" fermez simplement Google Play et redémarrez-le, le téléchargement devrait commencer automatiquement.

Note2: J'ai testé cela avec seulement Android: 6.0.1 / MIUI: 8.5.3.0, donc cette solution n'est peut-être pas universelle. Vérifiez si vous disposez du dossier de cache et si le téléchargement des services Google Play y est en cours de téléchargement (une fois le téléchargement terminé, il y reste pendant un certain temps).

AVERTISSEMENT: il est bien de garder le dossier de cache verrouillé, mais si vous redémarrez votre téléphone alors que ces dossiers de données sont verrouillés, votre téléphone ne démarrera pas. Et vous devrez aller manuellement et le changer à partir du shell TWRP.

PS: je comprends que cette solution n'est pas pour tout le monde, mais si votre principale préoccupation est la stabilité et la maîtrise de l'utilisation des données, cela fonctionne ... pour l'instant. J'espère que quelqu'un trouvera une meilleure réponse que celle-ci.

Emil
la source
Avertissement: Maintenant que votre téléphone n'est plus mis à jour automatiquement, s'il y a une vulnérabilité avec le système Google précédent, vous pourriez être exposé. Cependant, personnellement, je considère une vulnérabilité lorsque quelque chose peut être installé sans autorisation explicite.
Emil