【问题标题】:iOS: -canOpenURL: failed for URL: "fbauth2:/" - error: "The operation couldn’t be completed. (OSStatus error -10814.)" on Simulators & DevicesiOS:-canOpenURL:URL 失败:“fbauth2:/”-错误:“无法完成操作。(OSStatus 错误 -10814。)”在模拟器和设备上
【发布时间】:2018-04-05 03:19:55
【问题描述】:

我使用了Link,但我收到了该错误消息。不可能知道为什么。我想要的是只有一个按钮,单击它以在 iPad 上共享本地图像,而无需安装 facebook 应用程序。我只希望用户单击按钮,输入他的登录名/密码,然后发布,仅此而已。

UIImage *image = [UIImage imageNamed:@"..."];

FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init];
photo.image = image;
photo.userGenerated = YES;
FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init];
content.photos = @[photo];

appDelegate 中的openUrl 方法:

- (BOOL) application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
    NSLog(@"url recieved: %@", url);
    NSLog(@"query string: %@", [url query]);
    NSLog(@"host: %@", [url host]);
    NSLog(@"url path: %@", [url path]);

      return YES;
}

我准确地说是线路有问题:

[[FBSDKApplicationDelegate sharedInstance] application:application
                         didFinishLaunchingWithOptions:launchOptions];
  • 在控制台(模拟器)中执行其他消息错误:
    由于模拟器错误而回退到从 NSUserDefaults 加载访问令牌
    由于模拟器错误,退回到在 NSUserDefaults 中存储访问令牌

  • 不会在控制台(设备)中出现其他消息错误:
    Task . finished with error - code: -1001

有关信息,这是我的 plist 键:

<key>CFBundleURLTypes</key>
<array>
    <dict>
    <key>CFBundleURLSchemes</key>
    <array>
        <string>fb2000xxxxxxxxxxx</string>
    </array>
    <key>CFBundleTypeRole</key>
    <string>Editor</string>
    <key>CFBundleURLName</key>
    <string>com.newTelApps.WebBoxEssaisPresse</string>
    </dict>
</array>
<key>FacebookAppID</key>
<string>2000xxxxxxxxxxx</string>
<key>FacebookDisplayName</key>
<string>WebBox</string>
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>fbapi</string>
    <string>fb-messenger-api</string>
    <string>fbauth2</string>
    <string>fbshareextension</string>
    <string>fbapi</string>
    <string>twitter</string>
    <string>facebook</string>
    <string>fbapi</string>
    <string>fbapi20130214</string>
    <string>fbapi20130410</string>
    <string>fbapi20130702</string>
    <string>fbapi20131010</string>
    <string>fbapi20131219</string>
    <string>fbapi20140410</string>
    <string>fbapi20140116</string>
    <string>fbapi20150313</string>
    <string>fbapi20150629</string>
    <string>fbauth</string>
    <string>fb-messenger-api20140430</string>
</array>

提前致谢。

【问题讨论】:

  • AppDelegate中添加openURL方法了吗?
  • @Anbu.Karthik 我试过了,但出现同样的错误。
  • @Raj 是的,我用我的 openUrl 方法更新了我的 stackoverflow 票以向你展示
  • Facebook 不再集成在 iOS 11 中,这就是为什么 FBSDKShareDialog 仅在设备上安装了本机 Facebook 应用程序时才起作用的原因。您在 iOS 11 或更早版本上是否有该错误?

标签: ios objective-c facebook facebook-graph-api ios-simulator


【解决方案1】:

转到Info.plist 并更改 App Transport Security Settings ==> Allow Arbitrary LoadsYES

添加LSApplicationQueriesSchemes

【讨论】:

  • 嗨,我已经放了那些钥匙,还有一些其他的。我更新了我的票给你看
猜你喜欢
  • 2019-02-10
  • 2018-03-01
  • 2020-07-24
  • 1970-01-01
  • 2019-02-18
  • 2019-01-28
  • 1970-01-01
  • 2015-12-17
相关资源
最近更新 更多