Rom Geliştirmek için gereken adımlar ve Programlar

Anlatım yeni başlayanlar içindir.

« Older   Newer »
 
  Share  
.
  1. emresarica
        Like  
     
    .

    User deleted


    Rom geliştirmek programcılığa atılan ilk adımlardan birisidir.Yaygın inanışın aksine temel bir kaç tekniğe dikkat edildiğinde basit bile sayılabilir.Bu makalemde elimden geldiği kadar basit rom editleme ile ilgili bilgilerimi aktarmaya çalışacağım.İlerde müsait olduğum bir gün ileri düzey "GELİŞMİŞ EDIT" makalesi hazırlayarak kendi hazırlamış olduğum kod'ları paylaşmak istiyorum.Rom iki şekilde editlenebilir.

    1-BASİT EDIT
    Basit edit genellikle rom'un sistem ayarları ve çekirdeği oynanmaz daha çok görsel öğeler değiştirilir.Basit edit'de ana geliştirme seçeneği rom'un içinde bulunan dosyaların ismini değiştirmeden içeriğini değiştirmek ile alakalıdır.Örnek vermek gerekirse "bootanimation.zip" dosyasının ismini değiştirmeden içine girip içindeki resimleri değiştirdiğinizde boot animasyonu değişecektir.
    2-GELİŞMİŞ EDIT
    Gelişmiş edit için mutlaka bilgi birikimi şarttır.Kimse şu şöyle yapılacak bu böyle yapılacak diyemez çünkü işin bir standartı yoktur,ne yapılması gerekiyorsa o yapılmalıdır.Kullandığımız cihazların donanımlarının yazılımsal olarak desteklenmesi gereklidir.Eğer yazılımsal destekden yoksun bırakırsanız donanım sadece "boş bir metal parçaları dizinidir" ve çatal'dan daha fazla bir şey yapamaz.Üniversite yıllarımda motorsiklete merak salmıştım herkez gibi ilk motorsikletimi 2001'yılında üniversitede aldım 99 model bir yamaha yzf r6 idi.Motorsiklet fabrika çıkışı 120 Beygir'di,işin içene girince motorun aslında 160 beygir güç üretebileceğini öğrendim bir süre sonra motorsikletimi 160 beygire çıkartmayı başarabilmiştim.Hemde hiçbir parça takmadan sadece yazılım kullanarak.
    Motorsikletim 3 ay sonra motor sardı ve kullanılamaz hale geldi.Sebebi donanımı fazla zorlamaktan başka bir şey değildi.Atomu parçalayamamıştım ama o gün yeni bir şey öğrendim."Atomu parçalamayacaksan over clock'dan uzak duracaksın"
    Kullandığımız tüm elektronik cihazlar üretici tarafından daha uzun ömürlü olması için kısıtlanır.Bu kısıtlamalar yazılım ile açılabilse bile cihazın ömrünü kısaltacaktır.Donanım üzerinde yazılımsal yapacağınız her değişiklik + yönde olmayabilir.Rom'un kernel'li bu işe yarar.Cihazın saat hızı ram veri yolları gibi donanımsal bir çok emir dizini bu dosyaların içindedir içinde yapacağınız değişiklikler cihazın donanımın hasar göremesini sağlayabilir.


    EĞER İLK ROMUNUZU YAPACAKSANIZ NE YAPARSANIZ YAPIN DOSYALARIN ADINI DEĞİŞTİRMEYİN SADECE İÇERİĞİNİ DEĞİŞTİRİN.KENDİ YAPIM ROMLARINIZ KENDİ İNSİYATİFİNİZDEDİR,HERHANGİ BİR SORUMLULUK KABUL ETMEM.

    a-Basit Edit öncesi ihtiyaç duyacağımız bazı programlar.
    Yazılım hazırlama işinde anahtar işletim sistemidir.Sıfır kilometre bir işletim sistemi çok daha iyi olacaktır.Tavsiyem eğer bu işe girecekseniz önce bilgisayarınıza ikinci bir işletim sistemi kurun.Nasıl mı?Örneğin bilgisayarınızın c: sürücüsünde windows 7 ultimate yüklü o zaman d : sürücüsüne window 8 yükleyin.Hem iki işletim sisteminiz olur hemde geliştirme aşamalarınızı temiz bir sistemde yapma şansınız olur.

    7zip : Clockwork mod için yazılmış romları bu program ile açabilir tekrar zipleriz.Ayrıca .apk'lerin içeriğini göreme konusunda'da oldukca başarılı bir program.
    SDK : SDK'yı artık hepimiz biliyoruz.Android için program yapma programı.
    JDK :Android pc'de java tabanı kullanır bu tabanı sağlayacak programımız JDK.
    GIMP : Gimp android resimleri üzerinde manipilasyon yapacağımız bir programdır.Gimp yerine biliyorsanız Photoshop'da kullanılabilir.
    Notepad++ : Android içindeki kod'ları düzenleyebileceğiniz başarılı bir program.
    Dsixda's Kitchen : Genel olarak ROM'un düzenlenmesi gereken yerlerde (image dosyası hazırlanması gibi)kullanılır.
    Apktool : Yine apk2ler üzerine kod yazabileceğimiz bir program.
    Motorola driver : Rom'u sorunsuz flaslamak için kullanılabilir.
    CODE : http://developer.android.com/index.html eklemek istediğiniz code'lara ulaşabilirsiniz.
    Programların hepsi "google"da var link vermeye lüzüm görmedim.Biraz araştırarak en güncel versiyonları indirebilirsiniz.

    b-Romunuza program ekleme
    "data/app"Klasörü sisteme kurulacak programları barındırır.Extra sisteme yükleme istediğini programları bu klasöre atmanız kafi gelecektir.

    c-Sistem dosyalarını tanılama
    System Klasörü :Rom'un merkezidir,üzerinde yaptığınız yanlış bir değişiklik rom'u kullanılamaz hale getirir.
    system/app : Bu klasör işletimin sistemine ait olan programları kapsar "data/app"ile karıştırmayın.Bu bölüme attığınız programlar sonradan sistem üzerinden silinemez.
    system/fonts :sistem font'larını barındıran dosyadır.Android fontları dışında font kullanamak sistemi bozar.O yüzden yükleyeceğiniz fontların android fontu olduğunu doğrulayın.Türkçe ve sağlam bir font isterseniz "UBUNTU"fontunu tavsiye ederim.
    system/framework :Rom'daki bütün simgeler bu klasördedir.İçindeki dosyaları değiştirdiğinizde iconlarında değişecektir.Özellikle "framework-res.apk"dosyasını incelemenizi tavsiye ederim.Ama dikkat edin dosya isimlerini değiştirmeden dosyaların içeriğini değiştirin.Bu dosyayı 7zip'ile açabilirsiniz.
    system/media : Media dosyalarını barındırır zil sesi vb.Stock yapmak istediğiniz dosyaları yer değiştirebilirsiniz.
    build.prop dosyası :Bu dosya'da sistemin özellikleri rom'un yapımcısı gibi bilgiler yer alır.Düzenlediğinizde isminizi yada romunuzun versiyonu "hakkında"bölümünde görebilirsiniz.

    örnek build.prop dosyasını aşağıdaki linkten inceleyebilirsiniz.
    SPOILER (click to view)
    begin build properties
    # autogenerated by buildinfo.sh
    ro.build.id=ITL41F
    ro.build.display.id=################## BU BÖLÜME SÜRÜM NUMARASINI YAZIYORUZ
    ro.build.version.incremental=eng.buildslave.20120125.000247
    ro.build.version.sdk=15
    ro.build.version.codename=REL
    ro.build.version.release=4.0.3.1 BU BÖLÜME VERSİYON NUMARASINI YAZIYORUZ
    ro.build.date=Wed Jan 25 00:03:06 PST 2012
    ro.build.date.utc=1327478586
    ro.build.type=userdebug
    ro.build.user=buildslave
    ro.build.host=cyclone
    ro.build.tags=test-keys
    ro.product.model=MZ601
    ro.product.brand=MOTO
    ro.product.name=RTCOREEU
    ro.product.device=########BU BÖLÜME KENDİ ADINIZI YAZABİLİRSİNİZ
    ro.product.board=
    ro.product.cpu.abi=armeabi-v7a
    ro.product.cpu.abi2=armeabi
    ro.product.manufacturer=motorola
    ro.product.locale.language=en
    ro.product.locale.region=US
    ro.wifi.channels=
    ro.board.platform=tegra
    # ro.build.product is obsolete; use ro.product.device
    ro.build.product=umts_everest
    # Do not try to parse ro.build.description or .fingerprint
    ro.build.description=umts_everest-user 3.2 H.6.5-17-3 1321319666 ota-rel-keys,release-keys
    ro.build.fingerprint=MOTO/RTCOREEU/umts_everest:3.2/H.6.5-17-3/1321319666:user/ota-rel-keys,release-keys
    ro.build.characteristics=tablet
    # end build properties
    # RIL and telephony related settings
    rild.libpath=/system/lib/libmoto_ril.so
    persist.ril.mux.ttydevice=/dev/ttyUSB2
    persist.ril.mux.noofchannels=8
    persist.ril.modem.mode=2
    persist.ril.modem.ttydevice=/dev/ttyUSB4
    persist.ril.features=0x34
    ro.telephony.call_ring.multiple=false
    ro.telephony.default_network=0
    persist.ril.tcmd.ttydevice=/dev/ttyUSB3

    # The OpenGL ES API level that is natively supported by this device.
    # This is a 16.16 fixed point number
    ro.opengles.version = 131072

    # Indicate carrier OTA SP number schema
    # refer to frameworks/base/telephony/java/com/android/
    # internal/telephony/cdma/CDMAPhone.java for the schema:
    #ro.cdma.otaspnumschema=SELC,1,80,99

    # UA profile
    ro.mot.hw.uaprof=http://uaprof.motorola.com/phoneconfig/motomz601/Profile/motomz601.rdf

    # BP flex version
    ro.build.bp.config.version=UCAEVEUB1B8EU03F.0R

    # Google use the system property to control if allow device to be unlock without SIM
    keyguard.no_require_sim=true

    # Enable APN authentication for a specific MCCMNC, "ALL" for all MCCMNC
    umts.apn_authentication.enable=ALL

    drm.service.enabled=true


    #
    # ADDITIONAL_BUILD_PROPERTIES
    #
    ro.com.android.dateformat=MM-dd-yyyy
    ro.config.ringtone=Ring_Synth_04.ogg
    ro.config.notification_sound=pixiedust.ogg
    ro.config.alarm_alert=Alarm_Classic.ogg
    wifi.interface=wlan0
    wifi.supplicant_scan_interval=15
    dalvik.vm.heapstartsize=5m
    dalvik.vm.heapgrowthlimit=48m
    dalvik.vm.heapsize=256m
    dalvik.vm.lockprof.threshold=500
    ro.setupwizard.mode=OPTIONAL
    dalvik.vm.dexopt-flags=m=y
    net.bt.name=Android
    dalvik.vm.stack-trace-file=/data/anr/traces.txt



    ŞİMDİLİK BU KADAR DEĞİŞİKLİK KAFİ İLERLEYEN GÜNLERDE EDIT İÇİN DAHA DETAYLI BİLGİLER İLE DEVAM EDECEĞİZ.


    ÖNEMLİ HATIRLATMALAR
    1-Mutlaka kendi cihazınıza uygun rom'u editleyin.Her rom'un kernel yapısı farklıdır.
    2-Dosya isim ve uzantılara dikkat edin.Default wallpaper'ı değiştirirken uzantısını ve ismini bozmayın sadece fotoğrafı değiştirin.
    3-Yaptığınız çalışmaları sık sık kaydedin ve mümkünse 1'er saatlik çalışmaları cihaza yükleyerek hatamı yaptınız doğrumu gidiyorsunuz kontrol edin.Clockworkmod yüklü ise romunuzu 7zip ile zipleyip sdkart'dan direk kurabilirsiniz.
    4-Yaptığınız çalışmaların dosya boyutları özellikle resimlerim boyutlarına dikkat edin.Cihazınız 640x480 ise kullanacağınız wallpaper bu ebat'da olsun,tutup daha fazla yada daha az çözünürlükte bir fotoğraf kullanmayın.
    5-İconların ebatlarına dikkat edin 25x25 pixel çalışmayı 35x35 kaydetmek ekran görüntüsünün kaliteli bir hale gelmesini sağlamaz.
    6-Rom'a ekleyeceğiniz dosyaları abartmayın.Rom ne kadar küçük olur ise o kadar iyidir.Tutup 320 kpbs 15mb mp3 zil sesi atmayın ne gerek var kardeşim :)
    7-Gelişmeye açık olun internet süper bir kaynak ne ararsanız var devamlı gelişmeye ve yeni şeyler öğrenmeye istekli olun.


    Edited by emresarica - 6/3/2012, 17:20
     
    .
  2. border force
        Like  
     
    .

    User deleted


    Sticky yaptım Emre kardeşim.Teşekkürler :)
     
    .
  3. Semseddin
        Like  
     
    .

    User deleted


    Eline sağlık emre, faydalı ve güzel bir rehber.
     
    .
  4. beefytr
        Like  
     
    .

    User deleted


    elinize sağlık...
     
    .
  5.     Like  
     
    .
    Avatar

    Uzman Modder

    Group
    Moderatör
    Posts
    757
    Reputation
    0
    Location
    Nazilli

    Status
    Offline
    Rom editlemek isteyen arkadaşlar için faydalı bir bilgi olmuş :thumb_yello.gif:
     
    .
  6. B23Guven
        Like  
     
    .

    User deleted


    Mount, Unmount, Dalvik Cache ve Odex-Deodex nedir bunlar hakkında bilgisi olan var mı ?
     
    .
  7. Semseddin
        Like  
     
    .

    User deleted


    Linux'de sisteme disk bağladığın zaman mount, çıkardığın zaman unmount olur. Android terminolojisi için aşağıdaki konuya bakabilirsin.

    https://motomodtr.forumcommunity.net/?t=47304109
     
    .
  8. menem
        Like  
     
    .

    User deleted


    hocam mesela ilk etapta system/app içindeki apk ları çıkartıp farklı apklar yüklemeyi en basitinden gösterebilir misiniz?
    ben ilk costom rom indirip içindeki apklardan mesela birini çıkatıp istediğimi attım örnek googlecamera yerine samsungcamera2 attım ama simgeye tıklayınca hata verdi durduruldu diyor
    system/app içindeki apk ları içinden silmek yetiyor mu veya farklı bir apk attığımda buraya dosyayı (apk uzantılı dosya) atmamız yeterli mi?
    neden böyle bir hata verdi yani biraz detay verebilir misiniz bu konuda?
     
    .
  9. üstad
        Like  
     
    .

    User deleted


    QUOTE (menem @ 25/12/2013, 16:00) 
    hocam mesela ilk etapta system/app içindeki apk ları çıkartıp farklı apklar yüklemeyi en basitinden gösterebilir misiniz?
    ben ilk costom rom indirip içindeki apklardan mesela birini çıkatıp istediğimi attım örnek googlecamera yerine samsungcamera2 attım ama simgeye tıklayınca hata verdi durduruldu diyor
    system/app içindeki apk ları içinden silmek yetiyor mu veya farklı bir apk attığımda buraya dosyayı (apk uzantılı dosya) atmamız yeterli mi?
    neden böyle bir hata verdi yani biraz detay verebilir misiniz bu konuda?

    ben de acemiyim de hocam, emre hocanın dediği gibi ismini değiştirmeden mi attın yoksa farklı isimde mi attın? (yani samsungcamera2 apk sının ismini googlecamera yapıp mı attın?)
     
    .
8 replies since 6/3/2012, 12:29   11884 views
  Share  
.