UWP 唤起应用商城,邮件
UWP做到收尾工作的时候,一般需要在应用内做一个关于页面,用于放你的邮箱链接,商店评论链接等。。
一:打开链接
打开链接有两种做法
1.用 HyperlinkButton (超链接按钮)这个控件,给它的NavigateUri属性设置你要跳转的页面的地址
<HyperlinkButton Margin="5,0,5,0" Width="50" Height="50" NavigateUri="http://weibo.com/liushu845447380">
但是HyperlinkButton里的内容是文字的时候,会在文字下面加上一条下划线,貌似改模板也去不掉(可能不对),有些人应该不喜欢这个下换线。
2.用普通的控件,比如Button控件,加个Click点击事件,在后台写个打开指定网页的代码,也可以实现跳转。
<Button Foreground="White" Margin="0,10,0,0" Click="RateApp"> 给我点个赞. </Button>
给button加个click事件
/// <summary> /// 点击跳到评论页面 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void RateApp(object sender, RoutedEventArgs e) {
var a = await Launcher.LaunchUriAsync(new Uri("ms-windows-store://review/?productid=9n9s9lsrpc7q")); }
用Launcher这个类里面的LaunchUriAsync() 方法。通过异步的方式,跳转到你指定的uri地址。
这个和webview还是有区别的,webview是在应用自己内的一个控件,Launcher这个类会唤起系统里的浏览器,外部进行跳转。
二:打开应用链接和评价应用链接
打开指定应用地址: ms-windows-store://pdp/?productid=9n9s9lsrpc7q
9n9s9lsrpc7q这个字符串是软件的id,具体的id要到开发者中心去找
跳到应用商店中评价应用:ms-windows-store://review/?productid=9n9s9lsrpc7q
9n9s9lsrpc7q同样这个也是软件的id
三:发送邮件
private async void EmailToMe(object sender, RoutedEventArgs e) { //收件人 EmailRecipient emailRecipient1 = new EmailRecipient("zwmao@outlook.com"); EmailRecipient emailRecipient2 = new EmailRecipient("845447380@qq.com");
//具体的一封email EmailMessage emailMessage = new EmailMessage();
//给邮件添加收件人,可以添加多个 emailMessage.To.Add(emailRecipient1); emailMessage.To.Add(emailRecipient2); //通过邮件管理类,生成一个邮件 简单来说 帮你唤起设备里的邮件软 await EmailManager.ShowComposeNewEmailAsync(emailMessage); }
将这个事件与Click绑定一下就基本可以用了。
-----some words----
1.Hyperlink 超链接
2.Navigate 导航
3.Launcher 发射器
4.async 异步
5.Recipient 收件人
6.Email 邮件
7.compose 组成
--------the end-------