Удаление файлов и переупаковка zip-файлов CyanogenMod ROM

Текущий опыт работы с CM10 + GApps на Motorola Xoom страдает из-за размера ПЗУ CM10 — после прошивки CM10 zip недостаточно места для полной прошивки GApps zip. Это приводит к принудительному закрытию gtalk при попытке видеочата и некоторым другим проблемам.

Я следил за обсуждением этого на форуме разработчиков XDA для Xoom. Вот кто-то упоминает, что он «удалил» некоторые файлы из zip-файла ПЗУ CM10, чтобы уменьшить его размер: http://forum.xda-developers.com/showthread.php?p=34462283#post34462283

Может ли кто-нибудь помочь мне, как это сделать?
Это просто разархивировать файл, удалить определенные файлы и повторно заархивировать?
или есть еще? (например, подписать файл).
Чтобы удалить приложения из ПЗУ, следует ли просто удалить файл .apk или у приложений также есть связанные файлы, которые также необходимо удалить?

В том же обсуждении некоторые люди говорят о перемещении определенных файлов из системного раздела в раздел данных? Как эта информация о символических ссылках может храниться в zip-файле ПЗУ? или они говорят о создании симлинков после прошивки зипа?

Спасибо

Просто любопытно: сколько памяти нужно освободить? GApps для CM10 составляют около 90 МБ или около того, так что это верхняя граница. На самом деле вы можете использовать TitaniumBackup для удаления системных приложений (например, Calc и т. д.) или удалить их вручную, используя обычные шаги (перемонтировать /system rw, затем использовать любое приложение для просмотра файлов, чтобы удалить вещи). Будьте осторожны.
@Puneet: Ваша ссылка не работает.
@Izzy: извините за неработающую ссылку, исправил сейчас.
Ага, теперь работает :)

Ответы (2)

Доступно несколько решений:

Повторно заархивируйте изображение

Преимущество: Вы делаете это один раз и можете использовать полученное изображение для нескольких устройств. Вот что я сделал с CM7.2 для своего Milestone 2. Сделать это достаточно просто:

  1. создать временную (пустую) папку
  2. распакуйте в него zip-файл
  3. удалить ненужные *.apkфайлы из /system/apps(конечно, будьте осторожны с тем, что вы удаляете)
  4. снова заархивируйте содержимое каталога

При использовании графического ZIP-менеджера (например, WinZip или подобного) шаги будут еще проще:

  1. откройте zip-файл с помощью менеджера архивов
  2. удалить ненужные .apkфайлы
  3. если ZIP-менеджер требует этого, сохраните измененный zip

Ручная очистка после перепрошивки с помощью оболочки

Это то, что ce4 рекомендовал в комментариях. Это требует от вас использования эмулятора терминала на вашем устройстве:

  1. Прошить изображение как есть
  2. удалите лишнее из системного раздела вручную (например, rm /system/big/junk/example.mp4)

Ручная очистка после перепрошивки с помощью других инструментов

Почти такой же, как предыдущий метод, но немного более удобный. Недостаток: это не годится для лишних рингтонов и тому подобного:

  1. Прошить изображение как есть
  2. Используйте такие инструменты, как Titanium Backup или Root Uninstaller , чтобы удалить ненужные системные приложения.
Спасибо. Состоят ли приложения только из файла .apk или у них могут быть и другие вспомогательные файлы?
Точно не знаю, но ИМХО обычно нет. В моем случае было достаточно удалить *.apkфайлы.
Большинство приложений состоят только из файлов .apk (некоторые также имеют файлы .so, например приложение камеры). Плюс: некоторые файлы .apk нужны другим, поэтому, если вы их удалите, вы можете столкнуться с проблемами, такими же, как и с разговором). Придерживайтесь удаления обоев, образцов видео, мелодий звонка и видимых приложений, которые вам не нужны (например, Calc, часы, видеостудия и т. д.). Но: Вы не можете причинить большого вреда; вам просто, возможно, придется перепрошить, если вы что-то испортите.
@Izzy: Вы также можете выполнить удаление «на лету» в режиме восстановления CWM. Удалите достаточно материала, чтобы GApps встали на место (используя стандартный инструмент rm), и попробуйте прошить GApps. Может быть, даже быстрее.
@ce4 Конечно (хм, никогда не пробовал : это происходит до реальной вспышки, когда вы выбираете почтовый индекс и отмечаете, что нужно удалить?). Вы даже можете удалить их впоследствии, например, с помощью Titanium Backup. Я просто заранее описал, как это сделать , так что наверняка само по себе вписывается :)
В итоге я решил эту проблему, используя этот мод, который символически связывает /system/app с /data/system.app после копирования всех файлов туда: forum.xda-developers.com/showthread.php?t=2009911
@Puneet: Хорошо! @Izzy: я имел в виду прошивку update.zip, затем снова удалить лишние вещи из системного раздела вручную (например rm /system/big/junk/example.mp4) или около того, а затем прошить gapps.
@ce4 А, хорошо, так и думал. Я пропустил эту опцию, чтобы предоставить решение даже в том случае, если изображение как таковое было слишком большим, чтобы его можно было прошить на устройство. Должен ли я обновить свой ответ дополнительными параметрами (ваши плюс ТБ / другие приложения для удаления) для полноты?
Просто если хочешь. Большинство пользователей сделают rezip. Вы должны быть любителем ракушек, чтобы найти это привлекательным.

Я использую пользовательскую прошивку и хочу удалить браузер AOSP. Я просто распаковал пользовательский ROM zip, удалил apk браузера. Затем я повторно заархивировал образ рома и прошил его, как обычно, в TWRP.

ПУТЬ :D РАБОТАЕТ ПРОСТО ОТЛИЧНО!!