Rehber Substratum Teması Oluşturma Kılavuzu

mbtt

Deneyimli Üye
Deneyimli Üye
MIUI Sever
Adım
Lütfi
Cihazım
Le Pro3
Yaş
26
Konum
ankara
Katılım
22 Mayıs 2016
Konular
68
Mesajlar
102
Tepkime puanı
215
Puanları
43
DİPNOT
BU İŞLEMDEN DOĞABİLECEK SORUNLARDAN ŞAHSIM VE FORUM MIUI TÜRKİYE SORUMLU TUTULAMAZ.


AÇIKLAMA
Bu anlatımla Substratum Teması oluşturabilirsiniz. Tüm yönleriyle olmasa bile genel bir yol gösterecek kılavuzdur.

Ricam bu kılavuzdan ufak bir yardım bile aldıysanız konunuzun teşekkürler kısmında benimde ismim geçsin.


ANLATIM
Uygulama Girdilerini Düzenleme
Herşeyden önce bu linkteki kaynağı kendi github adresinize forklayın :

1 - Uygulamayı İsimlendirme :

"build.gradle" dosyasını açıp aşağıda ki satırı arayın;

Kod:
applicationId "substratum.theme.template"

Yukarıda "substratum.theme.template" kısmını istediğiniz şekilde değiştirin.

Örneğin :

Kod:
applicationId "com.temanızın.ismi"



2 - Tema Girdileri

template/app/src/main/res/values/ yoluna giderek theme_configurations.xml dosyasını açın.

İçinde bu gibi satırlar göreceksiniz :

Kod:
<!-- Theme name and author name --> 
<string name="ThemeName">Substratum Theme Template</string> | Tema ismini 2 string tanımlayısının arasına yazın
<string name="ThemeAuthor">[projekt.] development team</string> | Geliştiricisinin ismini 2 string tanımlayısının arasına yazın
<!-- Your email for bug reports -->
<string name="ThemeAuthorEmail"></string> | Email adresinizi bug bildirimleri için 2 string tanımlayısının arasına yazın
<!-- Do you support Stock and Theme Ready Gapps? -> all --> 
<!-- Do you support Theme Ready but not Stock Gapps? -> ready -->
<!-- Do you support Stock but not Theme Ready Gapps? -> stock -->
<string name="ThemeReadyRequirement">all</string>
<!-- Theme wallpaper source (must be raw) -->
<string name="ThemeWallpaperSource">http://pastebin.com/raw/TG4mFdXz</string> | Buraya temanın duvarkağıdı kaynaklarını ekleyin. Raw destekli bir site olması gerekir.
<!-- Do your theme support substratum legacy? -->
<!-- If you choose not to support legacy, then change line 12 in AndroidManifest.xml -->
<!-- from 'false' to 'true' to hide your theme on the Play Store from legacy ROM-->
<bool name="ThemeSupportLegacy">true</bool> | Burda "false" yazan yere true yazarsanız RRO için arayüz desteğini deaktif etmiş olursunuz.
<!-- Do your theme support substratum samsung? -->
<bool name="ThemeSupportSamsung">false</bool> | Burda "false" yazan yere true yazarsanız Samsung için arayüz desteğini aktif etmiş olursunuz.

Yukarıda belirttiğim gibi düzenleyin.

Örnek olarak :

Kod:
<!-- Theme name and author name -->
<string name="ThemeName">OneUI</string>
<string name="ThemeAuthor">Lütfi Akdağ</string>
<!-- Your email for bug reports -->
<string name="muallim@gmail.com"></string>
<!-- Do you support Stock and Theme Ready Gapps? -> all -->
<!-- Do you support Theme Ready but not Stock Gapps? -> ready -->
<!-- Do you support Stock but not Theme Ready Gapps? -> stock -->
<string name="ThemeReadyRequirement">all</string>
<!-- Theme wallpaper source (must be raw) -->
<string name="ThemeWallpaperSource">Buraya duvar kağıdı kaynağınızı yapıştırın</string>
<!-- Do your theme support substratum legacy? -->
<!-- If you choose not to support legacy, then change line 12 in AndroidManifest.xml -->
<!-- from 'false' to 'true' to hide your theme on the Play Store from legacy ROM-->
<bool name="ThemeSupportLegacy">false</bool>
<!-- Do your theme support substratum samsung? -->
<bool name="ThemeSupportSamsung">false</bool>

Temalama
Ses eklentileri

assets/audio/ altına "sespaketi.zip" ses paketi içeren zipinizi ekleyin. sadece "ogg" ve "mp3" uzantıları desteklidir

Örneğin zipin içi şöyle görünecektir :

sespaketi.zip/ui/Lock.ogg(or mp3)
sespaketi.zip/ui/Unlock.ogg(or mp3)
sespaketi.zip/ui/effect_tick.ogg(or mp3)
sespaketi.zip/alarms/alarm.ogg(or mp3)
sespaketi.zip/ringtones/ringtone.ogg(or mp3)
sespaketi.zip/notifications/notification.ogg(or mp3)


Açılış Animasyonları

assets/bootanimation/ altına "animasyon.zip" dosyasını ekleyin.


Yazı Tipleri

assets/fonts/ altına "yazıtipi.zip" yazı tipi paketi içeren zipinizi ekleyin.

Örneğin zipin içi şöyle görünecektir :

yazıtipi.zip/font1.ttf
yazıtipi.zip/font2.ttf
yazıtipi.zip/font3.ttf


Overlay Desteği

Bir uygulamayı temaladığınızı varsayalım. Bu uygulamanın kaynağında colors.xml dosyasıyla oynama yapmanız gerekmektedir.

assets/overlays/uygulama/res/values/ yoluna gidip colors.xml dosyasını açın.

Ve burada istediğiniz değişiklikleri yapın. Uygulama temalama için ayrı ve geniş bir kılavuz vereceğim.

Temanın Haklarını Güvenceye Alma
1 - Kaynakta "build.gradle" dosyasını açın ve SUPPORTS_THIRD_PARTY_SYSTEMS satırını arayın (16. sırada)

Daha sonra ise sonunu false seçeneğinden -> true seçeneğine çevirin.


2 - Daha sonra AntiPiracy seçeneğini aktifleştirin.

app/src/main/java/substratum/theme/template/ yoluna gidin ve ThemerConstants.kt dosyasını açın PIRACY_CHECK değerini arayın. Sonunu false'den true'ye çevirin.


3 - Temanızı imzalı olarak derleyin.

Bunun için Android Studio'dan (ki derleme için bu uygulama kullanılır.)

"Build -> Compile Signed APK" seçeneklerini takip edin.

Daha sonra uygulama imzalı bir şekilde derlenir ve bu uygulamayı telefonunuza yükleyin. Bir hata verecektir. Bu hatanın logu SubstratumAntiPiracyLog adında olacaktır.

Bu kodu kopyalayın ve app/src/main/java/substratum/theme/template yoluna gidin ve ThemerConstants.kt dosyasını açın 8. sırada "APK_SIGNATURE_PRODUCTION" satırını bulun ve karşısına yapıştırın.


4 - Daha sonra Google Market desteği için :

Play Geliştirici Konsoluna Gidin. Uygulamanıza giriş yapın, içinden servisler ve API'ler seçeneğini bulun. Yeni bir API değeri çıkarttırın.

Bu API değerini ise :

app/src/main/java/substratum/theme/template/ yoluna gidin ve ThemerConstants.kt dosyasını açın, 7. sıradaki BASE64_LICENSE_KEY karşısına yapıştırın.


5 - Kara Listeye uygulama ekleme :

Bu kısımda patcher && cracker gibi korsan uygulamaları engellemek için kara listeye ekleyeceğiz.

app/src/main/java/substratum/theme/template yoluna gidin ve ThemerConstants.kt dosyasını açın.

27. satırda BLACKLISTED_APPLICATIONS kısmının altına engellemek istediğiniz uygulamaların ana adres isimlerini yazın.

Örneğin :
Kod:
    val ENABLE_BLACKLISTED_APPLICATIONS = false
    val BLACKLISTED_APPLICATIONS = arrayOf(
            "com.android.vending.billing.InAppBillingService.LOCK",
            "com.android.vending.billing.InAppBillingService.LACK",
            "cc.madkite.freedom",
            "zone.jasi2169.uretpatcher",
            "uret.jasi2169.patcher",
            "com.dimonvideo.luckypatcher",
            "com.chelpus.lackypatch",
            "com.forpda.lp",
            "com.android.vending.billing.InAppBillingService.LUCK",
            "com.android.protips",
            "com.android.vending.billing.InAppBillingService.CLON",
            "com.android.vendinc"
    )

gibi görünecektir.

Daha sonra 26. satırda ENABLE_BLACKLISTED_APPLICATIONS kısmını bulup false'den true'ye çevirin.
 
Üst Alt