[title-1]Na początek o instalacji motywu[/title-1]Każdy plik motywu dla MIUI powinien posiadać rozszerzenie
1 | .mtz |
. Czasem zdarza się, że autor motywu uprzedni pakuje go w archiwum ZIP lub RAR, nalezy je więc rozpakować, by ujrzeć sam plik MTZ
- Przenosimy wybrany motyw na kartę naszego telefonu – /sdcard/MIUI/theme
- W telefonie udajemy się do aplikacji Motywy (Theme Manager)
- Jeśli wgrałeś motyw ingerujący w framework-res, to pojawi się on od razu w pierwszym oknie aplikacji i można go zastosować. Jeśli jest to na przykład motyw lockscreen’a, klikamy “Dostosuj motyw”.
- Przechodzimy do “Ekran blokady” i z kafelkowej listy wybieramy interesujący nas motyw.
[title-1]Jak edytować motywy dla MIUI?[/title-1]W kilku krokach, postaram się opisac podstawowy proces edycji motywów dla MIUI. Po pierwsze, wybieramy sobie jakiś motyw, lockscreen, generalnie może to być wszystko z rozszerzeniem
1 | .mtz |
. Ściągamy paczkę na dysk i zabieramy się do edycji. Będziemy korzystać z kompresora plików (np. WinRAR) oraz edytora tekstu (np NotePad++).
- Plik .mtz to nic innego jak archiwum ZIP, tyle że o zmienionym rozszerzeniu. Wystarczy więc zmienić rozszerzenie 1***.mtz
na
1***.zipi rozpakowac paczkę za pomocą WinRARa. Aby zmienić rozszerzenie pliku w Windowsie, trzeba odblokować takową opcję w eksploatorze systemu.
- Przechodzimy do rozpakowanej paczki. Ujrzymy tam kilka plików i katalogów, w zalezności od rodzaju motywu. Nas w tym przypadku interesuje edycja lockscreen’a. Jeśli motyw jest przygotowany według najnowszych standardów MIUI, zobaczycie plik “lockscreen” bez żadnego rozszerzenia. Należy nadać mu rozszerzenie .zip i rozpakować. Jeśli jest to stary motyw, to ujrzycie od razu katalog lockscreen, do którego teraz przejdziemy.
- W katalogu lockscreen, powinien znajdować się plik 1theme_values.xml
(opisze go później) – nie jest on konieczny, ale pozwala na dodatkową konfiguracje lockscreena – oraz katalog /advance/.
- W katalogu /advance/ znajdziemy wszystkie elementy, z których korzysta nasz lockscreen. Przede wszystkim będą to obrazki oraz plik 1manifest.xml
, który tworzy strukturę lockscreen’a. Po jego edycji, warto zapisac plik w standardzie UTF-8 (bez sygnatury BOM) – ewentualnie użyte polskie znaki, nie pojawią się później jako krzaki.
- Gdy skończymy i zapiszemy zmiany w manifest.xml, cofamy się do położenia z punktu 3. Zaznaczamy myszką 1theme_values.xml
i
1/advance/, klikamy PPM i z rozwiniętego okna wybieramy “Dodaj do archiwum”. Koniecznie musimy zastosować następujące ustawienia: Nazwa archiwum –
1lockscreen.zip; Format arciwum –
1.zip; Metoda kompresji – bez kompresji.
- Przenosimy tak powstały plik lockscreen.zip do głównego katalogu motywu.
- Usuwamy katalog /lockscreen/ powstały w punkcie 2.
- Zmieniamy nazwę lockscreen.zip usuwając z niej rozszerzenie .zip – w efekcie powstanie taki sam plik, jaki był widoczny po pierwszym rozpakowaniu paczki.
- Powtarzamy procedurę z pkt. 5. Tym razem zaznaczamy wszystkie pliki znajdujące się w głównym katalogu motywu i pakujemy je do .zip z takimi samymi ustawieniami, co poprzednio.
- Zmieniamy rozszerzenie powstałej paczki z 1.zip
na
1.mtz.
- Motyw jest gotowy do użycia w MIUI, wystarczy go umieścić na karcie w katalogu 1/MIUI/theme/
[title-1]O edycji pliku theme_values.xml [Lockscreen][/title-1]Plik ten odpowiada za elementy, które będą dozwolone na górnym pasku notyfikacji w widoku lockscreena. Domyślnie znajduje się tam m. in. poziom baterii, zasięg, ikonka WiFi. Możemy każdy z tych elementów wykluczyć, tak by nie pojawiał się w naszym lockscreenie.
Oto schemat układu pliku
1 | theme_values.xml |
. Nas interesuje “false” pojawiające się przed domknięciem znaczika. “False” blokuje wyświetlanie danego elementu, podczas gdy użycie “True” pozwala na jego wyświetlenie. Tak jak pisałem wcześniej,
1 | theme_values.xml |
nie zawsze znajduje się w katalogu
1 | /lockscreen/ |
. Wtedy automatycznie zostają zastosowane domyślne ustawienia. Dorzucając plik, wymuszamy własne.
[code]<MIUI_Theme_Values>
<bool name=”config_show_status_bar_battery_for_keyguard”>false</bool>
<bool name=”config_show_status_bar_carrier_for_keyguard”>false</bool>
<bool name=”config_show_status_bar_date_for_keyguard”>false</bool>
<bool name=”config_show_status_bar_notification_for_keyguard”>false</bool>
<bool name=”config_show_status_bar_status_for_keyguard”>false</bool>
<bool name=”config_show_status_bar_time_for_keyguard”>false</bool>
<bool name=”config_lock_screen_battery_animation_horizontal”>false</bool>
</MIUI_Theme_Values>[/code]
[code]<bool name=”config_show_status_bar_battery_for_keyguard”>false</bool>[/code]
[code]<bool name=”config_show_status_bar_carrier_for_keyguard”>false</bool>[/code]
[code]<bool name=”config_show_status_bar_date_for_keyguard”>false</bool>[/code]
[code]<bool name=”config_show_status_bar_notification_for_keyguard”>false</bool>[/code]
[code]<bool name=”config_show_status_bar_status_for_keyguard”>false</bool>[/code]
[code]<bool name=”config_show_status_bar_time_for_keyguard”>false</bool>[/code]
[code]<bool name=”config_lock_screen_battery_animation_horizontal”>false</bool>[/code]
Po zakończeniu edycji, zapisujemy plik.
[title-1]Jak odnaleźć class danej aplikacji [Lockscreen][/title-1]
Jeśli będziesz chciał dodać w lockscreenie skrót do jakiejś aplikacji, będziesz musiał ustalić dla niej
1 | class="" |
. Jedną z metod jest użycie aplikacji LauncherPRO, dostepnej w Markecie.
- Instalujemy aplikację, otwieramy jakieś nowe okno. Pojawi się popup z “Zakończ działanie przy pomocy…” wybieramy LauncherPro
- Tworzymy skrót na pulpicie, przytrzymując ekran na kilka sekund. Z okna które się pojawi wybieramy “Skrót”
- Teraz wybieramy rodzaj skrótu – “Activities”. Pojawi się lista wszystkich aplikacji, które posiadasz w telefonie. Ja odnajdę klasę dla głównego okna aplikacji Aparat.
- Klikamy na Aparat, pojawi nam się lista kilku pozycji klas dla aplikacji aparat.
- Za główne widok Aparatu odpowiada 1com.miui.camera.Camera
.
- Teraz możemy zastosować śmiało 1class="com.miui.camera.Camera"
w
1manifest.xmlnaszego lockscreena. Skrót będzie przenosił nas do aplikacji Aparat.
[title-1]Podstawowy układ paczki danego motywu[/title-1] Oficjalna specyfikacja, dostępna na forum Xiaomi
[code]description.xml (plik konfiguracyjny motywu)
com.android.contacts (dialer i kontakty)
com.android.deskclock (alarm)
com.android.fileexplorer (menadżer plików)
com.android.gallery (galeria)
com.android.launcher (pulpit)
com.android.mms (SMS)
com.android.monitor (monitor aplikacji)
com.android.phone (interfejs połączenia)
com.android.settings (ustawienia)
com.android.systemui (pasek notyfikacji)
com.android.thememanager (Motywy)
com.android.updater (aktualizator systemu)
com.miui.backup (kopia systemu)
com.miui.camera (kamera)
com.miui.player (muzyka)
framework-res (zasoby systemu)
–theme_values.xml (profile kolorów) — znajduje się w framework-res // Te kolory kontrolowane są przez systemui.apk, więc nalezy zdekompilować aplikację i tam wprowadzać zmiany //
icons (ikony)
lockscreen (ekran blokady)
preview (podgląd danego motywu)
fonts (czcionki) // nowa czcionka musi mieć nazwę Arial.ttf //
ringtones (dźwięki)
–Alarm (alarm)
–Notification (dźwięki powiadomień)
–Ringtone (dzwonki)
boots (ekran bootowania)
–Bootaudio
–Bootanimation[/code]
[title-1]Tworzymy własne logo operatora (Carrier Logo)[/title-1]Poniższe kroki pokazują jak stworzyć paczkę z samym logo, które pojawi się w miejscu operatora. Jeśli korzystasz z innego niż domyślny motyw, to tak stworzona paczka nadpisze ustawienia Twojego motywu, a statusbar powróci do ustawień domyślnych. Aby dostosować logo do swojego motywu, przeczytaj kolejny poradnik.
Aby zastosować motyw należy posiadać modyfikacje StatusBar z następującymi opcjami: MIUI Control Panel › Pasek statusu › Operator › Pokaż operatora (włączone) i wyświetl logo operatora (włączone).
- Pobieramy plik czysty.zip. Stworzyłem szablon, na podstawie którego można budować własną paczkę loga operatora. Rozpakuj ją, a zobaczysz katalogi z poniższego screena.
- W 1/preview/
możemy umieścić podgląd motywu, który pojawi się potem w aplikacji Motywy. Obrazek nazywamy
1preview_statusbar_0.png(każdy kolejny, to kolejna cyfra w miejscu 0)
- W 1description.xml
zamieszczamy informacje o nazwie motywu i jej autorze.
- Przechodzimy do 1com.android\res\drawable-hdpi
gdzie znajduje się obrazek
1carrier_logo.pngo rozmiarach 133x40px. Wasze logo może być nieznacznie szersze, ale nie powinno być wyższe niż 40px.
- Nadpisujemy obrazek 1carrier_logo.png
własnym, który chcemy ujrzeć później w naszym systemie.
- Cofamy się do katalogu 1\com.android\
tak by widzieć w oknie tylko katalog
1\res\. Teraz musimy go spakować, klikamy na niego PPM i z rozwiniętego okna wybieramy “Dodaj do archiwum”. Koniecznie musimy zastosować następujące ustawienia: Nazwa archiwum –
1com.android.systemui; Format arciwum –
1.zip; Metoda kompresji – bez kompresji.
- Powstaje plik 1com.android.systemui.zip
, edytujemy jego nazwe i usuwamy rozszerzenie
1.zip.
- Plik 1com.android.systemui
przenosimy do głównego katalogu motywu.
- Zaznaczamy wszystkie tam widoczne pliki i uruchamiamy “Dodaj do archiwum” z pkt. 6. Nazwe podajemy dowolną, ale z rozszerzeniem 1.mtz
-> na przykład
1motyw.mtz - Przenosimy paczkę do katalogu 1/sdcard/MIUI/theme
i w aplikacji Motywy nawigujemy do ustawień Paska statusu.
W taki sam sposób, możemy zmienić wszystkie obrazki znajdujące się w obrębie statusbaru. Tworzymy obrazek o odpowiedniej nazwie, następnie wrzucamy go tam gdzie carrier_logo.png i pakujemy paczkę. Poniżej kilka przykładowych nazw plików.
1 | com.android.systemui\res\raw |
w formie sprite’a – jeden obrazek zawierający inne.
Tutaj znajdziecie przykładową paczkę zawierającą wszystkie możliwe konfiguracje com.android.systemui. Można na niej budować motywy Za pozostałe ikony pojawiające się na pasku notyfikacji – na przykład przychodzącego połączenia, odpowiada plik
1 | framework-res |
.
Paczki z polskimi operatorami są dostępne tutaj: StatusBar: Logo polskich operatorów
[title-2]Ustawienia kolorów związanych z paskiem notyfikacji[/title-2] Dodatkowe ustawienia kolorów związanych w pasku notyfikacji, uzyskamy tworząc w katalogu
1 | /com.android.systemui/ |
plik
1 | theme_values.xml |
. Oto przykładowy wygląd pliku:
[code]<?xml version=”1.0″ encoding=”utf-8″ ?>
<MIUI_Theme_Values>
<color name=”status_bar_background_transparent”>#66000000 </color>
<color name=”status_bar_textColor_alternative”>#66ffffff</color>
<color name=”tab_lable_color_p”>#ff1a6bd0</color>
<color name=”tab_lable_color_n”>#ff505664</color>
</MIUI_Theme_Values>[/code]
[title-1]Podmiana logo w niestandardowym motywie dla MIUI?[/title-1]Dzieje się tak ponieważ przygotowane przez nas paczki nadpisują plik com.android.systemui znajdujący się w każdym motywie dla MIUI, który zawiera własne ustawienia statusbara. Musimy zmodyfikować ten plik i dodać do niego pożądane logo – carrier_logo.png. Zaczynajmy!
Przydatne, jeśli chcesz zachować obecny motyw, ale zmienić w nim tylko logo.
- Rozpakowujemy wybrany motyw np. iPhone 7.0 (aby to zrobić zmieniamy rozszerzenie .mtz na .zip, lub dodajemy rozszerzenie .mtz do skojarzeń kompresora plików)
- Z rozpakowanych plików wyszukujemy 1com.android.systemui
i rozpakowujemy tak jak powyżej
- W rozpakowanym folderze nawigujemy do 1\res\drawable-hdpi\
- Pierwsze trzy kroki powtarzamy dla pliku 1.mtz
z wybranym logiem operatora (np.
1LogoOperatora-miuipolska.mtz– rozpakowujemy i przechodzimy do tegoż samego folderu
- Z naszej paczki przenosimy 1carrier_logo.png
do folderu
1com.android\res\drawable-hdpi\motywu iPhone 7.0. Możemy już zamknąć okienko z LogoOperatora-miuipolska.mtz.
- Cofamy się bezpośrednio do folderu \com.android\, tak by w okienku widzieć folder 1\res\
- Teraz musimy spakować folder 1\res\
. W przypadku WinRAR wystarczy kliknąć PPM na folder i wybrać Dodaj do arciwum. Wybieramy: Nazwa archiwum –
1com.android.systemui; Format arciwum –
1.zip; Metoda kompresji – bez kompresji.
- Klikamy przycisk OK i w folderze 1\com.android\
powinien pojawić się spakowany plik
1com.android.systemui - Przenosimy plik com.android.systemui do głównego folderu motywu, a 1\com.android\
usuwamy.
- Jak w punkcie 7. Zaznaczamy wszystkie pliki w głównym folderze motywu i pakujemy je tak samo, jak w poprzednim przypadku. Nazwa archiwum jest dowolna, ważne by kończyło się rozszerzeniem 1.mtz
- Tak zmodyfikowany motyw możemy użyć w aplikacji Motywy
[title-1]Kolory aplikacji w trybie natywnym[/title-1]
Edycja kolorów, używanych przez aplikacje działające w trybie natywnym – do modyfikacji tych ustawień możemy dostać się przez edycję pliku
1 | theme_values.xml |
znajdującego się w
1 | com.android.launcher |
danego motywu. Oto “pełne możliwości” konfiguracyjne
1 | theme_values.xml |
[code]<?xml version=”1.0″ encoding=”utf-8″ ?>
<MIUI_Theme_Values>
<color name=”window_background”>#ff191919</color>
<color name=”grid_dark_background”>#eb191919</color>
<color name=”bubble_dark_background”>#b2191919</color>
<color name=”delete_color_filter”>#a5ff0000</color>
<color name=”hotseat_color_filter”>#a500ff00</color>
<color name=”appwidget_error_color”>#ffcccccc</color>
<color name=”snag_callout_color”>#ff444444</color>
<color name=”gesture_color”>#ff0563c1</color>
<color name=”uncertain_gesture_color”>#ff848484</color>
<color name=”editing_background”>#99000000</color>
<color name=”workspace_preview_background”>#99000000</color>
<color name=”white_30_transparent”>#55ffffff</color>
<color name=”white_40_transparent”>#64ffffff</color>
<color name=”white_50_transparent”>#80ffffff</color>
<color name=”lyric_shadow_color”>#ff0084ff</color>
<color name=”icon_title_text”>#00000000</color>
<color name=”icon_title_text_shadow”>#00000000</color>
<color name=”icon_message_text”>#ffffffff</color>
<color name=”folder_title_text”>#ffffffff</color>
<color name=”folder_title_text_shadow”>#50000000</color>
<color name=”folder_setting_remane_text”>#ffcccccc</color>
<color name=”folder_setting_checkbox_text”>#ff333333</color>
<color name=”folder_setting_list_text_pressed”>#ffffffff</color>
<color name=”folder_setting_list_text_selected”>#ffffffff </color>
<color name=”folder_setting_list_enabled”>#80333333</color>
<color name=”folder_setting_list_default”>#ff333333</color>
<color name=”user_folder_password_text”>#ff3366cc</color>
<color name=”user_folder_hidden_btn_text”>#ff3366cc</color>
<color name=”icon_shadow”>#99333333</color>
</MIUI_Theme_Values>[/code]
Dlaczego kolory są tak dziwnie zapisane? Pierwsze dwie cyfry to kod Alpha – odpowiada za przezroczystość danego koloru (od FF do 00, przy czym 00 oznacza pełną transparentność). Kolejne sześć cyfr do standardowy kod HEX.