Mengembangkan Aplikasi Flutter untuk IOS Tanpa Mac - Mas Devz

Saturday, September 07, 2019

Mengembangkan Aplikasi Flutter untuk IOS Tanpa Mac

mengembangkan aplikasi flutter untuk ios tanpa mac

Mengembangkan aplikasi flutter untuk IOS tanpa mac memungkinkan. Kalian bisa melakukan Hot Reload dan Hot Restart pada perangkat IOS seperti halnya pada Android. Berikut ini langkah-langkahnya.


1. Build App untuk IOS

Setahu saya, untuk build app ke IOS membutuhkan Mac. Bisa Hackintosh maupun Virtual Machine. Tapi sesuai judul, kita melakukan hal tersebut tanpa menggunakan Mac. Yaitu dengan menggunakan bantuan Codemagic. Buka codemagic, daftar dan hubungkan ke Github ataupun Git hosting yang lain. Setelah terhubung dengan git, pilih aplikasi yang akan di build.

codemagic app

Lalu klik setting atau tombol Gear di sebelah kiri tombol Start new Build.

codemagic build

Pastikan setting seperti gambar diatas, kemudian klik tombol Save atau simpan. Secara default, codemagic akan melakukan test pada aplikasi sebelum dilakukan build. Hilangkan centang Enable Flutter Test pada menu Test untuk menonaktifkannya. Lalu klik tombol Start New Build. Tunggu hingga proses building selesai.

codemagic build
Setelah selesai, unduh Artifacts Runner.app. Kalian juga bisa melihat email masuk dari Codemagic untuk mengunduhnya. Rename file tersebut menjadi Runner.zip. Ekstrak zip tersebut hingga kalian mendapatkan folder Runner.app. Buat folder baru bernama Payload dan pindahkan folder Runner.app kedalam folder Payload. Setelah itu compress folder Payload ke zip. File Payload ini yang akan menjadi file .ipa kalian.


2. Menginstall dan menjalankan aplikasi

Untuk menginstall file .ipa, kita memerlukan Cydia Impactor. Jika kalian menggunakan sistem operasi Windows, kalian harus menginstall Itunes terlebih dahulu. Pastikan kalian menginstall Itunes versi non microsoft.
  1. Hubungkan iPhone ke PC
  2. Jalankan Impactor.exe
  3. Click menu Xcode, dan pilih Revoke Certificates
  4. Drag Payload.zip ke Cydia Impactor
  5. Kalian akan diminta memasukkan email Apple ID dan password. Password disini bukanlah password dari apple id, namun app-specific password. Info lebih lanjut disini.
  6. Setelah aplikasi terinstall, buka Pengaturan -> Umum -> Manajemen Perangkat -> Tap email Apple ID yang kalian gunakan tadi dan tap Percayai
  7. Cobalah membuka aplikasi yang baru saja terinstall


3. Menyiapkan PC/Laptop

Untuk memulai, kita memerlukan libimobiledevice dan ideviceinstaller terinstall pada laptop/pc.

Untuk Windows
  1. Unduh libimobiledevice disini. Klik pada commit terbaru yang memiliki ceklis hijau. Lalu klik tombol bertuliskan Artifacts dan klik libimobiledevice. Jika tidak ada tombol Artifacts bukalah commit yang lain. 
  2. Unduh ideviceinstaller disini. Lakukan seperti langkah sebelumnya
  3. Unduh binary which disini
  4. Letakkan binary dari libimobiledevice dan ideviceinstaller (terletak di win7-x64\bin) serta which.exe ke dalam flutter\bin. Ataupun ke sembarang lokasi asalkan lokasi tersebut ada di PATH.

Untuk Arch / Manjaro / Antergos

$ pacaur -S libimobiledevice ideviceinstaller-git

Untuk Ubuntu / Mint / dll

$ sudo apt install libimobiledevice6 ideviceinstaller

Kalian mungkin juga membutuhkan package ini

$ sudo apt install libimobiledevice-utils libusbmuxd-tools


4. Memodifikasi Flutter

Kita perlu menghilangkan beberapa pengecekan seperti pengecekan apakah kita menggunakan sistem operasi MacOS dan sebagainya.


Unduh file diatas dengan cara klik View Raw dan tekan CTRL + S pada keyboard. Lalu buka terminal dan arahkan pada lokasi flutter. Jalankan perintah dibawah ini.

$ cd flutter
$ git apply ios.diff

Lalu rebuild Flutter Tool, lakukan juga perintah ini di terminal.

Untuk Windows

bin\cache\dart-sdk\bin\dart --snapshot=.\bin\cache\flutter_tools.snapshot --packages=.\packages\flutter_tools\.packages .\packages\flutter_tools\bin\flutter_tools.dart

Untuk Linux

$ bin/cache/dart-sdk/bin/dart --snapshot=./bin/cache/flutter_tools.snapshot --packages=./packages/flutter_tools/.packages ./packages/flutter_tools/bin/flutter_tools.dart


5. Menyiapkan Proyek

Lihat pada folder proyek kalian apakah ada folder build. Jika tidak ada buatlah folder baru.


6. Menjalankan dan Debugging

Menggunakan VS Code
  1. Buka Command Palette (atau tekan CTRL + SHIFT + P) dan pilih Debug: Attach to Flutter process
  2. Buka aplikasi dan tunggu proses selesai, setelah itu kalian bisa melakukan Hot Reload dan Hot Restart
  3. Jika Hot Reload tidak berfungsi, lakukan Hot Restart terlebih dahulu

Menggunakan CLI
  1. Jalankan perintah flutter attach
  2. Buka aplikasi dan tunggu proses selesai. 
  3. Kalian bisa melakukan Hot Reload dengan menekan r dan Hot Restart dengan R


Semoga bermanfaat, silakan tinggalkan komentar dibawah.




Referensi :

Flutter Community
Medium @gabrc52
Disqus comments