با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
کاربران تلفنهای اندرویدی میتوانند با استفاده از فرمان صوتی مانند «Hey Google, send this to Jane» از «دستیار Google» بخواهند محتوای برنامه را با کاربر دیگری به اشتراک بگذارد. بر اساس گزینههای سیستم کاربر اول، «دستیار» میتواند متنی را از صفحه نمایش یا تصویری از دستگاه را در محتوای به اشتراکگذاشتهشده قرار دهد.
شکل 1. دستیار یک عکس را با یک مخاطب به اشتراک می گذارد.
این روش اشتراکگذاری اغلب کافی است، اما کاربرانی که محتوای اشتراکگذاری شده از برنامه شما را دریافت میکنند، ممکن است برای مشاهده محتوا دوباره وارد برنامه نشوند. میتوانید با پیادهسازی متد onProvideAssistContent() اطلاعات ساختاریافتهای درباره محتوای پیشزمینه فعلی در اختیار Assistant قرار دهید.
این فرآیند به حفظ ساختار دادهها در هنگام اشتراکگذاری با کاربر دیگر کمک میکند. کاربرانی که محتوای برنامه به اشتراک گذاشته شده را دریافت میکنند، میتوانند به جای متن یا عکس صفحه، پیوند عمیق داده شوند یا محتوا را مستقیماً دریافت کنند.
onProvideAssistContent() را برای هر entity قابل اشتراک گذاری در برنامه خود پیاده کنید.
ارائه محتوا به دستیار
شما فقط باید onProvideAssistContent() را برای فعالیت نهایی برنامه در جریان کار کاربر پس از فراخوانی App Action پیاده سازی کنید. به عنوان مثال، در یک جریان GET_ITEM_LIST ، روش را در صفحه نهایی که لیست آیتم ها را نشان می دهد، پیاده سازی کنید. شما نیازی به اجرای آن برای هر صفحه نمایش در حال پیشرفت یا پیش نمایش ندارید.
overridefunonProvideAssistContent(outContent:AssistContent){super.onProvideAssistContent(outContent)// JSON-LD object based on Schema.org structured dataoutContent.structuredData=JSONObject().put("@type","ItemList").put("name","My Work items").put("url","https://my-notes-and-lists.com/lists/12345a").toString()}
جاوا
@OverridepublicvoidonProvideAssistContent(AssistContentoutContent){super.onProvideAssistContent(outContent);// JSON-LD object based on Schema.org structured dataoutContent.structuredData=newJSONObject().put("@type","ItemList").put("name","My Work items").put("url","https://my-notes-and-lists.com/lists/12345a").toString();}
تا آنجا که ممکن است اطلاعات بیشتری در مورد هر entity ارائه کنید. فیلدهای زیر الزامی است:
@type
.name
.url (فقط در صورتی لازم است که محتوا دارای آدرس URL باشد)
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-08-08 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-08-08 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Assistant sharing\n\nUsers on Android phones can ask Google Assistant to share app content with\nanother user using a voice command like *\"Hey Google, send this to Jane.\"* Based\non the first user's system options, Assistant can then incorporate text from\nthe screen or a device screenshot in the shared content.\n**Figure 1.** Assistant shares a photo with a contact.\n\nThis method of sharing is often sufficient, but users who receive content shared\nfrom your app might not re-enter the app to view content. You can provide\nAssistant with structured information about the current foreground content by\nimplementing the [`onProvideAssistContent()`](/reference/android/app/Activity#onProvideAssistContent(android.app.assist.AssistContent)) method.\n\nThis process helps maintain the structure of data as it's shared to another\nuser. Users who receive shared app content can then be deep linked or receive\ncontent directly, instead of as text or as a screenshot.\n\nImplement `onProvideAssistContent()` for any sharable\n[`entity`](/guide/app-actions/legacy/action-schema#entity) in your app.\n\nProvide content to Assistant\n----------------------------\n\nYou only need to implement `onProvideAssistContent()` for the final app activity\nin the user's task flow after invoking the App Action. For example, in a\n`GET_ITEM_LIST` flow, implement the method in the final screen\nshowing the item list; you don't need to implement it for any in-progress or\npreview screens.\n\nProvide contextual information as a [JSON-LD](//json-ld.org/) object\n[using schema.org vocabulary](https://schema.org/docs/documents.html) in the\n`structuredData` field of [`AssistContent`](/reference/android/app/assist/AssistContent). The following code snippet shows\nan example of logging contextual content:\nKotlin \n\n```kotlin\noverride fun onProvideAssistContent(outContent: AssistContent) {\n super.onProvideAssistContent(outContent)\n\n // JSON-LD object based on Schema.org structured data\n outContent.structuredData = JSONObject()\n .put(\"@type\", \"ItemList\")\n .put(\"name\", \"My Work items\")\n .put(\"url\", \"https://my-notes-and-lists.com/lists/12345a\")\n .toString()\n}\n \n```\nJava \n\n```java\n@Override\npublic void onProvideAssistContent(AssistContent outContent) {\n super.onProvideAssistContent(outContent);\n\n // JSON-LD object based on Schema.org structured data\n outContent.structuredData = new JSONObject()\n .put(\"@type\", \"ItemList\")\n .put(\"name\", \"My Work items\")\n .put(\"url\", \"https://my-notes-and-lists.com/lists/12345a\")\n .toString();\n}\n \n```\n\nProvide as much data as possible about each `entity`. The\nfollowing fields are required:\n\n- `@type`\n- `.name`\n- `.url` (only required if the content is URL-addressable)\n\nTo learn more about using `onProvideAssistContent()`, see the\n[Optimizing Contextual Content for the Assistant](/training/articles/assistant) guide."]]