我希望从 .NET 7 iOS 应用程序启动 .NET MAUI 应用程序。我也期待启动的应用程序返回数据。
我正在使用
if(UIApplication.SharedApplication.CanOpenUrl(new NSUrl("urlScheme://")))
{
UIApplication.SharedApplication.OpenUrl(new NSUrl("urlScheme://"));
}
我想澄清一下:这个 urlScheme 应该在 MAUI 应用程序的 info.plist 中的哪个键下指定?一篇文章提到了 LSApplicationQueriesSchemes。我尝试过,但是如果条件返回 false,表明该应用程序无法使用此方案打开应用程序。
如果App A需要调用App B,那么在B的
info.plist
中需要声明:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>targetapp</string>
</array>
</dict>
</array>
在A的info.plist中
<key>LSApplicationQueriesSchemes</key>
<array>
<string>targetapp</string>
</array>
然后您可以在 AppDelegate 中使用以下命令来启动应用程序 B。
if (UIApplication.SharedApplication.CanOpenUrl(new NSUrl("targetapp://")))
{
UIApplication.SharedApplication.OpenUrl(new NSUrl("targetapp://"));
}