2012年11月1日 星期四

透過WP8語音辨識功能啟動自己撰寫的App

前面提到過,Windows Phone 8 具有相當優秀的語音辨識能力,我們不僅可以輕易的讓我們自己撰寫的App,透過語音來啟動,甚至也可以在App當中利用語音辨識功能來實作出一些效果。

接著我們就要來看,如何讓我們自己撰寫的App,也支援語音辨識功能。首先來看最基本的,我們要讓使用者可以透過語音來開啟我們的App。

實作的方式很簡單,首先,請先設定好你的App的WMAppManifest.xml,主要的是App名稱以及Capabilities中的Speech_Recognition:
 
設定好了之後,請在你的App中加入一個 XML 檔案(SupportedVoiceCommands.xml),格式如下:

  

     我的語音程式 
     試試看說:開啟 我的語音程式 

    
      跳到測試頁
      跳到測試頁
      我的語音程式 顯示測試頁
      
    
  

上面這段XML主要在描述我們這支App要支援那些語音辨識功能。
接著,再到App.xaml.cs當中,加入底下這段程式碼:
        async private static void InitializeVoiceCommands()
        {
            var filename = "SupportedVoiceCommands.xml";

            try
            {
                var location = Package.Current.InstalledLocation.Path;
                var fileUriString = String.Format("file://{0}/{1}", location, filename);
                await VoiceCommandService.InstallCommandSetsFromFileAsync
                    (new Uri(fileUriString));
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex.Message);
            }
        }
上面這段程式碼,是讓我們所撰寫的語音指令XML檔案,透過VoiceCommandService進行註冊。 當然,在App.xaml.cs的public App()當中,我們要補上一句:
        public App()
        {
           ...略...

            InitializeVoiceCommands();
        }
如此一來,就大功告成囉...來試試看吧...

1 則留言:

Robin Li 提到...

進入App程式中,還能繼續使用語音辨識,做其他的指令 ?