الإدخال الصوتي
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يتم تزويد كل جهاز Wear OS بميكروفون، ما يتيح للمستخدمين استخدام أصواتهم للتفاعل مع
الخاص بك. يمكنك تقسيم هذه التفاعلات إلى ثلاثة أنواع من التفاعلات:
- تسجيل الصوت
- الحصول على إدخال الكلام الحر
- الإجراءات الصوتية
تسجيل الصوت
إنّ تسجيل الصوت على جهاز Wear OS يعمل بالطريقة نفسها التي يتم بها تسجيل الصوت على الهاتف. ارجع إلى
مستندات MediaRecorder لمزيد من المعلومات حول
تسجيل الصوت على Android. يمكنك أيضًا الاطّلاع على نموذج تنفيذ في
نموذج لمكبّر صوت Wear
على جيت هب.
للحصول على إدخال الكلام من المستخدمين، يمكنك الاتصال بنشاط "أداة التعرّف على الكلام" المضمَّن في النظام. استخدام الكلام
لإدخالها لإرسال الرسائل أو إجراء عمليات بحث.
في تطبيقك، يمكنك الاتصال بالرقم startActivityForResult()
.
استخدام ACTION_RECOGNIZE_SPEECH
اتخاذ القرار. يؤدي هذا إلى بدء نشاط التعرف على الكلام، ويمكنك بعد ذلك التعامل مع النتيجة في
onActivityResult()
يوضح نموذج التعليمات البرمجية التالي كيفية بدء نشاط التعرف على الكلام والتعامل معه.
var textForVoiceInput by remember { mutableStateOf("") }
val voiceLauncher =
rememberLauncherForActivityResult(
ActivityResultContracts.StartActivityForResult()
) { activityResult ->
// This is where you process the intent and extract the speech text from the intent.
activityResult.data?.let { data ->
val results = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS)
textForVoiceInput = results?.get(0) ?: "None"
}
}
val scrollState = rememberScrollState()
ScreenScaffold(scrollState = scrollState) {
// rest of implementation here
// ...
Column(
// rest of implementation here
// ...
// Create an intent that can start the Speech Recognizer activity
val voiceIntent: Intent = Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH).apply {
putExtra(
RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM
)
putExtra(
RecognizerIntent.EXTRA_PROMPT,
stringResource(R.string.voice_text_entry_label)
)
}
// Invoke the process from a chip
Chip(
onClick = {
voiceLauncher.launch(voiceIntent)
},
label = stringResource(R.string.voice_input_label),
secondaryLabel = textForVoiceInput
)
}
}
الإجراءات الصوتية
إنّ ميزة "الإجراءات الصوتية" و"المهام في تطبيقات مساعد Google" غير متاحة في الوقت الحالي باستثناء تطبيقات Wear OS في
الصين. مزيد من المعلومات عن
إتاحة "الإجراءات الصوتية"
في الصين
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-09-02 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","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-09-02 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["Every Wear OS device comes with a microphone, so users can use their voice to interact with the\ndevice. You can divide these into three types of interactions:\n\n- Record audio\n- Get free-form speech input\n- Voice actions\n\nRecord audio\n\n\nRecording audio on a Wear OS device works the same way as it would on a phone. Refer to the\n[MediaRecorder documentation](/guide/topics/media/mediarecorder) to learn more about\nrecording audio on Android. You can also look at a sample implementation in the\n[Wear Speaker sample](https://github.com/android/wear-os-samples/tree/main/WearSpeakerSample)\non Github.\n\nGet free-form speech input\n\n\nCall the system's built-in Speech Recognizer activity to get speech input from users. Use speech\ninput to send messages or perform searches.\n\n\nIn your app, call [startActivityForResult()](/reference/android/app/Activity#startActivityForResult(android.content.Intent, int))\nusing the [ACTION_RECOGNIZE_SPEECH](/reference/android/speech/RecognizerIntent#ACTION_RECOGNIZE_SPEECH)\naction. This starts the speech recognition activity, and you can then handle the result in\n[onActivityResult()](/reference/android/app/Activity#onActivityResult(int, int, android.content.Intent)).\n\n\nThe following code sample shows how to start and handle a speech recognition activity. \n\n```kotlin\nvar textForVoiceInput by remember { mutableStateOf(\"\") }\n\nval voiceLauncher =\n rememberLauncherForActivityResult(\n ActivityResultContracts.StartActivityForResult()\n ) { activityResult -\u003e\n // This is where you process the intent and extract the speech text from the intent.\n activityResult.data?.let { data -\u003e\n val results = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS)\n textForVoiceInput = results?.get(0) ?: \"None\"\n }\n }\n\nval scrollState = rememberScrollState()\n\nScreenScaffold(scrollState = scrollState) {\n // rest of implementation here\n // ...\n Column(\n // rest of implementation here\n // ...\n\n // Create an intent that can start the Speech Recognizer activity\n val voiceIntent: Intent = Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH).apply {\n putExtra(\n RecognizerIntent.EXTRA_LANGUAGE_MODEL,\n RecognizerIntent.LANGUAGE_MODEL_FREE_FORM\n )\n\n putExtra(\n RecognizerIntent.EXTRA_PROMPT,\n stringResource(R.string.voice_text_entry_label)\n )\n }\n // Invoke the process from a chip\n Chip(\n onClick = {\n voiceLauncher.launch(voiceIntent)\n },\n label = stringResource(R.string.voice_input_label),\n secondaryLabel = textForVoiceInput\n )\n }\n}https://github.com/android/snippets/blob/e4396f6dd13aaa8099c4baa671cdd549a10f201c/wear/src/main/java/com/example/wear/snippets/voiceinput/VoiceInputScreen.kt#L73-L133\n```\n\nVoice Actions\n\nVoice Actions and Assistant App Actions aren't supported at this time except for Wear OS apps in\nChina. Read more about\n[Voice Actions support\nfor China](/training/wearables/apps/creating-app-china#voice-actions-support)."]]