一千萬個為什麽

搜索

如何從應用程序內啟動內置應用程序

我想允許用戶在開始屏幕上從固定磁貼管理他們的WiFi設置。我已經設置了正確的拼貼,但我在應用程序的MainPage OnNavigatedTo事件中檢查了這一點。一切正常,除非從次要磁貼啟動時,您可以在啟動內置WiFi應用程序之前一秒鐘內看到實際的應用程序負載。我用這個功能看到的所有其他應用程序都沒有這個問題。我想避免這種情況,但我不確定在哪裏放置我的代碼。

MainPage.xaml.cs中

protected async override void OnNavigatedTo(NavigationEventArgs e)
    {
        if (fromTile == true) //flag to force the app to close if navigating back from Built in App
            App.Current.Terminate();

        //From Pinned Tile
        if (NavigationContext.QueryString.ContainsKey(Constants.Key))
        {
            string _title = null;
            _title = NavigationContext.QueryString[Constants.Key];

            if (_title != null)
            {
                switch (_title)
                {
                    case "Tile_WiFi":
                        await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-settings-wifi:"));

                    .. do more stuff ..
                }

                NavigationContext.QueryString.Remove(Constants.Key);
                fromTile = true;
            }
        }
    }

編輯*

When placing this code in the constructor I get an System.AccessViolationException on line NavigationContext.QueryString.ContainsKey(Constants.Key) stating Attempt to read or write protected memory.

最佳答案

請參考以下鏈接以實現您的要求,

http: //abundantcode.com/how-to-launch-the-device-wifi-settings-app-from-the-windows-phone-8-app/

問候, Riyaj艾哈邁德我

轉載註明原文: 如何從應用程序內啟動內置應用程序