Cara merakit sendiri dari firmware yang sudah jadi. Android, mod firmware buatan sendiri. Mod firmware buatan sendiri

Halo Habr!

Beberapa tahun yang lalu, ketika saya pertama kali diperkenalkan dengan Android, saya mendengar dari seorang rekan kerja bahwa Android menyediakan kemampuan untuk menginstal firmware yang dimodifikasi atau buatan sendiri. Sejujurnya, saya jauh dari itu saat itu. Dan bahkan setengah tahun yang lalu saya hampir tidak tertarik pada hal-hal seperti itu. Jauh di lubuk hati saya, saya yakin: apa yang dilakukan pabrikan memang ditujukan untuk penggunaan normal.

Bayangkan kekecewaan saya ketika saya membeli ponsel dari China, yang pengaturan pabriknya melarang penggunaan Google, Skype, Facebook, dan aplikasi lainnya. Pada prinsipnya, ada kemungkinan untuk menutup mata terhadap beberapa hal, tetapi ketika ponsel saya tidak memerlukan penggunaan akun Google, saya berjanji untuk mencari tahu apa pun yang terjadi pada saya.

Setengah tahun telah berlalu dan firmware khusus saya berhasil digunakan di seluruh dunia.

Rangkaian artikel kali ini akan membahas cara melakukan reverse programming untuk Android, mengimplementasikan patch, tweak dan mod.

Pembukaan

Jadi! Mari kita definisikan dulu konsep yang akan digunakan diberikan artikel. Namun, pemahaman Anda yang biasa mungkin sangat berbeda.

Tambalan- mengubah atau mengganti kode program yang ada untuk memodifikasi algoritma program.
Maud- sebagai aturan, menambahkan fungsionalitas tambahan ke kode program yang ada tanpa mengubah algoritma.
Sesuaikan- peningkatan fungsionalitas program untuk memfasilitasi akses ke parameter sistem.

Saya juga ingin mencatat bahwa semua contoh akan diambil untuk ponsel HTC, tetapi ini tidak berarti bahwa informasi ini tidak dapat digunakan pada ponsel lain.

Mempersiapkan lingkungan

Saya dapat melakukannya tanpa instruksi rinci tentang cara menggunakan perangkat lunak ini atau itu. Jika Anda tertarik dengan artikel ini dan telah membaca sejauh ini, saya harap Anda sudah menjadi pengguna berpengalaman dan memiliki pengalaman menggunakan, atau setidaknya bereksperimen di bidang ini. Ada banyak instruksi, artikel dan hasil tes di domain publik, seperti di Habré. Saya juga akan melakukannya tanpa menjelaskan beberapa istilah, jika tidak artikel akan menjadi sangat panjang dan membosankan. Kami akan menulis langsung pada intinya saja. Saya yakin Anda sudah lama berada di hari Rabu. Jika tidak, saya sarankan mengunduh dan menginstalnya.

1 . SDK Android. Ini adalah lingkungan pengembangan aplikasi untuk Android. Untuk melakukan modifikasi pasti kita harus mengecek kode program kita. Lingkungan pengembangan adalah yang terbaik yang bisa kita gunakan.
2 . Dapur Android. Utilitas ini memungkinkan Anda bekerja dengan gambar partisi sistem firmware resmi atau tidak resmi.
3 . JD-GUI. Dekompiler kode Java. Saya ingin segera mencatat bahwa ini adalah dekompiler terbaik dalam hal kemudahan penggunaan.
4 . Dekompiler DJ Java. Dekompiler lain, atau disassembler, demikian beberapa orang menyebutnya, kode program bahasa Java. Ini tidak nyaman untuk digunakan, tetapi ia mem-parsing kode yang terkadang tidak dipahami oleh JD-GUI.
5 . kecil. Pembongkaran lain, tapi kali ini kode dalvik. smali diperlukan untuk pembongkaran, dan backsmali diperlukan untuk merakit kode.
6 . dex2jar. Sebuah utilitas untuk mengonversi file yang dapat dieksekusi kode Dalvik.

Konversi firmware

Tentu saja, firmware yang Anda miliki di ponsel dari pabrikan dioptimalkan untuk mengurangi konsumsi daya. Agar firmware dapat dimodifikasi, firmware harus diubah ke dalam format yang memungkinkan kode untuk dimodifikasi. Android Kitchen digunakan untuk ini. Tentu saja, Anda dapat melakukannya dengan tangan Anda, seperti yang saya lakukan sebelumnya sampai saya menemukan “dapur” ini. Anda dapat membaca di Internet cara menghapus area sistem dari telepon, menginstal lingkungan, dan membuat firmware DEODEX. Jika Anda belum memahami apa pun, saya rasa ada baiknya Anda menunda membaca artikel ini sampai Anda mendapatkan cukup pengalaman.

Setelah firmware berubah dari versi yang dioptimalkan (ODEX - kode eksekusi dalvik yang dioptimalkan, jika ingatan saya benar) ke DEODEX (yaitu, TIDAK dioptimalkan), semua file yang dapat dieksekusi siap untuk dimodifikasi.

Modifikasi langsung

Membuat tambalan
Seperti yang sudah saya katakan, ponsel saya awalnya dilarang menggunakan Google. Yah, bagaimanapun juga, Anda tidak dapat membuka Playstore, Anda tidak dapat membuat akun, buku telepon tidak terlalu sinkron. Mengapa Anda membutuhkan Android seperti itu? Setelah lama menggali logcat perangkat itu sendiri, saya menemukan entri yang mengatakan bahwa penggunaan Google dilarang. Hal yang paling merepotkan tentang Android adalah Anda melihat log, tetapi Anda tidak tahu aplikasi sistem mana yang menghasilkannya. Untuk mengetahui dari mana kaki saya berasal, saya harus membuang semua aplikasi sistem untuk membongkar kode Java. Butuh banyak waktu, tapi saya tetap menggunakan pekerjaan yang saya lakukan saat menganalisis dan menemukan kode yang tepat. Langkah-langkah untuk mendapatkan alat tersebut adalah sebagai berikut:
1 . Buat DEODEX dari semua firmware
2 . Firmware DEODEX baru Anda perlu dirakit dan di-flash ke ponsel Anda. Cara melakukannya adalah topik artikel lain.
3 . Dari setiap file yang terletak di /system/framework, ekstrak file class.dex dan ubah menjadi JAR menggunakan dex2jar.
4 . Buka setiap JAR yang dihasilkan di JD-GUI dan simpan kembali ke dalam kode sumber
5 . Buka paket kode sumber dari arsip.

Pada akhirnya, saya mendapatkan folder sebanyak file JAR di /system/framework, dan setiap folder memiliki struktur kode sumber Java.
Melalui manipulasi sederhana, saya dengan cepat menemukan tempat yang menghasilkan entri di logcat.

Kami tidak akan mempertimbangkan keseluruhan logika pelarangan tersebut, karena setiap kasus adalah cerita yang terpisah. Saya harus menghabiskan beberapa jam sebelum menemukan di mana pemeriksaan dilakukan, membuat diagram blok algoritma di kepala saya dan memahami ke mana harus pergi untuk sedikit “merusak” algoritma.

Ternyata sederhana. Ada subrutin yang, berdasarkan konstanta yang telah ditentukan sebelumnya, ketika dihubungi, menjawab apakah telepon itu milik China atau bukan.

Kodenya ada di dalam file HTCExtension.jar, dan kelas yang berisi subrutin ini berada

Membongkar dan menganalisis file asli
1 . Pertama, kita perlu mengambil file DEODEX JAR asli, yang bertanggung jawab atas bagian kode yang kita perlukan. Dalam kasus kami HTCExtension.jar.
2 . Buka dengan pengarsip apa saja dan keluarkan class.dex dari sana
3 . Gunakan konverter dex2jar untuk mengonversinya menjadi file JAR. Perintah: dex2jar.bat class.dex
4 . Buka file class_dex2jar.jar yang dihasilkan di JD-GUI.
5 . Ya, paling sering JD-GUI mendekompilasi kode tidak seperti yang terlihat aslinya, ini dapat dimengerti, tetapi cukup mudah dibaca. Dalam kode sumber kita melihat bahwa subrutin memeriksa parameter proyek dan tanda bahasa firmware. Dalam kasus kami yang malang, TRUE dikembalikan.
boolean statis publik isChina() ( if ((HtcBuildFlag.Htc_PROJECT_flag == 216) || (HtcBuildFlag.Htc_PROJECT_flag == 218) || (HtcBuildFlag.Htc_PROJECT_flag == 23)); while (((HtcBuildFlag.Htc_PROJECT_flag == 1) && (2 == HtcBuildFlag.Htc_LANGUAGE_flag)) || (HtcBuildFlag.Htc_PROJECT_flag == 27)) mengembalikan nilai benar;
6 . Untuk membuat patch, kita perlu membongkar kode Dalvik itu sendiri. Untuk ini kami menggunakan baksmali. Cara paling mudah adalah dengan membuat folder terpisah dan menyatukan tiga file di sana: HTCExtension.jar, smali.jar Dan baksmali.jar. Berikan perintah java -Xmx512m -jar baksmali.jar -a -d -o HTCExtension -x HTCExtension.jar

Ini adalah API untuk versi Android Anda. Untuk JB itu 16
- folder tempat semua kerangka firmware berada.

Dalam kasus saya, itu adalah perintahnya
java -Xmx512m -jar baksmali.jar -a 16 -d S:\dev\Android\Android-Kitchen\WORKING_JB_15\system\framework -o HTCExtension -x HTCExtension.jar
7 . Di folder yang baru kami buat, folder HTCExtension muncul, dan di dalamnya file kami dengan kode Dalvik.
8 . Menemukan file di sepanjang jalur \com\htc\util\contacts\BuildUtils$Customization.java dan lihat kodenya:
.method public static isChina()Z .registers 3 .prologue const/4 v0, 0x1 .line 276 sget-short v1, Lcom/htc/htcjavaflag/HtcBuildFlag;->Htc_PROJECT_flag:S const/16 v2, 0xd8 if-eq v1 , v2, :cond_13 sget-short v1, Lcom/htc/htcjavaflag/HtcBuildFlag;->Htc_PROJECT_flag:S const/16 v2, 0xda if-eq v1, v2, :cond_13 sget-short v1, Lcom/htc/htcjavaflag/HtcBuildFlag ;->Htc_PROJECT_flag:S const/16 v2, 0x17 if-ne v1, v2, :cond_14 .line 297:cond_13:goto_13 return v0 .line 283:cond_14 sget-short v1, Lcom/htc/htcjavaflag/HtcBuildFlag;-> Htc_PROJECT_flag:S if-ne v1, v0, :cond_1d .line 285 const/4 v1, 0x2 sget-short v2, Lcom/htc/htcjavaflag/HtcBuildFlag;->Htc_LANGUAGE_flag:S if-eq v1, v2, :cond_13 .line 291:cond_1d sget-short v1, Lcom/htc/htcjavaflag/HtcBuildFlag;->Htc_PROJECT_flag:S const/16 v2, 0x1b if-eq v1, v2, :cond_13 .line 297 const/4 v0, 0x0 goto:goto_13 .end metode
9 . Menakutkan, bukan? Tidak ada yang jelas. Tapi ini adalah masalah yang bisa diperbaiki. Setelah membuat beberapa tambalan Anda sendiri dan memperoleh pengalaman, Anda dapat dengan mudah memodifikasi kode tanpa alat pihak ketiga. Dalam kasus kami, dalam kode ini
.prologue const/4 v0, 0x1 memberikan nilai 1 pada variabel v0, yaitu TRUE. Lalu ada berbagai macam pemeriksaan, dan jika ponselnya bukan bahasa China, maka nilai variabelnya berubah:
.line 297 const/4 v0, 0x0 goto:goto_13
10 . Cara termudah untuk menyelamatkan bapak demokrasi Rusia adalah dengan mengubah kode berikut:
.prologue const/4 v0, 0x0 , yaitu mengubah nilai variabel dari 1 menjadi 0. Artinya, apa pun yang terjadi, nilai FALSE akan selalu dikembalikan dan di JD-GUI kodenya akan terlihat seperti public static boolean isChina() ( if (( HtcBuildFlag.Htc_PROJECT_flag == 216) || (HtcBuildFlag.Htc_PROJECT_flag == 218) || (HtcBuildFlag.Htc_PROJECT_flag == 23)); while (((HtcBuildFlag.Htc_PROJECT_flag == 1) && ( 2 == HtcBuildFlag.Htc_LANGUAGE_flag)) ||.
11 . Ya, metode ini akan berhasil. Namun kami tidak mencari cara mudah - kali ini. Kedua, itu tidak terlalu indah. Saya ingin kode seperti itu
boolean statis publik isChina() ( return false; )
12 . Bagaimana kita bisa mendapatkan kode Dalvik untuk kode sumber ini? Untuk pemula kami akan melakukan sedikit trik.

Membuat kode Dalvik
1 . Buka SDK Android.
2 . Kami membuat proyek baru, dan menulis kode berikut di satu-satunya kelas pengujian kami
paket ru.habrahabr.test; tes kelas publik ( public static boolean isChina() ( return false; ) )
3 . Kami mengkompilasi proyek kami dan kemudian mengambil aplikasi yang telah dirakit dari ruang kerja.
4 . Kami meletakkan aplikasi rakitan di folder tempat kami membuang file JAR.
5 . Berikan perintah java -Xmx512m -jar baksmali.jar -a -d -o test -x test .apk
6 . Kami membongkar aplikasi yang baru dibangun ke dalam kode Dalvik.
7 . Buka file test.smali kami dan lihat kode di sana
.metode public static isChina()Z .registers 1 .prologue .line 7 const/4 v0, 0x0 return v0 .end method
8 . Selesai, kode patching sudah siap.
Menggulung tambalan
1 . Kode Dalvik dipenuhi dengan penanda yang menunjukkan baris kode di file sumber asli. Ini diperlukan ketika menampilkan kesalahan, jika ada, dalam program Anda. Kode juga berfungsi dengan baik tanpa menentukan baris.
2 . Kami menghapus baris dengan penomoran baris, menyalin dan mengganti metode (subrutin) di kami \com\htc\util\contacts\BuildUtils$Customization.java mengajukan.
.method public static isChina()Z .registers 1 .prologue const/4 v0, 0x0 return v0 .end method
3 . Simpan berkasnya. Ya, saya lupa bilang, Anda memerlukan editor biasa, misalnya Notepad++ atau EditPlus. Siapa yang suka yang mana?
Mengkompilasi dan membuat file JAR yang ditambal
1 . Dengan menggunakan backsmali, kami memusnahkan file JAR kami, dan sekarang kami perlu menyatukannya kembali.
2 . Berikan perintah java -Xmx512m -jar smali.jar -a 16 HTCExtension -o class.dex
3 . File class.dex muncul di folder kami
4 . Membuka lagi HTCExtension.jar file dengan pengarsip dan ganti yang sudah ada di dalamnya kelas.dex ke yang baru saja kita buat.
5 . Itu saja, milik kita HTCExtension.jar berisi kode program yang dimodifikasi.
Mengganti file asli dengan yang sudah dipatch
Biasanya skrip khusus dibuat untuk pengguna biasa, yang diganti melalui pemulihan. Tapi kami tidak tertarik dengan hal ini. Pertama, ini panjang dan membosankan, dan kedua, kami adalah pengguna berpengalaman dan mampu melakukan beberapa kehalusan.

1 . Anda dapat mengganti file yang berfungsi saat ini dengan perintah berikut jika Anda sudah memiliki firmware DEODEX dan memiliki akses root:

Adb push HTCExtension.jar /sdcard/HTCExtension.jar adb shell su mount -o remount -rw /system dd if=/system/framework/HTCExtension.jar of=/system/framework/HTCExtension.jar.back dd if=/sdcard /HTCExtension.jar of=/system/framework/HTCExtension.jar chmod 644 /system/framework/HTCExtension.jar rm /data/dalvik-cache/system@ [dilindungi email]@classes.dex reboot

Perintah pertama mengunggah file yang ditambal ke flash drive
Perintah ke-2 membuka shell
Perintah ke-3 memberikan akses root
Perintah ke-4 memasang sistem dalam mode baca/tulis
Perintah ke-5 membuat salinan cadangan file
Perintah ke-6 menimpa file yang ada dengan yang baru ditambal.
Perintah ke-7 mengkonfigurasi izin
Perintah ke-8 menghapus cache
Perintah ke-9 me-reboot perangkat.

2 . Terima kasih telah membaca sampai saat ini, hanya tersisa sedikit.
3 . Setelah reboot, kode patch baru Anda akan berlaku.
4 . Jika kode tidak berfungsi atau terjadi kesalahan, menggunakan kombinasi sederhana Anda dapat mengembalikan salinan cadangan.
adb shell su mount -o remount -rw /system dd if=/system/framework/HTCExtension.jar.back of=/system/framework/HTCExtension.jar rm /data/dalvik-cache/system@ [dilindungi email]@classes.dex reboot

Epilog

Ya, ada yang menganggap artikel ini terlalu spesifik, ada yang sulit dipahami, dan ada yang merasa tidak berguna. Saya sengaja menghindari detail dan ilustrasi mendalam tentang tampilan langsung dan praktiknya. Pertama, pekerjaan ini tidak akan membuahkan hasil dan hanya akan menimbulkan lebih banyak pertanyaan. Kedua, saya tidak ingin melihat banyak pengguna di forum mengeluh bahwa ponsel mereka mati.

Untuk artikel selanjutnya saya akan kasih tahu cara membuat Tweeks. Akan ada contoh penggunaan perekaman panggilan telepon otomatis menggunakan alat telepon asli. Terima kasih atas perhatian Anda.

P.S. Jika ada sesuatu yang tidak jelas atau membingungkan, ajukan pertanyaan - saya akan selalu dengan senang hati menjawab dan menjelaskan.

Jika pengguna tahu betul cara mem-flash ponsel, dan jika dia bosan dengan firmware resmi, dia selalu dapat membuatnya sendiri. Hal ini sangat mudah dilakukan jika Anda mengetahui algoritma prosesnya, apa yang dilakukan dan bagaimana caranya.

Cara membuat firmware untuk Android sendiri

Agar firmware berkualitas tinggi dan ponsel tidak berubah menjadi batu bata, penting untuk mengambil sejumlah tindakan untuk mempersiapkan pembuatan Android yang diperbarui. Anda memerlukan komputer dengan sistem operasiLinux, lebih baik dari UBUNTU. Disarankan untuk menginstal sistem 64-bit untuk Android versi baru.

Kedalaman bit ini diperlukan untuk mengubah firmware Android versi di atas 2.4.

Harddisk harus punya hingga 20 gigabyte ruang bebas. Hal ini dilakukan untuk melestarikan sumbernya.

Selain membuatnya sendiri dari sumber, ada cara untuk mengubah file yang sudah jadi.

Metode penciptaan

Untuk membuat firmware Android dari sumber, disarankan untuk mengikuti langkah-langkah berikut.

  • Memasang UBUNTU. Hanya itu yang akan menghasilkan firmware yang bagus. Anda dapat mengunduh UBUNTU di situs resminya.
  • Kemudian mempersiapkan desktop dan kosongkan ruang yang cukup, seperti dijelaskan di atas. Kemudian kita beralih ke perakitan itu sendiri.
  • Memasang program Jawa.
  • Anda dapat mendownload sumbernya dari forum 4pda.

Keuntungan membuat firmware sendiri adalah Anda dapat mengoptimalkan Android Anda sebanyak yang Anda butuhkan. Dan Anda juga dapat menghilangkan program pra-instal yang hanya menyumbatnya dan tidak digunakan. Keuntungan lainnya adalah Anda dapat mem-flash firmware sendiri dan memperbarui ponsel Anda ke versi apa pun.

Tentu saja sudah diedit perakitan selesai jauh lebih mudah untuk diri Anda sendiri. Untuk melakukan ini, Anda memerlukan:

  • Memasang OS UBUNTU.
  • Unduh program andimgtool dan rkwintools. Mereka akan membantu Anda mendekripsi data boot.img, recovery.img, system.img. dan juga mengemasnya.
  • Menemukan firmware bersih. Yang penting judulnya mengandung kata ROM. Kami memilih situs pengunduhan sesuai kebijaksanaan kami, misalnya desktoplinux.ru, atau lainnya.

Membuat firmware ponsel dari file yang sudah jadi tentunya jauh lebih mudah dan sederhana. Inilah keuntungan mengedit firmware yang sudah jadi.

Petunjuk membuat firmware Android sendiri

Bangun firmware Android dari sumber

Sebelum Anda mulai membuat firmware khusus dengan tangan Anda sendiri, disarankan untuk menginstal mesin virtual dan OS Linux di dalamnya.

Sekarang Anda perlu mencari firmware yang akan Anda modifikasi. xda-developers.com – di situs ini Anda akan menemukan firmware yang Anda butuhkan. Hal utama adalah mereka memiliki kata ROM di namanya dan bersih. Kemudian unduh dan unzip menggunakan Winrar.

Saat Anda membuka folder dengan file yang tidak di-zip, Anda akan menemukan item yang tercantum di bawah ini:


Luncurkan dapur Android. Luncurkan melalui Linux atau melalui program Cygwin. Jika Anda menjalankan Linux, masukkan perintah cd kitchen, lalu ./menu.

Sekarang membongkar programnya. Lalu pergi ke bagian 0 atau opsi lanjutan. Setelah menemukan perintah untuk meningkatkan versi Android, klik salah satu yang diperlukan. Di sini Anda menambahkan animasi, aplikasi, dan mengosongkan memori Anda sendiri. Setelah menyelesaikan langkah-langkahnya, masukkan perintah 99. Sekarang tekan membangun ROM depan bekerja map. Yang tersisa hanyalah mengambil arsip dengan output_ZIP.

Mengedit versi yang sudah selesai

Setelah mempelajari produksi firmware dari file sumber, sekarang kita akan mempertimbangkan cara memodifikasi file yang sudah jadi. Untuk mengeditnya, Anda perlu mendownload filenya, cari firmware dengan nama: ROM Android 3.0 Murni. Nama ini menunjukkan bahwa dia suci.

Setelah mengunduh file, unzip. Folder dan file di dalamnya merupakan komponen firmware. Biasanya letaknya seperti ini:

  • Metainf. Di sinilah letak semua data tentang sistem masa depan. Sertifikat, checksum, dan skrip juga ditemukan di sini.
  • sepatu bot. gambar. Ini adalah gambarnya sehingga Anda dapat mengunduh firmware dan menginstalnya.
  • Map sistem. Ini adalah Android tanpa kernel. Berikut adalah semua pengaturan sistem dan beberapa utilitas yang diinstal.

Kemudian instal perangkat lunak. Anda harus pergi ke folder tersebut / sistem/ aplikasi/ dan mengubah set utilitas. Artinya, Anda dapat menghancurkan folder dengan utilitas yang tidak Anda perlukan, atau, sebaliknya, menginstal perangkat lunak yang diperlukan. Anda dapat menginstal utilitas yang dibutuhkan sistem Android di masa depan. Untuk melakukan ini, mereka harus sudah dibongkar. Anda hanya perlu menyeret semua yang Anda perlukan ke direktori ini dan aplikasi ini akan terinstal secara otomatis.

Untuk modifikasi grafis disarankan untuk merujuk ke folder tersebut kerangka kerja/framework-res.apk. Pengguna harus mengekstrak elemen dan memasukkan dua folder di sana: res/drawable-*, tempat ia dapat mengunggah gambar dan latar belakangnya dengan resolusi .png. Dan res/layout-* - file dengan resolusi .xml akan dilampirkan di sini. Setelah manipulasi dilakukan, Anda harus mengumpulkan semuanya kembali ke dalam satu file.

Ubah animasi Atau Anda dapat menginstal yang baru dengan membuka ritsleting arsip dengan file terkait. Pengguna kemudian memodifikasi file dan mengemasnya kembali.

Jika pengguna ingin meningkatkan kinerja ponsel cerdasnya, ia harus memasukkan perintah berikut: ro.mot.buttonlight.timeout=0 – untuk menerangi tombol setelah menghidupkan ponsel. debug.sf.nobootanimation=1 – menonaktifkan animasi saat ponsel melakukan booting. Banyak di antaranya terletak di folder system/build.prop.

Ketika semua modifikasi selesai, Anda perlu mengarsipkannya dengan perintah $cd ~/rom; zip -r my-rom.zip *.

Mengedit tanpa menggunakan komputer

Untuk mengedit firmware Android tanpa menggunakan komputer, pemilik ponsel harus mendownloadnya di arsip. Luncurkan Total Commander, program ini dapat bekerja dengan paket yang diarsipkan. Buka zip paketnya.

  • Unduh program pencadangan Nandroid dari situs web dan buat salinan cadangan.

Ada pilihan lain - jika jahitannya dalam format zip.

Dalam hal ini, prosedurnya sama. Namun sebelum dan sesudah proses, Anda harus membongkar terlebih dahulu lalu mengemas file firmware tanpa kompresi. Menggunakan cadangan Nandroid, kami membuat cadangan dan menghubungkan perangkat melalui aplikasi apa pun yang nyaman.

Setiap pengguna Android memiliki gagasannya sendiri tentang seperti apa sistem operasi itu, fungsi apa yang harus dijalankannya, dan kumpulan perangkat lunak apa yang harus diinstal di dalamnya secara default. Namun, tidak semua orang tahu bahwa membuat firmware sendiri tidaklah begitu sulit. Untuk melakukan ini, sama sekali tidak perlu memahami kernel Linux, dapat mengkompilasi sumber Android, atau memahami cara kerja ponsel cerdas.

Perkenalan

Ada tiga cara membuat firmware sendiri untuk komunikator Android: 1. Menyelesaikan dan mengkompilasi sistem operasi dari sumber yang diterbitkan oleh Google atau tim CyanogenMod. 2. Modifikasi firmware bawaan komunikator. 3. Modifikasi firmware pihak ketiga dibuat menggunakan metode pertama atau kedua.

Cara pertama adalah yang paling benar dan fleksibel, namun seringkali memerlukan pengetahuan yang cukup mendalam tentang fitur-fitur Android dan kemampuan untuk mengedit sumber sistem agar dapat berfungsi di perangkat. Topik ini berada di luar cakupan artikel kami, jadi kami tidak akan mempertimbangkan untuk merakit sumber Android, tetapi akan fokus pada dua metode lainnya, atau lebih tepatnya metode ketiga.

Firmware pihak ketiga (disebut mod) ada untuk hampir semua perangkat Android yang telah beredar di pasaran setidaknya selama seminggu. Biasanya mereka sudah menyertakan semua modifikasi yang diperlukan untuk pengoperasian firmware yang benar pada komunikator, dan oleh karena itu mewakili platform yang sangat baik untuk bereksperimen dengan sistem. Mereka dapat dimodifikasi hampir tanpa bisa dikenali, memasukkan perangkat lunak apa pun ke dalam OS, mengubah tampilannya, membuat banyak pengaturan tingkat rendah menggunakan editor teks sederhana dan pengelola file. Langkah-langkah ini tidak memerlukan pengetahuan OS yang mendalam dan dapat dilakukan oleh pembaca log mana pun.

Memilih subjek tes

Jadi, mari kita asumsikan bahwa komunikator kita sudah di-root dan konsol pemulihan ClockworkMod ditulis ke area boot, yang memungkinkan Anda menginstal firmware apa pun pada perangkat tanpa batasan apa pun (kami menulis tentang cara melakukan ini di artikel “Subordinasi Total” , diterbitkan dalam edisi Oktober ][ ). Sekarang kami ingin menginstal firmware lain pada perangkat, dan bukan sembarang firmware, tetapi dengan modifikasi, pengaturan, dan perangkat lunak kami sendiri. Oleh karena itu, kita memerlukan sebuah framework yaitu firmware orang lain yang dapat bekerja secara stabil di perangkat kita. Dimana saya bisa mendapatkannya?

Habitat utama semua romodel, tentu saja, adalah forum xda-developers.com. Di sana Anda dapat menemukan semua yang Anda perlukan untuk komunikator yang menjalankan iOS, Windows Mobile, Windows Phone, dan Android. Buka situs di browser, klik bagian Forum dan cari komunikator Anda di daftar forum. Selanjutnya, buka bagian Pengembangan Android yang sesuai dan lihat dengan cermat daftar topik yang mengandung kata “” di judulnya. Lebih baik mencari firmware bersih dengan nama seperti "Android 2.3 Rom Murni" atau port CyanogenMod, meskipun, pada dasarnya, yang lain bisa digunakan (walaupun Anda mungkin harus membatalkan perubahan pembuatnya). Buka topiknya, gulir ke postingan pertama, temukan tautan unduhan di suatu tempat di akhir dan unduh ROM ke komputer Anda.

Sekarang file firmware perlu dibuka. Ini dilakukan dengan menggunakan unzip yang paling umum:

$mkdir ~/rom; cd ~/rom $ unzip ../path/to/firmware.zip

Struktur direktori umum dan file penting

Kumpulan file dan direktori yang terbentuk sebagai hasil dari menjalankan perintah sebelumnya, pada dasarnya, adalah sistem operasi Android, dan persis dalam bentuk yang akan ditempatkan di memori NAND perangkat. Tergantung pada versi Android dan imajinasi pembuatnya, ini mungkin berisi kumpulan direktori dan file yang berbeda, tetapi selalu berisi tiga objek yang diperlukan: META-INF, file boot.img, dan direktori sistem.

Direktori pertama berisi informasi meta tentang firmware, termasuk file sertifikat pembuat, manifes dengan daftar file dan checksumnya, serta skrip pembaruan yang dapat membuat file baru di memori NAND, mengubah hak akses, dan menampilkan bilah kemajuan yang dilihat pengguna selama instalasi firmware.

File boot.img berisi image boot yang menyertakan kernel Linux dan image initrd. Itu dapat dibongkar, tetapi tidak terlalu berguna bagi kami, karena hampir semua parameter sistem dapat diubah menggunakan file pengaturan dan sistem file /proc. Jika Anda memerlukan kernel yang dibuat dengan parameter khusus, misalnya dengan penjadwal BFS yang diaktifkan atau dukungan NFS, Anda hampir pasti dapat menemukannya di pengembang xda yang sama dan mem-flash-nya menggunakan ClockworkMod.


Terakhir, direktori sistem adalah intinya. Isi direktori ini mewakili sistem operasi Android tanpa kernel Linux. Ini berisi semua yang diperlukan agar OS dapat berfungsi, dan oleh karena itu Anda hanya perlu mengetahui strukturnya. Dia terlihat seperti ini:

  • aplikasi- Aplikasi pra-instal: telepon, kalkulator, kalender, dll.
  • tempat sampah-analog dengan direktori /bin dan /usr/bin di Linux. Berisi berbagai komponen sistem yang digunakan oleh komponen sistem tingkat yang lebih tinggi. Misalnya, di sinilah mesin virtual dalvikvm berada.
  • dll.- file pengaturan. Analog lengkap /etc di Linux, namun hanya digunakan oleh komponen sistem. Aplikasi Android menyimpan pengaturannya di direktori /data/data.
  • font- font. Secara default, ini hanya berisi font bermerek Droid (atau Roboto di Android 4.0).
  • kerangka- kumpulan kelas Java yang digunakan oleh sistem dan perangkat lunak Android. Ada juga file framework-res.apk yang berisi deskripsi lengkap antarmuka sistem operasi, termasuk semua file grafik.
  • lib- Perpustakaan Linux yang digunakan oleh komponen sistem tingkat rendah. Analog dari direktori /lib dan /usr/lib di Linux, ini mencakup perpustakaan standar seperti libc (meskipun Android menggunakan Bionic sendiri, bukan Glibc), libz (enkripsi gzip), libssl dan lain-lain.
  • media- file media: nada dering, suara notifikasi, suara antarmuka, dan file animasi boot OS.
  • tts- file yang diperlukan agar penyintesis ucapan dapat berfungsi.
  • usr- direktori opsional yang biasanya berisi file yang diperlukan agar perangkat lunak dapat bekerja dari direktori bin. Pada dasarnya merupakan analog dari /usr/share.
  • penjual- file yang disediakan oleh produsen perangkat. Biasanya berisi firmware biner untuk berbagai komponen perangkat keras, misalnya modul Wi-Fi.
  • xbin- direktori opsional yang berisi segala sesuatu yang tidak termasuk dalam bin. Biasanya, ini digunakan untuk menyimpan utilitas yang berguna, namun tidak diperlukan untuk pengoperasian sistem (atas, editor teks). CyanogenMod menggunakannya untuk menyimpan alat administrasi: bash, ssh, powertop, busybox, dll.
  • build.prop- file yang berisi informasi tentang build, serta berbagai pengaturan tingkat rendah.

perintah setprop

Pengaturan build.prop yang diberikan dalam artikel juga dapat diterapkan ke sistem yang sudah berjalan menggunakan perintah setprop:

# setprop debug.sf.nobootanimation 1

Kumpulan perangkat lunak sendiri

Direktori /system/app berisi semua perangkat lunak yang sudah diinstal sebelumnya di firmware. Dengan menghapus dan menambahkan paket ke direktori ini, kita dapat mengubah kumpulan aplikasi yang tersedia. Misalnya, bukan rahasia lagi bahwa peluncur Android standar (dan ADWLauncher di CyanogenMod) lambat dan memiliki banyak kekurangan. Oke, mari kita ganti dengan LauncherPro:

$ rm system/app/Launcher.apk $ wget goo.gl/U9c54 -o system/app/LauncherPro.apk

Dan itu saja. Anda tidak perlu menginstal apa pun, Anda tidak perlu melihat-lihat di mana pun, cukup masukkan aplikasi yang diinginkan ke dalam direktori - dan selesai. Meski namanya tidak penting, Android sendiri akan menemukan aplikasi yang Anda perlukan dan mengaturnya sebagai layar beranda. Dengan cara yang sama, Anda dapat memasukkan program lain ke dalam firmware atau menghapusnya dari sana.

Berguna untuk memasukkan salah satu aplikasi ke dalam firmware untuk menemukan ponsel cerdas yang hilang (misalnya mangsa), kemudian meskipun Anda mengatur ulang ke pengaturan pabrik, itu akan tetap ada di OS dan akan berfungsi. Anda juga dapat mengganti beberapa perangkat lunak sistem, misalnya menambahkan Dialer One sebagai ganti Phone.apk standar atau Go SMS sebagai ganti sms.apk.

Bagaimana dengan aplikasi sistem Linux seperti ssh server atau mc? Semuanya juga sederhana di sini. Anda dapat membuat perangkat lunak untuk Android dan prosesor ARM menggunakan kit NDK dari Google, tetapi sebagian besar aplikasi yang diperlukan telah dibuat sebelum kami. Misalnya kita ingin melakukan preinstall mc ke dalam firmware kita. Buka xda-developer dan cari Midnight Commander. Di halaman pertama kami menemukan paket apk dengan penginstal dan membongkarnya menggunakan unzip yang sama:

$cd/tmp; buka zip ~/NativnuxInstaller_1.1.apk

Kami melihat assets/kits/mc-4.7.5.4-arm.tar.jet dalam daftar file yang belum dibongkar. Ini adalah arsip tar.gz, yang dibongkar ke root sistem setelah menginstal paket apk (atau lebih tepatnya, setelah menginstal apk, meluncurkan aplikasi dan mengklik tombol Instal). Kami dapat segera membongkarnya ke dalam firmware kami dan mendapatkan mc yang sudah diinstal sebelumnya:

$ cd ~/rom $ tar -xzf /tmp/assets/kits/mc-4.7.5.4-arm.tar.jet

Sekarang, untuk meluncurkan pengelola file di perangkat, cukup buka terminal dan ketik mc. Aplikasi lain dapat didistribusikan dalam arsip zip untuk flashing menggunakan ClockworkMod Recovery. Lebih mudah lagi untuk menempatkannya di mod Anda; untuk melakukan ini, cukup buka root firmware (dalam hal ini ~/rom) dan buka paket arsip menggunakan unzip.


Penampilan

Firmware khusus paling sering dibuat untuk mengubah tampilan Android sesuai keinginan Anda. Melakukan operasi ini di Android, sekali lagi, sangat sederhana. Semua pengaturan GUI Android disimpan dalam file framework/framework-res.apk. Itu dapat dibongkar menggunakan utilitas apktool:

$cd~; wget goo.gl/hxz5l $ tar -xjf apktool1.4.1.tar.bz2 $ cd ~/rom/system/framework $ java -jar ~/apktool.jar d framework-res.apk

Hasilnya, direktori framework-res yang berisi semua file paket akan muncul di direktori saat ini. Subdirektori paling menarik di dalamnya adalah res/drawable-* dan res/layout-*. Yang pertama berisi semua elemen grafis dalam bentuk file png untuk resolusi dan posisi layar berbeda. Misalnya, drawable-land-mdpi adalah direktori dengan sumber daya grafis untuk layar resolusi sedang yang berada dalam posisi lanskap (saat layar diputar, OS beralih menggunakan file lain). Tentu saja, file apa pun dapat diedit atau diganti dengan file lain.


Direktori tata letak berisi deskripsi elemen grafis dalam format XML (sebenarnya disimpan dalam format biner AXML, tetapi apktool mengubahnya menjadi XML biasa). Format deskripsinya cukup sederhana dan mudah dimengerti, namun sulit untuk memahaminya dengan cepat, apalagi jika Anda tidak tahu di mana semuanya berada. Oleh karena itu, kami akan kembali beralih ke layanan penghuni forum xda-developer, yang telah berhasil menghasilkan banyak modifikasi berbeda untuk antarmuka grafis Android. Mereka dapat dengan mudah ditemukan menggunakan permintaan pencarian “framework-res mod device_name”.

Biasanya, mod semacam itu didistribusikan dalam bentuk file framework-res.apk yang sudah jadi, yang dapat Anda masukkan ke dalam firmware Anda. Jika Anda ingin menemukan perbedaan spesifik dalam konten, maka mod dapat dibongkar dan dibandingkan dengan resolusi kerangka kerja Anda menggunakan diff:

$ diff -R ~/framework-res \ ~/rom/system/framework/framework-res

Sayangnya, dalam kerangka satu artikel kami tidak dapat mempertimbangkan setidaknya sebagian dari struktur internal framework-res, jadi untuk informasi lebih rinci, silakan merujuk ke topik terkait di forum w3bsit3-dns.com.

Setelah melakukan modifikasi, Anda dapat membangun framework-res.apk menggunakan apktool yang sama. Namun, operasi ini memerlukan utilitas aapt dari Android SDK, yang digunakan apktool untuk akhirnya mengemas file apk. Itu juga dapat diperoleh secara terpisah:

$cd ~/bin; wget goo.gl/tC7k8

Sekarang Anda dapat membuat file:

$ cd ~/rom/system/framework $ java -jar ~/apktool.jar b kerangka-res $ cp framwork-res/dist/framework-res.apk . $ rm -rf kerangka-res

Langkah selanjutnya adalah mengubah animasi pemuatan. Itu disimpan dalam bentuk file png biasa, dikemas dalam arsip system/media/bootanimation.zip. Mari kita buka kemasannya:

$ cd /tmp $ mkdir bootanimasi; cd bootanimation $unzip ~/rom/system/media/bootanimation.zip

Didalamnya terdapat file desc.txt yang menjelaskan animasi dengan format sebagai berikut:

Lebar Tinggi FPS p Katalog Jeda Pesanan...

Bentuk standar file ini adalah:

480 800 30 hal 1 0 bagian0 hal 0 0 bagian1

Artinya gambar tersebut memiliki ukuran 480 x 800 dan frame rate (FPS) 30 fps. Berikut ini penjelasan bagian pertama animasi yang file-filenya terletak di direktori part0. Dimainkan sekali (nomor 1 setelah p). Bagian selanjutnya (bagian 1) diputar berkali-kali hingga perangkat melakukan booting. Biasanya direktori part0 berisi gambar yang sesuai dengan bagian pertama animasi, dan part0 berisi semua gambar lain yang diputar dalam satu lingkaran. Gambarnya sendiri harus berukuran sama, dan namanya harus mengandung angka dalam urutan menaik, misalnya 0001.png, 0002.png, dll.

Karena animasi pemuatan memiliki format yang sangat sederhana, maka pembuatannya cukup mudah. Cukup mengubah video menjadi gambar png menggunakan mencoder (di desc.txt Anda perlu mengatur nilai FPS menjadi 24):

$ mplayer -suara -vo png:z=9 video.avi

Tapi ini juga tidak diperlukan. Anggota forum xda-developer telah membuat begitu banyak animasi sehingga Anda tidak perlu bekerja dengan tangan sama sekali. Tautan ke animasi menarik disediakan di akhir artikel.

Pengaturan Tingkat Rendah

Hal terakhir yang ingin saya bicarakan dalam artikel ini adalah mengedit pengaturan tingkat rendah. Di Android, ada file untuk ini: system/build.prop, yang menyimpan informasi tentang pembuatan firmware dan pengaturan untuk perangkat tertentu. Dengan menambahkan baris tertentu ke file ini, Anda dapat mengubah fungsi Android, mempercepat pengoperasiannya, atau mengurangi konsumsi baterai. Di bawah ini adalah pengaturan yang paling menarik.


  1. Larangan membongkar desktop dari memori: ro.HOME_APP_ADJ=1

    Opsi ini memungkinkan Anda membuat bekerja dengan perangkat lebih nyaman karena akses instan ke desktop kapan saja. Tidak disarankan untuk perangkat dengan memori rendah.

  2. Meningkatkan kualitas file JPG yang disimpan: ro.media.enc.jpeg.quality=100

    Memungkinkan Anda membuat gambar kamera lebih jelas, namun secara signifikan meningkatkan beban pada CPU.

  3. Nonaktifkan animasi boot untuk mempercepat pemuatan sistem operasi: debug.sf.nobootanimation=1
  4. Menugaskan bagian dari pekerjaan rendering antarmuka ke GPU: debug.sf.hw=1

    Memungkinkan Anda membuat antarmuka lebih cepat dan lancar.

  5. Memblokir pemberitahuan mode debugging aktif (saat terhubung ke komputer melalui USB): persist.adb.notify=0
  6. Memperbaiki masalah dengan layar hitam yang muncul setelah panggilan berakhir: ro.lge.proximity.delay=25 mot.proximity.delay=25
  7. Nyalakan lampu latar tombol kontrol segera setelah menyalakan layar: ro.mot.buttonlight.timeout=0

Selain semua ini, banyak pengguna juga merekomendasikan penggunaan kombinasi tanda berikut:

  1. Mengurangi waktu respons layar sentuh: debug.performa.tuning=1 video.accelerate.hw=1 windowsmgr.max_events_per_sec=150
  2. Meningkatkan masa pakai baterai: wifi.supplicant_scan_interval=180 pm.sleep_mode=1 ro.ril.disable.power.collapse=0
  3. Penyesuaian modul 3G: ro.ril.hsxpa=2 ro.ril.gprsclass=10 ro.ril.hep=1 ro.ril.enable.dtm=1 ro.ril.hsdpa.category=10 ro.ril.enable =1 ro.ril.enable.3g.prefix=1 ro.ril.htcmaskw1.bitmask=4294967295 ro.ril.htcmaskw1=14449 ro.ril.hsupa.category=5
  4. Peningkatan kinerja jaringan: net.tcp.buffersize.default=4096,87380,256960,4096,16384,256960 net.tcp.buffersize.wifi=4096,87380,256960,4096,16384,256960 net.tcp.buffersize.umts= 4096,87380,256960,4096,16384,256960 net.tcp.buffersize.gprs=4096,87380,256960,4096,16384,256960 net.tcp.buffersize.edge=4096,87380,256960,4096, 163 84.256960

Semua baris ini hanya perlu ditempatkan di file system/build.prop dan disimpan.

Perakitan

Oke, kita telah membuat perubahan yang diperlukan, mengimplementasikan aplikasi kita, mengubah sistem dan sekarang kita harus membuat image OS yang siap untuk firmware. Utilitas testign akan membantu kami dalam hal ini. Pertama, Anda harus mengemas firmware menggunakan zip:

$cd ~/rom; zip -r my-rom.zip *

Sekarang Anda perlu menandatangani arsip agar Pemulihan dapat menginstalnya:

$ wget goo.gl/OyBBk $ java -classpath testsign.jar testsign \ my-rom.zip my-rom-signed.zip

Setelah itu, unggah arsip my-rom-signed.zip ke kartu memori perangkat dan matikan perangkat. Untuk masuk ke Pemulihan, hidupkan perangkat sambil menahan tombol volume bawah (prosedurnya mungkin berbeda untuk beberapa perangkat).

Sekarang pergi ke “Install zip from sdcard”, dan kemudian ke “Choose zip from sdcard”, cari my-rom-sign.zip di kartu SD dan pilih Yes. Setelah instalasi selesai, pilih “Reboot system now”.

Kesimpulan

Android adalah platform yang fleksibel, dan artikel ini tidak menjelaskan semua kemungkinan untuk memodifikasinya. Modifikasi yang lebih mendalam mungkin termasuk mengganti kernel, mengubah layar kunci dan aplikasi standar, mengaktifkan fitur seperti instalasi otomatis aplikasi pada kartu memori, memperkenalkan mekanisme skrip boot (/etc/init.d), dan banyak lagi. Kami akan membicarakan semua ini di artikel berikut.

Jika Anda ingin mencoba membuat dan mengedit firmware di Android, maka program Samsung Root Firmware Replacement akan membantu Anda membuat firmware!

Secara singkat tentang program Samsung Root Firmware Replacement dan kemampuannya

Dengan program ini Anda akan dapat:

  • Buka paket firmware Samsung
  • Dandani firmwarenya
  • Dalam mode otomatis, sematkan hak Root
  • Secara otomatis mengisi firmware dengan file Anda
  • Bekukan proyek lalu lanjutkan mengerjakannya
  • Kemas firmwarenya

Komponen yang diperlukan dan kondisi pengoperasian untuk Pengganti Firmware Root Samsung

Tinjau dan deskripsi program awal fungsi Pengganti Firmware Root Samsung

1. Masuk ke folder dengan program Samsung Root Firmware Replacementr, klik kanan untuk membuka di terminal

2. Di terminal, masukkan perintah

3. Antarmuka program akan terbuka di depan Anda

4. Jika Anda meluncurkan program untuk pertama kalinya, jalankan - Konfigurasi Pengaturan

Bekerja dengan Pengganti Firmware Root Samsung

Ayat Buka paket firmware *.tar.md5- membongkar firmware, untuk melakukan ini, pindahkan file ke folder membongkar_tar_md5, setelah itu semua file akan diekstraksi, dan file factoryfs atau sistem akan dipindahkan ke input_img

ayat Membuat *.img dari Android Anda (membutuhkan Android)- memungkinkan Anda membuat firmware dari status Android Anda saat ini. Agar item ini berfungsi, Anda harus memiliki Android yang terhubung ke PC Anda dengan USB debugging diaktifkan.

Item ini memiliki submenu

Ayat Membuat *.img dari firmware asli memungkinkan Anda mengubah firmware yang sudah jadi; untuk melakukan ini, pindahkan file IMG apa pun ke folder input_img.

Item ini juga memiliki submenu sendiri

Contoh penggunaan program Samsung Root Firmware Replacement

Dalam contoh ini, firmware dibuat dari kondisi Android saat ini

1. Hubungkan Android ke PC

2. Luncurkan programnya

3. Pilih Create *.img dari Android kamu (membutuhkan Android)

4. Pilih Hapus gambar dari Android dan ekstrak img

5. Memilih partisi tempat gambar akan dihapus

6. Tunggu 6-7 menit hingga gambar dihapus dan ditransfer ke PC.

Penting! Ponsel cerdas atau tablet Anda, serta PC Anda, harus memiliki memori yang cukup untuk mengambil gambar. Ukuran gambar dapat berkisar dari 2MB hingga 2GB

7. Setelah Anda menghapus gambar, Anda dapat memodifikasinya, jika perlu (menanamkan Root), Anda dapat mengemasnya kembali, untuk ini

8. Pilih Paket proyek di img

9. Tentukan ukuran dan nama firmware.

  • Tentukan ukuran partisi dengan cara ini: bagi ukuran blok dengan 1024 dan tambahkan huruf M ke hasilnya.

  • Nama tersebut harus sesuai dengan nama yang Anda gunakan untuk mengubahnya

11. Juga, jangan lupa untuk menyalin kernel dari Android Anda, untuk melakukan ini, gunakan item - Hapus gambar dari Android - boot.img atau zImage

12. Setelah semua manipulasi, Anda perlu merakit firmware di TAR.MD5

13 Di menu utama, pilih Paket firmware *.tar.md5

14 Firmware di program Samsung Root Firmware Replacement sudah siap, bisa

Banyak pemilik ponsel pintar dan komputer tablet pada suatu saat memikirkan cara mem-flash Android. Kebutuhan untuk mem-flash perangkat mungkin timbul karena masalah pada pengoperasian gadget. Masuk akal juga untuk memperbarui Android dalam kasus lain, misalnya, untuk meningkatkan fungsionalitas sistem operasi dan.

Apa yang harus dilakukan sebelum mem-flash Android Anda

Pendekatan yang salah terhadap masalah flashing dapat menyebabkan masalah serius pada perangkat, dan oleh karena itu Anda perlu bersiap untuk kejadian ini. Sebelum mem-flash Android, Anda harus melakukan hal berikut:

  1. Sebelum Anda mulai memperbarui sistem operasi, pastikan perangkat Anda terisi penuh. Penting untuk menghilangkan kemungkinan shutdown. Anda dapat menghubungkan gadget ke pengisi daya selama prosedur. Jika tablet atau ponsel cerdas Anda mati selama pembaruan firmware, sistem dan data akan hilang.
  2. Periksa versi sistem operasi Android terkini untuk perangkat Anda, dan cari tahu juga firmware apa yang saat ini diinstal. Anda dapat mengklarifikasi informasi ini di pengaturan perangkat di bagian “Tentang telepon”. Perhatikan versi Android, versi kernel, dan nomor build.
  3. Sekarang, berdasarkan data ini, Anda perlu mencari dan mengunduh firmware baru yang sepenuhnya sesuai dengan model ponsel cerdas atau komputer tablet Anda.

Cara flash Android menggunakan komputer

Harus dikatakan bahwa ada beberapa cara untuk mem-flash Android dan dalam artikel ini kita akan melihat yang paling umum. Mari kita mulai dengan mem-flash firmware gadget menggunakan program khusus yang sudah diinstal sebelumnya di komputer. Ada banyak aplikasi yang memungkinkan Anda menginstal OS versi baru pada perangkat Anda, tetapi kami memutuskan untuk fokus pada program Fastboot, karena aman, nyaman dan dapat diandalkan, dan juga paling cocok untuk model yang akan kami gunakan. berkedip sebagai contoh. Jadi, mari kita cari tahu cara reflash Android menggunakan Fastboot.

Catatan: program untuk mem-flash Android harus dipilih berdasarkan perangkat dari pabrikan yang Anda gunakan. Kami menyarankan Anda membiasakan diri dengan daftar program berikut berdasarkan pabrikan:

  1. Samsung - Odin
  2. Lenovo - Alat Flash
  3. HTC - Boot cepat
  4. LG - Pembaruan KDZ
  5. Sony - Flashboot
  6. Perhubungan - Fastboot.

Pertama-tama, Anda perlu mendownload aplikasi ini. Tidak akan ada masalah dalam mencari Fastboot; Anda hanya perlu mengetahui cara menggunakan mesin pencari, dan semua orang dapat melakukannya hari ini. Unduh programnya dan ekstrak ke root drive C sehingga jalur ke file terlihat seperti ini: C:\Android.


Folder “Tools” berisi utilitas yang diperlukan, dan direktori “Driver” berisi driver. Sekarang Anda perlu menghubungkan perangkat yang ingin Anda reflash ke komputer dan menginstal driver. Biasanya, perangkat secara otomatis menemukan driver yang diperlukan, tetapi terkadang hal ini tidak terjadi. Dalam hal ini, Anda perlu membuka situs web produsen ponsel cerdas atau tablet Anda dan mengunduh perangkat lunaknya. Harap pastikan bahwa firmware yang ingin Anda unduh sesuai dengan model gadget Anda. Firmware harus diunduh dalam format .zip dan ditempatkan di folder Tools yang terletak di sini: C:\Android.

Sebelum mem-flash Android, Anda perlu membuka kunci bootloader pada perangkat Anda. Proses membuka kunci bootloader akan berbeda tergantung model gadget tertentu. Buka menu Start di komputer Anda, masukkan “cmd” di bilah pencarian dan pilih program cmd.exe.


Di jendela Command Prompt, ketik cd C:\Android\Tools. Konfirmasikan perintah dengan menekan tombol Enter, setelah itu Anda akan menemukan diri Anda di direktori “Tools”.


Sekarang Anda perlu memasukkan perintah berikut: perangkat fastboot.


Jika Anda diberi kode perangkat, maka fastboot telah mengidentifikasi ponsel cerdas atau tablet Anda dan Anda dapat mulai mem-flash Android. Jika pesan “menunggu perangkat” muncul di jendela, Anda perlu mematikan gadget dan menginstal driver. Sekarang Anda perlu memasukkan perintah untuk mem-flash: fastboot update firmware_file_name.zip Setelah ini, flashing akan dimulai. Jangan lupa untuk me-restart perangkat Anda setelah pembaruan sistem operasi selesai.

Cara reflash Android melalui recovery

Cara reflash Android lainnya adalah dengan menggunakan standard recovery atau custom recovery (TWRP\CWM). Apa itu custom recovery akan kami jelaskan lebih detail di bawah ini. Singkatnya, ini adalah firmware tidak resmi. Jadi, temukan firmware yang cocok untuk Anda di Internet, unduh dan simpan ke root sistem file perangkat Anda.

Nyalakan ulang perangkat Anda ke mode pemulihan. Proses untuk memasuki mode ini mungkin berbeda-beda tergantung pada model tablet atau ponsel cerdas tertentu. Paling sering hal ini dilakukan dengan menggunakan kombinasi tombol daya dan tombol volume bawah. Setelah memasuki mode pemulihan menggunakan tombol "atas" dan "bawah", Anda perlu membuka bagian instalasi firmware dan patch dan menentukan file firmware yang sebelumnya diunduh dari Internet. Biasanya, item ini memiliki nama berikut: “terapkan pembaruan dari penyimpanan eksternal”, di TWRP – Instal ZIP, di CWM – “terapkan pembaruan dari sdcard”.

Mengikuti petunjuk di atas, Anda akan memulai flashing, setelah itu Anda perlu me-reboot gadget dan mengatur ulang pengaturan pabrik. Untuk kembali ke pengaturan pabrik, buka pengaturan perangkat Anda dan buka bagian “Privasi”, lalu klik “Reset pengaturan”. Setelah ini, Anda dapat memeriksa fungsionalitas firmware yang baru diinstal.

Cara mem-flash Android melalui ROM Manager

ROM Manager dirancang untuk melakukan berbagai tugas, misalnya Anda dapat menggunakan aplikasi ini untuk membuat cadangan sistem. Omong-omong, kami sangat menyarankan melakukan prosedur ini sebelum mem-flash firmware untuk memulihkan data nanti. ROM Manager juga dapat digunakan untuk mem-flash Android.

ROM Manager tidak akan berfungsi jika Anda belum di-root. Hak tersebut dapat diperoleh dengan menggunakan program khusus, misalnya aplikasi berikut ini sempurna: Kingo Android ROOT, Unlock Root, Framaroot atau Vroot (instruksi detailnya ada di sini). Selain itu, pemulihan khusus harus diinstal. Omong-omong, pada dasarnya, dengan menggunakan ROM Manager, Anda mem-flash perangkat melalui pemulihan, tetapi tidak seperti opsi sebelumnya, opsi ini melibatkan bekerja dengan antarmuka yang jauh lebih nyaman dan mudah dipahami.

Jadi, cari dan unduh program ROM Manager. Sekarang Anda perlu mengunduh firmware yang sesuai untuk perangkat Anda. Buka utilitas ROM Manager dan ikuti langkah-langkah berikut:

1. Tempatkan arsip firmware .zip di memori gadget Android Anda.

2. Di menu ROM Manager, buka bagian “Instal ROM dari kartu SD”.


3. Temukan arsip dengan firmware dan klik di atasnya.


4. Selanjutnya, pilih “Reboot dan Instal”. Agar dapat memulihkan sistem operasi di masa mendatang jika diperlukan, Anda perlu mencentang kotak di sebelah "Simpan ROM saat ini".


5. Di jendela berikutnya, klik "OK", setelah itu ponsel cerdas atau tablet akan masuk ke mode Pemulihan dan flashing perangkat akan dimulai.


Apa itu firmware Android khusus?

Firmware versi tidak resmi disebut custom, yaitu dibuat dari awal, atau dimodifikasi. Untuk menginstalnya, prosedur penerimaan tidak selalu diperlukan. Seperti yang sudah Anda pahami, firmware tersebut tidak ada hubungannya dengan pengembang resmi, tetapi dibuat oleh para penggemar dengan tujuan meningkatkan OS dengan menambahkan fitur tambahan dan menghilangkan kesalahan. Pada pandangan pertama, tampaknya firmware khusus menawarkan keunggulan berkelanjutan dan lebih unggul daripada versi resmi dalam segala hal. Namun, tidak semuanya sesederhana itu.

Faktanya adalah firmware seperti itu seringkali tidak stabil dan dapat menyebabkan masalah pada perangkat. Oleh karena itu, sebelum melakukan flashing Android menggunakan custom firmware, Anda perlu mempelajari review dari mereka yang sudah pernah melakukannya. Hanya setelah mempelajari secara mendetail Anda dapat mengunduh firmware dan mulai menginstalnya. Sedangkan untuk menginstal firmware tidak resmi, opsi di atas cukup cocok. Selain itu, instruksi terperinci untuk menginstal firmware khusus hampir selalu tersedia di situs web tempat firmware tersebut berada.

Perlu juga dikatakan bahwa flashing Android tidak resmi melibatkan beberapa perbedaan tergantung pada pengembang spesifiknya, oleh karena itu, pendekatan untuk mem-flash firmware akan berbeda. Jika Anda berencana menggunakan aplikasi khusus untuk mem-flash perangkat, kami sarankan Anda membiasakan diri dengan daftar program berikut menurut pabrikan:

  • Samsung - Odin
  • Lenovo - Alat Flash
  • HTC - Boot cepat
  • LG - Pembaruan KDZ
  • Sony - Flashboot
  • Perhubungan - Fastboot.

Di sinilah kami akan mengakhiri artikel ini. Kami harap Anda sekarang tahu cara mem-flash Android. Jika Anda masih memiliki pertanyaan, tanyakan di komentar atau di bagian “tanyakan pada spesialis”.

  • Sergei Savenkov

    semacam ulasan "pendek"... seolah-olah mereka sedang terburu-buru di suatu tempat