MIUI Patchrom Rehberi

0
579

Eğer cihazınız için kendi başınıza MIUI Rom düzenlemek istiyorsanız fakat nasıl yapılacağı hakkında bir bilginiz yoksa bu yazımız tam size göre.

Bildiğiniz üzere Android açık kaynaklı olarak bulunuyor fakat bazı geliştiriciler kaynak kodlarını yayınlamıyorlar maalesef MIUI de bu geliştiricilerden biri. Biz de bu yazımızda size cihazınıza özel bir romu (stock veya custom farketmez) MIUI’nin Patchrom adını verdiği uygulama ile MIUI roma dönüştürmeyi anlatacağız ve bu yazımız dört ana bölümden oluşacak.

Not: Bu anlatım Linux işletim sistemleri içindir ve Ubuntu dağıtımını kullanmanız önerilir

Bölüm 1: Bilgisayarınızın Hazırlanması

1-Herşeyden önce bilgisayarınıza repo araçlarını yüklemeniz gerekmektedir, eğer bilgisayarınızda repo araçları yüklüyse 4. adıma geçebilirsiniz eğer yüklü değilse 3. adıma geçiniz.

2-Bu kodları

mkdir ~/bin 
PATH=~/bin:$PATH>

terminal emülatörünüze girin

3-Bu kodları girdikten sonra

curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

bu kodları girin ve ardından 4.adıma geçebilirsiniz.

4-mkdir klasörismi ile bir klasör oluşturun ve daha sonra cd klasörismi komutlarını girerek yeni bir klasör oluşturup o klasörün içine girin. (klasörismi istediğiniz herhangi birşey olabilir ; patchrom vs.)

5-

repo init -u git://github.com/MiCode/patchrom.git -b miui-7 -m android-4.4.4.xml

komutunu girerek kaynak kodlarını belirleyin ve daha sonra repo sync kodunu girerek kaynak kodunu bilgisayarınıza indirmeye başlayın. (Kaynak kodu 2.00 GB civarındadır)

Bölüm 2: Kullanılacak ROM Dosyasının Seçilmesi

PatchRom dosyaları cihazınız için Stock AOSP ROM kullanmanızı öneriyor fakat siz cihazınız için bulunan Cyanogenmod 11 ROM’larından birini kullanabilirsiniz.

Bölüm 3: Dosya Yapısının Oluşturulması

PatchRomu kullanabilmek için ilk bölümde oluşturduğunuz klasörün içine başka bir klasör oluşturmanız gerekiyor örnek olarak Google Nexus 5 cihazı için oluşturduğunuz klasörün içine nexus5 adında bir klasör oluşturmanız gerekiyor ve bu oluşturduğunuz yeni klasörün içine de kullanacağınız ROM dosyasını atmanız gerekiyor.

Ek olarak “nexus5” klasörünün içine aşağıda bulunan .apk ve .jar dosyalarını ve “local-modified-apps” kısmında belirttiğiniz dosyaları decompile etmeniz yani ayrıştırmanız gerekiyor.

  • /system/framework/android.policy.jar
  • /system/framework/framework.jar
  • /system/framework/framework2.jar
  • /system/app/SystemUI.apk (orada yoksa /system/priv-app/SystemUI.apk)
  • /system/framework/services.jar
  • /system/framework/telephony-common.jar
  • /system/framework/framework-res.apk

.apk ve .jar dosyalarını nasıl ayrıştıracağınızı bilmiyorsanız apktool adlı bir araç yardımı ile ayrıştırabilirsiniz. Bu aracı kurduktan sonra

apktool if framework-res.apk

kodu ile gerekli olan framework dosyasını yükleyin ve daha sonra

apktool d örnek.jar

kodu ile bütün .apk ve .jar dosyalarını ayrıştırın.

Bölüm 4: Makefile Dosyasının Düzenlenmesi

#
# Makefile for i9100
#

# The original zip file, MUST be specified by each product
local-zip-file     := I9100ZCKJ1.zip

# The output zip file of MIUI rom, the default is porting_miui.zip if not specified
local-out-zip-file := MIUI_9100.zip

# All apps from original ZIP, but has smali files chanded
local-modified-apps := LogsProvider Phone MediaProvider Settings

# All apks from MIUI execept MIUISystemUI and framework-miui-res.apk
local-miui-apps     := Contacts ContactsProvider Mms TelephonyProvider ThemeManager Launcher2 \
     DownloadProvider TelocationProvider Notes Music Torch DownloadProviderUi Updater

# All apps need to be removed from original ZIP file
local-remove-apps   := AlipayGphone AmsComposer AndroidQQ_Samsung_Seine BuddiesNow cooldict glyder2 \
    ImgoTV iReader kaixin001 Memo MiniDiary MinimalHome mreader PressReader ReadersHub Renren   \
    Sinamicroblog SinaNews SinaStock SinaWeather SocialHub Tencentmicroblog  \
    TomEbook Tonghuashun TouchWiz30Launcher Youku_Samsung_seine MusicPlayer \
    MediaHub PhotoRetouching VideoEditor thinkdroid QYVideoClient \
    Days DigitalClock Dlna DualClock Email EmailWidget FTC FTM FTS Kobo \
    Microbesgl Navigator PostIt Protips QuickSearchBox SamsungApps SamsungAppsUNA3 \
    SamsungIM SamsungWidget_ProgramMonitor SecretWallpaper1 SecretWallpaper2 \
    SevenEngine SnsAccountKx SnsAccountRr SnsDisclaimer SnsImageCache SnsProvider \
    Tasks TasksProvider Term TrimApp TwCalendarAppWidget Zinio \
    samsungappswidget syncmldm viva_tts

# To include the local targets before and after zip the final ZIP file, 
# and the local-targets should:
# (1) be defined after including porting.mk if using any global variable(see porting.mk)
# (2) the name should be leaded with local- to prevent any conflict with global targets
local-pre-zip := local-zip-misc
local-after-zip:= local-test

# The local targets after the zip file is generated, could include 'zip2sd' to 
# deliver the zip file to phone, or to customize other actions

include $(PORT_BUILD)/porting.mk

# To define any local-target
local-zip-misc:
	cp misc/com.google.android.maps.jar $(ZIP_DIR)/system/framework/
	@echo Add google apks
	cp misc/apk/* $(ZIP_DIR)/system/app/
	@echo Replace build.prop
	cp misc/build.prop $(ZIP_DIR)/system/build.prop

local-test:
	echo "an example action"

Bu kodların nasıl çalıştığı:

  • “local-zip-file” ROM dosyanızın .zip dosyası ile aynı olmadır mesela stockrom.zip
  • “local-out-zip-file” ise işlem sonucu oluşacak MIUI ROM dosyanızın adı olacaktır
  • “local-modified-apps” Orijinal ROMdan alınması gerek önemli uygulamalardır
  • “local-miui-apps” MIUI dosyalarını işaret eder
  • “local-remove-apps” ROM dosyasından silinecek uygulamaları işaret eder

Bölüm 5: MIUI Değişikliklerinin Uygulanması

MIUI değişikliklerinin belirlenen ROM üzerinde uygulanması için aşağıdaki komutları PatchRom klasörünüzün ana dizinine girin:

source build/envsetup.sh
cd nexus5 # BU İSMİ 3. BÖLÜMDE OLUŞTURDUĞUNUZ KLASÖR İSMİ İLE DEĞİŞTİRİN
make firstpatch

Bu komutlardan sonra Patchrom MIUI dosyaları ile seçtiğiniz ROM dosyalarını değiştirmeye başlayacaktır, bu işlemler bittikten sonra

make fullota

komutunu girerek MIUI ROM dosyanızı hazırlayabilirsiniz.

Bu konuda anlattığımız işlemleri yaparken hatalarla karşılaşabilirsiniz. Bu hataların çözümü için bu konumuz size yardımcı olacaktır.

Cihazınıza MIUI ROM portlamayı başardınız mı? Deneyimlerinizi bizimle paylaşın.