Logo id.androidermagazine.com
Logo id.androidermagazine.com

Bersenang-senang dengan izin: mengapa perubahan di Android 6.0 dapat membuat Anda mengulangi sendiri

Daftar Isi:

Anonim

Android 6.0 Marshmallow secara teknis berumur satu minggu. (Kurang begitu jika Anda menghitung tanggal penurunan kode, saya kira.) Tapi sudah dalam status pratinjau pengembang selama berbulan-bulan, dan pengembang telah dapat mengirimkan aplikasi yang menggunakan tingkat API baru (dan dengan demikian izin baru) untuk sebentar sekarang.

Jadi jika Anda menjalankan Marshmallow di telepon Nexus (dan memang seharusnya begitu), Anda akan mulai berlari ke skema izin baru saat aplikasi diperbarui. Salah satu contoh pertama saya adalah dengan Twitter. (Dan pujian untuk Twitter karena menjadi salah satu yang awal.)

Bagaimana Twitter melakukannya …

Pertimbangkan tangkapan layar ini, yang akan Anda lihat ketika Anda membuka Twitter untuk pertama kalinya. Twitter ingin menggunakan lokasi saya saat ini untuk menyesuaikan pengalaman saya. Oke, kenapa tidak. Saya suka lokasi saya, dan saya suka pengalaman yang lebih baik. Saya akan mengizinkannya.

Lalu izin baru di Marshmallow dimulai. Apakah saya ingin memberikan akses Twitter ke hal yang saya katakan ingin saya akses? Ya saya lakukan. Itulah sebabnya saya menekan OK pertama kali.

Masalahnya, kotak dialog pertama Twitter sebenarnya tidak ada hubungannya dengan benar-benar mengizinkan izin untuk lokasi saya. Itu hanya memicu dialog sistem. Tapi itu kata sedikit lebih ramah daripada dialog izin Android.

Mempertimbangkan:

Twitter: "Twitter ingin menggunakan lokasi Anda saat ini untuk menyesuaikan pengalaman Anda."

Android: "Izinkan Twitter mengakses lokasi perangkat ini?"

Dua pertanyaan seperti izin yang menanyakan pertanyaan yang sama - tetapi hanya satu yang benar-benar mengizinkan apa pun.

Yang pertama memberi tahu saya apa yang ingin dilakukan - dan yang lebih penting mengapa ia ingin melakukannya. Yang terakhir ini sebagian besar adalah jenis yang sama dari permisi-tapi-samar-samar yang kita benci dari Android. Dan itu semacam kebutuhan, kurasa. Tapi di situlah aplikasi meminta izin - kotak dialog pertama dari Twitter - menjadi lebih penting. Alih-alih segera memberi saya opsi "Jangan bolehkan / OK", Twitter harus mengambil kalimat lain untuk memberi tahu saya apa yang berikutnya. "Twitter ingin menggunakan lokasi Anda saat ini untuk menyesuaikan pengalaman Anda. Jika Anda puas dengan itu, klik 'izinkan' di layar berikutnya." Atau sesuatu untuk efek itu. Maka Anda memiliki konteks yang lebih baik untuk permintaan izin, dan pengguna siap untuk apa yang akan terjadi - dan itu tidak begitu berulang.

Itu dua berhenti keras pada pengguna, dan itu sulit. Tapi itu adalah titik rasa sakit satu kali. Dan itu sepadan, saya pikir, untuk membuat kita membayar sedikit lebih banyak perhatian pada izin yang berbahaya (itulah istilah teknis) yang mungkin diperlukan aplikasi. Di sisi lain, ikonografi dan konteks mungkin berarti Anda tidak perlu memberi tahu saya bahwa Anda akan meminta izin untuk kamera, karena saya baru saja mengetuk ikon kamera.

Begini cara Google menjelaskannya:

Dalam beberapa keadaan, Anda mungkin ingin membantu pengguna memahami mengapa aplikasi Anda memerlukan izin. Misalnya, jika pengguna meluncurkan aplikasi fotografi, pengguna mungkin tidak akan terkejut bahwa aplikasi meminta izin untuk menggunakan kamera, tetapi pengguna mungkin tidak mengerti mengapa aplikasi ingin akses ke lokasi atau kontak pengguna. Sebelum Anda meminta izin, Anda harus mempertimbangkan untuk memberikan penjelasan kepada pengguna. Ingatlah bahwa Anda tidak ingin membanjiri pengguna dengan penjelasan; jika Anda memberikan terlalu banyak penjelasan, pengguna mungkin merasa frustasi dan menghapusnya.

Bagaimana Facebook melakukannya …

Mari kita lihat bagaimana Facebook - aplikasi lain yang sudah diperbarui untuk izin baru.

Ahhhh, permintaan izin ganda yang langka. Ini adalah apa yang Anda dapatkan dari Facebook ketika Anda menekan ikon kamera untuk pembaruan status baru. OK, saya sedikit curang - Anda mendapatkan pemberitahuan ganda ini jika Anda menolak izin penyimpanan pertama kali, ketika mencoba mengisi gambar mini dari apa yang ada di galeri Anda. Tapi itu dilakukan dengan baik. Facebook memberi tahu Anda apa yang diinginkannya, dan mengapa ia menginginkannya.

Dan kemudian Anda bisa mengulangi diri Anda lagi. Ya, saya ingin Facebook memiliki izin untuk meminta ponsel saya melakukan sesuatu.

Tapi, sekali lagi, itu tombol "Izinkan" pertama yang bermasalah dengan saya. Sebenarnya tidak memungkinkan apa pun selain dialog sistem untuk menanyakan hal yang sama persis kepada Anda lagi. Dan Anda hanya perlu melakukannya sekali.

Bagaimana Hangouts melakukannya …

Berikut satu contoh lagi, kali ini di Google Hangouts. Menekan ikon kamera atau galeri dalam percakapan hanya akan memicu dialog sistem. Tidak ada permintaan berlebihan sebelum yang sebenarnya yang memberikan izin. (Dan, sekali lagi, saya berpendapat bahwa itu baik-baik saja. Ketika saya mengetuk ikon kamera, mendapatkan permintaan untuk izin kamera sudah memiliki konteks.)

Di mana saya pikir Google benar - benar melakukan pekerjaan yang baik adalah dengan penjelajah yang dijalankan pertama kali ini untuk izin kontak, yang diperlukan untuk aplikasi sama sekali. Pertama dikatakan mengapa perlu akses ke kontak Anda. Menekan "Selanjutnya" kemudian menyajikan permintaan izin sistem. Itu mengatakan "Berikutnya" dan bukan "Izinkan" adalah apa yang benar-benar penting di sana. Satu mengalir ke yang lain. Anda jelas tidak ingin melakukan setiap permintaan izin layar penuh seperti ini. Tetapi untuk sesuatu yang cukup penting untuk disajikan pada putaran pertama, itu dilakukan dengan sangat baik.

Peralihan ke izin runtime adalah yang besar, dan penting. Tetapi mereka mungkin proses belajar yang kecil.

Saya diakui membuat sedikit gunung dari molehill di sini. Anda hanya perlu melewati ini pertama kali untuk suatu aplikasi. Tetapi izin itu penting. (Dan saya pikir peralihan ke izin runtime adalah yang bagus.) Penjelasan tentang izin itu bagus. Bahkan double-stop dapat diabaikan atas nama membuat Anda melihat sebelum melompat. Jelaskan izin kepada pengguna, tapi jangan membuat mereka berpikir mereka sudah mengizinkannya sekali, hanya untuk membuat mereka benar - benar melakukannya selangkah kemudian dalam permintaan sistem. Aku hanya tidak suka mengulangi diriku sendiri.

Dan seperti biasa, Anda bebas untuk mencabut izin kapan pun Anda mau. Jika Anda melakukannya, aplikasi akan meminta izin Anda lagi saat berikutnya Anda mencoba menggunakan fungsi itu.

Intinya, kita sebagai pengguna memiliki sesuatu yang baru untuk terbiasa di sini. Tapi begitu juga pengembang aplikasi.

Pembaruan: Untuk mendengarkan lebih teknis tentang semua ini - dan, omong-omong, konfirmasi bahwa cara Facebook dan Twitter melakukan sesuatu tidak cukup ideal - lihat Episode 33 dari podcast Backstage Pengembang Android.