Bacakan

Bacakan adalah fitur Asisten Google yang tersedia di perangkat Android yang menawarkan cara lain bagi pengguna untuk membaca konten web berformat panjang seperti artikel berita dan postingan blog. Pengguna dapat mengucapkan sesuatu seperti "Ok Google, bacakan" agar aplikasi membaca konten berbasis web dengan keras, menandai kata yang sedang dibaca, dan men-scroll halaman secara otomatis. Untuk mempelajari fitur ini lebih lanjut, Anda juga dapat membaca postingan pembaruan produk Bacakan.

Saat diminta, aplikasi membaca konten web pada layar secara lisan dengan
            bantuan Asisten Google.
Gambar 1. Mendengarkan aplikasi membaca konten web dengan keras.

Aplikasi Android dengan konten berbasis web dapat mendukung fitur Bacakan dengan memberikan informasi ke Asisten menggunakan metode onProvideAssistContent().

Proses ini membantu mempertahankan struktur data saat dibagikan kepada Asisten. Pengguna yang menerima konten aplikasi yang dibagikan kemudian dapat memiliki deep link atau menerima konten secara langsung, bukan sebagai teks atau screenshot.

Terapkan onProvideAssistContent() untuk konten berbasis web dan entity apa pun yang dapat dibagikan di aplikasi Anda.

Menyediakan konten ke Asisten

Agar fitur Bacakan dapat mengakses konten, aplikasi Anda harus memberikan informasi kepada Asisten tentang konten, seperti URI webnya dan beberapa konteks dasar. Kemudian, Asisten dapat mengambil konten untuk dibacakan dengan keras kepada pengguna.

Untuk aplikasi Android yang telah menerapkan konten berbasis web menggunakan WebView atau Tab Khusus Chrome, gunakan URI web yang sama untuk Bacakan sebagai titik awal.

Saat menggabungkan fungsi Bacakan dengan intent bawaan, Anda hanya perlu mengimplementasikan onProvideAssistContent() untuk aktivitas aplikasi akhir dalam alur tugas pengguna setelah memanggil Action Aplikasi.

Misalnya, jika aplikasi menampilkan artikel berita, terapkan onProvideAssistContent() di layar terakhir yang menampilkan artikel tersebut; Anda tidak perlu menerapkannya untuk layar yang sedang berlangsung atau pratinjau.

Berikan URI web untuk konten Anda di kolom uri pada AssistContent. Berikan informasi kontekstual sebagai objek JSON-LD menggunakan kosakata schema.org di kolom structuredData.

Cuplikan kode berikut menunjukkan contoh penyediaan konten untuk Asisten:

Kotlin

override fun onProvideAssistContent(outContent: AssistContent) {
    super.onProvideAssistContent(outContent)

    // Set the web URI for content to be read from a
    // WebView, Chrome Custom Tab, or other source
    val urlString = url.toString()
    outContent.setWebUri(Uri.parse(urlString))

    // Create JSON-LD object based on schema.org structured data
    val structuredData = JSONObject()
        .put("@type", "Article")
        .put("name", "ExampleName of blog post")
        .put("url", outContent.getWebUri())
        .toString()
    outContent.setStructuredData(structuredData)
}

Java

@Override
public void onProvideAssistContent(AssistContent outContent) {

  // Set the web URI for content to be read from a
  // WebView, Chrome Custom Tab, or other source
  String urlString = url.toString();
  outContent.setWebUri(Uri.parse(urlString));

  try {
      // Create JSON-LD object based on schema.org structured data
      String structuredData = new JSONObject()
          .put("@type", "Article")
          .put("name", "ExampleName of blog post")
          .put("url", outContent.getWebUri())
          .toString();
      outContent.setStructuredData(structuredData);
  } catch (JSONException ex) {
      // Handle exception
      Log.e(TAG, ex.getMessage());
  }

  super.onProvideAssistContent(outContent);
}

Saat menerapkan onProvideAssistContent(), berikan data sebanyak mungkin tentang setiap entity. Kolom berikut diperlukan:

  • @type
  • .name
  • .url (hanya diperlukan jika konten dapat dialamatkan URL)

Untuk mempelajari lebih lanjut cara menggunakan onProvideAssistContent(), lihat panduan Mengoptimalkan Konten Kontekstual untuk Asisten dalam dokumentasi developer Android.