Daftar Isi:
- Joe Simpson (@kennydude) - Boid
- Christophe Versieux - BeTrains - SNCB Belgia; HoloEverywhere
- Matthew Runo - Zappos
- Josh Burton - jRemote
Android berjalan pada berbagai perangkat, yang berarti juga berjalan pada berbagai ukuran dan resolusi layar. Banyak orang menyebut ini "fragmentasi." Tidak peduli fakta bahwa mereka telah menggunakan produk yang dirancang dan dikembangkan dengan cara yang sama selama bertahun-tahun di desktop mereka. Rupanya jika semuanya tidak persis sama ia mendapat label "fragmentasi".
Ada berbagai cara untuk mengatasi masalah yang muncul saat Anda menggunakan layar dengan ukuran dan kepadatan yang berbeda. Apple memiliki daftar terpisah untuk aplikasi yang dirancang untuk iPhone versus iPad. Microsoft menciptakan sistem ramah lingkungan baru untuk perangkat layar besarnya. Android menyediakan cara bagi pengembang untuk membuat aplikasi yang sama berfungsi berbeda untuk layar yang berbeda. Ada yang baik dan buruk tentang masing-masing metode, tetapi kita akan fokus pada Android di sini.
Di Android, aplikasi dapat menyesuaikan tata letak untuk berbagai ukuran layar serta resolusi. Ini semua sudah ada di dalamnya, tetapi ada beberapa hal yang perlu dinyatakan oleh pengembang dalam kode mereka untuk membuat aplikasi terlihat bagus. Hal yang perlu diingat adalah bagaimana ukuran dan kepadatan layar akan mengubah tampilan aplikasi. Droid DNA memiliki layar beresolusi lebih tinggi daripada tablet Motorola XOOM, tetapi kami tidak ingin melihat tata letak tablet untuk aplikasi di layar berukuran ponsel.
Pengembang perlu menyediakan aset (gambar) yang berkualitas cukup tinggi untuk terlihat tajam pada resolusi tinggi (apalagi resolusi tinggi gila-gilaan), dan pastikan untuk menggunakan satuan piksel independen kepadatan saat merancang tata letak mereka. Inilah yang membuat hal-hal seperti tombol dan kontrol lainnya tidak terlalu besar pada layar kepadatan rendah seperti Galaxy S2, atau menjadi sangat kecil pada layar kepadatan tinggi seperti DNA.
Kedengarannya rumit, tetapi sebagian besar dari hal ini dilakukan untuk Anda saat membuat kode aplikasi. Yang perlu dilakukan pengembang adalah membuat deklarasi yang benar, dan memberikan aset yang tepat untuk mendukung berbagai ukuran (baik fisik dan resolusi) atau tata letak. Bahkan beberapa aplikasi tata letak seperti aplikasi Google+ menggunakan kode yang sama untuk menutupi setiap layar yang mungkin.
Kami tidak mencoba menilai pengembang di sini. Menulis aplikasi itu sulit. Pengembang Android telah memberitakan semua ini sejak Gingerbread dirilis, tetapi seberapa praktiskah itu? Kami bertanya kepada beberapa pengembang tentang hal itu, melihat apa yang mereka katakan setelah istirahat.
Lainnya: Situs pengembang Android Google.
Kami bertanya beberapa pengembang (baik besar dan kecil) beberapa pertanyaan dasar tentang masalah ini.
- Seberapa sulitkah mematuhi panduan?
- Itu terlihat mudah di atas kertas, tetapi apakah ada masalah khusus yang Anda lihat atau bagian yang belum dibahas Google?
- Bagaimana ini memengaruhi waktu dan biaya pengembangan, jika sama sekali?
- Ada hal lain tentang subjek yang ingin Anda bagikan?
Saya mencoba membuat pertanyaan se netral mungkin sehingga kami tidak membahas hal ini dengan beberapa bias. Saat ragu, Anda bertanya pada orang yang tahu, kan? Saya sudah melakukan bagian pemrograman yang adil, tetapi coding di Java dan membangun aplikasi Android sangat berbeda dari menulis kode dalam kode C atau mesin, atau bahkan Perl. Ada nuansa yang saya tidak mengerti, bahkan jika saya mendapatkan metode umum membangun aplikasi.
Saya membayangkan banyak dari kalian seperti saya dan tidak tahu seluk-beluk membangun aplikasi Android. Kami hanya melihat apa yang dikatakan pengembang Android, dan mereka membuatnya mudah. Bagi mereka, mungkin itu - mereka telah menulis hal ini sejak awal. Mari kita lihat apa yang orang-orang yang bisa ikuti mereka katakan.
Joe Simpson (@kennydude) - Boid
Joe adalah anggota Team Boid, dan juga menerbitkan aplikasi sendiri. Dia (dan anggota tim lainnya) adalah contoh hebat pengembang independen dengan hasrat untuk Android yang telah menghasilkan beberapa aplikasi luar biasa.
Mengikuti pedoman ini cukup sulit, terutama jika Anda menginginkan aplikasi lean tetapi orang-orang menginginkan kompatibilitas kembali. Salah satu hal yang paling menyebalkan adalah melihat seperti apa sesuatu di d.android.com/design tetapi tidak ada cara untuk melakukan itu.
Titik lemah menyegarkan ketika Anda secara fisik tidak dapat menggunakan GCM karena Twitter, dan Anda tidak ingin menggunakan PtR. Juga, aplikasi Google membuat pedoman mereka sendiri. Ambil panel geser misalnya, Google+ melakukannya secara berbeda dari YouTube (walaupun saya tahu perpustakaan dukungan akan mudah-mudahan menyelesaikan ini).
Juga, Anda bisa sampai pada suatu titik dan tidak ada dokumentasi tentang sesuatu (EdgeEffect misalnya).
Saya seorang siswa, jadi biaya adalah sesuatu yang saya tidak melihatnya, dan ya itu butuh waktu, tetapi pengguna Anda akan mencintaimu. Pada dasarnya, Acara Langsung (ADiA, Klinik Aplikasi, Jam Kantor) adalah suatu keharusan (sayangnya) walaupun mereka tidak dapat menawarkan umpan balik tentang aplikasi Google.
Boid akan segera menjadi open-source (yay!), Dan Anda dapat menemukan aplikasi itu sendiri di Google Play. Anda juga akan menemukan semua aplikasi Joe (ada beberapa perhiasan di sana) di sini.
Christophe Versieux - BeTrains - SNCB Belgia; HoloEverywhere
Christophe telah membangun banyak aplikasi Android, termasuk BeTrains - SNCB Belguim - aplikasi dengan tata letak yang cantik yang menunjukkan apa yang dapat dilakukan dengan aplikasi yang dibangun dengan baik. Sementara sebagian besar di AS tidak akan pernah menggunakannya (ini adalah aplikasi jadwal kereta api untuk kereta Belgia) ada baiknya menginstal hanya untuk melihat seberapa baik itu dilakukan. Orang-orang di Eropa Barat tentu tahu tentang yang ini.
Selain itu, ia telah ikut mengembangkan HoloEverywhere, perpustakaan yang dapat digunakan pengembang lain untuk membangun aplikasi gaya Holo untuk Android 2.1 dan lebih tinggi. Dengan banyak ponsel yang masih menjalankan Gingerbread, ini adalah suguhan nyata bagi pengembang yang ingin menjaga agar aplikasi mereka tetap mutakhir.
Sama sekali tidak sulit. Serius. Bagian yang sulit datang ketika pelanggan meminta untuk menjauh dari pedoman itu!
Saya ingat seorang pelanggan yang ingin saya meletakkan tab di bagian bawah layar, tombol iPhone di mana-mana, beralih gaya iPhone dan proyek ini sangat sulit untuk dicapai dan saya benar-benar kehilangan banyak waktu dan uang untuk itu.
Saya benar-benar marah kepadanya ketika dia menanyakan semua hal bodoh ini, dan dia hanya mengira saya adalah pengembang yang malas.
Sekarang saya memiliki banyak kontak dengannya dan kami benar-benar menulis ulang aplikasinya, membuat kode yang hebat dengan menghapus semua fitur yang tidak berguna ini dan membuat aplikasi Android "murni". Pelanggan dan perusahaan hanya perlu menyadari pedoman itu, saya sangat percaya.
Perpustakaan seperti ActionBarSherlock, HoloEverywhere (kreasi saya), UnifiedPreferences, dan SlidingMenu sangat mudah digunakan dan memberikan pada beberapa baris kode pengalaman pengguna yang luar biasa.
Waktu dan biaya, seperti yang saya katakan diminimalkan dengan mengikuti pedoman Google. Folder fragmen dan tata letak sangat mudah digunakan (dan lebih penting untuk digunakan kembali): aplikasi tablet hanya mengambil sepotong kode dari tata letak ponsel dan tidak ada yang harus ditulis ulang. Perubahan kecil dalam aplikasi ponsel segera tercermin dalam aplikasi tablet, karena Fragmen yang sama digunakan.
Beberapa proyek luar biasa dibuat oleh komunitas, tidak selalu oleh Google. Beberapa orang, sangat aktif di Google+ seperti Roman Nurik (Google), Reto Meier (Google) Juhani Lehtimäki, Jake Wharton, Taylor Ling,.. (Saya selalu takut melupakan orang-orang penting) sangat instruktif. Pengembang hanya perlu tahu di mana mencarinya dan pengembangan Android akan mudah bagi mereka!
Anda dapat menemukan BeTrains di Google Play, dan Anda ingin melihat HoloEverywhere jika Anda tertarik dengan pengembangan Android.
Matthew Runo - Zappos
Berbeda dengan beberapa pengembang independen kecil yang kami ajak bicara, kami juga mendengar dari Matthew di Zappos. Zappos adalah perusahaan ritel web dan kemungkinan memiliki anggaran khusus untuk desain di situs web mereka maupun aplikasi mereka. Itu juga sebuah perusahaan yang saya beli secara teratur, tetapi ini tidak ada hubungannya dan Matthew tidak menyadari bahwa saya sering menjadi pelanggan ketika ia mengajukan diri.
Di Zappos, karena kami adalah pengecer, kami harus tetap mengutamakan merek kami sendiri. Aneh, menyenangkan, dan sedikit aneh. Yang mengatakan, kami berdua sangat percaya pada pedoman desain Android - dan semua yang kami lakukan di UI diambil dari semangat aturan itu. Setahun yang lalu, aplikasi kami sebagian besar merupakan port iOS dari tampilannya dan berfungsi. Hari ini, itu (saya pikir) adalah permata dari apa yang dapat Anda lakukan di Android. Kami mematuhi pedoman bila memungkinkan - dan desainer kami bekerja dari mereka sebagai titik awal.
Pedoman desain bukanlah segalanya dan mengakhiri semua - pada akhirnya mereka hanya ada untuk mencoba mendorong desain aplikasi Android sehingga mereka lebih konsisten. Kami telah menemukan bahwa sebagian besar pustaka sumber terbuka "baru" yang umum kami gunakan telah berakhir sebagai bagian dari pedoman (menu geser, crouton).
Pedoman seharusnya tidak pernah menjadi hambatan. Hal-hal tertentu - navigasi keseluruhan - harus konsisten agar aplikasi Anda "berfungsi". Yang lainnya - mulai dari pedoman dan jalankan dengan desain Anda. Kami ingin aplikasi kami menjadi APP KAMI - jadi kami tidak bisa hanya melakukan tema holo dasar.
Tahun ini kami pada dasarnya mulai dari menulis ulang aplikasi kami hingga bekerja dengan fragmen. Dalam 6 bulan terakhir kami telah bekerja keras untuk menambahkan 7 "dukungan tablet, dan kami sedang bekerja pada 10" dukungan. Hal tersulit untuk dilakukan adalah pengujian pada perangkat, tetapi kami memiliki tim QA hebat yang membantu. Kami memiliki 2 orang yang bekerja penuh waktu di aplikasi kami sejak Agustus atau lebih, sebelum itu adalah 1 orang penuh waktu.
Intinya adalah, saya pikir, pedoman desain android membantu kami merampingkan proses kami - dan dengan demikian mengurangi biaya. Mari kita hadapi itu, sebagian besar desainer dari iOS - jadi memiliki sumber daya yang hebat seperti design.android.com adalah bantuan luar biasa untuk membuat mereka memulai di ekosistem android.
Saya dapat mengatakan bahwa pilihan desain Zappos bekerja dengan baik, dan istri saya memiliki lemari penuh dengan pakaian, dompet, dan sepatu bot yang memperkuat klaim saya. Lihat aplikasi Android mereka dari Google Play.
Josh Burton - jRemote
Josh telah menulis banyak aplikasi kecil untuk Android, dan aplikasi jRemote-nya (ini adalah pengontrol untuk program PC jDownloader populer) adalah contoh sempurna tentang cara menggunakan tata letak untuk membuat aplikasi yang tampak hebat di ponsel dan tablet. Ini memaksimalkan penggunaan layar perangkat, dan memberi Anda informasi yang Anda cari persis seperti yang Anda harapkan.
Mematuhi pedoman desain cukup lurus ke depan, selama Anda tetap menggunakannya sejak awal. Mengembangkan seluruh aplikasi dan kemudian pada akhirnya kembali dan mencoba menerapkan fragmen / tata letak tablet dll akan menjadi buang-buang waktu, tenaga, dan frustrasi. Tetapi jika Anda merencanakan aplikasi Anda, mengembangkan menggunakan fragmen dari awal, dan membuat sumber daya Anda untuk semua ember dpi yang tepat, itu membuat pengembangan menjadi mudah, dan Anda benar-benar tidak perlu menghabiskan banyak waktu memikirkan pedoman sama sekali. Dan jika Anda macet, dokumen desain hanya dengan sekali klik. Mereka adalah sumber yang bagus.
Ini benar-benar membuat saya frustrasi karena begitu banyak perangkat yang tidak memiliki tata letak tablet. Jika aplikasi Anda dibuat menggunakan fragmen, menambahkan tata letak tablet dapat dilakukan dalam 30 menit. Jujur saja, semudah itu.
Saya pikir untuk banyak pengembang, mereka tidak memiliki perangkat tablet untuk diuji, dan menggunakan emulator bisa menyebalkan. Tetapi alat ADT baru saja dirilis membuatnya jauh lebih mudah. Tampilan multi konfigurasi dalam editor tata letak berarti Anda dapat melihat seperti apa tampilan tata letak Anda di 5-6 ukuran layar yang berbeda sekaligus. Dan itu cepat. Tentu saja Anda masih perlu menguji pada emulator / perangkat pada akhirnya, tapi itu pasti mempercepat alur kerja.
jDownloader adalah program praktis untuk digunakan di desktop Anda, dan jRemote sepertinya cara yang bagus untuk mengendalikannya. Jika tidak ada yang lain, unduh dari Google Play dan lihatlah hanya untuk melihat bagaimana sebuah aplikasi dapat menjadi sederhana dan indah secara bersamaan.
Kami mendengar dari banyak pengembang lain yang cukup banyak mengatakan hal yang sama. Kami hanya kehabisan ruang di sini untuk mendaftar semuanya. Inti dari semua ini adalah bahwa jika Anda merencanakan ke depan, pedoman pengembang Android benar-benar berfungsi untuk sebagian besar kasus. Kami senang mendengarnya, dan akan terus menikmati aplikasi hebat dan mendukung pengembang yang bekerja keras.