LEWA OS - автоматические патчи для jBart

Модераторы: Lunat, pvsurkov, AlexG1, ViNNNtalik, KSAT

Куратор темы: iSmile

LEWA OS - автоматические патчи для jBart

Сообщение Ответ:#1 » iSmile » 14 май 2014, 22:42



jBART-automation.png
(63.37 КБ) Скачиваний: 13421
jBART-automation-2.png
(21.25 КБ) Скачиваний: 13421


jBART - Инструмент "Все-в-одном" для работы с файлами и прошивками на базе Андроид
Программа предназначена для автоматизации процесса перевода прошивок на базе ОС Андроид.
Кроме перевода прошивок присутствует возможность деодексирования прошивок, а также работа с одиночными apk и jar файлами из прошивок.
» Скачать jBART 2a (GitHub)



Патчи для LEWA OS 5 / LEWA OS 6
Скачанный архив распаковать в \jBART\data\patches\ | краткая инструкция в string_patches.conf
 Список патчей
jBART_patches.zip
Обновлено 24.06.2015
(50.26 КБ) Скачиваний: 719



Удаление ненужных файлов LEWA OS 5 / LEWA OS 6
В deletefiles.conf измените "V8" на модель своего телефона (взять ro.product.device из build.prop).
 Список удаляемых файлов
deletefiles.zip
(1.38 КБ) Скачиваний: 184



Ресурсы для LEWA OS 5 / LEWA OS 6
Заменить ресурсы внутри необходимой .apk/.jar/.zip
 Список ресурсов

----------

FAQ

 Структура файлов "на пальцах":

Как установить и как работает:
Распаковать содержимое архива в "...jBART\data\patches\", раскомментировать/закомментировать необходимые инклуды в "string_patches.conf".

Работает штатными средствами jBART-а.
Применяется только для деодексированной прошивки.

Инструкция по переводу с применением патчей "для новичков"

 Спасибы за подсказки:

----------

Краткий мануал по автоматизации jBART

 Краткий мануал по автоматизации jBART: патчи и хитрости в примерах

Мануал с примерами файлов:
HowTo-jBART-automation.zip
Обновлено 2014-07-08
(13.14 МБ) Скачиваний: 522
Последний раз редактировалось iSmile 25 июн 2015, 07:30, всего редактировалось 76 раз(а).
Jiayu S3 Advanced Android 5.1.1 Жду Xiaomi Redmi Note 3...
  • 57

Аватара пользователя
iSmile

Разработчик
 
Сообщения: 431
Зарегистрирован: 08 окт 2013, 00:02
Откуда: Украина, Ровно
Репутация: 466

LEWA OS - русификация

Сообщение Ответ:#21 » rualvik » 26 май 2014, 12:27

urix2003 писал(а) on 25 май 2014, 22:34:Поборол полосу в буквами в контактах.
(см четыреПДА, прошивка лева для g2s от меня. там описание доработок).
Но если кому припечет, буду пытаться разъяснять :smu:sche_nie:

Привет. В посте с твоей прошивкой еще есть патч, который заставляет при просмотре фото/видео работать сенсор положения экрана, независимо от системных настроек. Подскажи пожалуйста, как ты это реализовал.
  • 0

Аватара пользователя
rualvik
Интересующийся
 
Сообщения: 54
Зарегистрирован: 14 дек 2013, 20:51
Репутация: 16

LEWA OS - русификация

Сообщение Ответ:#22 » urix2003 » 26 май 2014, 13:24

Сравни AndroidManifest.xml - добавлено
Код: Выделить всё
android:screenOrientation="sensor"
в нужных местах.
Нужные места искал по имени активного "окна", которое можно посмотреть с помощью
Android\android-studio\sdk\tools\hierarchyviewer.bat из SDK

Добавлено спустя 55 минут 44 секунды:
Все ниже описанное относится к Lewa 14.05.09 для Jiayu G2S (JB4.1.2, экран qHD)
У кого другие версии, экраны - соображайте сами.
Настоятельно рекомендую для облегчения жизни WinMerge - проще сравнить, чем это описать.

Описание включает мою реализацию фото на весь экран, ФИО/ИОФ с переключением и другие мелочи.

Ну что же, ладно, поехали:
 ContactsProvider.apk



 Phone.apk


 PIM.apk

Все выше описанное в архиве (*.smali, *.xml, *.png)
lewa140509_Доработки.zip
(401.35 КБ) Скачиваний: 109
Jiayu G2S, Lewa 5.1
  • 22

Аватара пользователя
urix2003
Пользователь
 
Сообщения: 140
Зарегистрирован: 30 мар 2013, 13:28
Репутация: 256

LEWA OS - русификация

Сообщение Ответ:#23 » rualvik » 26 май 2014, 14:51

urix2003, потрудился, конечно, на славу!! Тебе пора свои прошивки выпускать :-):
  • 0

Аватара пользователя
rualvik
Интересующийся
 
Сообщения: 54
Зарегистрирован: 14 дек 2013, 20:51
Репутация: 16

LEWA OS - русификация

Сообщение Ответ:#24 » iSmile » 29 май 2014, 17:38

urix2003, проделанная работа - круть!
Есть встречное предложение: смагёшь переписать метод для полоски алфавитного указателя, чтобы буквы собирались из контактов, как в "меню АБВ"?
Это было бы лучшим решением))
Jiayu S3 Advanced Android 5.1.1 Жду Xiaomi Redmi Note 3...
  • 0

Аватара пользователя
iSmile

Разработчик
 
Сообщения: 431
Зарегистрирован: 08 окт 2013, 00:02
Откуда: Украина, Ровно
Репутация: 466

LEWA OS - русификация

Сообщение Ответ:#25 » urix2003 » 29 май 2014, 18:17

хэ, эт репу чесать нужно :-):
что же, попробую.
Вот бы еще леводелы исходниками поделились :ze_va_et:
Jiayu G2S, Lewa 5.1
  • 1

Аватара пользователя
urix2003
Пользователь
 
Сообщения: 140
Зарегистрирован: 30 мар 2013, 13:28
Репутация: 256

LEWA OS - русификация

Сообщение Ответ:#26 » iSmile » 29 май 2014, 18:34

urix2003 писал(а) on 29 май 2014, 18:17:хэ, эт репу чесать нужно :-):
что же, попробую.
Вот бы еще леводелы исходниками поделились :ze_va_et:

Подозреваю, что можно подменить метод методом ;)
Подсмотри своей волшебной прогой в каком смали метод сбора букв для меню "АБВ". Быть может, там входные/выходные параметры одинаковые...
Jiayu S3 Advanced Android 5.1.1 Жду Xiaomi Redmi Note 3...
  • 0

Аватара пользователя
iSmile

Разработчик
 
Сообщения: 431
Зарегистрирован: 08 окт 2013, 00:02
Откуда: Украина, Ровно
Репутация: 466

LEWA OS - русификация

Сообщение Ответ:#27 » Andrey_GAV » 29 май 2014, 21:01

На счёт полосы, в звонилке от Леново (ideaFriend) данный метод сбора нужных букв в этой полосе имеется, причем и русских и английских одновременно.
Прошивка для Lenovo A660 S750
 Для благодарностей за Прошивку для Lenovo A660, S750
  • 0

Аватара пользователя
Andrey_GAV

Разработчик
 
Сообщения: 379
Зарегистрирован: 19 дек 2012, 12:42
Откуда: Казахстан, Алматы
Репутация: 243

LEWA OS - русификация

Сообщение Ответ:#28 » urix2003 » 29 май 2014, 23:14

И как там, с полосой прокрутки? Пол сотни букв уж точно не влезут. Если честно, полоса — изврат. И попадать, снайпером нужно быть, и меню АБВ есть, и строки поиска
Jiayu G2S, Lewa 5.1
  • 0

Аватара пользователя
urix2003
Пользователь
 
Сообщения: 140
Зарегистрирован: 30 мар 2013, 13:28
Репутация: 256

LEWA OS - русификация

Сообщение Ответ:#29 » Рокашевич Сергей » 30 май 2014, 19:53

urix2003 писал писал(а):Phone\res\values\public.xml - добавлены новые ресурсы. Внимание, следите за значениями id в своих версиях. На эти id ссылается код smali!


у меня на эти значения ID ссылается другие строки

<public type="string" name="lunar_leap" id="0x7f070042" />
<public type="string" name="lunar_ling" id="0x7f070043" />
<public type="string" name="lunar_nian" id="0x7f070044" />

что делать?
  • 0

Аватара пользователя
Рокашевич Сергей

Разработчик
 
Сообщения: 256
Зарегистрирован: 11 окт 2013, 12:24
Репутация: 205

LEWA OS - русификация

Сообщение Ответ:#30 » urix2003 » 30 май 2014, 23:35

Рокашевич Сергей писал(а) on 30 май 2014, 19:53:
urix2003 писал писал(а):Phone\res\values\public.xml - добавлены новые ресурсы. Внимание, следите за значениями id в своих версиях. На эти id ссылается код smali!


у меня на эти значения ID ссылается другие строки

<public type="string" name="lunar_leap" id="0x7f070042" />
<public type="string" name="lunar_ling" id="0x7f070043" />
<public type="string" name="lunar_nian" id="0x7f070044" />

что делать?

В файле public.xml ресурсы посортированы по типам. И новые ресурсы нужно добавлять в свой раздел типов (string, array, id) и т.д.
в моем описании было указано

Код: Выделить всё
   <public type="array" name="fullScreenPhotoValues" id="0x7f070042" />
   <public type="array" name="fullScreenPhotoList" id="0x7f070043" />
   <public type="array" name="call_settings_photo_summary" id="0x7f070044" />
   
   <public type="id" name="call_settings_photoListPreference" id="0x7f080167" />

т.е. нужно найти последнее упоминание <public type="array" name="ххххх" id=0xXXXXXXX/> и после него добавить строки. В каждой последующей строке id увеличивать на 1. В примере 0xХХХХХХ+1 естественно заменить на конкретные числа.
Код: Выделить всё
   <public type="array" name="fullScreenPhotoValues" id="0xХХХХХХ+1" />
   <public type="array" name="fullScreenPhotoList" id="0xХХХХХХ+2" />
   <public type="array" name="call_settings_photo_summary" id="0xХХХХХХ+3" />

аналогично проделать с <public type="string" name="ххххх" id=0xYYYYYY/>
Код: Выделить всё
   <public type="id" name="call_settings_photoListPreference" id="0xYYYYYY+1" />


Далее в коде smali найти все константы 0x7f070042, 0x7f070043, 0x7f070044 и заменить соотв. на 0xХХХХХХ+1, 0xХХХХХХ+2, 0xХХХХХХ+3
Jiayu G2S, Lewa 5.1
  • 4

Аватара пользователя
urix2003
Пользователь
 
Сообщения: 140
Зарегистрирован: 30 мар 2013, 13:28
Репутация: 256

LEWA OS - русификация

Сообщение Ответ:#31 » iSmile » 02 июн 2014, 13:37

Добавление выбора сортировки есть в обширном мануале от urix2003 страницей ранее:

PIM\res\xml\contacts_settings.xml - меню вариантов сортировок и отображения контактов
Добавлено перед </PreferenceScreen>

Код: Выделить всё
    ...     
          <PreferenceCategory android:title="@string/preference_displayOptions">
               <com.lewa.PIM.contacts.preference.SortOrderPreference android:title="@string/display_options_sort_list_by" android:key="sortOrder" android:dialogTitle="@string/display_options_sort_list_by" />
               <com.lewa.PIM.contacts.preference.DisplayOrderPreference android:title="@string/display_options_view_names_as" android:key="displayOrder" android:dialogTitle="@string/display_options_view_names_as" />
            </PreferenceCategory>     
       </PreferenceScreen>
Jiayu S3 Advanced Android 5.1.1 Жду Xiaomi Redmi Note 3...
  • 1

Аватара пользователя
iSmile

Разработчик
 
Сообщения: 431
Зарегистрирован: 08 окт 2013, 00:02
Откуда: Украина, Ровно
Репутация: 466

LEWA OS - русификация

Сообщение Ответ:#32 » serdon » 02 июн 2014, 22:41

iSmile писал(а) on 14 май 2014, 22:42:Автоматический патч для jBART

- русская полоска в PIM.apk
- правка LewaAntitheft.apk (антивор) для телефонных номеров России, Украины и Белоруси


К сожалению у меня не получилось сделать полоску с русскими...
Подскажите может я что-то не так сделал (я только учусь :ny_tik: )
Я взял уже русифицированную прошивку, единственное что в ней нет русских в поиске контактов
1. Установил jBART и скопировал в папку patches все по инструкции
2. Сделал Deodex (под JB 4.2 API 17) В моем аппарате изначально был JB 4.2.2
3. Указал ROM file (деодексированный), ROM Type - "ANDROID ICS-JB'
4. И нажал Recompile.

И как результат - все тоже самое как и до всех процедур.
Где ошибка?
  • 0

Аватара пользователя
serdon
Интересующийся
 
Сообщения: 35
Зарегистрирован: 25 май 2014, 19:12
Репутация: 22

LEWA OS - русификация

Сообщение Ответ:#33 » iSmile » 03 июн 2014, 07:58

Дай лог jBART-а, где происходит отработка патчей. Начинается с **** Decompiling PIM.apk **** и **** Decompiling LewaAntitheft.apk **** соотв.. Далее пример:
Код: Выделить всё
    [01.06.2014 11:57:32] I: **** Decompiling PIM.apk ****
    [01.06.2014 11:57:32] I: Baksmaling...
    [01.06.2014 11:57:37] I: Loading resource table...
    [01.06.2014 11:57:37] I: Loaded.
    [01.06.2014 11:57:37] I: Decoding AndroidManifest.xml with resources...
    [01.06.2014 11:57:37] I: Loading resource table from file: /home/ismile/jBART-PIM/data/frameworks/1.apk
    [01.06.2014 11:57:38] I: Loaded.
    [01.06.2014 11:57:38] I: Loading resource table from file: /home/ismile/jBART-PIM/data/frameworks/9.apk
    [01.06.2014 11:57:38] I: Loaded.
    [01.06.2014 11:57:38] I: Regular manifest package...
    [01.06.2014 11:57:38] I: Decoding file-resources...
    [01.06.2014 11:57:40] I: Decoding values */* XMLs...
    [01.06.2014 11:57:40] I: Done.
    [01.06.2014 11:57:40] I: Copying assets and libs...
    [01.06.2014 11:57:40] I: Copying unknown files/dir...
    [01.06.2014 11:57:40] I: Copying original files...
    [01.06.2014 11:57:40] I: Replacing .method static constructor <clinit>()V method...
    [01.06.2014 11:57:40] I: Replacing "const/16 v11, 0x5a" string with "const/16 v11, 0x42f"
    [01.06.2014 11:57:40] I: Replacing "const/16 v10, 0x41" string with "const/16 v10, 0x410"
    [01.06.2014 11:57:40] I: Replacing "const/16 v7, 0x61" string with "const/16 v7, 0x430"
    [01.06.2014 11:57:40] I: Replacing "const/16 v7, 0x7a" string with "const/16 v7, 0x44f"
    [01.06.2014 11:57:40] I: Replacing "const/16 v11, 0x5a" string with "const/16 v11, 0x42f"
    [01.06.2014 11:57:40] I: Replacing "const/16 v10, 0x41" string with "const/16 v10, 0x410"
    [01.06.2014 11:57:40] I: Replacing "const/16 v7, 0x61" string with "const/16 v7, 0x430"
    [01.06.2014 11:57:40] I: Replacing "const/16 v7, 0x7a" string with "const/16 v7, 0x44f"
Jiayu S3 Advanced Android 5.1.1 Жду Xiaomi Redmi Note 3...
  • 1

Аватара пользователя
iSmile

Разработчик
 
Сообщения: 431
Зарегистрирован: 08 окт 2013, 00:02
Откуда: Украина, Ровно
Репутация: 466

LEWA OS - русификация

Сообщение Ответ:#34 » serdon » 03 июн 2014, 11:45

iSmile писал(а) on 03 июн 2014, 07:58:Дай лог jBART-а, где происходит отработка патчей. Начинается с **** Decompiling PIM.apk **** и **** Decompiling LewaAntitheft.apk **** соотв.. Далее пример:


Может я что-то не так делаю... после нажатия "Recompile" и отработки получаю лог в котором нет **** Decompile ...****, а только ****Compile...***
На всякий случай прикладываю весь лог...
Вложения
jBART.log.zip
Убрать расширение zip
(213.17 КБ) Скачиваний: 2
  • 0

Аватара пользователя
serdon
Интересующийся
 
Сообщения: 35
Зарегистрирован: 25 май 2014, 19:12
Репутация: 22

LEWA OS - русификация

Сообщение Ответ:#35 » Рокашевич Сергей » 03 июн 2014, 12:07

serdon, могу только посоветовать, как было у меня, проверь константы(выделенное красным) и подгони под свои файлы, у меня последние 4 надо было менять
const/16 v11, 0x5a" string with "const/16 v11, 0x42f"
const/16 v10, 0x41" string with "const/16 v10, 0x410"
const/16 v7, 0x61" string with "const/16 v7, 0x430"
const/16 v7, 0x7a" string with "const/16 v7, 0x44f"
const/16 v11, 0x5a" string with "const/16 v11, 0x42f"
const/16 v10, 0x41" string with "const/16 v10, 0x410"
const/16 v7, 0x61" string with "const/16 v7, 0x430"
const/16 v7, 0x7a" string with "const/16 v7, 0x44f"

и какая версия левы у тебя?
и скрины настроек JBarta
  • 1

Аватара пользователя
Рокашевич Сергей

Разработчик
 
Сообщения: 256
Зарегистрирован: 11 окт 2013, 12:24
Репутация: 205

LEWA OS - русификация

Сообщение Ответ:#36 » iSmile » 03 июн 2014, 12:33

serdon писал(а) on 03 июн 2014, 11:45:
iSmile писал(а) on 03 июн 2014, 07:58:Дай лог jBART-а, где происходит отработка патчей. Начинается с **** Decompiling PIM.apk **** и **** Decompiling LewaAntitheft.apk **** соотв.. Далее пример:


Может я что-то не так делаю... после нажатия "Recompile" и отработки получаю лог в котором нет **** Decompile ...****, а только ****Compile...***
На всякий случай прикладываю весь лог...


У тебя не происходит декомпиляция файлов. Все патчи проводятся в момент "Decompiling".

1. Удали папку проекта "Deodexed_LeWa_JIAYU_G2F_NEW_LCD_JB5_ROM_14.05.30.zip.bzproject", если такая папка уже существует, то jBART просто не декомпилит прошивку, а собирает ее из папки проекта :)

2. У тебя не собирается PIM.apk
 Кусок лога
По ошибке не подскажу.

3. Я обновил архив с настройками для патча (4 слеша были не в ту сторону). Перезакачай и подкинь скорректированый в БАРТ.
Jiayu S3 Advanced Android 5.1.1 Жду Xiaomi Redmi Note 3...
  • 1

Аватара пользователя
iSmile

Разработчик
 
Сообщения: 431
Зарегистрирован: 08 окт 2013, 00:02
Откуда: Украина, Ровно
Репутация: 466

LEWA OS - русификация

Сообщение Ответ:#37 » serdon » 03 июн 2014, 12:42

Рокашевич Сергей писал(а) on 03 июн 2014, 12:07:serdon, могу только посоветовать, как было у меня, проверь константы(выделенное красным) и подгони под свои файлы, у меня последние 4 надо было менять
const/16 v11, 0x5a" string with "const/16 v11, 0x42f"
const/16 v10, 0x41" string with "const/16 v10, 0x410"
const/16 v7, 0x61" string with "const/16 v7, 0x430"
const/16 v7, 0x7a" string with "const/16 v7, 0x44f"
const/16 v11, 0x5a" string with "const/16 v11, 0x42f"
const/16 v10, 0x41" string with "const/16 v10, 0x410"
const/16 v7, 0x61" string with "const/16 v7, 0x430"
const/16 v7, 0x7a" string with "const/16 v7, 0x44f"

и какая версия левы у тебя?
и скрины настроек JBarta

Смарт: Jiayu G2F, MTK 6582
Лева 5.1_14.05.30
 
  • 0

Аватара пользователя
serdon
Интересующийся
 
Сообщения: 35
Зарегистрирован: 25 май 2014, 19:12
Репутация: 22

LEWA OS - русификация

Сообщение Ответ:#38 » muskat » 03 июн 2014, 21:42

serdon писал(а) on 03 июн 2014, 21:16:У меня в аппарате стоит прошивка со всеми настройками и приложениями (как мне надо),
как (с помощью чего) ее можно слить на комп, для того чтобы провести вышеописанные действия по русификации полоски в контактах

Для того, чтобы русифицировать боковую полоску в контактах и сделать поиск, нужно вытащить из переведенной прошивки из system/app PIM.apk, разобрать его (тем же jbart) и сделать соответствующие изменения. Вот инструкция http://habrahabr.ru/post/169767/
Вот тебе архив готовыми файлами:
rus.rar
(7.42 КБ) Скачиваний: 15

На всякий случай проверь отличия с оригинальными файлами (с апрельских версия сутруктура файлов не менялась, по крайней мере для Android 4.1.2):
 
Последний раз редактировалось muskat 03 июн 2014, 21:51, всего редактировалось 1 раз.
Lenovo A789 - отдал жене
Onda V711 - отобрал малой
Lenovo P770 - идет борьба за обладание

Xiaomi Redmi Note WCDMA 2G - [MIUI v.5]
  • 1

Аватара пользователя
muskat
Пользователь
 
Сообщения: 220
Зарегистрирован: 08 сен 2012, 21:15
Репутация: 108

LEWA OS - русификация

Сообщение Ответ:#39 » iSmile » 05 июн 2014, 10:45

urix2003 писал(а) on 05 июн 2014, 09:57:iSmile, можно поделиться настройками jBart в плане автоматизации правки smali, xml, build.prop и т.д. ? А то пока мои эксперименты безуспешны

Без проблем. Пообщаемся в ПМ чтобы не засыраорять тему :)
- smali и build.prop автоматизуются
- xml пока что нет... использую обходной метод: подкидываю в локальный репозиторий исправленный .xml-файл :)

----------
У меня не работает твик "удалить запятую после фамилии при сортировке ФИО":
ContactsProvider\smali\com\android\providers\contacts\NameSplitter.smali - удаление запятой в ФИО и ИОФ.
Было:
Код: Выделить всё
       .line 635
        const/16 v8, 0x2c
        invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;

Стало
Код: Выделить всё
       .line 635
        const/16 v8, 0x2c
    #    invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;

Кроме этого больше ничего из твоего мануала не делаю (кроме операций по алфавитному показчику).
Эта штука будет работать stand-alone без остальных модификаций из мануала?

Может есть другой способ?
Jiayu S3 Advanced Android 5.1.1 Жду Xiaomi Redmi Note 3...
  • 0

Аватара пользователя
iSmile

Разработчик
 
Сообщения: 431
Зарегистрирован: 08 окт 2013, 00:02
Откуда: Украина, Ровно
Репутация: 466

LEWA OS - русификация

Сообщение Ответ:#40 » urix2003 » 05 июн 2014, 12:22

Эта штука будет работать stand-alone без остальных модификаций из мануала?

Да, будет. Единственное но: этот кусок кода работает при создании новых контактов.
Т.е. придется сначала убить базу контактов /data/data/com.andriod.providers.contacts/databases/contacts2.*, а потом заново синхронизироваться с гуглем

Вот поисследовал исходники провайдера контактов - базу убивать не нужно! Чтобы NameSplitter сработал, нужно в системе переключить язык Русский->English->Русский. Тогда включается механизм пересортировки базы контактов и т.д.
Jiayu G2S, Lewa 5.1
  • 4

Аватара пользователя
urix2003
Пользователь
 
Сообщения: 140
Зарегистрирован: 30 мар 2013, 13:28
Репутация: 256

Пред.След.

Вернуться в LEWA OS

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

x

#{title}

#{text}