Cara membuat kode di Android Studio dari perangkat apa pun dengan Proyektor JetBrains

Ingin membuat kode dari jarak jauh di Android Studio? Lihat Proyektor JetBrains, cara terbaik untuk menjalankan IntelliJ IDE JetBrains di perangkat apa pun.

JetBrains adalah perusahaan di balik beberapa IDE paling populer, termasuk IntelliJ IDEA, PyCharm, dan PhpStorm. Bahkan Android Studio, semacam IDE internal Google untuk pengembangan Android, didasarkan pada IntelliJ.

Meskipun IDE IntelliJ populer karena suatu alasan (mereka Bagus), terkadang bisa menjadi sedikit berat. IntelliJ dan Android Studio dapat menghabiskan banyak sumber daya hanya dengan membukanya, misalnya. Dan jika Anda mengkompilasi sesuatu, mereka akan menggunakan lebih banyak lagi. Anda juga tidak dapat (belum) benar-benar menjalankan JetBrains di perangkat seluler, karena JetBrains tidak memiliki build ARM yang mudah diakses.

Jadi apa yang terjadi jika Anda tidak memiliki komputer yang kuat, atau Anda bahkan tidak mempunyai komputer? Biasanya, di sinilah Anda akan mencari IDE lain yang berfungsi di ARM. Tapi JetBrains punya solusinya, dan itu disebut Proyektor JetBrains.

Apa itu proyektor?

Anda mungkin pernah mendengar tentang desktop jarak jauh atau VNC sebelumnya. Ini memungkinkan Anda berinteraksi secara grafis dengan komputer melalui jaringan lokal atau bahkan internet. Proyektor JetBrains berfungsi seperti desktop jarak jauh, tetapi tanpa beberapa kekurangan.

Untuk menggunakan Proyektor JetBrains, Anda memerlukan komputer di suatu tempat di Internet untuk menampungnya. Ini bisa berupa instans AWS atau server rumah. Anda kemudian dapat menyambungkannya dari browser apa pun yang didukung, termasuk Chrome seluler dan Firefox.

Namun alih-alih menampilkan seluruh desktop dan mengirimkan umpan video kembali ke klien yang terhubung, Proyektor JetBrains mengirimkan informasi yang diperlukan klien untuk menampilkan IDE seolah-olah sedang ditampilkan secara lokal. Ini berarti tidak ada skala kompresi atau resolusi, sehingga IDE terlihat hampir asli.

Selain itu, Proyektor JetBrains tidak terbatas hanya pada IDE JetBrains resmi. Selama Anda memiliki IDE yang mirip dengan IDE dari JetBrains, Anda dapat menggunakannya dengan Proyektor JetBrains. Itu termasuk Android Studio.

Mengapa proyektor?

Alasan terbesar Anda mungkin ingin melakukan pengembangan jarak jauh adalah apa yang saya bicarakan di bagian pendahuluan: Bagaimana jika Anda tidak memiliki komputer berbasis x86 yang kuat? Anda dapat membeli yang semi-kuat khusus untuk pekerjaan pengembangan, atau Anda dapat membuat server cloud dan menggunakan Proyektor JetBrains.

Ini juga dapat berguna jika Anda hanya ingin mengurangi kebutuhan sumber daya. Misalnya, saya memiliki laptop gaming yang cukup bertenaga dengan i7-9750H dan RAM 32GB. Itu cukup bahkan untuk proyek besar yang saya tangani. Namun jika saya ingin melakukan hal lain selain pengembangan yang juga memerlukan banyak sumber daya, misalnya menonton YouTube, sedang bermain game? Kemudian segalanya mulai berantakan.

Tapi saya punya server Ryzen 7 5800X dengan RAM 32GB di dalamnya. Jadi saya menginstal Proyektor JetBrains di sana. Sekarang saya cukup membuka jendela Chrome baru dan menyambungkannya dari laptop saya tanpa perlu khawatir akan mengatur sumber daya. Servernya juga dibuat jauh lebih cepat dibandingkan laptop saya, jadi ini adalah situasi yang saling menguntungkan.

Bagaimana cara menggunakan proyektor?

Proyektor JetBrains dimaksudkan untuk dihosting di mesin Linux. Itu tidak berarti Anda tidak dapat menjalankannya di macOS atau Windows dengan WSL, tetapi Anda mungkin mengalami beberapa masalah aneh karenanya.

Untuk menyiapkannya, yang perlu Anda lakukan hanyalah menuju ke Repo GitHub Penginstal Proyektor dan ikuti instruksi di sana. Mereka akan memandu Anda dalam menginstal dependensi dan menyiapkan IDE. Bahkan ada beberapa langkah pemecahan masalah WSL jika Anda membutuhkannya.

Kemudian Anda cukup terhubung ke alamat server Anda menggunakan port dan token yang benar (jika Anda menetapkannya), dan sekarang Anda memiliki IDE yang berjalan di perangkat Anda tanpa masalah apa pun.

Pengembangan Android

Saya seorang pengembang Android, jadi meskipun saya dapat menggunakan IntelliJ IDEA untuk pengembangan, Android Studio cenderung bekerja lebih baik. Meskipun Proyektor JetBrains mendukung IDE pihak ketiga, kini semudah menggunakan antarmuka baris perintah bawaan untuk mengunduh dan menginstalnya. Tapi itu masih cukup sederhana.

Untuk menggunakan Android Studio dengan Proyektor JetBrains, yang harus Anda lakukan adalah mengunduh dan mengekstrak Android Studio di tempat yang masuk akal. Kemudian Anda dapat menambahkannya secara manual ke Proyektor melalui baris perintah dengan menentukan jalurnya.

Ada juga masalah lain dengan pengembangan Android dan Proyektor: menjalankan aplikasi. Tanpa tambahan apa pun, Anda dapat membuat kode aplikasi dan melihat pratinjau di Proyektor, namun Anda tidak dapat menggunakan emulator atau menyambung ke perangkat sebenarnya untuk benar-benar menjalankan dan men-debug aplikasi. Atau bisakah kamu?

Sepertinya Google mengharapkan skenario seperti ini terjadi karena ADB dapat terhubung ke server jarak jauh melalui Internet. Yang diperlukan hanyalah terowongan SSH dari klien ke server Proyektor. Saya mengatur Android Studio di Proyektor untuk tidak mencoba mengelola ADB dan menggunakan port 5038. Kemudian saya hanya menggunakan semacam klien SSH (OpenSSH, plink, dll) untuk membuat terowongan yang meneruskan server ADB yang berjalan secara lokal pada port 5037 ke server pada port 5038. Mudah!

Yang Anda perlukan hanyalah terowongan SSH untuk pengembangan Android yang tepat.

Jika Anda ingin detail selengkapnya tentang cara membuat terowongan Android Studio dan SSH berfungsi, lihat ini dokumen GitHub oleh Joaquim Verges.

Satu catatan tentang Android Studio dan IDE berbasis JetBrains pihak ketiga lainnya: Anda tidak dapat memperbaruinya dari layar Proyektor. Anda harus melakukan remote ke server secara langsung dan memperbaruinya dari sana. Pastikan instans Proyektor yang sesuai dihentikan sebelum Anda melakukannya.

Pengembangan Android Android

Karena Proyektor JetBrains berjalan di browser, dan Anda dapat terhubung dari sesuatu seperti ponsel Android, sebagai contoh acak, saya ingin mencoba sesuatu.

Android 11 memperkenalkan kemampuan untuk aktifkan ADB nirkabel langsung dari perangkat. Meskipun beberapa produsen telah mengekspos setelan tersebut sebelumnya, setelan ini tidak tersedia untuk semua perangkat tersertifikasi Google selama perangkat tersebut menggunakan Android 11 atau lebih baru. Meskipun debugging nirkabel dimaksudkan untuk digunakan dari komputer, hal ini tidak harus dilakukan.

Aplikasi seperti Shizuku menunjukkan bahwa Android 11 dapat terhubung dengan ADB ke perangkat Anda...dari perangkat Anda, bahkan tanpa berpikir untuk menggunakan komputer. Meskipun Shizuku menggunakan ini untuk membiarkan aplikasi menjalankan operasi yang lebih tinggi, saya rasa Anda mungkin dapat melihat ke mana arahnya.

Jadi saya membuat aplikasi! Saya tidak tahu apakah saya akan mempublikasikannya, tetapi ini cukup sederhana. Saya memiliki perpustakaan SSH di dalamnya bersama dengan biner ADB ARM64. Saya menggunakan biner ADB untuk terhubung ke perangkat yang saya gunakan, kemudian saya menggunakan perpustakaan SSH untuk membuat terowongan penerusan dari perangkat saya ke server Proyektor. Dan terakhir, saya menggunakannya untuk menyimpan dan meluncurkan URL proyektor.

Bam, mengembangkan untuk Android...dari Android! Kapan pun saya tidak di rumah tetapi ingin melakukan pekerjaan pengembangan Android, saya bisa mengeluarkannya Samsung Galaxy Tab S7. Saya memiliki keyboard Bluetooth dan mouse Bluetooth (catatan tambahan: jika Anda menggunakan Proyektor, Anda akan melakukannya Sungguh ingin menggunakan mouse atau trackpad. Ini tidak berfungsi dengan baik dengan input sentuh), jadi saya dapat mengembangkan dan melakukan debug tanpa perlu berpindah perangkat dan tanpa harus membawa laptop yang jauh lebih berat.

Masalah

Proyektor JetBrains masih dalam pengembangan awal, jadi belum sempurna.

  1. Terkadang agak lamban saat merespons hal-hal seperti menggulir dan menyeret, dan kontrol bisa menjadi tidak stabil.
  2. Secara acak, saat melihat kode perpustakaan (baik didekompilasi atau dalam tampilan sumber), bobot font menjadi sangat berat dan semuanya menjadi lambat. Ini mungkin telah diperbaiki saat artikel ini ditulis.
  3. Beberapa plugin tidak berfungsi dengan baik. Karena ini bukan aliran video langsung, plugin seperti browser yang tertanam tidak akan menampilkan apa pun.
  4. Tidak ada dukungan server X, dan mungkin tidak akan ada. Hal ini dapat membuat pengembangan aplikasi desktop dan browser menjadi rumit, namun Anda selalu dapat menggunakan terowongan SSH dengan penerusan X dan server X lokal jika Anda benar-benar membutuhkannya.
  5. Terkadang antarmuka terkunci dan Anda perlu menyegarkan halaman atau bahkan memulai ulang layanan server agar dapat berfungsi kembali.

Dan masih ada lagi.

Namun apakah semua itu merupakan sebuah kesepakatan? Tentu saja tidak untuk saya. Saya baik-baik saja dengan pengalaman yang sedikit kurang sempurna (saya menggunakan Android Studio Canary), khususnya jika itu berarti saya dapat memindahkan semua pekerjaan kompilasi ke komputer lain dan bahkan mengembangkannya untuk tablet saya dari komputer saya tablet.

Android Studio berjalan pada Samsung Galaxy Tab S7 melalui Proyektor JetBrains

Meskipun ada masalah, saya tetap sangat menyukai Proyektor JetBrains. Itu memungkinkan pengembangan dari perangkat seluler, memindahkan beban sumber daya dari komputer lokal ke komputer jarak jauh, dan itu juga sangat keren.

Saya tahu IDE lain, seperti Visual Studio, memungkinkan Anda memindahkan kompilasi ke komputer jarak jauh, tetapi itu masih mengharuskan Anda menginstal dan menjalankan IDE secara lokal.

Saya pribadi sangat bersemangat untuk melihat ke mana arah Proyektor JetBrains karena saat ini sudah sangat luar biasa. Mudah-mudahan, mereka dapat memperbaiki beberapa masalah yang saya jelaskan di atas, namun hingga saat ini, Proyektor seharusnya aman digunakan untuk proyek siap produksi.

Jika Anda ingin mencoba sendiri Proyektor JetBrains, ini linknya lagi ke penginstal dan panduan pengaturan awal. Jika Anda ingin menyiapkan Android Studio di Proyektor, ini tautan itu lagi, demikian juga.