Bilgi Uygulama Port Kılavuzu

mbtt

Üye
Katılım
4 Ara 2018
Mesajlar
45
Tepkime puanı
419
Puanları
53
Çevrimdışı
gora-gif.gif


DİPNOT
BU İŞLEMDEN DOĞACAK SORUNLARDAN ŞAHSIM VE FORUM GSMTURKEY SORUMLU TUTULAMAZ.


AÇIKLAMA
Bu kılavuz ile romların içinden vendor ve framework kaynağına bağlı uygulamaları portlayabilirsiniz.

Ricam eğer bu kılavuzdan bir yardım aldıysanız konunuzun teşekkürler kısmında benim de ismim geçsin.


ANLATIM
Gizli İçerik
Portlama
Öncelikle romunuz deodex olmalıdır.Aksi taktirde işe yaramaz.

Portlayacağınız uygulamayı seçtikten sonra bu uygulamanın liblerinide bulmalısınız.

Bu aşamada 5.1 ve üst sürümlerde uygulamaların kendi klasörleri altında lib dosyaları bulunur.Eğer orada yoksa lib ve ve lib64 klasörlerinden ilgili libleri çekeceksiniz.

Ja09p5.png


Uygulamanızın adı ile aynı olan bir klasör açın.Daha sonra bu klasör içine uygulamayı ana dizine liblerini ise lib adında bir klasör oluşturup onun içine de arm adında bir klasör daha oluşturup atın.

W0Nzn4.png


Uygulamayı 7zip ve türevleriyle açın.Daha sonra içerisinden lib klasörünü silin.

37m5D9.png


Uygulamanın hangi framework dosyalarına bağlı olduğunu görmek için :

Uygulamanızı ayrıştırın.

AndroidManifest.xml dosyasını açın.

"<uses-library ....." gibi olan satırları arayın.Aşağıdaki gibi görünürler.

ZZ86Do.png


Satırların içerisinde geçen com.xxxxx.vsvsvs gibi olan framework dosyalarını romunuzun framework içinden bulun.

Bunları yaparken ayrıca etc/permissions klasöründen içerisinden de bu .jar dosyalarının izin dosyalarınıda almanız gerekebilir.

Açıklama :

false -> Bu değerin karşısında olduğu framework dosyası olmadan da uygulama çalışabilir.Direk bir bağlılığı yoktur.Ancak sıkıntı çıkarabilir.Açılsa bile iç özellikleri açısından eksiklik yaşanabilir.
true -> Bu değerin karşısında olduğu framework dosyası olmadan uygulama çalışmaz gereksinim duyar demektir.

Daha sonra bir zip dosyası oluşturarak recovery üzerinden yükleme yapıp deneyebilirsiniz.

Durduruldu Hatası Alırsanız
1-Neden Hata Aldığımızı Anlayalım

Bir ve ya birkaç farklı sebebe bağlı olabilir.

a) Eksik framework dosyaları vardır alınması gereken.
b) Eksik lib dosyaları vardır alınması gereken.
c)Android sürümü uyumsuzdur.
d) Java kodları birbirini eşleyememiş ya da tanımlayamamıştır.

Bunun için log kaydı alıp incelemede yapabilirsiniz."Ayrıştırılamadı" Android sürümü, "Durduruldu" ise a ve c seçeneklerine bağlıdır.

d seçeneği ise %75 ihtimal ile "Ayrıştırılamadı" hatası verir.

2-Düzeltmek İçin Adım Atalım

a) Portlama kısmındaki framework dosyalarını çıkardığımız kısma dönün ve kontrol edin.Klasör ve satırlarda yazan dosyaları teker teker karşılaştırıp klasörde olduğundan emin olun.

b) Portlama kısmındaki lib dosyalarını çıkardığımız kısma dönün ve kontrol edin.Sistemde olan alakalı dosyaları teker teker karşılaştırıp klasörde olduğundan emin olun.

c) Uygulamanızı ayrıştırın AndroidManifest.xml dosyasını açın.Ve aşağıdaki satırları arayın.

minSdkVersion: '16' -> Uygulamanın yüklenebileceği en düşük Android sürümünü belirtir.
targetSdkVersion: '17' -> Uygulamanın yüklenebileceği en yüksek Android sürümünü belirtir.

Daha sonra yukarıdaki satırların karşısını kendi android versiyonunuza göre düzenleyin örneğin Jellybean'den ICS sürümüne portluyorsanız :

minSdkVersion: '16' satırını -> minSdkVersion: '14' olarak değiştirmelisiniz.

En son işlem olarak uygulamanızı tekrar toplayabilirsiniz.

d) Burası basitçe smali düzenleme ile alakalıdır.Eğer bilginiz yoksa yapı hakkında biraz araştırma ile aşinalık edinin.

Bir log alın.Ve inceleyin bakalım neler hata vermiş.Örneğin aşağıdaki hataya bakalım.Ne belirtiyor inceleyelim.

YDndAz.jpg


Alakalı smaliyi yukarıdan bulun.

Örneğin yukarıda smali/com/sonyericsson/metadatacleanup/util/ dizininde olduğu anlaşılıyor nerede yazıyor baba derseniz bu sizin apk yapısı bilmeniz ile alakalıdır.

StorageManagerIf.smali -> Belirttiği smali ise bu oluyor.

262 Satır ise bu smailinin eşlenemeyen kısmı.Aşağıda görebilirsiniz.

Burada alakalı dosya "storage_internal" oluyor

LykGdZ.png


Şimdi ise ise frameworkten bu satırı bulup eşlenmesini sağlayacağız.

Frameworku ayrıştırın.Daha sonra res/value/public.xml dosyasını açın.

Yukarıda hata veren dosyayı bulmuştuk.Hani "storage_internal" olan.

Şimdi burada düzelteceğiz.

YDnVlA.png


Ve şimdi bu değiştirdiğimiz - yeni getirdiğimiz kodu bir kenara kaydedin.

Tekrar ilk uygulamadaki smaliyi açın.Aynı satırı bulun (262) daha sonra.O satırda direk storage_internal tanımı yapmak yerine yeni girdiğimiz kodu tanımlayacağız.

İlk smalide 734. satırının sonunda "getStringi" görmüşsünüzdür.Onu oradan kaldırmanız gerekiyor.Yani aşağıdaki gibi görünecek ilk adımda.

Kod:
const-string v2, "storage_internal"

invoke-direct {p0, v1, v2}, Lcom/sonyericsson/metadatacleanup/util/StorageManagerIf;->getString(Landroid/content/res/Resources;Ljava/lang/String;)Ljava/lang/String;

move-result-object v2

invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v2

İkinci adım olarak "storage_internal" yerine yukarıda frameworkte verdiğimiz kodu yazacağız.

Yani böyle görünecek.

Kod:
const v2, 0x10405ad

Yani son adımda şu şekil ortaya çıkacaktır.

Kod:
.line 262
.local v0, "description":Ljava/lang/String;
const v2, 0x10405ad

if-eqz v2, :cond_0



3-Elimize Yüzümüze Bulaştıralım

Yok yav sizden bi uçan bir kaçan kurtulur yemişim apkyı.
 
gora-gif.gif


DİPNOT
BU İŞLEMDEN DOĞACAK SORUNLARDAN ŞAHSIM VE FORUM GSMTURKEY SORUMLU TUTULAMAZ.


AÇIKLAMA
Bu kılavuz ile romların içinden vendor ve framework kaynağına bağlı uygulamaları portlayabilirsiniz.

Ricam eğer bu kılavuzdan bir yardım aldıysanız konunuzun teşekkürler kısmında benim de ismim geçsin.


ANLATIM
[Gizli içerik]
Teşekkür ederim
Resimler silinmiş düzeltilebilir mi?
 
gora-gif.gif


DİPNOT
BU İŞLEMDEN DOĞACAK SORUNLARDAN ŞAHSIM VE FORUM GSMTURKEY SORUMLU TUTULAMAZ.


AÇIKLAMA
Bu kılavuz ile romların içinden vendor ve framework kaynağına bağlı uygulamaları portlayabilirsiniz.

Ricam eğer bu kılavuzdan bir yardım aldıysanız konunuzun teşekkürler kısmında benim de ismim geçsin.


ANLATIM
[Gizli içerik]
Teşekkürler
 
gora-gif.gif


DİPNOT
BU İŞLEMDEN DOĞACAK SORUNLARDAN ŞAHSIM VE FORUM GSMTURKEY SORUMLU TUTULAMAZ.


AÇIKLAMA
Bu kılavuz ile romların içinden vendor ve framework kaynağına bağlı uygulamaları portlayabilirsiniz.

Ricam eğer bu kılavuzdan bir yardım aldıysanız konunuzun teşekkürler kısmında benim de ismim geçsin.
tşkler

ANLATIM
[Gizli içerik]
 
teşekkürler ustam eline sağlık
 
Geri
Üst Alt