简体   繁体   中英

Windows Phone 8.1 : how to Launch an Installed app From My app

I have tried the following links

How do I launch other app from my own app in Windows Phone 8.1?

Call an external app on windows phone 8.1 runtime(not silverlight) xaml c# application

but nothing is working for me as i simply wants to launch one app for eg angry birds from my app using a button click.

Please Help

If the app has a registered URI , then you should be able to use Launcher.LaunchUriAsync for this. You can also find some help, here at MSDN - How to launch the default app for a URI .

Otherwise I don't think it's possible.

It works for me.

  1. setup your app which launch from other.

    add this in WMAppManifest.xaml between < /token> and < ScreenResolutions>

     <Extensions> <Protocol Name="alsdkcs" NavUriFragment="encodedLaunchUri=%s" TaskID="_default" /> </Extensions> 

    add a class "AssociationUriMapper " and override the function "MapUri()"

     class AssociationUriMapper : UriMapperBase{ private string tempUri; public override Uri MapUri(Uri uri){ tempUri = System.Net.HttpUtility.UrlDecode(uri.ToString()); if (tempUri.Contains("alsdkcs:MainPage?id=")){ int idIndex = tempUri.IndexOf("id=") + 3; //3 is the length of "id=" string id = tempUri.Substring(idIndex); return new Uri("/MainPage.xaml?id=" + id, UriKind.Relative); } return uri; } } 

    and call them from other app.xaml.cs at this section of InitializePhoneApplication() function

     RootFrame.UriMapper = new AssociationUriMapper(); // add this line only between RootFrame.Navigated += CompleteInitializePhoneApplication; and RootFrame.NavigationFailed += RootFrame_NavigationFailed; 
  2. finally call fron other app to launch an app

     var success = await Windows.System.Launcher.LaunchUriAsync(new System.Uri("alsdkcs:MainPage?id="+5)); if (success){ // URI launched } else{ // URI launch failed } 

    where "alsdkcs" is protocol name.

more details see msdn

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM