ভয়েস ইনপুট

প্রতিটি Wear OS ডিভাইসে একটি মাইক্রোফোন থাকে, যাতে ব্যবহারকারীরা তাদের ভয়েস ব্যবহার করে ডিভাইসের সাথে ইন্টারঅ্যাক্ট করতে পারেন। আপনি এগুলিকে তিন ধরণের মিথস্ক্রিয়ায় ভাগ করতে পারেন:

  • অডিও রেকর্ড করুন
  • ফ্রি-ফর্ম স্পিচ ইনপুট পান
  • ভয়েস অ্যাকশন

অডিও রেকর্ড করুন

একটি Wear OS ডিভাইসে অডিও রেকর্ডিং একইভাবে কাজ করে যেভাবে এটি একটি ফোনে হয়। Android এ অডিও রেকর্ডিং সম্পর্কে আরও জানতে MediaRecorder ডকুমেন্টেশন পড়ুন। আপনি Github এ Wear স্পীকার নমুনায় একটি নমুনা বাস্তবায়ন দেখতে পারেন।

ফ্রি-ফর্ম স্পিচ ইনপুট পান

ব্যবহারকারীদের কাছ থেকে স্পিচ ইনপুট পেতে সিস্টেমের অন্তর্নির্মিত স্পিচ রিকগনিজার কার্যকলাপে কল করুন। বার্তা পাঠাতে বা অনুসন্ধান করতে স্পিচ ইনপুট ব্যবহার করুন।

আপনার অ্যাপে, ACTION_RECOGNIZE_SPEECH অ্যাকশন ব্যবহার করে startActivityForResult() কল করুন। এটি বক্তৃতা শনাক্তকরণ কার্যকলাপ শুরু করে এবং আপনি ফলাফলটি 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
        )
    }
}

ভয়েস অ্যাকশন

ভয়েস অ্যাকশন এবং অ্যাসিস্ট্যান্ট অ্যাপ অ্যাকশন এই মুহূর্তে চীনে Wear OS অ্যাপ ছাড়া সমর্থিত নয়। চীনের জন্য ভয়েস অ্যাকশন সমর্থন সম্পর্কে আরও পড়ুন।