Mod Miui10 Rom Geliştirmek İçin [Kişisel tercihler]

ClassiCTR

▂▃▅▆▇██▇▆▅▃▂
Emekli Yönetici
Uzman Üye
MIUI Sever
SMS Onaylı
Adım
İsmail
Cihazım
Mi 9T [Davinci]
Konum
İstanbul
Katılım
12 Haziran 2018
Konular
181
Mesajlar
2.677
Tepkime puanı
5.649
Puanları
238
Kişisel tercihler
framework.jar
ile çalışacağız

Framework.jar dosyasını parçalıyoruz ve ekteki framework.zip dosyasının içindekileri dosya yoluna atıyoruz. zip içerisinde "BENi Oku.txt" mutlaka okuyun. Anlatım orada mevcut.
Daha sonra topladığımız framework.jar dosyasını "Root explorer" ile telefonumuzdaki ile yer değiştirip izinlerini veriyoruz. Veya ekteki Güncelleme.zip dosyasına doğru klasöre ekleyerek TWRP den telefonunuza yükleyebilirsiniz.

Ne için kullanılır;
Ayarlarda kullanacağız. Yaptığımız modları Ayarlardan kontrol edebilmek için bunlara ihtiyacımız var.

Bunlar, ayarlarda kullanılabilecek örnek kontroller:
A. MyCheckBoxPreference (onay kutusu)
B. MyListPreference (liste)


Örnek; MyCheckBoxPreference
Smali
Kod:
.method private setIconText()Z
    .locals 2

    .prologue
    iget-object v0, p0, Lcom/miui/home/launcher/HotSeats;->mContext:Landroid/content/Context;

    const-string v1, "icon_text"

    invoke-static {v0, v1}, Landroid/preference/MyPreference;->getKeyInt(Landroid/content/Context;Ljava/lang/String;)I

    move-result v0

    return v0
.end method

Settings.apk içerisinde görünmesini istediğiniz yere eklicez
Kod:
<MyCheckBoxPreference android:title="@string/bar_name_title" android:key="icon_text" android:defaultValue="false"
android:summaryOn="@string/icon_off" android:summaryOff="@string/icon_on" intent="my.settings.RELOADED" />

<MyCheckBoxPreference android:title="@string/Ayarlarda_görünmesini_istediğiniz_isim" android:key="smali_içindeki_anahtar_kodu" android: defaultValue="false veya true" android: summaryOn="@string/Göster" android: summaryOff="@string/Gizle" intent="Gönderilecek yayın" />

Burada Settings.apk/res/Values= hangi dillere eklemek istiyorsak o dillere çevirip aşağıdaki gibi ekliyoruz. Burada ana taşıyıcı res/values klasörüdür. Diğerlerine hiç bir şey yazmazsanız buradaki hali ile görünür

Örnek;
Res/values/strings.xml
Kod:
<string name="bar_name_title">Hide icon labels in the bar</string>
<string name="icon_on">Show</string>
<string name="icon_off">Do not show</string>


Res/values-tr/strings.xml
Kod:
<string name="bar_name_title">Simge ismi [Alt bar]</string>
<string name="icon_on">Göster</string>
<string name="icon_off">Gizle</string>

Resimleri görmek için giriş yapmanız gerekmektedir.

Örnek: MyListPreference

Smali
.method public onStatusBarCreateView()I
.locals 4

invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/CollapsedStatusBarFragment;->getContext()Landroid/content/Context;

move-result-object v0

const-string v1, "ios_toggle"

invoke-static {v0, v1}, Landroid/preference/MyPreference;->getKeyInt(Landroid/content/Context;Ljava/lang/String;)I

move-result v1

Settings.apk içerisinde görünmesini istediğiniz yere eklicez
Kod:
<MyListPreference android:entries="@array/ios_toggle_entries" android:layout="@layout/preference_ringtone" android:title="@string/ios_toggle_title"
android:key="ios_toggle" android:summary="%s" android:defaultValue="0" android:entryValues="@array/ios_toggle_values" intent="my.intent.action.REBOOT_SYSTEMUI" />

<MyListPreference android:entries="@array/Liste_de_görüntülenecek_isimler" android:layout="@layout/preference_ringtone" android:title="@string/Liste_başlığı" android:key="smali_içindeki_anahtar_kodu" android: summary="%s" android: defaultValue="0" android:entryValues="@array/ios_toggle_values" intent="Gönderilecek yayın" />

Yine kontrol edebilmek için Settings.apk ya ekliyoruz
Res/values/strings.xml
Kod:
<string name="ios_toggle_title">Status bar style</string>

Res/values-tr/strings.xml
Kod:
<string name="ios_toggle_title">Durum çubuğu stili</string>

Res/values/arrays.xml
Kod:
Values arrays ekle
    <string-array name="ios_toggle_entries">
        <item>Default</item>
        <item>Left side</item>
        <item>CT style</item>
        <item>AOSP Style</item>
    </string-array>
    <string-array name="ios_toggle_values">
        <item>0</item>
        <item>1</item>
        <item>2</item>
        <item>3</item>
    </string-array>

Res/Values-tr/arrays.xml
Kod:
<string-array name="ios_toggle_entries">
        <item>Varsayılan</item>
        <item>Merkezi saat</item>
        <item>CT Stil</item>
        <item>AOSP Stil</item>
    </string-array>

Resimleri görmek için giriş yapmanız gerekmektedir.

Not: Şimdi sizlere çok karışık gelebilir. Kullandıkça alışacaksınız. Geliştirici arkadaşlar zaten anlatım içerisinde bunların hepsinin nereye ve nasıl ekleneceğini anlatacak. Bu rehber sadece bu kodların nasıl kullanıldığının bilinmesi için gerekli.

Bu yöntemle çalışabileceğimiz en basit yöntemi uygulamak için TIKLAYIN

Rehber devam edecek...
 

Ekli dosyalar

  • Güncelleme.zip
    126,1 KB · Görüntüleme: 90
  • framework.zip
    64,3 KB · Görüntüleme: 62
Son düzenleme:

abdulsamet.oger

Deneyimli Üye
Deneyimli Üye
MIUI Sever
SMS Onaylı
Adım
Abdulsamet
Cihazım
Xiaomi Mi 6
Meslek
Üniversite (Hemşirelik)
Konum
İstanbul
Katılım
20 Mart 2017
Konular
8
Mesajlar
125
Tepkime puanı
77
Puanları
28
Hocam MyListPreference kısmında ikinci kodları da mı .smali dosyasına ekliyoruz ? "Settings.apk içerisinde görünmesini istediğiniz yere eklicez " cümlesini pek anlamadım.
Kod:
<MyListPreference android:entries="@array/ios_toggle_entries" android:layout="@layout/preference_ringtone" android:title="@string/ios_toggle_title"
android:key="ios_toggle" android:summary="%s" android:defaultValue="0" android:entryValues="@array/ios_toggle_values" intent="my.intent.action.REBOOT_SYSTEMUI" />
Bu kodların olduğu alakalı yer neresi ?
Ve vermiş olduğunuz "framework.zip" dosyasında BeniOku.txt yok.
 

ClassiCTR

▂▃▅▆▇██▇▆▅▃▂
Emekli Yönetici
Uzman Üye
MIUI Sever
SMS Onaylı
Adım
İsmail
Cihazım
Mi 9T [Davinci]
Konum
İstanbul
Katılım
12 Haziran 2018
Konular
181
Mesajlar
2.677
Tepkime puanı
5.649
Puanları
238
Hocam MyListPreference kısmında ikinci kodları da mı .smali dosyasına ekliyoruz ? "Settings.apk içerisinde görünmesini istediğiniz yere eklicez " cümlesini pek anlamadım.
Kod:
<MyListPreference android:entries="@array/ios_toggle_entries" android:layout="@layout/preference_ringtone" android:title="@string/ios_toggle_title"
android:key="ios_toggle" android:summary="%s" android:defaultValue="0" android:entryValues="@array/ios_toggle_values" intent="my.intent.action.REBOOT_SYSTEMUI" />
Bu kodların olduğu alakalı yer neresi ?
Ve vermiş olduğunuz "framework.zip" dosyasında BeniOku.txt yok.
framework.zip dosyasını güncelledim.
Hocam bu anlatım kullanacağımız Mylistpreference(ve diğerleri) ile diğer modların nasıl çalıştırılacağını anlatmak içindi. Bugün kolay bir mod paylaşacağım bununla ilgili. O zaman daha iyi anlayacaksınız. Burda ki anlatımla ilgili tek yapmanız gereken verdiğim dosyayı framework.jar içerisine atıp jarı toplamak ve telefonumuzdaki ile yer değiştirmek
 

memo150606

Üye
MIUI Sever
Acemi Üye
SMS Onaylı
Adım
Mehmet
Cihazım
Xiaomi Mi6
Meslek
Öğrenci
Yaş
24
Konum
Ankara
Katılım
10 Mayıs 2018
Konular
24
Mesajlar
89
Tepkime puanı
17
Puanları
8
framework.zip dosyasını güncelledim.
Hocam bu anlatım kullanacağımız Mylistpreference(ve diğerleri) ile diğer modların nasıl çalıştırılacağını anlatmak içindi. Bugün kolay bir mod paylaşacağım bununla ilgili. O zaman daha iyi anlayacaksınız. Burda ki anlatımla ilgili tek yapmanız gereken verdiğim dosyayı framework.jar içerisine atıp jarı toplamak ve telefonumuzdaki ile yer değiştirmek
hocam , global beta rom'a yapılabiliyormu ? Yoksa twrp flash vb... ?
 

ClassiCTR

▂▃▅▆▇██▇▆▅▃▂
Emekli Yönetici
Uzman Üye
MIUI Sever
SMS Onaylı
Adım
İsmail
Cihazım
Mi 9T [Davinci]
Konum
İstanbul
Katılım
12 Haziran 2018
Konular
181
Mesajlar
2.677
Tepkime puanı
5.649
Puanları
238
hocam , global beta rom'a yapılabiliyormu ? Yoksa twrp flash vb... ?
Sadece Custom Romlar için. Veya global Romu deodex edip yapabilirsiniz. TWRP ile kurulmaz. Her cihazın kendi dosyaları üzerinden yapılması gerekir
 

halil.halil2000

Üye
MIUI Sever
Acemi Üye
Adım
Halil
Cihazım
Redmi note 11
Konum
Bursa
Katılım
20 Haziran 2016
Konular
0
Mesajlar
95
Tepkime puanı
36
Puanları
18
Merhaba hocam
bu kodu hangi klasöre atacağımı çözemedim.
Alt bardaki simgelerin isimleri görünmesini ayarlamak istiyorum.
Yardımcı olursanız sevinirim.
 

Ekli dosyalar

  • Screenshot_2020-03-10-19-47-13-917_com.android.chrome.jpg
    Screenshot_2020-03-10-19-47-13-917_com.android.chrome.jpg
    359,7 KB · Görüntüleme: 40
Üst Alt