.NET Maui Launcher调用App Store/Google Play的URL示例是否存在?
.NET MAUI Launcher 调用应用商店 URI 是否可行?
这种调用方式核心取决于对应平台是否支持该自定义URI Scheme,.NET MAUI的Launcher只是负责唤起系统中已注册的Scheme,你之前写的appStore://并非官方支持的Scheme,直接调用会失败,正确的实现方式需要分平台处理:
iOS(App Store)
iOS官方支持唤起App Store的Scheme是itms-apps://,正确调用格式如下:
// 跳转至指定ID的App Store应用页面 await Launcher.Default.OpenAsync("itms-apps://itunes.apple.com/app/id1234567");
如果担心Scheme不可用(极端场景),也可以直接使用HTTPS链接,系统会自动唤起App Store应用(未安装则跳转网页版):
await Launcher.Default.OpenAsync("https://apps.apple.com/app/id1234567");
Android(Google Play)
Android端唤起Google Play的官方Scheme是market://,调用格式为:
// 跳转至指定包名的Google Play应用页面 await Launcher.Default.OpenAsync("market://details?id=com.your.app.package");
同样,HTTPS链接也能兼容唤起应用或跳转网页:
await Launcher.Default.OpenAsync("https://play.google.com/store/apps/details?id=com.your.app.package");
额外建议:先检查Scheme可用性
为了避免因Scheme未注册导致的异常,建议调用前先通过CanOpenAsync判断:
var appStoreUri = new Uri("itms-apps://itunes.apple.com/app/id1234567"); if (await Launcher.Default.CanOpenAsync(appStoreUri)) { await Launcher.Default.OpenAsync(appStoreUri); } else { // 降级处理:跳转到网页版 await Launcher.Default.OpenAsync("https://apps.apple.com/app/id1234567"); }
内容的提问来源于stack exchange,提问作者Cef
相关产品推荐
相关产品推荐

