我尝试使用url_launcher软件包,但由于某种原因,它似乎仅适用于默认方案,例如http,mail,sms,tel。
String phoneURL = 'skype:skype_login';
if (await canLaunch(url)) {
await launch(url);
}
那么有什么机会通过Flutter代码打开外部应用(例如Skype)?
答案 0 :(得分:1)
好吧,看来我明白了。尚未记录,或者我还没有看到这些信息。我从this issue.
获得了一些相关信息首先,对于Skype(或任何具有URI方案的外部流行应用),要在iOS上运行它,请将以下代码添加到Xcode中的项目Info.plist文件中:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>skype</string>
</array>
Android无需采取特殊步骤。
此外,您可以检查应用程序是否已打开,因此它会返回一个布尔值,指示启动调用是否成功:
if (await canLaunch('skype:username')) {
final bool nativeAppLaunchSucceeded = await launch(
'skype:username',
);
if (!nativeAppLaunchSucceeded) {
// Do something else
}
}