WearMouse, mouse udara untuk jam tangan Wear OS

Halo, Habr! Saya ingin membawa sedikit keajaiban untuk jam tangan Anda di Wear OS.

Beberapa waktu yang lalu, tak lama sebelum rilis Android 9.0, API publik baru diperkenalkan yang memungkinkan Anda untuk menggunakan perangkat Android sebagai perangkat input Bluetooth (mouse, keyboard, gamepad, dll.), Dan sekarang saya membuat aplikasi sederhana yang menunjukkan Salah satu cara untuk menggunakan API ini. (Spoiler: ini bekerja tidak hanya pada android kesembilan.)

Anda sudah bisa menebak dari nama apa yang dilakukan aplikasi ini: pada kenyataannya, ini adalah mouse udara biasa yang kompatibel dengan perangkat apa pun di Windows, OSX, Linux (termasuk Raspbian), Chrome OS, Android (termasuk Android TV), asalkan ada penerima Bluetooth; Tidak diperlukan hak akses root atau aplikasi "server".

Cukup meluncurkan aplikasi, memasangkan melalui Bluetooth, dan Anda dapat:

  • Gunakan jam sebagai penunjuk intuitif untuk presentasi (serta ganti slide dengan tombol kursor);
  • Mainkan Fruit Ninja, melambaikan tangan Anda (misalnya, memasang game di Android TV dari USB flash drive, atau di Chromebook dari Play Store), lihat demo di bawah ini;
  • Kelola HTPC sambil berbaring di sofa;
  • Gunakan jam sebagai pengontrol VR di beberapa game untuk Karton (namun, bukan untuk Daydream: ia memiliki remote sendiri);
  • Pamerkan kemampuan telekinetik Anda kepada teman-teman; :)
  • Kelola ponsel yang terhubung melalui Samsung Dex;

Anda dapat membayangkan kira-kira seperti apa di video ini (demonstrasi prototipe awal akhir 2015):



Bagaimana cara menggunakannya


Aplikasi ini memiliki empat mode: mouse udara, bidang sentuh, tombol panah, dan input teks.

Mode mouse udara cukup jelas. Ini memiliki dua tombol di layar untuk klik kiri dan kanan, rana di atas untuk mengganti mode pelacakan gerakan tergantung pada tangan mana arloji aktif (ada juga mode di mana Anda dapat memegang arloji di tangan Anda seperti penunjuk laser), dan rana dari bawah untuk fungsi tambahan: tahan klik (juga dikenal sebagai "mode Fruit Ninja") dan klik tengah. Jika arloji Anda memiliki mahkota pemutar, Anda dapat menggunakannya untuk menggulir. Kursor mouse harus mengarah ke layar yang Anda kontrol.

Mode touchpad mendukung semua gerakan yang biasa: gerakkan pointer, klik, klik dua kali, ketuk dengan tahan, ketuk dengan dua jari untuk klik kanan, gulir dengan dua jari. Untuk keluar dari mode ini, Anda dapat menutupi layar dengan telapak tangan, atau menekan tombol tambahan pada arloji (jika arloji memiliki lebih dari satu tombol).

Mode tombol kursor cukup sederhana: ketuk di tepi layar tekan tombol yang sesuai, ketuk dua kali di tengah menekan Enter, tekan lama di tengah digunakan untuk keluar, ditambah ada gesekan dari pusat untuk Escape, Backspace, ruang dan Tab.

Terakhir, dalam mode input teks, Anda dapat menggunakan keyboard di layar atau input suara. Perlu dicatat bahwa teks yang dimasukkan pada perangkat yang terhubung tergantung pada tata letak keyboard. Sayangnya, sejauh ini hanya tata letak bahasa Inggris yang didukung (orang dapat menambahkan lebih banyak, tetapi ini akan membutuhkan secara manual beralih baik dalam aplikasi dan pada perangkat yang terhubung).

Jika arloji Anda memiliki lebih dari satu tombol, maka yang kedua dapat digunakan untuk beralih dengan cepat di antara mode input, dan yang ketiga dapat digunakan untuk dengan cepat memanggil mode input teks.

Ada juga beberapa pengaturan. Anda dapat menstabilkan gerakan kursor (ini akan memuluskan gerakan kecil seperti berjabat tangan), mengaktifkan arah diagonal untuk tombol kursor (ini berguna dalam gim yang sama untuk Cardboard), atau mengurangi frekuensi transfer data (yang dapat membantu saat menggunakan aplikasi dengan beberapa konsol TV Android lama di Android ketujuh ketika kursor mouse tidak mengikuti gerakan tangan).

Sedikit tentang kompatibilitas


Seperti yang saya sebutkan di atas, API telah menjadi publik di Android 9.0, namun, aplikasi ini juga akan berfungsi pada jam apa pun dengan Android 8.0. Yaitu, jika, ketika arloji dinyalakan kembali, setelah melompati titik-titik berwarna, "W" berwarna besar muncul dan "Wear OS by Google" muncul alih-alih "Android Wear", maka semuanya akan berfungsi. API itu sendiri muncul di Android Oreo, dan sedikit berbeda (dan juga tersembunyi), tetapi sebelum Android Pie itu hanya diaktifkan pada jam tangan. By the way, ada cara untuk mengaktifkannya di ponsel dengan delapan, tetapi ini membutuhkan hak root (pada sembilan semuanya akan bekerja dengan cara ini).

Kemungkinan masalah dan solusinya


Jika, ketika terhubung, kursor mouse bergerak tersentak-sentak, sekitar sekali per detik, coba nyalakan dan matikan mode pesawat, dan kemudian sambungkan kembali. Sepertinya ada kesalahan manajemen daya mengambang di tumpukan Bluetooth ...

Untuk menyesuaikan sensitivitas, buka pengaturan perangkat yang terhubung, bukan aplikasi.

Saat menggunakan aplikasi dengan perangkat yang terhubung ke TV, ada baiknya beralih TV ke mode "game". Ini harus menonaktifkan pasca pemrosesan, yang menyebabkan penundaan sangat besar pada TV modern.

Masuk akal juga untuk mematikan kontrol gerakan di pengaturan jam ketika menggunakan mode mouse udara, jika tidak ada kemungkinan besar secara tidak sengaja melakukan gerakan ke belakang atau ke rumah.

Tautan Unduhan


Play Store (jangan coba membuka tautan ini dari ponsel Anda, dapatkan pesan "perangkat tidak kompatibel"; buka tautan di komputer, atau temukan aplikasi di Play Store di arloji itu sendiri).

Kode sumber (hampir semua, kecuali untuk dukungan Oreo).

Source: https://habr.com/ru/post/id440802/


All Articles