Home | History | Annotate | Download | only in marshmallow
      1 page.title=Panduan Pengujian
      2 page.image=images/cards/card-n-guide_2x.png
      3 meta.tags="preview", "testing"
      4 page.tags="preview", "developer preview"
      5 
      6 @jd:body
      7 
      8 <div id="tb-wrapper">
      9   <div id="tb">
     10     <h2>Dalam dokumen ini</h2>
     11       <ol>
     12         <li><a href="#runtime-permissions">Izin Pengujian</a></li>
     13         <li><a href="#doze-standby">Menguji Istirahatkan dan Aplikasi Siaga</a></li>
     14         <li><a href="#ids">Pencadangan Otomatis dan Identifier Perangkat</a></li>
     15       </ol>
     16   </div>
     17 </div>
     18 
     19 <p>
     20   Android N memberi Anda kesempatan untuk memastikan aplikasi bekerja pada
     21   platform versi berikutnya. Pratinjau ini berisi beberapa API dan perubahan perilaku yang bisa
     22   memengaruhi aplikasi Anda, sebagaimana dijelaskan dalam <a href="{@docRoot}preview/api-overview.html">Ringkasan
     23   API</a> dan <a href="{@docRoot}preview/behavior-changes.html">Perubahan Perilaku</a>. Dalam menguji
     24   aplikasi dengan pratinjau, ada beberapa perubahan sistem spesifik yang harus Anda fokuskan untuk
     25   memastikan pengguna mendapatkan pengalaman yang bagus.
     26 </p>
     27 
     28 <p>
     29   Panduan ini menjelaskan apa dan bagaimana menguji fitur pratinjau dengan aplikasi Anda. Anda harus
     30   mengutamakan pengujian fitur pratinjau spesifik ini, dikarenakan pengaruhnya yang besar pada
     31   perilaku aplikasi Anda:
     32 </p>
     33 
     34 <ul>
     35   <li><a href="#runtime-permissions">Izin</a>
     36   </li>
     37   <li><a href="#doze-standby">Istirahatkan dan Aplikasi Siaga</a>
     38   </li>
     39   <li><a href="#ids">Pencadangan Otomatis dan Identifier Perangkat</a></li>
     40 </ul>
     41 
     42 <p>
     43   Untuk informasi selengkapnya tentang cara menyiapkan perangkat atau perangkat maya dengan citra sistem pratinjau
     44   untuk pengujian, lihat <a href="{@docRoot}preview/setup-sdk.html">Menyiapkan
     45 Android N SDK</a>.
     46 </p>
     47 
     48 
     49 <h2 id="runtime-permissions">Izin Pengujian</h2>
     50 
     51 <p>
     52   Model <a href="{@docRoot}preview/features/runtime-permissions.html">Izin</a> yang baru
     53   mengubah cara alokasi izin untuk aplikasi Anda oleh pengguna. Sebagai ganti memberi semua
     54   izin selama prosedur pemasangan, aplikasi Anda harus meminta izin kepada pengguna secara individual
     55  pada waktu proses. Bagi pengguna, perilaku ini memberi kontrol yang lebih detail atas setiap aktivitas aplikasi, dan
     56   juga konteks yang lebih untuk memahami sebab aplikasi meminta izin tertentu. Pengguna
     57   bisa memberi atau mencabut izin yang diberikan pada suatu aplikasi secara individual kapan saja. Fitur
     58   pratinjau ini kemungkinan besar memengaruhi perilaku aplikasi Anda dan mungkin menghambat fungsi beberapa
     59   fitur aplikasi Anda, atau mengurangi kualitas kerjanya.
     60 </p>
     61 
     62 <p class="caution">
     63   Perubahan ini memengaruhi semua aplikasi yang berjalan di platform baru, bahkan aplikasi yang tidak menargetkan versi
     64   platform baru. Platform ini memberikan perilaku kompatibilitas terbatas untuk aplikasi lawas, namun Anda
     65   harus mulai merencanakan migrasi aplikasi ke model izin baru sekarang juga, dengan tujuan
     66   mempublikasikan versi terbaru aplikasi Anda saat peluncuran platform secara resmi.
     67 </p>
     68 
     69 
     70 <h3 id="permission-test-tips">Tip pengujian</h3>
     71 
     72 <p>
     73   Gunakan tip berikut untuk membantu Anda merencanakan dan menjalankan pengujian aplikasi dengan
     74   perilaku izin yang baru.
     75 </p>
     76 
     77 <ul>
     78   <li>Identifikasi izin aplikasi Anda saat ini dan jalur kode terkait.</li>
     79   <li>Uji alur pengguna pada semua layanan dan data yang dilindungi izin.</li>
     80   <li>Uji dengan berbagai kombinasi izin yang diberikan/dicabut.</li>
     81   <li>Gunakan alat bantu {@code adb} untuk mengelola izin dari baris perintah:
     82     <ul>
     83       <li>Cantumkan daftar izin dan status berdasarkan kelompok:
     84         <pre>adb shell pm list permissions -d -g</pre>
     85       </li>
     86       <li>Beri atau cabut satu atau beberapa izin menggunakan sintaks berikut:<br>
     87         <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
     88       </li>
     89     </ul>
     90   </li>
     91   <li>Analisis aplikasi Anda untuk layanan yang menggunakan izin.</li>
     92 </ul>
     93 
     94 <h3 id="permission-test-strategy">Strategi pengujian</h3>
     95 
     96 <p>
     97   Perubahan izin memengaruhi struktur dan desain aplikasi Anda, begitu juga
     98   pengalaman pengguna dan alur yang Anda sediakan untuk pengguna. Anda harus menilai penggunaan izin
     99   aplikasi saat ini dan mulai merencanakan alur baru yang ingin ditawarkan. Rilis platform
    100   resmi menyediakan perilaku kompatibilitas, namun Anda harus merencanakan pembaruan aplikasi dan tidak
    101   bergantung pada perilaku ini.
    102 </p>
    103 
    104 <p>
    105   Identifikasi izin yang sebenarnya diperlukan dan digunakan aplikasi Anda, kemudian temukan berbagai
    106   jalur kode yang menggunakan layanan yang dilindungi izin. Anda bisa melakukan ini melalui kombinasi
    107   pengujian pada platform baru dan analisis kode. Dalam pengujian, Anda harus fokus pada pemilihan
    108  izin waktu proses dengan mengubah {@code targetSdkVersion} aplikasi ke versi pratinjau. Untuk
    109   informasi selengkapnya, lihat <a href="{@docRoot}preview/setup-sdk.html#">Menyiapkan
    110 Android N SDK</a>.
    111 </p>
    112 
    113 <p>
    114   Uji dengan berbagai kombinasi izin yang dicabut dan ditambahkan, untuk menyoroti alur pengguna yang
    115   bergantung pada izin. Jika dependensi tidak jelas atau logis, Anda harus mempertimbangkan
    116 optimalisasi atau kompartementalisasi alur tersebut untuk mengeliminasi dependensi atau menjelaskan alasan
    117   diperlukannya izin.
    118 </p>
    119 
    120 <p>
    121   Untuk informasi selengkapnya tentang perilaku izin waktu proses, pengujian, dan praktik terbaik, lihat
    122   halaman pratinjau <a href="{@docRoot}preview/features/runtime-permissions.html">Izin</a>
    123   pengembang.
    124 </p>
    125 
    126 
    127 <h2 id="doze-standby">Menguji Istirahatkan dan Aplikasi Siaga</h2>
    128 
    129 <p>
    130   Fitur penghematan daya Istirahatkan dan Aplikasi Siaga membatasi jumlah pemrosesan latar belakang yang
    131   bisa dikerjakan aplikasi Anda saat perangkat dalam keadaan diam atau saat aplikasi Anda sedang tidak fokus. Pembatasan
    132   yang dapat diberlakukan oleh sistem pada aplikasi termasuk akses jaringan terbatas atau tidak ada,
    133   tugas latar belakang yang ditangguhkan, Pemberitahuan yang ditangguhkan, permintaan membangunkan yang diabaikan, serta alarm. Untuk memastikan
    134   aplikasi Anda berperilaku dengan benar pada optimalisasi penghematan daya ini, Anda harus menguji aplikasi dengan
    135  menyimulasikan keadaan baterai yang sedang tinggal sedikit ini.
    136 </p>
    137 
    138 <h4 id="doze">Menguji aplikasi Anda dengan Istirahatkan</h4>
    139 
    140 <p>Untuk menguji Istirahatkan dengan aplikasi Anda:</p>
    141 
    142 <ol>
    143 <li>Konfigurasikan perangkat keras atau perangkat maya dengan citra sistem Android N.</li>
    144 <li>Hubungkan perangkat dengan mesin pengembangan dan pasang aplikasi Anda.</li>
    145 <li>Jalankan aplikasi Anda dan biarkan aktif.</li>
    146 <li>Simulasikan perangkat yang sedang masuk ke dalam mode Istirahatkan dengan menjalankan perintah berikut:
    147 
    148 <pre>
    149 $ adb shell dumpsys battery unplug
    150 $ adb shell dumpsys deviceidle step
    151 $ adb shell dumpsys deviceidle -h
    152 </pre>
    153 
    154   </li>
    155   <li>Amati perilaku aplikasi Anda saat perangkat diaktifkan kembali. Pastikan aplikasi
    156     pulih dengan baik saat perangkat keluar dari Istirahatkan.</li>
    157 </ol>
    158 
    159 
    160 <h4 id="standby">Menguji aplikasi dengan Aplikasi Siaga</h4>
    161 
    162 <p>Untuk menguji mode Aplikasi Siaga dengan aplikasi Anda:</p>
    163 
    164 <ol>
    165   <li>Konfigurasikan perangkat keras atau perangkat maya dengan citra sistem Android N.</li>
    166   <li>Hubungkan perangkat dengan mesin pengembangan dan pasang aplikasi Anda.</li>
    167   <li>Jalankan aplikasi Anda dan biarkan aktif.</li>
    168   <li>Simulasikan aplikasi yang sedang masuk ke dalam mode siaga dengan menjalankan perintah berikut:
    169 
    170 <pre>
    171 $ adb shell am broadcast -a android.os.action.DISCHARGING
    172 $ adb shell am set-idle &lt;packageName&gt; true
    173 </pre>
    174 
    175   </li>
    176   <li>Simulasikan membangunkan aplikasi Anda menggunakan perintah berikut:
    177     <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
    178   </li>
    179   <li>Amati perilaku aplikasi Anda saat dibangunkan. Pastikan aplikasi pulih dengan baik
    180    dari mode siaga. Secara khusus, Anda harus memeriksa apakah Pemberitahuan aplikasi dan pekerjaan latar belakang
    181    tetap berjalan sebagaimana yang diharapkan.</li>
    182 </ol>
    183 
    184 <h2 id="ids">Auto Backup for Apps dan Identifier Perangkat Spesifik</h2>
    185 
    186 <p>Jika aplikasi Anda mempertahankan identifier perangkat spesifik, seperti ID pendaftaran Google
    187 Cloud Messaging, dalam penyimpanan internal,
    188 pastikan Anda mengikuti praktik terbaik untuk mengecualikan lokasi
    189 penyimpanan dari pencadangan otomatis, seperti dijelaskan dalam <a href="{@docRoot}preview/backup/index.html">Auto
    190 Backup for Apps</a>. </p>
    191