Ошибка подписи при установке другой версии приложения - PullRequest
0 голосов
/ 12 июня 2019

Недавно я установил пользовательский диск с именем eelo.В этом приложении Telegram поставляется предварительно установленным, поэтому его можно рассматривать как системное приложение.Но это обычай, построенный по-другому, в нем отсутствуют многие функции и он устарел по своей природе.Поэтому я хотел установить официальную версию приложения.

Для установки приложения я попытался удалить предыдущую, используя adb shell pm uninstall --user 0 org.telegram.messenger.Вывод вышел как SUCCESS, и для проверки удаления я попытался adb uninstall --user 0 org.telegram.messenger.Вывод его также составил SUCCESS.Когда я перешел к следующему шагу, чтобы установить новый APK с командой adb install Telegram-5.7.1.apk, он выдал

adb: failed to install Telegram-5.7.1.apk: Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package org.telegram.messenger signatures do not match the previously installed version; ignoring!]

После дальнейших исследований я обнаружил, чтоМне нужно закомментировать часть пакета телеграммы в файле /data/system/packages.xml.Но после редактирования файла и после перезагрузки файл возвращается к исходному содержимому, предшествующему редактированию.Я даже пытался изменить разрешение папки с помощью chmod 744 /data/system и файла packages.xml с помощью chmod 777 /data/system/packages.xml, но безрезультатно, поскольку после перезагрузки все возвращается обратно.

Я хотел бы полностью удалить приложение Telegram из моей системы и установить новое.И как можно было бы отредактировать файл /data/system/packages.xml и не дать системе отменить его обратно.

Любая помощь или совет будут абсолютно полезны.

1 Ответ

0 голосов
/ 12 июня 2019

В конечном итоге нашел ответ на запрос и как его решить.

  1. Первый - как полностью удалить системное приложение?Это следующие шаги

    $ adb root - для запуска adbd с привилегиями root.

    $ adb shell - для непосредственного взаимодействия с телефонной системой.

    $ pm uninstall --user 0 <package>.apk -Удалить пакет от пользователя root - это любой пакет, который вы хотите удалить из системы.

    Эти несколько шагов могут удалить весь пакет, но в моем случае он был другим, так как осталось несколько файлов из предыдущей сборки.приложение.Вот шаги, которые я выполнил:

    $ adb shell mount -o rw,remount /system - это перемонтирует систему как чтение-запись.Изначально /system - это папка только для чтения, поэтому вы не можете редактировать напрямую.

    $ adb shell rm -r /system/<package>.apk - это удалит apk, и от предыдущей сборки ничего не останется.

  2. Почему я не смог отредактировать файл /data/system/packages.xml?

    Ответ на этот вопрос таков: хотя я могу редактировать его с помощью vim, но он продолжал возвращаться к предыдущему неотредактированномуформа.Это происходило потому, что он обновлял информацию из файлов /system/app.Таким образом, редактирование прошло напрасно.

См. Следующие ссылки, которые действительно помогли мне

Файловая система только для чтения на Android

https://www.besttechie.com/remove-preloaded-software-from-android/

...