Fitur tersembunyi dari pengembangan Android?

121

Saya terkejut bahwa belum ada posting Fitur Tersembunyi Android di seri Fitur Tersembunyi yang telah saya lacak untuk sementara waktu sekarang.

Seri Fitur Tersembunyi sangat bagus untuk orang yang baru mengenal bahasa tertentu. Ini menunjukkan tali dan trik berharga tertentu, semuanya di satu tempat. Saya pikir itu ide yang brilian. Bahkan para ahli terkadang menemukan trik yang belum pernah mereka dengar.

Saya memulai pengembangan Android dan saya ingin mendengar tentang fitur, tip, trik, dan jebakannya yang tersembunyi.

Jadi, ini dia: apa sajakah fitur tersembunyi dari Android ?

Artem Russakovskii
sumber

Jawaban:

105

Mudah-mudahan tidak ada terlalu banyak fitur tersembunyi dan tersembunyi - tetapi inilah beberapa fitur yang kurang terkenal dan tidak intuitif yang tersedia untuk Android yang pasti akan membuat hidup Anda lebih mudah dan aplikasi Anda lebih baik.

  • Semua kode sumber untuk platform dan semua aplikasi asli non-Google tersedia untuk Anda jelajahi, unduh, pinjam, atau curi dari proyek Sumber Terbuka Android .
  • Menggunakan framework sumber daya , membuat versi aplikasi Anda yang dilokalkan semudah menambahkan subfolder beranotasi baru (Misalnya values-fr) yang berisi file XML dengan string dalam bahasa berbeda (Misalnya, Prancis). Android akan memilih folder yang tepat saat runtime untuk Anda.
    • Kerangka sumber daya yang sama memungkinkan Anda menggunakan tata letak alternatif untuk berbagai konfigurasi perangkat keras, kepadatan piksel layar, dan perangkat masukan hanya dengan meletakkannya di folder bernama.
  • Sejak Android 1.6, aplikasi Anda dapat memberikan hasil yang akan muncul di hasil pencarian Kotak Telusur Kilat layar utama. Ini dikenal sebagai saran penelusuran ubahsuaian .
  • Menggunakan Maksud dan Filter Maksud, aplikasi Anda dapat membuat dan melayani permintaan anonim untuk suatu tindakan yang harus diselesaikan (Misalnya, aplikasi Di mana dapat meminta pemesanan meja dari aplikasi Tabel Terbuka ).
    • Mereka dapat meminta aplikasi yang tidak dikenal untuk menyelesaikan tindakan tanpa perlu mengetahui aplikasi mana yang dapat memenuhi permintaan tersebut
    • Aplikasi Anda dapat memenuhi permintaan dari aplikasi yang tidak dikenal untuk menyelesaikan tindakan tanpa perlu mengetahui aplikasi mana yang akan membuat permintaan tersebut. Mainkan hak ini dan Anda dapat membuat aplikasi Twitter 'default', atau aplikasi pemesanan, dll.
  • Dengan menggunakan Alarm, Anda dapat menyetel aplikasi Anda untuk menyelesaikan tugas pada waktu yang telah ditentukan, meskipun aplikasi Anda tidak berjalan.
    • Anda dapat menghemat banyak masa pakai baterai menggunakan metode setInexactRepeating untuk menjadwalkan acara reguler (seperti polling atau pembaruan server). Ini akan menyinkronkan alarm dari beberapa aplikasi untuk terjadi pada saat yang sama daripada adhoc.
  • Menggunakan kerangka kerja Preferensi, Anda dapat membuat layar pengaturan untuk aplikasi Anda dengan gaya yang sama seperti pengaturan sistem. Anda bahkan dapat memasukkan layar pengaturan sistem (Mis. Keamanan dan Lokasi) ke dalam hierarki pengaturan aplikasi Anda.
  • Menggunakan API AudioTrack dan AudioRecord , Anda dapat mengalirkan data audio langsung dari dan ke buffer audio PCM.
Reto Meier
sumber
35

Alat- alat di direktori / tools dari SDK perlu disebutkan:

  • desainer kami sangat terkesan karena draw9patchmembantu merancang tombol yang dapat direnggangkan. Dia memberi saya aset dari sana, dan saya mengubah warna latar belakang menjadi gambar 9-patch dan sekarang kami memiliki tombol khusus, sudut membulat, dll. Yang direntangkan agar sesuai dengan teks.
  • ddms, yang juga diintegrasikan ke dalam plugin Eclipse. Ini sangat kuat, tetapi saya menggunakannya untuk mengambil tangkapan layar.
  • adb- berinteraksi dengan perangkat atau emulator Anda dari baris perintah. Saya menggunakan ini untuk mengikuti log dari perangkat saya di jendela terminal di desktop saya, meskipun menurut saya ini berguna untuk menginstal dan menghapus aplikasi yang berperilaku tidak semestinya.
  • sqlite3 - bagus untuk berinteraksi dengan database yang diinstal, dan mencoba kueri.
  • apkbuilder, zipalign, aapt- besar untuk berjalan tanpa kepala membangun
  • monkey untuk menguji aplikasi Anda secara fuzz.

Saya juga akan memilih tiga Designing for Performance , Responsiveness dan Seamlessness , tapi saya juga ingin menambahkan Coding keempat untuk (Battery) Life .

Meskipun Javadoc terkadang sedikit jarang, ada baiknya jika Anda memiliki sumber yang tepat di sana untuk Anda lihat.

Memiliki banyak aplikasi contoh yang ditulis oleh Googler juga sangat berguna untuk membuat, memeriksa, dan kemudian melihat bagaimana mereka melakukannya.

jamesh
sumber
1
Anda melewatkan layout alat bagus lainnya.
100rabh
Satu lagi bagus yang hilang yang saya gunakan sepanjang waktu adalah hierarchyviewer.
Artem Russakovskii
25

Saya kira saya akan mulai.


Fitur tersembunyi yang bagus menurut saya adalah Praktik Terbaik dari dokumentasi Android. Ini mencantumkan banyak tip bagus untuk merancang aplikasi yang responsif dan cepat.

Bagian Praktik Terbaik adalah:

  • Mendukung Banyak Layar (berbagai ukuran dan resolusi)
  • Panduan UI
    • Desain Ikon
    • Desain Widget Aplikasi
    • Kegiatan dan Desain Tugas
    • Desain Menu
  • Mendesain untuk Performa
  • Mendesain untuk Responsif
  • Mendesain untuk Kelancaran

Fitur tersembunyi lainnya adalah dokumen ini tersedia secara offline sebagai bagian dari SDK. Awalnya saya memuat beberapa halaman setiap hari untuk perjalanan kereta pagi saya tetapi tidak perlu melakukannya lagi setelah saya menemukannya di direktori SDK.


Jika Anda menggunakan Eclipse, Anda akan melihat bahwa Eclipse tidak memformat file XML dengan sangat baik dan jika demikian, sangat tidak konsisten (terkadang ia membagi atribut dengan baris baru, terkadang tidak). Untuk memperbaikinya, Anda dapat menekan Ctrl-Shift-F (format otomatis). Aturan yang digunakan Ctrl-Shift-F ada di Window-> Preferences-> XML-> XML Files-> Editor.

Artem Russakovskii
sumber
1
Yang terakhir pasti akan menjadi bagian dari alur kerja saya. Ini mengganggu saya selama seminggu terakhir ... Terima kasih !!
Mikle
14

Android mendukung XML <shape>yang dapat digunakan sebagai sumber daya dapat digambar seperti SVG. Sayangnya tidak ada dokumentasi untuk mereka. Ini adalah informasi terbaik yang dapat saya temukan:

http://escomic.net/217

Timmmm
sumber
4
Ada juga idunnolol.com/android/drawables.html dengan dokumentasi lengkap tentang semua fitur xml untuk bentuk. Bentuk bisa menjadi sangat penting untuk dilakukan pada latar belakang berbentuk lingkaran yang berubah warna saat diklik atau membuat gradien yang ditentukan xml, bukan latar belakang yang dapat digambar khusus.
Janusz
apakah mungkin menambahkan sejumlah bentuk ke satu dokumen xml. misalnya beberapa lingkaran dan persegi panjang?
skyfoot
7

hierarchyviewer di / tools memungkinkan Anda untuk men-debug / menganalisis tata letak tampilan Anda: padding, positioning, view hierarchy, dll.

Ini menghemat banyak waktu saya beberapa kali ketika mencoba mencari tahu mengapa hal-hal diatur seperti itu.

Ivo van der Wijk
sumber