Android Studio ve APK editleme süreci nasıl işler?

AltarMorow

Femtopat
Katılım
15 Eylül 2024
Mesajlar
13
Daha fazla  
Cinsiyet
Erkek
Öncelikle herkese merhaba, . Ben yazılımda yeni sayılırım. 6 aydır Android programlama ile uğraşıyorum. Benim bazı kafama takılan sorular ve sorunlar var. Tecrübeli veya bilen arkadaşlar sorularıma cevap verirse çok mutlu olurum. Çünkü internetten pek kaynak bulamadım. Sorularım aşağıda:

Soru 1: Android Studio ile Play Store'deki tüm APK'lar editlenir mi? Editten kastım, kaynak kodları ve oyundaki karakterler, nesneler, görseller vs. (editlemeyi kesinlikle yayınlamayacağım. Kendim için yapıyorum. Yayınlarsam hak ihlaline girdiğine ve suç olduğunu biliyorum, merak etmeyin .)

Soru 2: APK tool ile Android Studio arasındaki fark nedir? Yani, mesela toprak koç ve APK dayı sitelerini biliyoruz hepimiz. Adamlar APK editlerken hangi programları kullanıyor? Zaten dil bileceğiz, o kesin. Yanında hangi programları kullanıyor, onu merak ediyorum.

Soru 3 (son soru): Slither. IO oyununu hepimiz biliriz. Çocukluğumuz bu oyunla geçti . Ben slither. IO oyununun APK'sını editlemek istiyorum. Kendim için tabii. Editlemekten kastım, oyundaki yılanların rengini, kostümünü falan kendime göre yapmak istiyorum. Ama hangi programla yapabilirim? Bir de APK tool ile tüm kodlarını çıkardım oyunun, ama sıkıntım şöyle: PNG ve JPG, yani resim dosyalarını arattım ama oyun içi karakter, skin veya kostüm tarzı hiçbir şey çıkmadı. Sadece ikon, Facebook ikon vs. çıktı.

Yani asıl sıkıntım soru 3'te. Neden tüm kodları çıkarmama rağmen res klasöründe oyuna dair hiçbir görsel bulamadım? Cilt, renk, arka plan, buton vs.

Bir de son küçük bir sorum daha var: Slither. IO APK'da XML dosyaları var. Galiba görsel kodlar var ama resim yok, sadece kodlar yazılı. XML'de görsel şeyler de var mıdır acaba? Varsa çıkarabiliriz mi?

Evet arkadaşlar, sorularım bunlar. Cevaplarsanız gerçekten mutlu olurum. İnternetten pek kaynak bulamadım maalesef. Şimdiden çok teşekkür ederim hepinize. Saygılar .
 
Son düzenleyen: Moderatör:
1. Android Studio source kod editler. APK uzerinde islem yapip byte code u decompile etmen gerekiyor editleyebilmen icin.

Her APK icinde gelen DEX editlenebilir anlasilabilir sekilde source code a donmez. Obfuscate edilmistir ya da native call yapiyordur ( .so dosyalari ) bu sebeple native koda reverse engineering yapman gerekir ki byte code decompile etmekten daha sofistike bir islem.

2. Ilk sorudaki cevap. Source Code editlemek ve develop etmek baska, decompile etmek baska. Birinde kuzudan adana kebap yapiyorsun otekinde adana kebaptan kuzuya ulasmaya calisiyorsun.

3. Hic duymadim slither falan. Ancak uygulamadaki her ikon, resim APK icinde yer almaz. Network istekleri ile cekiliyordur. Kodu incelemelisin. Eger network ile geliyorsa degistiremezsin, cunku sunucudadir. Ayrica bazi uygulamalara Anti tamper algoritmalari uygulanir; sunucu senin icerigini degistirdigin APK'dan attigin istekleri drop edebilir.

Genel olarak bir APK'yi decompile edip yetkin sekilde istedigin tarafini istedigin gibi degistirebilmek; o en az o APK yi sifirdan yazmak kadar emek ister. Sadece cok ufak bir bolumunu degistirmek icin ugrasmaya deger. Eger obfuscate edildiyse adamin 1 saatte yazdigi seyi senin anlamlandirman 10 saat. Ayrica oyun oldugu icin muhtemelen Java kismi sadece Unity calistiracak bir wrapper islevi goruyordur.
 
Çok açıklayıcı bir cevap olmuş sağolun. Tüm soru işaretlerim çözüldü. Anlaşılan bu yazılım işi baya zor işmiş. Anladığım kadarıyla yıllar vermek lazım bu işe. Tekrardan teşkkürler iyi günler dilerim...
 
@bitwise Çok güzel anlatmış bir şey eklemek istiyorum. Oyunu incelediğinde oyunun bu arkadaşla yapıldığını anlayabilirsin:


Ki bu tersine mühendisliğe başlamak için zor bir seçim olmuş. Ama bu oyun için avantajları baya bariz o yüzden mantıklı.

Çoğunlukla mobil uygulamalar söz konusu olduğunda öncelikle uygulamanın herhangi bir araç yardımıyla yapılıp yapılmadığını tespit etmek lazım yoksa bu araçlar işletim sistemi ile oyunun kodları arasında köprü görevi görmesi için her türlü Java ve C++ kodu üretiyor.

Elbette bu SDK'yı hiç kullanmadım ama yine basit göz attığımda Apk'nın içeriğinde "Assets\slither android.swf" dosyası bulunuyor (ek olarak kütüphaneler var ve onlar da .swf uzantılı) ve bu dosya asıl oyunun kendisi. Tabii bu dosyaların içeriğini anlamak ve okumaya çalışmak gereksiz zaman kaybıdır o yüzden açık kaynak kod decompiler aradığımda bu şaşalı şeyi buldum:


Ve bu dosyayı içine attığımda bom:




Bu durumda Adobe AIR Sdk varken başka bir durumda Unity (IL2CPP) yada web sitelerini çoklu platform olarak oluşturabilen popüler açık kaynak kodlu araçlar da olabilir. Yada Java ile yazılmış normal bir program da. O yüzden öncelikle apk'nın böyle bir araçla yazılıp yazılmadığını anlaman lazım ardından o araçların ürettiği köprüyü incelemekle vakit harcamadan asıl içeriği elde edebiliyorsun.
 
Sen bir dahisin dostum!!! Aradığım şey tam olarak bu hatta daha kolay. Allah senden bin kere razı olsun hocam. Böyle programlar varmıymış ya ben yaklaşık 4 aydır slither io nun android için tabi tasarım dosyalarını görsel dosyalarını arıyorum araştırıyorum ama bulamıyordum. Kral adamsın. Ya youtube de bazı kanallar var bu slither io oyununun kodlarıyla oynayıp istediği görünümleri elde ediyorlar. Benimde o gün bugündür hazır apk dosyalarını kendime göre editleyip decompile etme merakı oldu. Ama yine diyorum yayınlamak için değil. Eğlenmek ve öğrenmek için yapıyorum. Sizin sayenizde artık oyunun tasarım dosyalarına ulaşabilecem. Tekrardan çok teşekkür ederim. . Gerçekten dahisin bu arada. Kimseye yalan söylemem ben. Kendinizi bu alanda geliştirin bence sizin iyi yerlere geleceğinizden hiç şüphem yok bu alanda. Adamsınız. Bu arada ben technopat tan pek anlamam. Sizin rütbenizi yükseltmek için ne yapmam gerekiyor veya size ödül kazandırmak için. Çünkü sizin cevap en iyi cevap oldu benim için.
 
Rica ederim. Rütbeleri nasıl aldığım hakkında bir fikrim yok. Belirli bir proje için Windows işletim sistemini bu şekilde incelediğim için genelde Windows ile ilgili sorulara cevap veriyorum ama diğer rozetin ne olduğunu bilmiyorum
 
Kral adamsınız. Ama yinede her babayiğit yapamaz bunu bana göre
 
bende bir futbol oyunu var champman 17 bunu 25 olarak uyarlamak istiyorum sadece oyuncuları değiştirebilsem yeter ama decompite yaptım oyuncuların bulunduğu dosyayı bulamadım bir türlü

bende bir futbol oyunu var champman 17 bunu 25 olarak uyarlamak istiyorum sadece oyuncuları değiştirebilsem yeter ama decompite yaptım oyuncuların bulunduğu dosyayı bulamadım bir türlü
ya da yapabilecek biri var mı
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…