Flutter Flatter url_launcher在安装的应用程序(Facebook)中打开Facebook链接,但在IOS中,它只打开Facebook而不打开链接
我使用了Url_启动程序包;如果Facebook应用程序安装了其他浏览器,我想在Facebook应用程序中打开Facebook链接。这在Android中很好地工作,但在IOS中它只打开Facebook应用程序,而不打开链接 代码是: 我的工作职能:Flutter Flatter url_launcher在安装的应用程序(Facebook)中打开Facebook链接,但在IOS中,它只打开Facebook而不打开链接,flutter,dart,flutter-test,flutter-packages,flutter-ios,Flutter,Dart,Flutter Test,Flutter Packages,Flutter Ios,我使用了Url_启动程序包;如果Facebook应用程序安装了其他浏览器,我想在Facebook应用程序中打开Facebook链接。这在Android中很好地工作,但在IOS中它只打开Facebook应用程序,而不打开链接 代码是: 我的工作职能: void _launchSocial(String url, String fallbackUrl) async { // Don't use canLaunch because of fbProtocolUrl (fb://) try {
void _launchSocial(String url, String fallbackUrl) async {
// Don't use canLaunch because of fbProtocolUrl (fb://)
try {
bool launched =
await launch(url, forceSafariVC: false, forceWebView: false);
if (!launched) {
await launch(fallbackUrl, forceSafariVC: false, forceWebView: false);
}
} catch (e) {
await launch(fallbackUrl, forceSafariVC: false, forceWebView: false);
}
}
然后在onPressed或onTab中:
_launchSocial('fb://profile/408834569303957', 'https://www.facebook.com/dorockxl')
不要忘记将fbYOURPAGEID添加到Info.plist中的CbundleurlSchemes数组:
注意:您可以使用查找页面的id
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb408834569303957</string>
</array>
</dict>
</array>
顺便说一句,您可以对Twitter和Instagram使用此方法,而无需额外设置。Url足以打开这些本机应用程序:
_发动社会运动https://www.instagram.com/YOURNAME/",
_发动社会运动https://twitter.com/YOURNAME",
我的工作职能:
void _launchSocial(String url, String fallbackUrl) async {
// Don't use canLaunch because of fbProtocolUrl (fb://)
try {
bool launched =
await launch(url, forceSafariVC: false, forceWebView: false);
if (!launched) {
await launch(fallbackUrl, forceSafariVC: false, forceWebView: false);
}
} catch (e) {
await launch(fallbackUrl, forceSafariVC: false, forceWebView: false);
}
}
然后在onPressed或onTab中:
_launchSocial('fb://profile/408834569303957', 'https://www.facebook.com/dorockxl')
不要忘记将fbYOURPAGEID添加到Info.plist中的CbundleurlSchemes数组:
注意:您可以使用查找页面的id
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb408834569303957</string>
</array>
</dict>
</array>
顺便说一句,您可以对Twitter和Instagram使用此方法,而无需额外设置。Url足以打开这些本机应用程序:
_发动社会运动https://www.instagram.com/YOURNAME/",
_发动社会运动https://twitter.com/YOURNAME",
您是否编辑了iOS的info.plist文件?您必须为iOS设置URL方案,才能使深度链接正常工作。@DanyData不,我没有这样做,您可以与我共享任何重新添加该链接的链接吗。@DanyData我不明白。您可以使用其他链接或解决方案吗。您是否编辑了iOS的info.plist文件?您必须为iOS设置URL方案,才能使深度链接正常工作。@danypata不,我没有这样做,您可以与我共享任何重新添加该链接的链接吗。@danypata我不明白。您可以使用其他链接或解决方案吗。您使用哪个插件来启动URL?因为上面的代码给了我一个错误。错误:找不到方法:“launch”。我在Flatter 1.20.1上使用了url_launcher:^5.5.0。颤振是新的,所以版本可能会有很大的差异。您使用哪个插件来启动url?因为上面的代码给了我一个错误。错误:找不到方法:“launch”。我在Flatter 1.20.1上使用了url_launcher:^5.5.0。颤振是新的,所以版本可能会有很大的差异。