42 votos

¿Cómo eliminar las notificaciones de actualización de una aplicación determinada en Google Play Store?

Cuestión general

Tengo una aplicación X instalada en mi dispositivo en la versión Y. Por alguna razón no quiero actualizarla a una versión más reciente (Y+z). Sin embargo Google Play Store siempre muestra actualizaciones para X, lo que me impide un simple "actualizar todo". Mi pregunta, resumida en una sola frase:

¿Cómo ocultar permanentemente las actualizaciones para X de la lista de "actualizaciones disponibles"?


Ejemplos concretos

En primer lugar, sé que existen alternativas como, por ejemplo, el AppBrain Market App que puede manejar esto bastante bien (omita esta actualización, omita todas las actualizaciones futuras). Prefiero una "solución genérica", que no depende de un 3 rd party's market app.

En segundo lugar, sé que Copia de seguridad Titanium incluye un "Market doctor", que puede utilizarse para desconectar una aplicación de Google Play . 1 Sin embargo, en mi caso concreto eso sólo funcionó durante unas horas: Desconecté GTalk ya que no quiero que se sustituya por Hangouts . La notificación de actualización desapareció durante unas horas, luego volvió. Ni idea de lo que restauró el "enlace".

Tercero, sólo para asegurarme: estoy no se refiere a la función de "actualización automática", como se explica, por ejemplo, en ¿Cómo activar la actualización automática de Play Store para unas pocas aplicaciones? . Esperaba algo parecido a ¿No proporciona google play store actualizaciones para las aplicaciones congeladas? , pero sin necesidad de "congelar" la app en cuestión (que sigo queriendo usar, pero en la versión instalada, no en una "futura versión" disponible).

Cuarto: No, desinstalar la app en cuestión no es una opción en este caso, aunque ocultaría perfectamente que se mostraran futuras actualizaciones :) Tampoco lo es "congelar", ya que la aplicación se utiliza con regularidad.

Quinto: Hay una pregunta relacionada con mi ejemplo de GTalk: ¿Las aplicaciones incluidas en el zip de gApps se actualizan a través de Google Play? Sin embargo, yo quiero lo contrario: Ninguna actualización.


Es muy posible que "Google Apps" (y otras aplicaciones preinstaladas) se manejen de alguna manera específica, y restauren sus "enlaces de mercado" por sí mismas de alguna manera. Para este caso, mi pregunta incluye: ¿Cómo evitar que eso suceda?


Actualización

Hay un hilo en XDA discutiendo el mismo tema. Hasta hace poco, una solución para las "aplicaciones instaladas por el usuario" consistía en desinstalarlas y, a continuación, cargar de nuevo la aplicación. .apk - pero incluso eso dejó de funcionar. Bueno, volver a firmar el .apk con una clave diferente puede para las aplicaciones de usuario. Pero ambos fallarían para aplicaciones preinstaladas (no se pueden cargar lateralmente para anularlas; una firma diferente rechazaría la instalación por completo).

Además, hay un asunto archivado en esto por algún "joel.bou..". No es difícil de adivinar, aunque está en blanco: sería Joël Bourquard. Si realmente es él, entonces sí que es un problema (para los que no lo sepan: Joël es el creador de Copia de seguridad Titanium ). Permítanme citar un fragmento de la edición:

Para que conste: en los días de Android Market era posible "Adjuntar" o "Separar" aplicaciones (en dispositivos rooteados) con una herramienta del sistema como Titanium Backup. Pero hoy en día (con la aplicación Google Play Store) esto se ha vuelto casi imposible de hacer, porque la lista completa de aplicaciones parece sincronizarse desde los servidores de Google y el usuario no tiene control sobre eso.

Lo que explica por qué desprenderse con aplicaciones como Copia de seguridad Titanium ya no es permanente. Y me temo que he pedido lo imposible. Pero pensé lo mismo en el pasado con otras preguntas, y sorprendentemente obtuve soluciones aquí. Así que todavía no pierdo la esperanza en este caso.


1: lo que hace eso lo explica eldarerathis en este post (gracias a Señor del Fuego )

2 votos

Gracias por volver a sacar este tema. Usted está ahora convertido a mi opinión de aplicaciones evidenciado en este hilo que tuvimos el año pasado: Pregunta 39180 -permanentemente-indicar-al-mercado-que-una-aplicacion-debe-rehusar-actualizaciones

2 votos

Sí, está relacionado. Pero lo que geffchang declaró en su respuesta es lo que ya he intentado sin éxito: Separar la aplicación de Playstore usando Copia de seguridad Titanium . Obviamente, esto no funciona de forma permanente con las aplicaciones de Google preinstaladas.

0 votos

@Firelord ¿Podrías resumirlo en una respuesta (preferiblemente con sugerencias para las instrucciones SQL)? No estoy seguro de si lo implementaría (ya veremos), pero veo que podría funcionar: Las aplicaciones afectadas se conocen de antemano (incluidos sus nombres de paquete), por lo que los scripts SQL "estáticos" se pueden crear una vez (uno para cada base de datos). Luego, usar por ejemplo Tasker para que se ejecuten los scripts (con el sqlite* binario contra esas bases de datos) diariamente (opcionalmente: vincularlo a los scripts de inicio init.d). Definitivamente vale la pena un +1 al menos. Gracias por la sugerencia - y de antemano por la respuesta :)

14voto

Firelord Puntos 161

Notas :

  • OP ya conoce los detalles, pero he elaborado las cosas pensando en otros lectores.
  • He asumido que el dispositivo está rooteado, y mi solución se prueba en Android 4.2, 4.4 y 5.0, todos corriendo Play Store v5.6.8. (¡Lo siento! no pude probarlo en Kitkat pero no hay razón para creer que no funcionaría).

En solución de Craig es en realidad bastante bueno, y si de alguna manera se puede ejecutar (el widget personalizado) con Tasker entonces las cosas irían muy bien.

En respuesta de Anan también puede hacer el trabajo utilizando pm disable <PKG> en Tasker , pero uno no puede usar esa aplicación favorita mientras Play Store esté actualizando la lista, algo que algunos usuarios no preferirían.

Y nunca he probado Droid Changelog así que no puedo hacer comentarios.

Pero tengo otra forma de hacer las cosas, no tan limpia en GUI pero buena. Allá vamos:

Play Store tiene sus bases de datos en /data/data/com.android.vending/databases/ . Hay tres bases de datos que merece la pena tener en cuenta a saber library.db , localappstate.db , package_verification.db .

  • library.db -- tiene una tabla llamada ownership que listaría las aplicaciones que has ever instalados desde Play Store con todas las cuentas de Google Play Store asociadas a ellos. Nota que ever incluye esas aplicaciones también que una vez instalado desde Play Store hace mucho tiempo y desinstalado más tarde.
  • localappstate.db -- esto tiene una tabla llamada appstate que listará todas las aplicaciones de usuario instaladas actualmente en tu dispositivo. Las instaladas desde Play Store también mostrarán el título de la aplicación, pero las cargadas desde el lateral no.
  • package_verification.db -- esta base de datos aparecería si has activado "Verificar aplicaciones" en "Ajustes" de Android. Tiene una tabla llamada verification_cache disponer de una lista de aplicaciones para su verificación.
  • suggestions.db -- no es relevante aquí pero tiene una tabla llamada suggestions tener una lista de todas las búsquedas (palabras clave) que has realizado utilizando la barra de búsqueda de Play Store.

Nota que no tengo ninguna fuente que respalde mi afirmación, aquí todo es experiencia personal. Te animo a que discrepes (con pruebas), para que la calidad de esta respuesta mejore aún más.


Ahora, volvamos a la pregunta. En mi Lollipop, he podido eliminar 37 aplicaciones de la lista de actualización y he dejado sólo una aplicación para la que he utilizado "Actualizar todo" para seguir probando la solución. ¡Funcionó a la perfección!

Los pasos necesarios:

  1. Forzar el cierre del Play Store para evitar cualquier corrupción de datos ya que necesitamos editar su base de datos.

  2. Elimina la propiedad de tu aplicación de library.db : He utilizado sqlite3 (uso Instalador de SQLite para Root si no lo tiene). He utilizado una consulta muy simple que eliminaría un registro (fila) de la base de datos identificando la fila mediante un valor. Para saber más sobre el uso de sqlite3 utilice este recurso .

    El comando general para eliminar la propiedad sería:

    sqlite3 /data/data/com.android.vending/databases/library.db "DELETE from ownership where doc_id='<PKG_NAME>'"

    Sustituir <PKG_name> con el nombre del paquete de su aplicación. Por ejemplo, para Navegador Chrome el nombre del paquete es com.android.chrome .

    Puede encontrar el nombre del paquete de su aplicación utilizando Navegador de aplicaciones o Monitor OS o simplemente remítase a la pregunta: ¿Ver el nombre completo del paquete de la aplicación?

  3. Eliminar más detalles de la aplicación de localappstate.db y package_verification.db : Nota que los dos pasos anteriores hicieron el trabajo en mis dispositivos. Como no quiero que la aplicación aparezca por ningún motivo en la lista de actualizaciones, he borrado todos los detalles de todas las bases de datos mencionadas.

    El comando general para eliminar la información de localappstate.db sería:

    sqlite3 /data/data/com.android.vending/databases/localappstate.db "DELETE from appstate where package_name='<PKG_NAME>'"

    Y, para package_verification.db lo sería:

    sqlite3 /data/data/com.android.vending/databases/package_verification.db "DELETE from verification_cache where package_name='PKG_NAME'"

El núcleo está cubierto. Ahora, en cuanto a la ejecución:

  • Puedes hacer un script
  • Utilice adb shell o adb pull las bases de datos, y hacer la edición en el PC utilizando un software SQLite (como Navegador DB para SQLite )
  • Puedes utilizar aplicaciones como Editor SQLite o Gestor aSQLite para eliminar manualmente los registros de la aplicación
  • Utiliza cualquier aplicación de terminal, como Emulador de terminal para Android -- permite widgets que puedes utilizar como atajo para un comando o un script. Véase mi respuesta para saber cómo hacer ese atajo
  • Utilice Tasker crear perfiles en función del tiempo, la aplicación o cualquier perfil que le convenga
  • Conecta tu script en el arranque, aunque no lo he probado, así que pregunta a OP

Sin embargo, la aplicación no aparecerá en la lista de aplicaciones instaladas ni en la de actualizaciones, pero sí en "Todas", en "Mis aplicaciones". Play Store . No uso mucho esta tienda, así que ya no probé otras configuraciones de la misma.

Además, es posible que observe que si antes había desmarcado "Actualizaciones de aplicaciones disponibles" en Play Store y lo compruebas después de ejecutar dichos comandos, se activará una sincronización y tus cambios, como es obvio, se perderían.

Además, ten en cuenta que Google guarda toda la información en sus servidores. Así que tarde o temprano, las bases de datos se actualizarán. En mi dispositivo Lollipop, esperé alrededor de 24 horas y no vi cambios en las bases de datos, pero YMMV.


Para dispositivos sin root

Es una teoría y no voy a afirmar que funcione, pero puedes intentarlo:

  1. Forzar cierre y toma adb backup de Play Store .

  2. Extraer la copia de seguridad y realizar los cambios necesarios en las bases de datos.

  3. Empaqueta los archivos modificados en un nuevo archivo de copia de seguridad y restáuralos en el dispositivo.

    Si no sabes cómo desempaquetar y empaquetar una copia de seguridad ADB en PC, echa un vistazo a <a href="https://github.com/nelenkov/android-backup-extractor" rel="nofollow noreferrer">Extractor de copias de seguridad de Android (ABE) </a>(necesita <a href="https://java.com/en/download/manual.jsp" rel="nofollow noreferrer">Entorno de ejecución de Java </a>y tiene <code>README.txt</code> para su uso) que desempaquetaría el <code>.ab</code> en un archivo <code>.tar</code> que luego podrás extraer con un archivador como Ark, 7zip, WinRAR, etc.

    Puede utilizar <a href="http://sqlitebrowser.org/" rel="nofollow noreferrer">Navegador DB para SQLite </a>realizar cambios en las bases de datos que se encuentran dentro del contenido extraído (probablemente) <code>apps/com.android.vending/db/</code> .

    También, usted puede echar un vistazo a Android copia de seguridad relacionados con puestos tales como <a href="https://android.stackexchange.com/q/28481/16575">este </a>, <a href="https://android.stackexchange.com/a/23608/16575">este </a>y <a href="https://github.com/IzzySoft/Adebar" rel="nofollow noreferrer">Adebar </a>-- todo sugerido por <a href="https://android.stackexchange.com/users/16575/izzy">Izzy </a>.

  4. Comprueba si la aplicación ha desaparecido de la lista de actualizaciones.

  5. Si tiene éxito en el paso 4, a continuación, ejecute ADB de forma inalámbrica para ejecutar los pasos 1-4 en el propio dispositivo Android (de alguna manera) en lugar de utilizar un PC -- esto podría ser muy útil en Tasker si tienes éxito.

  6. Bueno, si consigues llegar hasta el paso 4 o 5, quizás también puedas responder: ¿Cómo puedo eliminar aplicaciones de la lista de actualizaciones de Play Store? :)


Edita:

Bueno, no soy el único que lo ha descubierto así:

  1. Android: Deja de querer actualizar Skype -- muy parecido con la parte del guión añadida, pero sin razonamiento por supuesto
  2. (Requiere Root) Para futuras referencias como actualizar Ingress sin esperar el rollout. -- no es lo suficientemente bueno porque library.db es el principal culpable
  3. Obtener el nombre del paquete de una aplicación
  4. [WIP] Sin Sonido de Llamada, bloquear Servicios de Reproducción de Actualización Automática.

8voto

Leather Puntos 177

Este es un problema para mí con un par de aplicaciones también, específicamente una aplicación de luz de flash antorcha, donde la versión más reciente no juega bien con Lollipop, pero la versión anterior hace.

Mi solución a esto en el pasado era usar Change Droid, pero como se ha dicho anteriormente, si se abre el play store puede volver.

Actualmente la solución que utilizo es ejecutar una tarea programada desde Titanium Back up para desvincular la aplicación del market. Actualmente ejecuto esto 4 veces al día. Se ejecuta en segundo plano a la hora programada y así, cuando compruebo la Play Store para las actualizaciones, no está allí.

Tendré que investigarlo, pero puede/debe haber una forma de ejecutar la tarea cuando la play store está abierta...no estoy seguro.

----Editar---- Algunos han pedido más detalles sobre la configuración de TB...

Primero tienes que crear un filtro para seleccionar sólo aquellas apps que quieres desvincular. Accedes a esto en el menú. Añades los "Elementos" o apps al filtro, de forma que sólo se vean afectadas las apps seleccionadas. Asegurate de no ejecutar el detach con todo seleccionado y sin filtro :)

Screenshot Screenshot

A continuación, tiene que hacer el horario con el filtro aplicado al horario.

Screenshot Screenshot

Como se puede ver esto es sólo para un evento programado m-s, a las 4 am

Una vez completada, la tarea programada tendrá el siguiente aspecto

Screenshot

Tendrás que repetirlo y cambiar la hora dependiendo de cuántas veces quieras que ocurra.

Yo tengo el mio configurado para 4am 8am Mediodía y 4pm. Parece que funciona para mí.

Espero que esto lo aclare un poco. Si usted herramienta alrededor de TB, Estoy seguro de que con estos screenies, que se puede resolver.

Craig

3voto

tovare Puntos 1896

Con la siguiente solución:

  1. No dependes de la aplicación de mercado de un tercero.
  2. Se puede configurar para evitar las notificaciones de actualización de Google Play.
  3. Puedes revertir el "bloqueo de actualización" de aplicaciones cuando quieras (lo que te permite actualizar aplicaciones para futuras versiones)
  4. No desinstala ni congela las aplicaciones que utilizas.
  5. También funciona con Gapps.

Existe una aplicación gratuita llamada Droid Changelog (antes era una aplicación freemium, ahora tiene todas las funciones de forma gratuita). A través de ella puedes gestionar las actualizaciones de tus otras apps, siendo un intermediario con Google Play.

La ventaja es que puedes enviar aplicaciones a un lista negra , omitiendo mostrar las actualizaciones de forma temporal o "permanente" (hasta que cambie de opinión). También puedes seguir las actualizaciones de aplicaciones que hayas desinstalado o que nunca hayas instalado pero quieras observar. Acompaño esta respuesta con algunas capturas de pantalla (identificando con colores las diferentes pantallas de navegación) para que te des cuenta de cómo funciona.

How to blacklist an app Blacklisted apps Whitelisted apps

How to "Un-blacklist" an app Options menu Preferences

How to bypass Google Play notifications Enable notification access for Changelog Droid Show system apps (Gapps)

Select Gapps to show

La única pega es que al abrir Play Store, ya sea directamente o desde esta app, se mostrarán todas las apps (incluidas las que no querías actualizar, ya que el que aplica el filtro es Changelog Droid y no el propio Google Play, era de esperar)

Google Play still shows all the apps

Pero en Changelog Droid puedes acceder a cada aplicación en Google Play con un botón y luego actualizarla individualmente.

Lo sentimos: actualmente no existe la opción de actualizar todas las aplicaciones permitidas en un solo paso de Changelog Droid, pero tal vez el desarrollador podría implementarlo eventualmente.

Nota: Todavía no he probado el escenario que describes (ya he actualizado/reemplazado Talk/Hangouts), pero podría funcionar en tu caso. Sólo recuerda no abrir Mis aplicaciones de Google Play para que no active la actualización automática de aplicaciones.

1 votos

¡Muchas gracias, Francisco! Eso me recuerda mucho a AppBrain Market App como hace años (no lo probé recientemente, ya que su propio instalador estaba desactivado). Por aquel entonces, cuando su "instalador web rápido" aún funcionaba, podías incluso activar la opción "actualizar todo" en la lista filtrada... Por cierto: visitando "Mis Aplicaciones" no se activa ninguna actualización para mí, ya que he desactivado la actualización automática por completo. Supongo que probaré tu solución en cuanto tenga tiempo ;)

1voto

rubayeet Puntos 3015

Desactiva la aplicación en los ajustes de la aplicación principal, o en el administrador de aplicaciones, y abre play store y la aplicación no debería aparecer. Actualizar todo y simplemente volver a habilitar la aplicación cuando la actualización de todo se ha completado. Yo tengo el mismo problema, una app de mensajes txt que si actualizo me salen anuncios feos.. Esta es mi solución

1 votos

Aunque puede funcionar, dista mucho de ser cómodo (implica demasiados pasos, sobre todo si hay varias aplicaciones implicadas).

0 votos

Podría automatizarse con Tasker

1voto

srikanth Puntos 21

Sé que este hilo es antiguo. Y entiendo que Ti Backup solía trabajar para separar una aplicación de Play Store. Pero también entiendo que esto ya no funciona. Para aquellos que estén interesados, he creado una aplicación que hace un trabajo bastante bueno de esto. Se llama Ocultar actualizaciones en Play Store y disponible por ~USD 1. Hay un video que muestra la aplicación en el trabajo. Requiere Root.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X