Read It היא תכונה של Google Assistant שזמינה במכשירי Android שמציעה דרך נוספת שבה משתמשים יכולים לקרוא תוכן אינטרנט ארוך, כמו כתבות פוסטים בבלוגים. כדי להתקין אפליקציה, משתמשים יכולים לומר משהו כמו "Ok Google, read it" הקראה בקול של תוכן מבוסס אינטרנט, הדגשת המילים שנקראות וגלילה אוטומטית הדף. כדי לקבל מידע נוסף על התכונה הזו, אפשר גם לקרוא את המאמר לקריאת הפוסט על עדכון המוצר
אפליקציות ל-Android עם תוכן מבוסס אינטרנט יכולות לתמוך בתכונה 'לקרוא אותו' על ידי מתן מידע
ל-Assistant באמצעות השיטה onProvideAssistContent()
.
התהליך הזה עוזר לשמור על מבנה הנתונים בזמן שהם משותפים עם עוזר/ת. לאחר מכן, משתמשים שמקבלים תוכן משותף מהאפליקציה יכולים להיות מקושרים באמצעות קישורי עומק או לקבל תוכן ישירות, במקום כטקסט או כצילום מסך.
הטמעת onProvideAssistContent()
בכל תוכן מבוסס-אינטרנט
וכל entity
שניתן לשתף באפליקציה.
מסירת תוכן ל-Assistant
כדי שהתכונה 'הקראה' תוכל לגשת לתוכן שלך, האפליקציה צריכה לספק ל-Assistant עם מידע על התוכן, כגון ה-URI שלו והקשר בסיסי. לאחר מכן, Assistant יכולה לאחזר את התוכן שלך כדי להקריא למשתמש אותו.
עבור אפליקציות ל-Android שכבר מטמיעות תוכן מבוסס-אינטרנט באמצעות WebViews או בכרטיסיות המותאמות אישית ב-Chrome, משתמשים באותם מזהי URI של אינטרנט עבור 'קריאה' לנקודת ההתחלה.
כשמשלבים את הפונקציונליות של Read It עם כוונות מובנות, צריך רק
להטמיע את onProvideAssistContent()
בפעילות הסופית באפליקציה
משימה לאחר הפעלת הפעולה באפליקציה.
לדוגמה, אם האפליקציה שלך מציגה
כתבות חדשותיות, יש להטמיע את onProvideAssistContent()
במסך האחרון
מציג את המאמר. אין צורך להטמיע אותו בתהליך
במסכים של תצוגה מקדימה.
עליך לספק URI של האתר לתוכן שלך בשדה uri
של AssistContent
.
מספקים מידע לפי הקשר כאובייקט JSON-LD
שימוש באוצר מילים של schema.org בתחביר
שדה structuredData
.
קטע הקוד הבא מציג דוגמה לשליחת תוכן ל-Assistant:
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); }
כשמטמיעים את onProvideAssistContent()
, צריך לספק כמה שיותר
נתונים ככל האפשר על כל entity
. הבאים
שדות חובה:
@type
.name
.url
(חובה רק אם התוכן ניתן לכתובת URL)
כדי לקבל מידע נוסף על השימוש ב-onProvideAssistContent()
, אפשר לעיין ב
המדריך אופטימיזציה של תוכן לפי הקשר ל-Assistant בקטע
התיעוד למפתחים של Android.