Exemplo n.º 1
0
        protected override void OnActivityResult(int requestCode, Result resultVal, Intent data)
        {
            if (requestCode == VOICE)
            {
                if (resultVal == Result.Ok)
                {
                    var matches = data.GetStringArrayListExtra(RecognizerIntent.ExtraResults);
                    if (matches.Count != 0)
                    {
                        string textInput = textBox.Text + matches[0];

                        // limit the output to 500 characters
                        if (textInput.Length > 500)
                            textInput = textInput.Substring(0, 500);
                        textBox.Text = textInput;
                    }
                    else
                        textBox.Text = "No speech was recognised";
                    // change the text back on the button
                    recButton.Text = "Start Recording";
                }
            }

            base.OnActivityResult(requestCode, resultVal, data);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Process results from started activities.
        /// </summary>
        protected override void OnActivityResult(int requestCode, int resultCode, Intent data)
        {
            if (requestCode == RECOGNIZER_RESULT && resultCode == RESULT_OK)
            {
                var matches = data.GetStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);

                var speechText = FindViewById<TextView>(R.Ids.speechText);
                recognizedText = matches.Get(0);
                speechText.SetText(recognizedText);

                var checkIntent = new Intent();
                checkIntent.SetAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
                StartActivityForResult(checkIntent, SPEECH_RESULT);
            }

            if (requestCode == SPEECH_RESULT)
            {
                if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS)
                {
                    textToSpeech = new TextToSpeech(this, this);
                    textToSpeech.SetLanguage(Locale.US);
                }
                else
                {
                    // TTS data not yet loaded, try to install it
                    var ttsLoadIntent = new Intent();
                    ttsLoadIntent.SetAction(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
                    StartActivity(ttsLoadIntent);
                }
            }
            base.OnActivityResult(requestCode, resultCode, data);
        }
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            if (requestCode == VOICE_RECOGNITION_REQUEST_CODE && resultCode == Result.Ok) {
                // Fill the list view with the strings the recognizer thought it could have heard
                IList<String> matches = data.GetStringArrayListExtra (RecognizerIntent.ExtraResults);
                voice_list.Adapter = new ArrayAdapter<String> (this, Android.Resource.Layout.SimpleListItem1, matches);
            }

            base.OnActivityResult (requestCode, resultCode, data);
        }
 protected override void OnActivityResult(int requestCode, Result resultVal, Intent data)
 {
     if (requestCode == VOICE)
     {
         if (resultVal == Result.Ok)
         {
             var matches = data.GetStringArrayListExtra(RecognizerIntent.ExtraResults);
             var result = FindViewById<TextView>(Resource.Id.ResultText);
             result.Text = matches[0].ToString();
         }
     }
     base.OnActivityResult(requestCode, resultVal, data);
 }
        protected override void OnActivityResult(int requestCode, Result resultVal, Intent data)
        {
            if (requestCode == VOICE) {
                if (resultVal == Result.Ok) {
                    IList<String> matches = data.GetStringArrayListExtra (RecognizerIntent.ExtraResults);
                    string textInput = text.Text + matches [0].ToString ();
                    if (textInput.Length > 500)
                        textInput = textInput.Substring (0, 500);
                    text.Text = textInput;
                }
            }

            base.OnActivityResult (requestCode, resultVal, data);
        }
Exemplo n.º 6
0
 protected override void OnActivityResult(int requestCode, Result resultVal, Intent data)
 {
     //mediaPlayer.Stop ();
     //mediaPlayer.Release ();
     if (requestCode == VOICE)
     {
         if (resultVal == Result.Ok)
         {
             var matches = data.GetStringArrayListExtra(RecognizerIntent.ExtraResults);
             var result = voiceResultText;
             result.Text = matches[0].ToString();
             if (result.Text == gowlVoiceHallo) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.IchBinGowl);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceStatus) || result.Text.Contains (gowlVoiceStatusAlt)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.AkkuAufladen2);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceErleben)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.NationalparkUndSneglehuset);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceStrand)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.StrandVonSkagen);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceRestaurant)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.Fiskrestaurant);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceBegleiten)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.KommtMit);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceNationalpark)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.InformationNationalparkTys);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceVogelarten)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.VogelArtenOrt);
                 mediaPlayer.Start ();
             } else if (result.Text.Contains (gowlVoiceFoto)) {
                 MediaPlayer mediaPlayer = MediaPlayer.Create (this, Resource.Raw.SehrGerne);
                 mediaPlayer.Start ();
             }
         }
     }
     base.OnActivityResult(requestCode, resultVal, data);
 }
Exemplo n.º 7
0
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            if (requestCode == VOICE)
            {
                if (resultCode == Result.Ok)
                {
                    var matches = data.GetStringArrayListExtra(RecognizerIntent.ExtraResults);
                    if (matches.Count != 0)
                    {
                        App.fala = matches[0];
                        Xamarin.Forms.MessagingCenter.Send<BuscaPorVoz.SpeechPage>((BuscaPorVoz.SpeechPage)App._page, "achou");
                    }
                    else
                        Xamarin.Forms.MessagingCenter.Send<BuscaPorVoz.SpeechPage>((BuscaPorVoz.SpeechPage)App._page, "naoachou");
                }
                else
                    Xamarin.Forms.MessagingCenter.Send<BuscaPorVoz.SpeechPage>((BuscaPorVoz.SpeechPage)App._page, "naoachou");
            }
            else
                Xamarin.Forms.MessagingCenter.Send<BuscaPorVoz.SpeechPage>((BuscaPorVoz.SpeechPage)App._page, "cancelou");

            base.OnActivityResult(requestCode, resultCode, data);
        }
Exemplo n.º 8
0
        public override void OnReceive(Context context, Intent intent)
        {
            PluginDatabase pluginDb = new PluginDatabase(context);
            if (intent.Action == Strings.ActionRequestAccess)
            {
                var senderPackage = intent.GetStringExtra(Strings.ExtraSender);
                var requestToken = intent.GetStringExtra(Strings.ExtraRequestToken);

                var requestedScopes = intent.GetStringArrayListExtra(Strings.ExtraScopes);

                if (!AreScopesValid(requestedScopes))
                {
                    return;
                }

                if (pluginDb.GetRequestToken(senderPackage) != requestToken)
                {
                    Log.Warn(_tag, "Invalid requestToken!");
                    return;
                }
                string currentAccessToken = pluginDb.GetAccessToken(senderPackage);
                if ((currentAccessToken != null)
                    && (AccessManager.IsSubset(requestedScopes,
                                           pluginDb.GetPluginScopes(senderPackage))))
                {
                    //permission already there.
                    var i = new Intent(Strings.ActionReceiveAccess);
                    i.PutExtra(Strings.ExtraSender, context.PackageName);
                    i.PutExtra(Strings.ExtraAccessToken, currentAccessToken);
                    //TODO: Plugin should verify requestToken to make sure it doesn't receive accessTokens from malicious apps
                    i.PutExtra(Strings.ExtraRequestToken, requestToken);
                    i.SetPackage(senderPackage);
                    context.SendBroadcast(i);

                    Log.Debug(_tag, "Plugin " + senderPackage + " enabled.");
                }
                else
                {
                    //store that scope was requested but not yet approved (=> accessToken = null)
                    pluginDb.StorePlugin(senderPackage, null, requestedScopes);

                    Log.Debug(_tag, "Plugin " + senderPackage + " not enabled.");

                    //see if the plugin has an access token
                    string accessToken = intent.GetStringExtra(Strings.ExtraAccessToken);
                    if (accessToken != null)
                    {
                        //notify plugin that access token is no longer valid or sufficient
                        Intent i = new Intent(Strings.ActionRevokeAccess);
                        i.PutExtra(Strings.ExtraSender, context.PackageName);
                        i.PutExtra(Strings.ExtraAccessToken, accessToken);
                        i.SetPackage(senderPackage);
                        context.SendBroadcast(i);
                        Log.Warn(_tag, "Access token of plugin " + senderPackage + " not (or no more) valid.");
                    }

                }
                if (OnReceivedRequest != null)
                    OnReceivedRequest(this, new PluginHostEventArgs() { Package = senderPackage });

            }
        }
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            if ((_codeSd == requestCode || _codeDb == requestCode || _codeFtp == requestCode) &&
                resultCode == Result.Ok)
            {
                if (data.GetBooleanExtra(Const.ExtraAllowMultiple, false))
                {
                    if (Build.VERSION.SdkInt >= BuildVersionCodes.JellyBean)
                    {
                        var clip = data.ClipData;
                        var sb = new StringBuilder();

                        if (clip != null)
                        {
                            for (int i = 0; i < clip.ItemCount; i++)
                            {
                                sb.Append(clip.GetItemAt(i).Uri.ToString());
                                sb.Append("\n");
                            }
                        }

                        _textView.Text = sb.ToString();
                    }
                    else
                    {
                        var paths = data.GetStringArrayListExtra(Const.ExtraPaths);
                        StringBuilder sb = new StringBuilder();

                        if (paths != null)
                        {
                            foreach (var path in paths)
                            {
                                sb.Append(path);
                                sb.Append("\n");
                            }
                        }
                        _textView.Text = sb.ToString();
                    }
                }
                else
                {
                    _textView.Text = data.Data.ToString();
                }
            }
        }
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            base.OnActivityResult (requestCode, resultCode, data);
            switch (requestCode) {
            case 1:
                if (resultCode == Result.Ok) {
                    if (data.Data == null) {
                        string filename = data.GetStringExtra ("filename");
                        Photoalbums.PhotoPickerUtil.names.Insert (0, filename);
                        using (Drawable draw = Drawable.CreateFromPath(filename)) {
                            imgPollPhoto [0].SetImageDrawable (draw);
                            imgData1 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [0]);
                        }
                    } else {
                        Photoalbums.PhotoPickerUtil.names.Insert (0, getRealPathFromUri (data.Data));
                        using (Drawable draw = Drawable.CreateFromPath (Photoalbums.PhotoPickerUtil.names[0])) {
                            imgPollPhoto [0].SetImageDrawable (draw);
                            imgData1 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [0]);
                        }
                    }
                }
                break;

            case 2:
                if (resultCode == Result.Ok) {
                    if (data.Data == null) {
                        string filename = data.GetStringExtra ("filename");
                        Photoalbums.PhotoPickerUtil.names.Insert (1, filename);
                        using (Drawable draw = Drawable.CreateFromPath(filename)) {
                            imgPollPhoto [1].SetImageDrawable (draw);
                            imgData2 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [1]);
                        }
                    } else {
                        Photoalbums.PhotoPickerUtil.names.Insert (1, getRealPathFromUri (data.Data));
                        using (Drawable draw = Drawable.CreateFromPath (Photoalbums.PhotoPickerUtil.names[1])) {
                            imgPollPhoto [1].SetImageDrawable (draw);
                            imgData2 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [1]);
                        }
                    }
                }
                break;

            case 3:
                if (resultCode == Result.Ok) {
                    if (data.Data == null) {
                        string filename = data.GetStringExtra ("filename");
                        Photoalbums.PhotoPickerUtil.names.Insert (1, filename);
                        using (Drawable draw = Drawable.CreateFromPath(filename)) {
                            imgPollPhoto [2].SetImageDrawable (draw);
                            imgData3 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [2]);
                        }
                    } else {
                        Photoalbums.PhotoPickerUtil.names.Insert (2, getRealPathFromUri (data.Data));
                        using (Drawable draw = Drawable.CreateFromPath (Photoalbums.PhotoPickerUtil.names[2])) {
                            imgPollPhoto [2].SetImageDrawable (draw);
                            imgData3 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [2]);
                        }
                    }
                }
                break;

            case 4:
                if (resultCode == Result.Ok) {
                    if (data.Data == null) {
                        string filename = data.GetStringExtra ("filename");
                        Photoalbums.PhotoPickerUtil.names.Insert (1, filename);
                        using (Drawable draw = Drawable.CreateFromPath(filename)) {
                            imgPollPhoto [3].SetImageDrawable (draw);
                            imgData4 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [3]);
                        }
                    } else {
                        Photoalbums.PhotoPickerUtil.names.Insert (3, getRealPathFromUri (data.Data));
                        using (Drawable draw = Drawable.CreateFromPath (Photoalbums.PhotoPickerUtil.names[3])) {
                            imgPollPhoto [3].SetImageDrawable (draw);
                            imgData4 = File.ReadAllBytes (Photoalbums.PhotoPickerUtil.names [3]);
                        }
                    }
                }
                break;
            case 5:
                if (resultCode == Result.Ok) {
                    IList<String> matches = data.GetStringArrayListExtra (RecognizerIntent.ExtraResults);
                    string textInput = matches [0].ToString ();
                    if (textInput.Length > 200)
                        textInput = textInput.Substring (0, 500);
                    txtPhotoPollMessage.Text = textInput;
                }
                break;
            }
        }
Exemplo n.º 11
0
        protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
        {
            if (requestCode == 0 && resultCode == Result.Ok)
            {
                // Populate the wordsList with the String values the recognition engine thought it heard
                var matches = data.GetStringArrayListExtra(RecognizerIntent.ExtraResults);

                if(matches.Count == 0)
                {
                    Speak("Heard nothing.");
                }
                else
                {
                    var newTask = matches[0];

                    m_TaskEditText.Text = newTask;

                    Speak(newTask);
                }
            }

            base.OnActivityResult(requestCode, resultCode, data);
        }
Exemplo n.º 12
0
		protected override void OnActivityResult (int requestCode, Result resultCode, Intent data)
		{
			Console.WriteLine (resultCode.ToString ());
			if (requestCode == 1 && data != null) {
				var text = data.GetStringArrayListExtra (RecognizerIntent.ExtraResults);
				FindViewById<EditText> (Resource.Id.edText).Text += System.Environment.NewLine + text[0];

				//Print the result
				Console.WriteLine (text[0]);
			}
		}