CepFonX@outlook.com

CepFonX Türkiye Teknolojik Yardım Platformu

Bizi takip edin & Yenilikleri Kaçırmayın!

2 Şubat 2020 Pazar

Android Oyun ve Uygulamalarda Nasıl Türkçeleştirme Yapılır? [Mod,Yama,Reklam Kaldırma]

 
Merhaba Değerli CepFonX Ziyaretçisi;
Bu yazımızda android cihazlarınızda bulunan oyunların, uygulamaların apk dosyalarının nasıl yamalandığını, Nasıl Türkçe yapıldığını, Reklamların nasıl kaldırıldığını neler kullanarak değiştirebileceğimizi anlatacağız...

*Bu yazıda oradan buradan indirilen programlar değil, profesyonel set sunulmaktadır. Mutlaka arşivinizde saklamanızı öneririz.

Android uygulamaların ve oyunların dillerinin nasıl değiştirildiğini düşündünüz mü? Dünya üzerinde 7000 ile 8000 arasında yabancı dil bulunmaktadır. (Birleşmiş Milletler Verisi) Yazılan bütün uygulamalar ne yazıkki her dile çevrilemezler. 8000 dilin hepsine çevrilmesinide zaten bekleyemeyiz.

Bu sebeple geliştiriciler uygulamaların çevrilmesi için bazı metin dosyalarını şifrelemeden bırakır. Bu sayede bizde o dosyalara erişerek çevirme işlemini yapabilir, Oyunumuzu veya Uygulamamızı Türkçeleştirebiliriz.

Yazımızın içeriğinde neler var ?
---------------------------------------------------
1. Apk ayıklaması (dex arsc raw)
2. Apk toplaması (dex arsc raw)
3. Apk imzalaması (test key ve market)
4. Apk dil düzenlemesi (türkçeleştirme)
5. Apk dil güncellemesi (yeni apk için eski dil dosyası ekleme)
6. Apk içinde istenmeyen öğeleri kaldırma veya ekleme (arayüz için)
7. Apk içinde kod değişikliği
8. Apk içinde reklam kaldırma (3 ayrı yöntem)
9. Apk içinde simge pngleri düzenleme ve ekleme
10. Dil xml dosyalarını türkçeleştirme anlatımı
11. Apkları pc de çalıştırmak ve test etmek
12. Hata düzeltme
13. Apk optimizasyonu
14. Sistem apkları ayıklama
15. Sistem apkları toplama
16. Sistem apklarını direk root ile sisteme yükleme
17. Classes.dex düzenlemesi
18. Smali uzantılı dosyaları düzenleme
19. Google Play Storeden Ücretsiz uygulamaları indirme

CepFonX Multitools, apk dosyalarını ayıklama, düzenleme ve imzalama gibi işlemleri yapabilen ms-dos yapısında çalışan bilgisayar programıdır. Tarafımdan kodları düzenlenmiş, güncellenmiş ve türkçe'ye çevrilmiştir. Hala da geliştirmeye devam edilmektedir.

Bu konuda .apk ile aradığınız her şeyi bulacağınızdan emin olabilirsiniz.

*** Konuyu sürekli takip edin çünkü hem anlatım hemde programlar tarafımdan sürekli güncellenmektedir.

PROGRAMDAN GÖRSELLER



V11.2 ile gelen güncellemeler

-apktool.jar güncellendi
-sistem kaynakları güncellendi (Android 9).

PROGRAM ANDROİD 9 DESTEKLEMEKTEDİR.

GEREKLİ PROGRAMLAR

İlk önce bilgisayarda multitools programının çalışması için sisteminizde Basit işlemler için Java gelişmiş işlemler için Java Runtime Kit yüklü olması gerekir. Xml düzenlemek içinde Metin Editorü (Notepad++) indirmeniz gerekir.


MULTİTOOLS V11.2 (Toplam 41.8 Mb)

Başka yerde bulamazsınız. Mutlaka arşivinize alın!
Bağlantıların tamamı Google Drive linklidir.


Rar Şifresi=       CepFonX-2020




NASIL TÜRKÇE YAMA YAPACAĞIZ?

1-NORMAL (STANDART) SONRADAN YÜKLENEN UYGULAMALAR

Düzenlemek istediğiniz apkyı Multitools klasörü içindeki place-apk-here-for-modding klasörü içine atın.

Dikkat: Apk isminde boşluk, özel karakterler ve türkçe karakterler kullanmayın. Eğer kullanırsanız Multitools açılışında atma veya kapanma ve apk ayıklanamama gibi hatalarverebilir. O yüzden kısa ve basit isimler verin.

Türkçe karakterler: ğ ü ş ı ö ç Ğ Ü Ş İ Ö Ç

Örnek: ROM Manager (Premium) v5.5.2.8.apk yerine rom.apk veya rommanager.apk gibi kısa isimler verin.



Multitools klasörü içindeki Multitools.bat dosyasını yönetici olarak çalıştırın.

Eğer place-apk-here-for-modding klasöründe bir tane apk varsa multitools bunu varsayılan düzenlenecek apk olarak seçecektir. Üst barda seçili uygulama yazmaktadır.



Eğer iki ve daha fazla apk varsa seçili uygulama ... gözükecektir. Düzenlemek istediğiniz apkyı seçmek için 19 yazıp enter e basın çıkan ekranda düzenlemek istediğiniz apk'nın sıra numarasını yazıp enterleyin.



Multitools içine varsayılan olarak ayıklama modunu sadece resoruces.arsc ayarladım. Çünkü dil dosyaları resoruces.arsc içindedir. İsteyen olursa ayıklama modunu 20 ile değiştirip uygulama kodlarınıda açıp düzenleyebilir.

Ayıklama modları
1- resources.arsc - classes.dex - raw (Hepsi)
2- sadece resources.arsc (Dil ve arayüz)
3- sadece classes.dex (Kodlaması)
4- sadece raw (medya dosyaları)

Not: En baştan uyarmak isterim boşuna düzenleme ile uğraşmamanız için apk dosyasını daha düzenleme işlemine başlamadan önce bir kere ile ayıklayıp 15 ile toplayın. Bu işlemlerin birinde hata almıyorsanız 9 ile tekrar ayıklayıp düzenlemeye başlayın. Eğer hata alıyorsanız bu konuya yazın çözümünü hep beraber bulalım.

Apk seçme işlemini ve istiyorsanız ayıklama modunu ayarladıktan sonra ekranda da gördüğünüz gibi ile apkyı ayıklıyoruz. Bu işlem apk içindeki ayıklama modunda ayarlanmış olan dosyayı ve res içindeki xml dosyalarını ayıklar. Şimdilik uygulamayı kapatabilir veya simge durumuna küçültebilirsiniz. Ayıkladığımız apk dosyaları mutlitools klasörü içindeki projects klasörü içinde ayıklanan apk ile aynı isimli klasör içindedir.

Not: Örnek uygulamamızda olduğu gibi rom.apk isminde bir klasör oluşur ve tüm düzenleme işlemlerimiz bu klasör içinde yapılacaktır.



Dil klasörleri uygulama klasörü içindeki res klasörü içindeki values ile başlayan klasörlerdir. values klasörü varsayılan ana dil klasörüdür. Neden ana klasör olduğunu sonra açıklayacağım. Dil dosyaları ise values klasörlerinin içindeki strings.xml ve arrays.xml purrals.xml dosyalarıdır. Büyük çoğunluğu strings.xml dir. arrays.xml ve purrals.xml de genelde liste öğeleri bulunur. Uygulama içinde Türkçe dil varsa values-tr klasörü olması gerekir. Eğer yok ise biz kendimiz values-tr isminde yeni bir klasör oluşturup İngilizce dil klasörü içinden yani values klasörü içinden strings.xml ve varsa arrays.xml dosyalarını kopyalayıp values-tr klasörü içine yapıştırıyoruz. Böylece ingilizce dilini taban alarak türkçeleştirme işlemine başlayacağız. Arzu eden varsa values-zh klasörü içindeki Çinçe dil dosyalarını taban alıp türkçeleştirme yapabilir.

Values içindeki bazı xmller:
Strings.xml: Dil dosyası
Arrays.xml: Liste öğeleri
Color.xml: Renk kodları
Style.xml: Görünüm kodları



Şimdi Notepad++ gibi bir metin düzenleyici programı kurup xml dosyalarını bununla açıyoruz. Xml dosyasına sağ tıklayıp özelliklerden varsayılan program olarak notepad++ atarsınız sizin için daha kolaylık olur. Xml dosyasını açıp xml düzenlemeye başlamadan önce kodlamanın UTF-8 (BOMsuz) olduğundan emin olun. Hatta Notepad++ içinde varsayılan kodlamayı UTF-8 (BOMsuz) atayın. Yoksa ASCI de yazdığınız kelimeleri UTF-8 yapınca tek tek türkçe karakterleri düzenlemek zorunda kalabilirsiniz.

Düzenlenecek metinler resimde görüldüğü gibi siyah renkli yazılardır. Kodlama işaretlerine çok dikkat edin < veya > işaretinin yanlışlıkla silinmesi hataya neden olacaktır.

Örnek satır kodu:
Orjinal: <string name="check_updates">Update ROM</string>
Türkçe: <string name="check_updates">ROM Güncelle</string>

Düzenleme işlemi bittikten sonra değişiklikleri kaydediyoruz.



Eğer programı kapatmışsanız Multitools.bat dosyasını tekrar açın ve eğer iki apk dosyası varsa proje seçme işlemini tekrar yapın. Çünkü multitools yapısı gereği açıldıktan sonra yaptığınız ayarlamaları açık olduğu sürece olarak tutar. Her kapanıp açıldığında varsayılan ayarlar ile başlar. O yüzden apk ayıklama modunu değiştirmişseniz o modu 20 ile tekrar ayarlayın.

11 ile Apkyı topluyoruz veya 15 ile aynı andan hem toplayıp hem de test key ile imzalayabilirsiniz.



11 ile topladıktan sonra 12 ile testkey imzası ile imzalıyoruz.



Oluşturulan imzalı ve imzasız apklar multitools klasörü içinde place-apk-here-for-signing klasörü içindedir. İmzalı olanın isminin başında signed yazılıdır. imzasız olanında unsigned yazılıdır. Apkyı imzaladığınızda unsigned olanı otomatik silinecektir. Signed olanı telefonunuza veya tabletinize atıp kurabilirsiniz.

Test key 12 ile imzalamanın kötü yanı korkmayın uygulama kurulucak sorun yok ama orjinal olanın üzerine kuramayacaksınız ve bu apk yüklü olduğu sürece mağazadan veya elle orjinal apk ya güncelleme yapamayacaksınız. Çünkü düzenlenen apk orijinalinden farklı bir imzaya sahiptir. O yüzden önce sisteminizde kurulu olan orijinal uygulamayı kaldırın ve sonra düzenlediğiniz apkyı kurun veya yeni üst sürüme geçerken düzenlediğiniz apk yı kaldırın ve mağazadan veya elle orjinal apk yı kurun. Ama daha önce multitools ile imzaladığınız apk kurulu ise yeni düzenlediğiniz apk yı direk üstüne kurabilirsiniz. Çünkü iki apk da aynı test key imzasına sahiptir. Kısacası aynı imza ile sürüm yükseltme ve düşürme yapabilirsiniz.



Mağaza imzası 13 ile imzalamak için yapmanız gerekenler resimde gösterilen ayarı yapmanız ve Java JDK (normal java değil) kurmalısınız. Mağaza imzası ile apk imzaladım bazı cihazlarda (4.1.1) apk kurulmadı bazılarında (cm 4.3.1) kuruldu. Ve imzanın özelliğini tam anlamış ve çözmüş değilim. O yüzden sizde deneyebilirsiniz. Ama sorun istemiyorsanız 12 test key kullanmanızı tavsiye ederim.


projects klasörü içinde apk klasörü hala duruyor. Bu klasör içindeki xxx.apk klasörünü silebilirsiniz veya daha sonra kullanmak istiyorsanız apk klasörünü istediğiniz yerde saklayabilirsiniz. Size tavsiyem klasörü saklamanız yerine sadece düzenlediğiniz xml dosyalarını saklamanızdır.


2-CİHAZDA BULUNAN FABRİKADAN GELEN SİSTEM APK DÜZENLEME

Buraya kadar normal apklarının düzenlemesini ayıklamasını toplamasını ve imzalamasını anlattım.

Sistem apklarınıda (yani rom.zip içindeki veya cihazındaki system/apps içindeki apklar) düzenlemek için normal uygulamalardaki gibi aynı düzenleme işlemlerini yapıyoruz. Ancak ayıklama ve toplama işlemleri normal apklardan farklıdır.

Sistem apkları üretici firmalar tarafından standart android kaynaklarına ek kaynaklar ekleyerek oluşturulurlar. Bu ek kaynaklar üreticiden üreticiye ayrı ayrı farklılık gösterdiği için bir sistem apksını ayıklamak için üreticinin kendi kaynakları kullanılmalıdır. Bu ek kaynaklar olmadan standart android kaynakları yetersiz kalacak ve bir sistem apksını standart android kaynakları ayıklayamayacaktır. Korkmayın! İki saat google amcada siteminiz için kaynak araştırmaları yapmayacaksınız. Çünkü bu kaynaklar sizin telefonunuzda veya rom dosya
nızda zaten mevcut.

Bu kaynakların biri system/framework içinde framework-res.apk dır diğeri de aynı dizindedir. Üreticiden üreticiye göre farklı adlandırılıdığı için xxxframework-res.apk dır deyip geçeyim. Bu iki kaynak apksını masaüstünüze kopyalayın.

Şimdi önce düzenlemek istediğiniz sistem apksını bu mesajlar uygulaması ayarlar uygulaması olabilir bunları normal uygulamalarda olduğu gibi place-apk-here-for-modding klasörüne atın. Multitool.bat uygulamasını çalıştırın. Eğer iki veya daha fazla sistem apksı modding klasörüne atmışsanız apk seçme işlemini gerçekleştirin.

Şimdi 8 ile sistem apksı ayıklama seçimini yapın. Şimdi multitools sizden telefonun kaynaklarını isteyecek ilk önce masaüstündeki rom veya sistemden çıkardığınız kaynaklardan framework-res.apk yı tutup multitools penceresine sürükleyip bırakın ve enterleyin sonra sizden bu seferde üreticiye ait kaynak dosyasını yani xxxframework-res.apk sını isteyecektir onuda tutup multitools penceresine sürükleyip bırakın ve entere basın. Ve ayıklama işlemi başlayacaktır. Ayıklama işlemi bittikten sonra normal uygulamalarda olduğu gibi düzenlememizi yapıyoruz. Düzenleme işlemleriniz bittikten sonra 10 ile sistem apksını topluyoruz.

Not: Sistem kaynaklarını multitoolsa tanıttıktan sonra eğer aynı romun başka bir sistem apksı düzenleyecekseniz tekrar 8 ile ayıklama işlemi yapabilirsiniz bu sefer sizden kaynak istemeyecektir. çünkü kaynaklarınız zaten multitoolsa tanıttınız. Multitoolsu kapattığınızda en son sistem dosyası düzenlediğiniz ve kaynaklarınız hala durduğu için multtitool açılışta size hala sistem apksı düzenlemeye devam etmek istiyor musunuz diye soracak e vet derseniz sistem kaynaklarını olduğu gibi kalacaktır h ayır derseniz normal uygulamalar için standart android kaynağı atanacaktır. Sonra tekrar sistem apksı düzenlemek isterseniz 8 ile sistem kaynaklarını tanıtmanız gerekir. veya 23 ile ordaki seçeneklerden 0 ile elle kaynak ataması yapabilirsiniz. Bu kaynakların atandığı klasör C:\Kullanıcılar\Kullanıcı adı\apktool\framework klasördür burda sadece 1.apk varsa normal kaynak var demektir eğer 1.apk ve 2.apk varsa sistem kaynakları var demektir.


Düzenlenip toplanmış sistem apknız modified-system-apk-files-here klasöründedir. İsminin başında systemörnek.apk vardır. Bu başındaki system kısmını silip rom.zip dosyasına veya direk rootlu cihazınızda root gezgini özelliğine sahip bir dosya yönetici ile system/app içine atabilirsiniz. Zaten aynı isimde oldukları için karşınıza değişim sorusu gelecektir evet deyin ve aktif olması için telefonu kapatıp açın veya uygulama güncelleniyor deyip kendiliğinden kapanıp açılır.



Dikkat: Hatalı düzenlemeden kaçının zira sistem apksı düzenliyorsunuz. Cihazınız açılmayabilir. Özellikle systemui gibi arayüz uygulamasının hatalı olması cihazınızın açılması ama arayüzünün gelmemesi gibi sorunla karşılaşabilirsiniz. Bununda tek çaresi tekrar rom yüklemektir. Format factory wipe gibi fabrika ayarlarına alma işlemleri ne yazık ki sorununuzu çözmeyecektir. Tek çare rom yüklemektir.

-------------------------------------------------------------------

AÇIKLAMALAR

Ayıklama işleminde hata alıyorsanız bu genelde 1.apk yani kaynak eksikliği hatasıdır. Apk nın ayıklama işlemi için taban alınan 1.apk içeriği eksik olabilir. Zamanla bu apk güncelleniyor şimdilik normal apklar için son sürüm multitoolsu kullanmanız yeterli olacaktır. Sistem apklarında ise cihazınızın framelerini kullanmalısınız.


Apk yı her yeni sürümde sıfırdan türkçeleştirmek gerekiyor mu? HAYIR.
Yapımcı sıfırdan kodlamıyorsa bizimde sıfırdan çeviri yapmamıza gerek yoktur. Ve hayır derken gene az biraz çeviri yapacaksınız. Yeni sürümde eklenen yeni dil satırlarını bulup türkçeleştirip eski dil dosyası strings.xml içine ekleyip bu xml yi yeni apk içine eklemelisiniz. Büyük uygulamalarda 2500 e yakın dil satırı olabilir çeviri uzun sürecektir ama unutmayın bu uygulamayı bir kere çevireceksiniz bir kere için değer diyorum.

Yeni eklenen dil satırları üç türlü bulabilirsiniz

Birinci yöntem yeni apk ya eski dil dosyasını ekleyip telefona kurar ve İngilizce kelimeleri görüp yeni apknın İngilizce dilinden alıp türkçe ye çevirip Türkçe dil dosyasına eklersiniz.

İkinci yöntem excel tablosunda iki dil satırını eski Türkçe ile yeni İngilizce yi iki ayrı sütuna dizer ve A dan Z yesıralarsınız ve name koduna bakarak satır satır kolayca farkları bulabilirsiniz.


Üçüncü yöntem winmerge programını kullanarak eski ve yeni xmle arasındaki farkları görebilir ve metin düzenleyici olduğu için düzenleme işlemi yapabilirsiniz.

Dil dosyasında fazla dil satırlarını bulmak için apkyı topladıktan sonra Kayitlar.log dosyasını açın appt hatasında yazılan dil satırları ve ve fazla olan dil klasörleri gösteriliyor bunları silip azda olsa optimizasyon yapabilirsiniz. Tavsiyem ana klasör values ve values-tr dışındaki tüm dil klasörlerini silmeniz ama dikkat edin her values-xx klasörü dil klasörü değildir. Sadece ülke ismi kısaltması olanlar dil klasörleridir. Values-land veya values-v11 vs vs gibi klasörler dil klasörleri değildir bunları silmeyin. Ve eğer başka dillerin içinde arrays ve strings xmleri dışında başka xmller varsa özellik style ve color xmlleri bu dil klasörlerinide silmeyin. Sadece strings ve arrays xmllerini silin

Bazı ülke dil kodları:
tr
 Türkçe - zh Çince - fr Fransızca - ru Rusça - ja Japonca - bg Bulgarca - de Almanca

Dil dosyasında eksik satırlar kalırsa sorun olmaz konuyu baştan aşağı okuduysanız yukarıdavarsayılan ana dil klasörü values olduğunu söylemiştim. Android te sistem dili Türkçe ise apk içinde values-tr yani Türkçe dil dosyasını kullanır ama values-tr içindeki strings xml de eksik dil satırları varsa bunları values içindeki strings.xml den yani varsayılan dil dosyasıdan tamamlar. Bu dil dosyası genelde ingilizcedir. Genelde diyorum çünkü çoğu yazılımcı ingilizce dilinde uygulama yazar ama bu illa ingilizce olacak diye bir şart yok. Çin bir yazılımcı direk varsayılan dili çince de yazabilir. Kısaca eksik satır soruna neden olmaz ama uygulama içinde türkçe dilinden eksik kalan yerlerde ingilizce gözükecektir. Bunları ingilizce dilinden kopyalayıp çevirip türkçe dil dosyasına ekleyebilirsiniz.

Uygulama simgelerini değiştirmek için res klasörü içinde drawable ve drawablexxx klasörleri uygulamanın ana simgesi ve uygulama içinde kullanılan simgelerin olduğu klasördür png şeklinde oldukları için ister MS Paint le ister Photoshop gibi gelişmiş resim düzenleme programlarıyla düzenleyebilir ve değiştirebilirsiniz. Png leri optimize etmek için ayıklama işleminden sonra resim değişikleri yaptıktan sonra ana menüde 2 ile sıkıştırıp kalitesini bozmadan optimize edebilirsiniz. Bu size biraz hafıza boyutu kazandıracaktır özellikle yaptığım denemeler sonucu 6 mb lık tema.apk sini 4 mb ta düşürdüğü olmuştur. 2 mb deyip geçmeyin bir mp3 veya basit bir uygulama daha kurulabilir.

Uygulama içinde istenmeyen satırlar mesela uygulama içinde çoğu yerde, örneğin seçenekler listesinde, ana menüsünde, ayarlarında bağış, hakkında, yardım ve reklam gibi öğeleri kaldırmak için xml layout - menu vs vs klasörleri içindeki xml lerde düzenleme yapmalısınız. Ama her zaman işe yaramayabilir xmleden kaldırmak yetmeyebilir smali kodlarından da kaldırılması gerekebilir.

Örnek: rom managerin ana menüsünde seçeneklere bastığım da bu üç öğe geliyor. Bunlar düzenleyelim.


Bunların kodlarını düzenlemek veya sırasını değiştirmek için res klasörü içinde menu klasörü içinde rommanagermenu.xml dosyasını düzenlemek gerekir. Neyi nerede bulacağım derseniz xml adı zaten aşağı yukarı düzenlenecek kısmın adını veriyor. xml yi açıyoruz.
Başlıca xml kod açıklamaları:
Not: 
" xxx " iki tırnak içindeki metin @ ile başlıyorsa yönlendirme kodu var demektir.
Örnek:Android:title="@string/menu_edit" bu yönlendirmenin anlamı kullanılan sistem diline göre bu türkçe ise values-tr klasöründe string dosyası içinde name="menu_edit" satırındaki kelimeyi göster demektir. Eğer bu iki tırnak arasındaki kodu siler direk metin yazarsanız dil ne olursa olsun yönlendirmeyi kaldırdığınız için direk buraya yazdığınız metin gözükecektir.

Android:title="@string/menu_edit"
- android:title="Menü düzenle"

Values içindeki string.xml içinde dil yoksa Dil satırlarını dil dosyalarında bulamıyorsanız resiçinde menu, xml ve layout klasörleri içindeki xml dosyalarında olabilir. Veya apk içindeki assets klasörü içinde olabilir. Veya yazılımcı kendi bir dizine atmış olabilir. En kötüsü dex içinde olmasıdır. dex ayıklandığında çok ama çok sayıda tahmini en az 100 en fazla 10 000 smali dosyasına dönüşür. Bunların içinde tek tek dil aramakta ayrı bir zorluk olacaktır. Bir uygulamanın sadece classes.dex dosyasını ayıklamak ve toplamak için eklentilerde verdiğim (Sadece Dex Ayiklama TR.zip) dex ayıklama programını da kullanabilirsiniz.

Kısaca string içinde dil yoksa:
1. menu xml ve layout klasörleri içindeki xml dosyalarına bakın
2. Apk dosyası içindeki diğer klasörlerin içine (assets com resource org vs vs) bakın
3. Classes.dex ayıklayıp .smali dosyalarına bakın ama uğraşmayın binlerce var.

Dil kodları: Bunların kodları string dosyalarına yönlendirmelidir.
android:title= Başlık
android:text= Metin
android: summary= Açıklama-özet
android:dialogMessage= Diyalog mesajı

Diğer kodlar: Bu kodlar genelde tasarım - fonksiyon - ayar vs vs kodlarıdır.
android:dialogLayout= Diyalog katmanı
android:textSize= Metin boyutu
android:label= Etiket
android:key= Anahtar
android:action= Eylem
android:targetPackage= Hedef paket.
android:targetClass= Hedef sınıf
android:inputType= Giriş tipi
android:entries= Girişler
android:dependency= Bağımlılık
android:id= Kimlik



Bu satırların yerlerini değiştirseniz uygulama içinde de değişir. Örnek: 2 ile 3 değiştirelim.
Orjinal olan:
Değiştirilen:

Satırı komple silerseniz uygulama içinde o öğe gösterilmez.
Örnek: bağışı olanı kaldıralım.

Arayüzdeki işlev altındaki açıklaması ve uygulama kurulumunda varsayılan ayarını da düzenleyebilirsiniz. Android kullanmaya başladığımdan beri işlev altındaki açıklamalara bir türlü alışamadım. Çok gereksiz olduğunu ve arayüzün sadeliğini bozmaktan başka bir işe yaradıklarını düşünmüyorum. Siz o işlevin açıklaması daha iyi anlaşılması için gereklidir diyebilirsiniz ama bence işlevin adını eğer onu doğru ifade edebilecek kelimeler ile yazılabilirse gerek kalmayacağını söylüyorum. Çeviri kalitesi çok önemlidir. Yıllardır symbian da tek satır kullandık var mıydı anlaşılmayan yer yoktu hatta en kolay kullanılan ve anlaşılan telefonlar nokiaydı ve halada öyledir diyemeyeceğim windows sağolsun.

Önce kaldırmak istediğimiz satırın kodunu dil dosyası olan string.xml içinden bakarak buluyoruz name=" " iki tırnak içinde yazan kod o cümlenin kodudur.

Bu kodun hangi xml içinde olduğunu bulmak için res içinde tüm xml dosya biçimini aratıyoruz. Bulunan tüm xml leri seçip Notepad++ ile aç diyoruz. Seçili tüm xml ler Notepad++ ile açıldığında araç çubuğundan Arama ve sonra Bul tıklıyoruz aranacak kelimeye kodu yazıyoruz ve sağ taraftan açık tüm belgelerde bul diyoruz altta açılan sonuçlara bakarak strings.xmllerini görzmeden gelirseniz zaten geriye kalan xml yi bulursunuz.

Verdiğim örnekte preferences yani tercihlerin olduğunu zaten xml adından anlaşılıyor. Resimde kırmızı ile içine aldığım kısmı silerseniz artık açıklama satırı olmayacaktır. ve ondan sonraki values yani değer kısımınıda false yaparsanız ayar seçili değil demek true yaparsanız ayar seçili demektir.
------------------------------------------------------------------------
UYGULAMA VEYA OYUNDAN REKLAM KALDIRMA

Uygulama içinden reklam kaldırmak için birkaç yöntemimiz var. Reklam mantığını şu şekilde açıklayabilirim: Reklamlar uygulama içinde gömülü olarak gelebilir veya internet üzerinden bir link aracılığıyla akış şeklinde gelebilir. Genelde google reklamları bu şekildedir. Uygulama içinde gelen gömülü reklamları kaldırmak için layout içindeki xmllerde düzenleme yapmalısınız. O resmin gösterilmesini sağlayan kodu yani reklam katmanını sıfırlamalısınız. İnternet üzerinden gelen reklamlarda da ya gösterildiği katmanını sıfırlamalısınız yada reklamın geldiği linki değiştirmelisiniz.

Birinci yöntem link engelleme: Apk dosyasını ayıklama modunu 20 ile classes.dex - resources.arsc - raw olarak ayarlayıp 9 ile ayıklıyoruz. Ayıkladığımız uygulamanın klasörüne gidip projects/xxx.apk içinde smali klasörü sonra com klasörüne gidiyoruz burda windowsta sağ üst köşede smali uzantılı dosyaları aratıyoruz. .smali yazıp enterlemeniz yeterlidir. Bulunan tüm smalileri yüzlerce hatta binlerce olabilir olabilir pc nizin donanımına göre hepsini seçip veya parti parti seçip sağ tıkalıyıp notepad ile düzenle diyoruz. Seçilen tüm smaliler notepad ile çoklu açıldığında bul ile http:// ve https:// kelimesini tüm belgelerde bul ile aratıyoruz. Çıkan sonuçlarda bulunan satıra tıklayıp http:// ve https:// kısmı haricindeki linki siliyoruz. Link adreslerinde özelikle ad veya ads kelimesi geçiyorsa silin. Dikkat edin geçmeyen diğer tüm linkleri de silmeyin çünkü uygulama internet tabanlıysa uygulamanın özelliğinide silebilirsiniz. Örnek maç sonuçlarını gösteren uygulamanın veri tabanı linkini silerseniz hem reklam gösterilmez hem maç sonuçları o yüzden sadece ad veya ads kelimesi geçiyorsa linki silin. Çünkü ingilizce bilenler bilir ad ve ads reklam ve reklamlar demektir.



İkinci yöntem reklam katmanını sıfırlamak: Bu reklam katmanına reklam linktenden gelebilir veya uygulama içinde gömülü reklamda olabilir. Eğer reklam tek ise hiç değişmiyorsa uygulamanın içinde olan reklamdır değişiyorsa link üzerinden gelen reklamdır. Link üzerinden gelen reklamı üstte anlatığım gibi linkini silip engelleyebilirsiniz veya şimdi anlatacağım gibi reklam katmanını da silebilirsiniz ama genelde link üzerinden gelen reklamların katmanı smali dedir o yüzden link engelleme yöntemi en başarılı yöntemdir. Bu yöntemi uygulama içinde gelen reklamları engellemek için anlatıyorum. Uygulamanın kendi içindeki reklamları engellemek için res içindeki layout klasörü içindeki reklamın xml sini veya reklam kodunun olduğu xml yi bulmak bulmak gerekir. Genelde ad veya ads ile başlayan xmllerdir veya reklamın olduğu örnek ana menüde ise main gibi xmlelerde bakmak gerekir burada da yukarıdaki toplu bulma işlemini yapabilirsiniz xmleri windowsta aratıp çoklu seçip notepad ile açıp ad veya ads ve eğer yazılımcı türk ise reklam kelimesini aratıp bu kodun olduğu kısmı kolayca bulabilirsiniz. Bulunan xml leri açıp içindeki reklamın yüksekliği ve uzunluğunu 0.0dip yapıyoruz bu reklamı tamamen engellemez reklam sistemi hala çalışıyor olacaktır ama ekranda gözükmeyecektir.

Katman kodları:
Yükseklik: android:layout_height="0.0dip"
Genişlik: android:layout_width="0.0dip"
Ağırlık: android:layout_weight="0.0"

fill_parent : doldur
wrap_content: kaydır



Üçüncü yöntem: Mulltitools ta apk yı 9 ile ayıklıyoruz projects içinde ayıkladığımız uygulamanın klasöründe (örnek: reklamli.apk olsun) klasörü içinde AndroidManifest.xml dosyasını notepad++ ile açıyoruz ve ads kelimesini gördüğümüz satırı komple siliyoruz ve kaydediyoruz. 11 ile toplayıp 12 ile imzalıyoruz bitti. Bu yöntem aslında reklamı kaldırmaz ama reklam gösterme iznini sildiğimiz için reklam gösterilmez ama siyah bir reklam panosu görülecektir. Afişi kaldırıp panonun hala orda durması gibi birşey. Reklam görünmesinden iyidir.


Dördüncü yöntem ise apk yı multitools ile düzenledik imzaladık bitti bu reklamli apk yı ister sanal android te isterseniz rootlu veya rootsuz telefonunuzda Şanslı paketler.apk uygulamasını kurarak yeni reklamları kaldırılmış apk oluşturabilirsiniz. Öncelikle multitools ta düzenlediğimiz veya Türkçeleştirdiğimiz reklamlı apk yı telefona veya sanal androide atıp kuruyoruz. Aslında bu işlem birinci yöntemde anlattığım işlemin aynısı ama her zaman işe yaramayabilir Çünkü reklamın geldiği linkler farklı farklı şanslı paketlerin engellediği linkler belli bir sayıda tümünü engellemeyebilir. Şanslı paketlerin çalışma mantığı içinde kayıtlı olan linkleri smaliler içinde aratıp düzenlemek o yüzden tüm linkleri engellemeyebilir. Sürekli güncellenmesi yeni reklam linklerin uygulamaya tanıtılması gereklidir. Aynı mantıkla da reklam engelleme uygulamaları çalışır içinde kayıtlı olan linklerden gelen veri akışını engelmek. Şanslı paketler bunu hex ile apk içinde düzenleyerek yapıyor.

Şanslı paketler uygulamasını çalıştırıp reklamını kaldıracağımız uygulamaya tıklıyoruz ve Yama yap seçeneğini seçiyoruz.



Dediğim gibi rootlu sistemlerde rootsuz sisteme göre daha çok seçenek çıkıyor. Buradan Düzenlenmiş apk oluştur seçiyoruz ve çıkan ekrandan Google reklamları olmayan apk seçiyoruz ve çıkan ekranda seçenekleri ellemeden Yeniden oluştur seçip bekliyoruz Sonuç ekranı yeşil ise yama başarılıdır demektir. Zaten bu sonuç hakkında detaylı bildirim gelecektir.

 

Bu yeni düzenlenmiş reklamsiz apk Sdcard-Luckpacther-Modified klasörü içinde dir. Sisteminizden reklamlı apkyı kaldırıp bunu kurun bitti. Ve yukarıda düzenlenmiş apk oluştura tıkladığımızda lisans doğrulaması olmayan apk seçeneğinde gördüğünüz gibi aynı mantıkla lisans doğrulamalarını da kaldırabilirsiniz.



Evet, yazımız şimdilik bu kadar sayfamızı takipte kalın! Konu sürekli güncellenerek yeni özellikler aktif edilecektir.





CepFonX için yardımcı olun! Bizi Sosyal Medyada Paylaşın
Yazılarımızdan Hemen Haberdar Olun!
Güvenli İndir