Perşembe , Temmuz 20 2017

MIUI Patchrom Hata Çözümleri

MIUI Patchrom düzenleme işlemlerini gerçekleştirirken hatalarla karşılaşabilirsiniz. Bu hataları nasıl çözebileceğinizi anlatıyoruz.Burada anlattığımız işlemleri gerçekleştirirken karşınıza hatalar çıkabilir. Şimdi bu hataları anlayıp çözmeye çalışmanın zamanı geldi.

Hatalar

Patchrom bir yamayı yapamadığı zaman hangi dosyanın yaması uygulanamadıysa o dosyanın uygulanamayan yamasını göstermek için  /klasörismi/cihazismi/temp/ klasöründe oluşturur. Örnek olarak eğer services.jar dosyasında bir yama uygulanamadıysa klasörismi/cihazismi/temp/services.jar.out klasöründe bulunabilir. Örnek olarak, “reject” dosyası “klasörismi/cihazismi/temp/reject/android.policy.jar.out/smali/com/android/internal/policy/impl” klasöründe bulunuyorsa orijinal dosya “patchrom/device/android.policy.jar.out/smali/com/android/internal/policy/impl” bu klasörde bulunacaktır.

Yama Bilgilerinin Anlaşılması

Şimdi bulunan bilgilerinizle reject ve orijinal dosyaların yerlerini açın, reject dosyası aşağıdaki gibi görünecektir:*** PhoneWindowManager.smali 2015-09-09 11:46:13.541852561 -0300— PhoneWindowManager.smali 2015-09-09 11:47:07.349851413 -0300****************** 393,404 **** .field private mPowerKeyTriggered:Z ! .field private final mPowerLongPress:Ljava/lang/Runnable; .field mPowerManager:Landroid/os/PowerManager; .field mPreloadedRecentApps:Z .field mRecentAppsDialog:Lcom/android/internal/policy/impl/RecentApplicationsDialog; .field mRecentAppsDialogHeldModifiers:I— 395,408 —- .field private mPowerKeyTriggered:Z ! .field private mPowerLongPress:Ljava/lang/Runnable; .field mPowerManager:Landroid/os/PowerManager; .field mPreloadedRecentApps:Z + .field private final mQuickBootLock:Ljava/lang/Object;+ .field mRecentAppsDialog:Lcom/android/internal/policy/impl/RecentApplicationsDialog; .field mRecentAppsDialogHeldModifiers:ISonraki adım sembolleri ve bu sembollerin anlamlarını anlamak:

  • ***XX,XX***: Bu semboller bize yamanın kodları hangi satırlarda beklediğini gösteriyor, bizim durumumuzda bu 393 ve 404 numaralı satırlar arası olacaktır.
  • —XX,XX–: Bu semboller bize kodların yamadan sonra hangi satırlarda beklendiğini gösteriyor, bizim durumumuzda bu 395 ve 408 numaralı satırlar arası olacaktır.

Ama bu satırlar çok fazla birşey ifade etmiyor daha önemli olan şey bu sembolleri anlamak:

    • asteriks’in altında bulunan satırlar (***) bu kodların yamadan önce göründüğü
    • hypens’in altında bulunan satırlar (—-) bu kodların yamadan sonra nasıl görüneceğini gösteriyor

reject alıyoruz çünkü yama kodların beklendiği satırları bulamıyor ve buda yamanın başarısız olmasının asıl nedeniVe şimdi yapmamız gereken bu kodları kendimiz düzenlememiz.Bunu yapabilmemiz için ise bu sembollerin anlamlarını anlamamız gerekiyor:

  • + sembolü satırın yama tarafından eklendiğini gösterir
  • – sembolü satırın yama tarafından kaldırıldığını gösterir
  • ! sembolü satırın yama tarafından değiştirildiğini gösterir

Bu kadar bilgi yeterli olacaktır, hadi şimdi rejectleri düzeltelim

Yamaların Düzeltilmesi

Biz şimdi bir örnek vereceğiz ve bunu düzelteceğiz. Sizde bizim uyguladığımız gibi kendi hatalarınızda bu yöntemi uygulayabilirsiniz.İlk olarak reject dosyalarına bakma zamanı*** 393,404 **** .field private mPowerKeyTriggered:Z ! .field private final mPowerLongPress:Ljava/lang/Runnable; .field mPowerManager:Landroid/os/PowerManager; .field mPreloadedRecentApps:Z .field mRecentAppsDialog:Lcom/android/internal/policy/impl/RecentApplicationsDialog; .field mRecentAppsDialogHeldModifiers:IŞimdide bu satırlar için orijinal dosyaya bakma zamanı. Ama aklınızda bulunsun bu satırlar biraz farklı olabilir, ama bizim kanımızca bunlar doğru satırlar:.field private mPowerKeyTriggered:Z.field private final mPowerLongPress:Ljava/lang/Runnable;.field mPowerManager:Landroid/os/PowerManager;.field mPreloadedRecentApps:Z.field private mPressOnAppSwitchBehavior:I.field private mPressOnAssistBehavior:I.field private mPressOnMenuBehavior:I.field private final mQuickBootLock:Ljava/lang/Object;.field private final mQuickBootPowerLongPress:Ljava/lang/Runnable;GÖrdüğünüz üzere farklı sıradalar, ve bazıları görüntülenmemiş. Şimdide yamadan sonra olması gerekilen kısma odaklanalım:— 395,408 —- .field private mPowerKeyTriggered:Z ! .field private mPowerLongPress:Ljava/lang/Runnable; .field mPowerManager:Landroid/os/PowerManager; .field mPreloadedRecentApps:Z + .field private final mQuickBootLock:Ljava/lang/Object;+ .field mRecentAppsDialog:Lcom/android/internal/policy/impl/RecentApplicationsDialog; .field mRecentAppsDialogHeldModifiers:IBu bize bu satırı değiştiripfield private final mPowerLongPress:Ljava/lang/Runnable;Bu satır yapmamız gerktiğini anlatıyor:.field private mPowerLongPress:Ljava/lang/Runnable;Ek olarak bu satırıda eklememiz gerekiyor:.field private final mQuickBootLock:Ljava/lang/Object;Manuel olarak yamalamadan sonra dosya bu şekilde görünecektir:field private mPowerKeyTriggered:Z.field private mPowerLongPress:Ljava/lang/Runnable;.field mPowerManager:Landroid/os/PowerManager;.field mPreloadedRecentApps:Z.field private mPressOnAppSwitchBehavior:I.field private mPressOnAssistBehavior:I.field private mPressOnMenuBehavior:I.field private final mQuickBootLock:Ljava/lang/Object;.field private final mQuickBootPowerLongPress:Ljava/lang/Runnable;Bu şekilde görünecektir.Son olarak değişikliklerinizi kayıt edin ve bir sonraki reject dosyasına geçin.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir