Biasanya, sebuah aplikasi tidak diimplementasikan sebagai sebuah modul tunggal karena sistem operasi telah menyediakan library yang sudah memenuhi sebagian besar kebutuhan dasar dari suatu aplikasi. Untuk mengembangkan sebuah aplikasi, seorang developer aplikasi menghubungkan kode-kode buatan mereka terhadap sebuah atau beberapa library untuk mendapatkan sebuah fitur dasar. Namun, proses menghubungkan ke sebuah atau beberapa library tersebut dapat menghasilkan sebuah file executable yang besar dan mengkonsumsi banyak sumber daya (baca: memori).
Salah satu cara untuk mengurangi ukuran file (executable) dan penggunaan memori adalah dengan mengurangi jumlah kode-kode yang dimuat sewaktu peluncuran aplikasi. Dynamic Library mengatasi kebutuhan ini. Kode-kode bisa dimuat hanya ketika dibutuhkan, yaitu sewaktu peluncuran aplikasi maupun selama aplikasi berjalan (runtime).
iOS juga mengimplementasikan penggunaan Dynamic Library ini. Begitu pun dengan aplikasi dan tweaks yang berasal dari Cydia.
Ada berapa tweaks yang ter-install pada perangkat iOS Anda, dan apa saja fungsinya?
Bukan cuma pemula, pengguna perangkat iOS yang advance sekalipun pasti punya kebiasaan gonta-ganti tweaks, baik itu untuk iseng mencari tweaks yang baru dan unik atau pun mencari tweaks yang pas sesuai dengan kebutuhan. Install yang baru, hapus yang jelek, install lagi, dan begitu seterusnya.
Masalahnya adalah, jumlah tweaks yang ter-install akan berpengaruh kepada konsumsi RAM. Mengapa demikian? Karena setiap tweaks akan memiliki sebuah file library (.dylib) masing-masing yang akah dieksekusi di background (bisa dicek di /Library/MobileSubstrate/DynamicLibraries/
). File .dylib adalah sebuah dynamic library yang sudah saya jelaskan di atas. Kalau Anda familiar dengan Windows, kira-kira hampir sama dengan file .dll yang bisa Anda temukan di direktori Program files di Windows.
Meng-install 20 tweaks yang berbeda berarti menjalankan 20 .dylib yang berbeda pula. Dan semakin banyak .dylib yang dijalankan oleh sebuah tweak, maka penggunaan memori akan semakin meningkat, dan penggunaan memori yang meningkat bisa berpengaruh terhadap konsumsi baterai.
Jadi, bagaimana cara memiliki tweaks keren tetapi konsumsi RAM tetap rendah dan baterai tetap bertahan lama?
Sederhana. Pertama, install aplikasi atau tweaks dari developer terpercaya, yang sudah dikenal luas, karena kemampuan programming mereka bisa jadi jaminan bahwa tweaks yang Anda install tidak akan buggy atau sering crash. Sebenarnya, kasus-kasus SpringBoard yang crash dan sebagainya itu seringkali disebabkan karena tweaks yang tidak diprogram dengan benar atau optimal. Yang terpenting adalah, bagaimana implementasi kode-kode dari sebuah tweak berefek pada sistem. Jika kode-kodenya bermasalah entah karena aplikasinya masih prematur atau karena developer-nya masih belum berpengalaman, bisa saja terjadi konflik antar tweaks yang berujung pada crash, safe mode atau bootloop.
Kedua, jangan install aplikasi atau tweaks bajakan. Saya rasa Anda sendiri paham benar, kalau aplikasi atau tweaks bajakan itu sudah dimodifikasi. Apanya yang dimodifikasi? Yang jelas kode-kode yang sudah dimodifikasi dari yang aslinya (tanpa sepengetahuan pembuatnya) tidak baik untuk di-install. Mungkin awalnya normal, tapi lama-kelamaan akan muncul masalah.
Mendeteksi aplikasi atau tweaks Cydia yang bermasalah tidak hanya dengan melihat efek yang muncul setelah instalasi selesai. Mungkin saja secara kasat mata bagus, tapi sebenarnya di background sedang terjadi konflik yang menyebabkan penggunaan sumber daya meningkat. Masalah baru akan kelihatan begitu Anda meng-install aplikasi atau tweaks berikutnya yang semakin memperparah keadaan. Dan memang sering kali terjadi, SpringBoard mengalami crash atau reboot paksa terjadi setelah sebuah tweaks selesai di-install. Tweak manakah yang bermasalah? Bisa jadi yang terakhir di-install, atau bisa juga yang kedua dari terakhir.
Intinya, Anda harus tahu apa yang Anda install. Kalau sebuah tweak bermasalah, jangan lama-lama, langsung saja hapus. Atau kalau mau bereksperimen, hapus tweaks secara acak untuk mengetahui sumber penyebab terjadinya crash.
By the way, jika free RAM pada perangkat Anda sisa sedikit, dan sebuah aplikasi membutuhkan RAM yang lebih, iOS cukup pintar dan tahu apa yang harus dilakukan untuk mendapatkan free RAM, dengan menutup aplikasi yang tidak aktif. Anda tidak perlu “membantu” perangkat Anda untuk melakukan pekerjaan yang sudah seharusnya ia kerjakan.