Общий вопрос
На моем устройстве установлено приложение X версии Y. По какой-то причине я не хочу обновлять его до более новой версии (Y + z). Тем не менее, приложение Google Play Store всегда перечисляет обновления для X, что удерживает меня от простого «обновить все». Мой вопрос, поставленный в одном предложении:
Как навсегда скрыть обновления для X из списка «доступные обновления»?
Конкретные примеры
Во-первых, я знаю, что есть альтернативы, например, приложение AppBrain Market , которое может справиться с этим достаточно (пропустите это обновление, пропустите все будущие обновления). Я предпочитаю «общее решение», которое не зависит от 3 RD рынка приложения партии.
Во-вторых, я знаю, что в Titanium Backup есть «Доктор рынка», который можно использовать для отключения приложения из Google Play . 1 Однако в моем конкретном случае это работало только в течение нескольких часов: я отключил GTalk , так как не хочу заменять его Hangouts . Уведомление об обновлении пропало на несколько часов, затем вернулось. Понятия не имею, что восстановило «ссылку».
В-третьих, просто чтобы убедиться: я не говорю о функции «автоматического обновления», о которой говорилось, например, в разделе Как включить автоматическое обновление Play Store для нескольких приложений? , Я скорее надеялся на что-то близкое к тому, что магазин Google Play не предоставляет обновления для замороженных приложений? , но без необходимости «заморозить» рассматриваемое приложение (которое я все еще хочу использовать, но в установленной версии, а не в доступной «будущей версии»).
В-четвертых: Нет, удаление рассматриваемого приложения здесь не вариант, хотя оно идеально скрывает любые будущие обновления от отображения :) Также не происходит «зависание», так как приложение используется регулярно.
В-пятых: для моего примера GTalk есть связанный вопрос: обновляются ли приложения, включенные в архив gApps, через Google Play? Тем не менее, я хочу наоборот: без обновления.
Вполне возможно, что «Службы Google» (и другие предустановленные приложения) обрабатываются особым образом и каким-то образом восстанавливают свои «рыночные ссылки». В этом случае мой вопрос включает в себя: Как предотвратить это?
Обновить
В XDA есть тема, обсуждающая ту же самую проблему. До недавнего времени обходной путь для «установленных пользователем приложений» заключался в их удалении и последующей загрузке, .apk
но даже это перестало работать. Что ж, повторная подпись .apk
с другим ключом может работать для пользовательских приложений. Но и то, и другое не работает для предустановленных приложений (невозможно загрузить их для переопределения; другая подпись может полностью отказаться от установки).
Кроме того, есть проблема, поданная по этому поводу некоторыми "joel.bou ..". Нетрудно догадаться, хотя и не учтено: это будет Жоэль Бурквард. Если это действительно он, то это действительно проблема (для тех, кто не знает: Joël - разработчик Titanium Backup ). Позвольте мне процитировать из номера:
Для справки: в дни работы Android Market можно было «прикреплять» или «отсоединять» приложения (на устройствах с root-доступом) с помощью системного инструмента, такого как Titanium Backup. Но в настоящее время (с приложением Google Play Store) это стало практически невозможным, поскольку кажется, что полный список приложений синхронизируется с серверами Google, и пользователь не может это контролировать.
Это объясняет, почему отсоединение с помощью таких приложений, как Titanium Backup , больше не является постоянным. И боюсь, я спросил невозможное. Но я думал то же самое в прошлом с другими вопросами, и неожиданно получил решения здесь. Так что я еще не теряю надежду на это!
1: то, что это делает, объясняется eldarerathis в этом посте (спасибо Firelord за то, что выкопали это !)
sqlite*
ежедневного выполнения сценариев (с двоичным кодом для этих баз данных) (необязательно: свяжите его с сценариями запуска init.d). Определенно стоит +1 как минимум. Спасибо за подсказку - и заранее за ответ :)eldarerathis ♦
объяснил здесь, что делает это "Отделение от рынка" в TiBa (редактированиеlocalappstate.db
). Вы можете включить ссылку на этот ответ на свой вопрос.Ответы:
Примечания :
(Извините! Не удалось проверить это на Киткат, но нет причин полагать, что это не сработает.)Решение Крейг на самом деле очень хорошо, и если она каким - то образом может быть выполнена (пользовательский виджет) с Tasker , то все пойдет очень гладко.
Ответ на Анан также может выполнять работу, используя
pm disable <PKG>
в Tasker , но один не может использовать это любимые приложения до тех пор , как Play магазин обновляет список, который некоторые пользователи не предпочли бы.И я никогда не пробовал Changelog Droid , поэтому не могу комментировать.
Но у меня есть другой способ добиться цели, не очень чистый в GUI, но хороший. Вот так:
Play Store имеет свои базы данных под
/data/data/com.android.vending/databases/
. Есть три базы данных, которые стоит рассмотреть, а именно.library.db
,localappstate.db
,package_verification.db
.library.db
- у него есть таблица, вownership
которой будут перечислены приложения, которые вы когда- либо устанавливали из Play Store со всеми связанными с ними учетными записями Google Play Store. Обратите внимание, что это приложение всегда включает те приложения, которые вы когда-то установили в Play Store давным-давно и удалили позже.localappstate.db
- здесь есть таблица, вappstate
которой будут перечислены все пользовательские приложения, которые сейчас установлены на вашем устройстве. Установленные из Play Store также покажут название приложения, а загруженные - нет.package_verification.db
- эта база данных будет отображаться, если вы включили «Проверка приложений» в разделе «Настройки» Android. У него есть таблица с именемverification_cache
списка приложений для проверки.suggestions.db
- здесь не имеет значения, но у него есть таблица с именемsuggestions
, в которой содержится список всех поисковых запросов (ключевых слов), выполненных с помощью панели поиска Play Store.Обратите внимание, что у меня нет источника, подтверждающего мою претензию, здесь весь личный опыт. Вам рекомендуется не соглашаться (с доказательствами), чтобы качество этого ответа могло быть еще более улучшено.
Теперь вернемся к вопросу. На моем Lollipop я смог удалить 37 приложений из списка обновлений и оставил только одно приложение, для которого я использовал «Обновить все» для дальнейшей проверки решения. Работало отлично!
Требуемые шаги:
Принудительно закройте магазин Play Store, чтобы избежать повреждения данных, поскольку нам нужно отредактировать его базу данных.
Удалите право собственности на ваше приложение из
library.db
: Я использовалsqlite3
(используйте установщик SQLite для Root, если у вас его нет). Я использовал очень простой запрос, который удалял бы запись (строку) из базы данных, идентифицируя строку, используя значение. Чтобы узнать дальнейшее использованиеsqlite3
использования этого ресурса .Общая команда для удаления владельца будет:
Замените
<PKG_name>
на название пакета вашего приложения. Например, для браузера Chrome название пакета таковоcom.android.chrome
.Вы можете найти имя пакета вашего приложения, используя App Browser или OS Monitor , или просто обратиться к вопросу: Просмотреть полное имя пакета приложения?
Удалите дополнительную информацию о приложении из
localappstate.db
иpackage_verification.db
: Обратите внимание, что два вышеописанных действия сделали работу на моих устройствах. Поскольку я не хочу, чтобы приложение отображалось по какой-либо причине в списке обновлений, я удалил все детали из всех вышеупомянутых баз данных.Общая команда для удаления информации
localappstate.db
:И
package_verification.db
это будет:Ядро покрыто. Теперь по поводу исполнения:
adb shell
илиadb pull
базы данных, и выполняйте редактирование на ПК с использованием программного обеспечения SQLite (например, DB Browser for SQLite )Хотя приложение не будет отображаться в списке установленных приложений или обновлений, но оно обязательно будет отображаться во вкладке «Все» в разделе «Мои приложения» в Play Store . Я не очень часто пользуюсь этим магазином, поэтому больше не проверял другие его настройки.
Кроме того, вы можете заметить, что если ранее вы не отметили «Доступные обновления приложений» в настройках Play Store и проверили его после выполнения указанных команд, он запустит синхронизацию и ваши изменения, как очевидно, будут потеряны.
Также имейте в виду, что Google хранит всю информацию на своих серверах. Поэтому рано или поздно базы данных будут обновлены. В моем устройстве Lollipop я ждал около 24 часов и не увидел изменений в базах данных, кроме YMMV.
Для некорневых устройств
Это теория, и я не буду утверждать, что она будет работать, но вы можете попробовать:
adb backup
в магазине Play .Упакуйте измененные файлы в новый файл резервной копии и восстановите их на устройстве.
Если вы не знаете, как распаковать и упаковать резервную копию ADB на ПК, взгляните на Android Backup Extractor (ABE) (для этого требуется среда выполнения Java , и она предназначена
README.txt
для использования), который распаковывает.ab
файл в папку,.tar
которую вы затем можете извлечь используя архиватор, такой как Ark, 7zip, WinRAR и другие.Вы можете использовать DB Browser для SQLite, чтобы вносить изменения в базы данных, найденные внутри извлеченного содержимого (возможно)
apps/com.android.vending/db/
.Кроме того, вы можете взглянуть на посты, связанные с резервным копированием Android, такие как this , this и Adebar - все это предложено Izzy .
Посмотрите, пропало ли приложение из списка обновлений.
Редактировать:
Ну, я не единственный, кто понял это так:
library.db
это главный виновникисточник
ab2tar
в Adebar ;)adb restore
внезапно завершаются на моих устройствах для восстановления любого приложения, поэтому я не могу действительно проверить свою собственную теорию. : /Это проблема и для меня с парой приложений, в частности, с фонариком, где последняя версия не очень хорошо работает с Lollipop, но с предыдущей версией.
В прошлом я решил использовать Change Droid, но, как было сказано выше, если вы откроете магазин воспроизведения, он может вернуться.
В настоящее время я использую решение для запуска запланированной задачи из Titanium Backup, чтобы отключить приложение от маркета. Я в настоящее время запускаю это 4 раза в день. Он запускается в фоновом режиме в назначенное время, и поэтому, когда я проверяю Play Store на наличие обновлений, его там нет.
Мне придется изучить это, но может быть / должен быть способ выполнить задачу, когда магазин игр открыт ... не уверен.
---- Редактировать ---- Некоторые попросили более подробную информацию о настройке ТБ ...
Сначала вам нужно создать фильтр только для тех приложений, которые вы хотите отключить. Вы получаете доступ к этому в меню. Вы добавляете «Элементы» или приложения в фильтр, поэтому затрагиваются только выбранные приложения. Убедитесь, что вы не запускаете detach со всем выбранным без применения фильтра :)
Далее необходимо составить расписание с применением фильтра к расписанию.
Как вы можете видеть, это только для одного запланированного события мс, в 4 утра
После завершения запланированное задание будет выглядеть примерно так
Вам придется повторить это и изменить время в зависимости от того, сколько раз вы хотите, чтобы это произошло.
У меня есть мой набор на 4 утра 8 утра и 4 вечера. Кажется, работает на меня.
Надеюсь, что это делает это немного яснее. Если вы работаете с туберкулезом, я уверен, что с этими экранами вы сможете решить эту проблему.
Craig
источник
С помощью следующего решения:
Существует бесплатное приложение под названием Changelog Droid (раньше это было приложение freemium, теперь оно имеет полную функциональность бесплатно). Через него вы можете управлять обновлениями других ваших приложений, будучи посредником с Google Play.
Преимущество заключается в том, что вы можете отправлять приложения в черный список , исключая показ обновлений временно или «постоянно» (пока вы не передумаете). Вы также можете следить за обновлениями для приложений, которые вы удалили или никогда не устанавливали, но хотите наблюдать. Я сопровождаю этот ответ некоторыми скриншотами (обозначая разными цветами навигацию по экрану), чтобы вы поняли, как он работает.
Единственным недостатком является то, что при открытии Play Store, напрямую или из этого приложения, будут отображаться все приложения (включая те, которые вы не хотели обновлять, поскольку приложение, применяющее фильтр, - Changelog Droid, а не сам Google Play, это было ожидаемо)
Но в Changelog Droid вы можете получить доступ к каждому приложению в Google Play с помощью кнопки, а затем обновить его по отдельности.
Извините: в настоящее время нет возможности обновить все разрешенные приложения за один шаг из Changelog Droid, но, возможно, разработчик может реализовать это в конце концов.
Примечание. Я все еще не проверял сценарий, который вы описали (я уже обновил / заменил Talk / Hangouts), но он может работать в вашем случае. Просто не открывайте представление « Мои приложения» в Google Play, чтобы не вызывать автоматическое обновление приложений.
источник
Отключите приложение в основных настройках приложения или в диспетчере приложений и откройте магазин воспроизведения, и приложение не должно быть в списке. Обновите все и просто включите приложение, когда обновление будет завершено. У меня та же проблема, приложение для отправки текстовых сообщений, которое, если я обновлюсь, получит некрасивую рекламу.
источник
Я знаю, что это старая тема. И я понимаю, что Ti Backup использовался для отключения приложения из Play Store. Но я также понимаю, что это больше не работает. Для тех, кто заинтересован, я создал приложение, которое неплохо справляется с этой задачей. Она называется « Скрыть обновления в магазине Play» и доступна по цене ~ 1 доллар. Существует видео, показывающее приложение в работе. Это требует рута.
источник
Решение, которое я нашел для пользователей root, состоит в том, чтобы просто переподписать apk (найденный в
/data/app/
вашей папке TitaniumBackup после резервного копирования) с помощью ZipSigner и переустановить.источник
Я попытался с помощью приложения "Диспетчер разрешений" (думаю, мне нужно рутироваться). Я отключаю разрешение, которое не важно для приложения, которое я не хочу обновлять (например, отключено разрешение вибрации в ES File Explorer и wakelock в Quickpic). Диспетчер разрешений перекомпилирует приложение, удаляет оригинал и переустанавливает вновь скомпилированное приложение. После этого я открыл Play Store и напоминание об обновлении исчезло.
источник
.apk
файлами (и да, есть несколько таких приложений: для приложений, которые вы установили самостоятельно, вам, вероятно, не понадобится root, но для работы с системными приложениями вы бы это сделали). Я бы посчитал, что это обходной путь, но я бы не использовал этот подход. Спасибо, в любом случае!Еще один кандидат только появился на горизонте. Я еще не проверял это, но это звучит очень многообещающе: StorePrefs .
Будучи модулем Xposed , он должен уметь обходить недостатки других решений, которые у нас были до сих пор:
adb shell
.apk
файламиПоскольку я де-гуглифицировал свои устройства и больше не использую приложение Playstore, я не могу проверить - так что отзывы от тех, кто может, приветствуются :)
источник
Как и в случае с титановой резервной копией, вы также можете отсоединить приложение от магазина Google Play с помощью 3C Toolbox . Это, кажется, до сих пор постоянно. Рут требуется.
источник