Jumat, 20 April 2012

[GK-Konsep/ROM-DEV] Android Developer ROM







Agan punya Android? Pasti tau tentang xda-developers.com donk pastinya? Disini ane akan ngasih gambaran buat yang ingin membuat ROM sendiri pertama udah tau belum istilah-istilah ini ?


  1. ROM                  = Sistem Operasi Android biasa juga dikenal dengan Firmware
  2. Stock ROM       = ROM Official dari bawaannya
  3. Shipped ROM   = Hampir sama ama Stock ROM ini lebih dikenal di HTC device seperti RUU
  4. Custom ROM    = ROM modifikasi oleh pihak ke 3 (bisa personal maupun team seperti      CyanogenMod, Modacco, MIUI yang terkenal itu) dengan tujuan untuk fixing bug, meningkatkan performance, memperirit battery dengan tweak yang ada di dir : etc/  oleh para devnya ataupun direct tweak dari kernel.
  5. Kernel                 = Core(inti) dari sebuah ROM yang menghubungkan antara software dan hardware berjalan. Tanpa ini HH(Device/perangkat) gak akan booting. 
  6. zImage                = Ini adalah image/bagian si kernel  atau bisa juga dikatakan Kernel Control 
  7. Cooking              = Masak gan, bukan masak makanan loh .. tp masak ROM istilah keren-nya sih BUILDING ROM.
  8. Kitchen               = Alat masaknya/ tools atau dapurnya gan softwarenya The Dsixda’s ROM Kitchen (based on C )
  9. Modem/Radio    = ini bentuk ekstensinya .bin dan ini untuk pengatur sinyal, radio, internet,  Bluetooth dll.
  10. Root                     = Akses SU (admin) biar bisa utak atik system di HH kita kalo udah biasa ama Linux taulah sudo su hhe ada di dir: /xbin (berupa script)
  11. ADB                     = Android Debug Bridge Cari tau sendiri gan :P
  12. Init.d                    = direktori juga berisi tweak yang ter-autogenerate secara langsung(tergantung kernel dan tergantung scriptnya juga ya :D )
  13. Deodexed            = Deodexed ROM berarti menghapus file .odex yang ada di system bisa sih secara manual tp om Dsixda kan udah buat program feature buat deodexing ROM hhe. Gunanya apa?biar framework / theming activity bisa dijalanin kalau ROMnya masih berstatus ODEXED dijamin BOOTLOOP :P 
  14. Bootloop             = Handphone engga mau masuk ke Home Screen atau muter terus di      Bootanimation 



Kalau dibedah dari ROM dan agan ingin buat ROM yang perlu agan perhatiin ni dir :

/system/app:
Didalamnya berupa aplikasi aplikasi built-in dari ROM bisa agan taruh disini aplikasi aplikasinya tapi untuk Core Application seperti :
Contact.apk
Bluetooth.apk
Phone.apk
Dan lain lain jangan diganti sembarangan dari base ROM (Stock ROMnya) gak semuanya kompatibel harus di porting dulu( caranya port ?? itu nanti gan ini aja belum selesai hhe :P)

/system/bin:
berisi file file pengatur sensor gan, contoh :
brcm_patchram_plus → bluetooth dhcpcd
netd →  wifi hotspot controller
rild → To get the network working
servicemanager → To get the sensors working
vold → To get the vold working

/system/etc:
the entire firmware folder to get wifi and sensors working
the init.d folder to tweak the rom
the permissions folder, added missing xmls
the entire wifi folder to get the wifi working
gps.conf → To improve the GPS
hosts → To fix ads
media_profiles.xml → To fix problems with camera and camcorder
vold.conf and vold.fstab → To fix vold, if you don't change them the rom won't boot.

/system/framework:
Added com.google.android.maps.jar to fix problems with the apps which uses GMaps.
You can find there the files to tweak with smali to get some stuff working. For example, if you want to get the prox. sensor working well, you need to edit the PowerService class in services.jar.

/system/lib:
(berisikan lib –lib untuk hardware makanan ane disini gan :P)
the entire egl folder
the entire hw folder
the entire modules folder
all the libOmx* .so files → To get the camcorder working
all the libaudio* .so files → To get the audio working (if you don't change them, it won't boot)
libandroid.so
libauth.so
libcamera.so and libcameraservice.so → These depends on the ROM.
libcm, libcommondefs.so, libdiag.so, libdll.so, libdsm.so, libdss.so, libeffects.so, libg*.so
libhardare_legacy.so
libloc*.so
liblog.so
libmedia.so
libmmgsdilib.so, libmmipl, libmmjpeg.so, libnfc_ndef.so, libnv.so
libms3c_yamaha.so → To fix the sensors
liboemcamera.so → To fix the camera & camcorder
liboncrpc.so, libpbmlib.so, libqmi.so, libqueue.so
libril*.so
librtp_jni.so
libsensor*.so
libspeech.so
libsqlite_jni.so
libstagefright_*.so → These are usually not required
libt99.so
libvoicesearch.so
libwebcore.so
libwms.so
libwmsts.so

/system/sd:
The placeholder file. → To get sd working

/system/usr:
the entire 'keychars' and 'keylayout' folders

/system/vendor:
The entire folder.

(Kalau kurang lengkap nanti ane tambahin lagi ^^)
*Concept progress 70%

PENTING :
1.       Folder diatas adalah folder essential dan system structurenya
2.       Kalo ada perbedaan file (wajar, ane cuman nerapin di Samsung Device)
3.       Untuk Building ROM butuh waktu banyak + mental yang cukup untuk mengorbankan HHnya di eksploitasi :P
4.       I’M NOT RESPONSIBLE jadi yang agan lakukan agan yang tanggung jawab sendiri nantinya

Untuk Technical Detail Building ROM saksikan episode selanjutnya :D Maksud Ane tunggu updatenya yah :D

Santai Dulu Gan nih kek dia aja santai  :








 ANDROID-DEV ROM NEXT EPISODE

0 komentar:

 
© 2011 ANDROID-DEVELOPER INDONESIA | Except as noted, this content is licensed under Creative Commons Attribution 2.5.
For details and restrictions, see the Content License | Recode by Ardhiansyam | Based on Android Developers Blog