Android APK'larını Derleme ve Tema Oluşturma



Şimdi 'Tümünü Değiştir' i tıklayın, bunun yerine tüm @android: color / white’ları değiştirip bunun yerine background_holo_dark kullanın. Şimdi .xml'nin tamamı boyunca kaydırmaya devam edin, bir onaltılık değer (#fffffff) kullanan herhangi bir android: arka plan dizesini veya onları değiştirdiğimizden farklı bir şey arayın. Bulduklarınız için, yenisini kullanmak için dizeleri değiştirin (abs__background_holo_dark).

Bu yüzden arka planı değiştirdik, şimdi metin rengini değiştireceğiz. Bu yüzden az önce yaptığımız prosedürü izleyin, ancak bu sefer “android: textColor” için CTRL + F yapın. Yaklaşık 166 satır bulacaksın.



'Android: textColor =' # ffbbbbbb 'gibi şeyler göreceksiniz. Bu yüzden Colors.xml'nin içine tekrar bakın ve metin rengi yerine hangi satırları değiştireceğimizi bulmamız gerekiyor.



Android: textColor = ”# ffbbbbbb”, “#ffffffff”, “# ff717171” ve “#ffcccccc” i ekran görüntüsünde ve Note ++ 'daki arama sonuçlarınızda görebilirsiniz. Metin rengi için kullanmak istediğimiz satırı bulmak için şimdi Colors.xml dosyanızı tekrar açın.



Bu yüzden ilk .xml'ye geri dönün ve Değiştir iletişim kutusu için tekrar CTRL + H yapın. Şimdi 'android: textColor =' # ffbbbbbb 'dizesini üste ve alta kopyalayın ve alt satırı' android: textColor = '@ color / text' olarak değiştirin.

Şimdi bir kez daha, tüm android: textColor satırlarında arama yapın ve dizede onaltılık değeri olan her şeyi değiştirin. Son olarak, styles.xml dosyasına ulaştığınızda, 260. satırdan başlayıp birkaç satır aşağıya doğru devam ederek birkaç satırdan tersini kaldırmak istersiniz. Öyleyse bu dizelerden 'Ters' i silin.

Sonra 527, 536, 573, 579, 585, 601 ve diğer birkaç satırda bazı onaltılık değerler göreceksiniz. (#Ffffffff) yerine (@ renk / metin) olarak değiştirin.



Notepad ++ içinde aramak için CTRL + F tuşlarına basın. cacheColorHint , bölen , @ * android: renk / , ve Ters .

CacheColorHint, kayan arka plan olduğundan, arka plan rengimizi kullandıklarından emin olmamız gerekir. Bölücüler kendinden açıklamalıdır ve isterseniz onaltılık değerlerini değiştirebiliriz. Tek şey, @drawable'a işaret eden hiçbir şeye dokunmamanız gerektiğidir. Bunlar genellikle .apk klasöründe başka bir yerde .png dosyaları olarak saklanan görüntülerdir.

' ters' , textAppearanceInverse'e referansları gösterecektir. Bunların her birine çift tıklamanız ve bu dizelerden Tersini silmeniz gerekir.

Son olarak, @ * android: color / araması, herhangi bir çerçeve düzenlemesini kaçırıp kaçırmadığımızı iki kez kontrol edecektir. “Android: popupBackground”> @ * android: color / white ”yazan bir şey bulursanız, bunu“ android: popupBackground ”> @ color / abs__background_holo_dark” olarak değiştirmeniz gerekir. Bu, zaten android: renkli / siyah'ı işaret ettiği için kafa karıştırıcı olabilen 911 satırını da içerir.

Daha sonra res / values ​​/ colours.xml'yi açacağız ve aşağıdaki gibi görünecek şekilde değiştireceğiz:

Sonra res / values ​​/ styles.xml ve 328. satıra gidin. Bunu şu şekilde değiştirin:

(), () olarak değiştirilmelidir

Aynı şeyi 479. satır için de ' hafif ” için ' siyah' .

Şimdi res / values-v11 / styles.xml adresine gidin ve ' hafif ” nerede söylüyor ' Holo.Light ” .

Daha sonra, birçok dize içeren res / values-v14 / styles açacaksınız. Dolayısıyla, ilk 46 satırda, ' Hafif ” ve ' Ters' referanslar ve ardından 53 ve 54. satırlardaki üst öğeleri '@ * android: style / Theme.Holo' olarak değiştirin.

69. satırda, sağ taraftaki ana öğede, Işığı @ * android: style / Theme.Holo.Light.Dialog ebeveyninden kaldırın.

Bu çok iş, değil mi? Belki bundan sonra uygulama temalarını ve dış görünümlerini daha çok takdir edeceksiniz!

Daha sonra şuraya gideceğiz: res / renk Klasör. İçinde siyaha işaret eden bazı metin dosyaları var. Res / colours / action_mode_item_text_color_state_list.xml dosyasını açın

Stokta böyle görünüyor. Aşağıda bunu nasıl yapmanız gerektiği anlatılmaktadır.

Bu aynı ad değişikliklerini / res / colours klasörünün içindeki aşağıdaki xml dosyalarında yapmanız gerekir: Bottom_button.xml, Button_update.xml, Filelist_text_name.xml, Filelist_text_small.xml, Link_button.xml, Local_filelist_text_name.xml, Local_filelist_text_stomot_bcolor.x. xml, ss_bottom_bottom_text_color_light.xml, tab_text_foreground.xml.

Bunlarla işiniz bittiğinde / res / drawable'ı açın ve arka plan rengini kontrol eden xml'ler vardır. Öyleyse bunlardan geçin ve şöyle görünmelerini sağlayın:

Aynı değişiklikleri diğer tüm drawable.xml dosyalarına uygulayın.

Şimdi test.apk'ı açın ve smali ve AndroidManifest'i vurgulamak için CTRL + sol tıklama tuşlarına basın, ardından sağ tıklayın ve 'Notepad ++ ile Düzenle' yi tekrar tıklayın. Tüm 1999 smali dosyalarını kabul edin. Yüklendiğinde, -0x100 (siyah) için CTRL + F araması yapın

Yaklaşık 8 sonuç alırsınız ve istediğiniz smali / com / dropbox / android / activity / TextEditActivity.smali, 599. satırdır. Bu satırı çift tıklayın.

Satır 599, içinde -0x100 ve satır 601'de 'SetTextColor' bulunur. Ayrıca 599 satırıyla eşleşen bir değişken de vardır. Kısaca açıklamak gerekirse, -0x100, -0x1000000 ve hatta 0x0 siyah anlamına gelir, -0x1000000 da siyahtır ve hatta 0x0'dır. İki 0'ı 100'den kaldırarak ve / high16'yı şu şekilde kaldırarak 599 satırını değiştirin:

Daha sonra @ * android: style, ancak smali olarak arayacağız. Xml, x'ten sonra fazladan bir '0' içerecektir, ancak smali'de onu kullanmayız. '0x0103004f' yerine '0x103004f' olması gerekir.

0x103 içeren @ * android: style / için Notepad ++ 'da bir arama yapın.

İkinci isabet 'const v7, 0x1030073' dür. Bunu public.xml dosyanızda framework-res.apk'den tekrar arayın. Bunun 'Theme.Holo.Light.Dialog' kimliği olduğunu göreceksiniz. Bunu karşıt tema stilinin genel kimliğiyle değiştirmeniz gerekecektir.

Bu Theme.Holo.Light.Dialog olduğundan, Theme.Holo.Dialog yapmak istersiniz. Theme.Holo.Dialog, “0x103006f” kimliğine sahiptir. Bu, daha açık bir Holo.Light tabanlı tema yerine daha koyu bir Holo tabanlı tema kullanmak için açılır bir iletişim kutusu uyarı kutusunu değiştirecektir.

Bir sonraki değiştirmemiz gereken, Theme.Holo.Light olan '0x103006e' dir. Öyleyse devam edin ve ters tema stili yapın. Framework-res.apk'deki public.xml dosyanızda, Theme.Holo kimliğinin 0x0103006b olduğunu göreceksiniz. öyleyse bu satırı şöyle görünecek şekilde değiştirelim:

Bunlardan yalnızca 2 tane daha geçilecek. Sıradaki yukarı, public.xml dosyasındaki Theme.Light için olan '0x103000c' dir. Bunun tersi Theme.Black, ThemeHolo değil. Bu nedenle public.xml'de Theme.Black kimliğinin “0x01030008” olduğunu göreceksiniz - aşağıdaki gibi değiştirin:

Diğer uygulamalarda, düzenlenecek ve değiştirilecek başka şeyler olacak ve yeterince pratikle neredeyse her şeyin temasını yeniden oluşturabileceksiniz. Ancak şimdilik, tüm kod bitlerini ( en sonunda!) .

Artık komut dosyasını Apk Multi Tool'dan açabilir ve uygulamayı derlemek için 12'ye basabilirsiniz. Herhangi bir hata görüntülenirse, neyin yanlış gittiğini görmek için hata günlüğünün içine bakmayı deneyebilirsiniz, ancak büyük olasılıkla kod düzenleme sırasında bir yazım hatası veya başka bir hata yapmışsınızdır.

Oluşturma tamamlandığında, uygulamayı yeniden imzalamak için 2'ye ve ardından 13'e basın.

Stok uygulaması 'Şablonlar' adlı bir klasör içerir - bunu 7zip gibi bir şey kullanarak imzasız apk'nize sürüklemeniz gerekir. Unsigned.apk dosyasını Apk Multi Tool içindeki 'place-apk-here-for-signing' klasörüne kopyalayın. Şimdi, bu klasördeki uygulamaları toplu olarak imzalamak için terminal komut dosyasında 18'e basın. Tamamlandığında, komut dosyası otomatik olarak kendisinden çıkar. Artık .apk dosyasını cihazınıza yükleyebilirsiniz!

6 dakika okundu