Chromium Chronicle #28: Mulai menggunakan Chrome di iOS

Episode 28: oleh Mark Cogan di Paris, Prancis (Januari, 2022)
Episode sebelumnya

Pada tahun 2022, Chrome di iOS akan merayakan ulang tahunnya yang ke-10. Chrome adalah salah satu aplikasi iOS yang paling banyak digunakan—saat ini Chrome merupakan aplikasi Utilitas nomor 2 di App Store AS.

Chrome di iOS menyediakan semua fitur Chrome hebat yang disukai pengguna kami, termasuk Sinkronisasi, Terjemahan, Samaran, Pengelola Sandi, Isi Otomatis, dan banyak lagi. Chrome di iOS juga terintegrasi dengan fitur native iOS seperti isi otomatis sandi multi-aplikasi dan seluruh perangkat.

Namun, ada satu hal utama yang membuat Chrome di iOS sangat berbeda dari semua implementasi platform Chrome lainnya.

Chrome di iOS tidak menggunakan Blink.

Karena aturan App Store Apple, Chrome di iOS harus menggunakan API platform iOS untuk mengambil dan merender konten web. Jadi, Chrome di iOS menggunakan WebKit, Nitro, dan CFNetwork tempat platform Chrome lainnya menggunakan Blink, V8, dan //net. Oleh karena itu, dan terbatasnya API yang tersedia bagi aplikasi iOS untuk berinteraksi dengan konten halaman web, banyak fitur Chrome yang menggunakan //content API diimplementasikan di Chrome pada iOS menggunakan injeksi JavaScript.

Fitur lintas platform di //components disusun untuk membagikan kode sebanyak mungkin di semua platform sekaligus menjaga dependensi //content tetap terpisah:

ls components/some_component

content/        # code with dependencies on //content.
core/           # cross-platform code with no //content dependencies.
ios/            # iOS implementation using JavaScript injection.

Perbedaan penting lainnya antara Chrome di iOS dan platform lainnya mencakup:

  • Aplikasi iOS harus memiliki satu proses, sehingga Chrome di iOS tidak dapat melakukan fork().
  • Chrome di iOS ditulis dalam Objective-C++ (campuran C++ dan Objective-C), beserta beberapa Swift.
  • Meskipun Anda dapat mengompilasi dan menjalankan Chrome di iOS langsung pada perangkat iOS, Anda juga dapat melakukan banyak pengembangan fitur di simulator perangkat yang cukup mumpuni yang disediakan Apple.

Mulai menggunakan Chrome di iOS

Yang Anda butuhkan:

  • Komputer macOS, 64-bit, yang menjalankan macOS 11.3 atau yang lebih tinggi. Apple Silicon didukung.
  • Xcode, IDE untuk platform Apple, versi 13.0 atau yang lebih tinggi.
  • Versi JDK saat ini.

Lihat petunjuk build untuk informasi selengkapnya.

Mengambil sumber sama seperti platform lain:

mkdir ${HOME}/chromium-ios
cd ${HOME}/chromium-ios
fetch ios

Setelah itu, Anda dapat membuat aplikasi dari command line (atau dari Xcode):

autoninja -C out/Debug-iphonesimulator chrome

Pelajari lebih lanjut pengembangan fitur Chrome di iOS

Sebaiknya baca Panduan gaya Chromium. Baca dokumentasi developer Apple untuk mempelajari lebih lanjut tentang Swift, xCode, dan resource khusus iOS lainnya.

Jika Anda biasanya adalah developer iOS dan baru mengenal Chromium, lihat dokumentasi tentang abstraksi dan struktur data penting.