标签: facebook-ios-sdk

Facebook Graph API v2.0 + - /me/friends返回空,或只有使用我的应用程序的朋友

我试图用Graph API v2.0获取我的朋友姓名和ID,但数据返回空:

{
  "data": [
  ]
}
Run Code Online (Sandbox Code Playgroud)

当我使用v1.0时,以下请求一切正常:

FBRequest* friendsRequest = [FBRequest requestForMyFriends];
[friendsRequest startWithCompletionHandler: ^(FBRequestConnection *connection,
                                              NSDictionary* result,
                                              NSError *error) {
    NSArray* friends = [result objectForKey:@"data"];
    NSLog(@"Found: %i friends", friends.count);
    for (NSDictionary<FBGraphUser>* friend in friends) {
        NSLog(@"I have a friend named %@ with id %@", friend.name, friend.id);
    }
}];
Run Code Online (Sandbox Code Playgroud)

但现在我不能得到朋友!

facebook facebook-graph-api facebook-ios-sdk facebook-graph-api-v2.0

366
推荐指数
3
解决办法
24万
查看次数

如何在iOS 10上使用Facebook iOS SDK

我正在尝试使用Xcode 8来构建一个使用Swift 3登录Facebook的应用程序.当我切换回iOS模拟器9.3时,它可以工作.在iOS 10中,我收到此错误:

""fbauth2:/" The operation couldn’t be completed. (OSStatus error -10814.)"
Run Code Online (Sandbox Code Playgroud)

Optional(Error Domain=com.facebook.sdk.login Code=308 "(null)")
Run Code Online (Sandbox Code Playgroud)

有人有解决方案吗?

注1:

调试后,这个问题是FBSDK无法更新expect_challange.功能SecItemUpdate里面security.framework不行.这是IOS 10的问题

ios facebook-ios-sdk swift ios10

103
推荐指数
2
解决办法
4万
查看次数

原生iOS应用程序:我在Facebook的开发者"iPhone App Store ID"下设置什么,基本?

我已经完成了原生iPhone应用程序,但我需要通过Facebook完成SSO.尽管我付出了最大的努力,但在我在他们的网站上注册我的应用程序的过程中,我无法弄清楚"iPhone App Store ID"字段应该具有什么价值.

我在http://developer.apple.com/ios/manage/bundles/上有一个"应用程序ID",但当我将我的应用程序ID放在该字段中时,Facebook给出了错误"iPhone App Store ID必须是整数" .我的应用程序ID不是整数.

我知道Facebook专门用"App Store"标记该领域; 请告诉我实际情况并非如此,因为......如果它还处于开发状态,那么"App Store"会有什么东西?

每个人都有"那个问题"来激发他们的第一个Stack Overflow帖子,这是我的.我急切地等待着我失踪的消息.

facebook ios facebook-ios-sdk

84
推荐指数
6
解决办法
7万
查看次数

没有这样的模块'RestKit'与cocoapods和swift

我遇到了一个全新项目的问题.RestKit和Facebook SDK都会出现此问题.奇怪的是SwiftyJSON工作得很好.我创建了一个全新的swift项目和一个Podfile:

source 'https://github.com/CocoaPods/Specs.git'

use_frameworks!

target 'test-fb-swift4' do
    pod "FBSDKCoreKit"
    pod 'SwiftyJSON', '~> 2.1'
    pod 'RestKit', :inhibit_warnings => true
end

target 'test-fb-swift4Tests' do

end
Run Code Online (Sandbox Code Playgroud)

创建该文件后,我运行pod install并使用test-fb-swift4.xcworkspace文件重新打开xcode.

现在我的控制器里面放了一个导入RestKit,我得到错误没有这样的模块'RestKit'.我已经尝试了许多不同的方法来格式化Podfile,甚至是非常简单的版本,例如:

source 'https://github.com/CocoaPods/Specs.git'

pod 'RestKit'
Run Code Online (Sandbox Code Playgroud)

我尝试添加和删除use_frameworks,有和没有目标.有和没有:inhibit_warnings.

我正在运行CocoaPods 0.36.4并尝试了最新的rc构建,同样的交易.另一个项目的Objective-C版本运行正常.这是我使用Swift的第一个项目,我坚持这个问题.

restkit facebook-ios-sdk cocoapods swift

60
推荐指数
9
解决办法
5万
查看次数

如何让Xcode找到文件FacebookSDK.h?

它说"未找到FacebookSDK/FacebookSDK.h文件"

然而,我可以在#import上跳转到定义并将它带到文件中.

一旦我添加#import,它现在知道FBFriendPickerDelegate是什么,现在它在该行上没有错误.

我在我的项目和正确的文件夹中有facebookSDK.framework.这是SDK 3.1.我尝试将搜索路径添加到/ FacebookSDK和/FacebookSDK.framework和/ FacebookSDK/Versions/A/Headers等.我还尝试了#import"FacebookSDK.framework/Versions/A/Headers/FacebookSDK.h",它仍然说它可以找不到它.我也试过干净并重新启动.我有最新版本的Xcode.

//
//  FacebookView.h
//

#import <UIKit/UIKit.h>
#import <FacebookSDK/FacebookSDK.h>

@interface FacebookView : UIViewController <FBFriendPickerDelegate>
{
}
Run Code Online (Sandbox Code Playgroud)

xcode header-files facebook-ios-sdk

48
推荐指数
4
解决办法
6万
查看次数

[Facebook-iOS-SDK 4.0]如何从FBSDKProfile获取用户电子邮件地址

我正在将我的应用程序升级到Facebook-iOS-SDK-4.0,但似乎我无法收到用户的电子邮件FBSDKProfile,因为它只提供,用户名,用户ID等.

objective-c facebook-ios-sdk facebook-ios-sdk-4.0

45
推荐指数
4
解决办法
4万
查看次数

该应用程序引用id中的非公共选择器(Facebook SDK iOS)

在使用Application Loader提交我的应用程序时,我收到了此警告.

The app references non-public selector in MyApp : id
Run Code Online (Sandbox Code Playgroud)

此警告可能会从Apple AppStore的验证中拒绝我的应用程序.

我的应用程序使用Facebook SDK iOS 3.1.1(也尝试过3.1)

facebook ios application-loader facebook-ios-sdk

43
推荐指数
1
解决办法
2万
查看次数

FBSDKCoreKit的Facebook iOS8 SDK构建模块错误

我正在尝试将Facebook SDK添加到Xcode中的iOS 8 Objective-C应用程序中.我根据FB-dev说明进行了安装.但是,当我将标头添加到AppDelegate.m文件时,出现"无法构建模块'FBSDKCoreKit'"错误.

#import "AppDelegate.h"
#import <FBSDKCoreKit/FBSDKCoreKit.h>
Run Code Online (Sandbox Code Playgroud)

基于我在别处读到的内容

  1. 我已经清理了构建并重新安装了Xcode.
  2. 我还重新安装了Facebook SDK安装程序,并尝试将其添加到空白项目中(以防我的应用程序出现损坏的情况).
  3. 我在指令中仔细检查了plist和框架文件FB列表,但似乎没有任何遗漏.

我很难过.

objective-c facebook-ios-sdk ios8

42
推荐指数
7
解决办法
3万
查看次数

Facebook共享内容仅在iOS 9中共享URL

分享FBSDKShareLinkContentFBSDKShareDialog在iOS 8的精品工程,但无法分享imageURL,contentTitle,contentDescriptioniOS上的9个设备.

该应用程序使用iOS 9 SDK,Xcode 7,Facebook SDK 4.7.0 构建,完成了为iOS9准备应用程序中提到的所有操作.该应用程序目前在App Store中不可用,Facebook应用程序处于开发模式.

呈现对话框的代码非常常见(Swift 2.0):

let content = FBSDKShareLinkContent()

content.contentURL = <URL to the app in the App Store>
content.imageURL = <valid image URL>
content.contentTitle = <some title>
content.contentDescription = <some descr>

let shareDialog = FBSDKShareDialog()
shareDialog.fromViewController = viewController
shareDialog.shareContent = content
shareDialog.delegate = self

if !shareDialog.canShow() {
    print("cannot show native share dialog")
}

shareDialog.show()
Run Code Online (Sandbox Code Playgroud)

在iOS 9上,Facebook SDK提供了没有图像,标题和描述的原生对话框: 在iOS 9上,Facebook SDK提供了没有图像,标题和描述的原生对话框

在显示对话框时,当在iOS 9设备上安装FB应用程序时,会出现错误,通过向Info.plist添加相应的URL解决此问题无法解决问题.它只是不再出现的日志语句. …

iphone facebook ios facebook-ios-sdk ios9

38
推荐指数
3
解决办法
4万
查看次数

Facebook SDK 3.1 - 验证访问令牌时出错

我正在尝试将我的应用程序转换到新的Facebook SDK 3.1(支持iOS6身份验证).

我工作得很好,所以我决定从FB网站上的授权应用程序列表中删除该应用程序,以测试iOS是否会再次请求许可.

现在我第一次调用会[FBRequest requestForMe]导致此错误:

响应:

{
  "error": {
    "message": "Error validating access token: Session does not match current stored session. This may be because the user changed the password since the time the session was created or Facebook has changed the session for security reasons.",
    "type":"OAuthException",
    "code":190,
    "error_subcode":460
  }
}
Run Code Online (Sandbox Code Playgroud)

一些细节:

我正在尝试按如下方式打开会话:

   [FBSession openActiveSessionWithReadPermissions:nil
                                       allowLoginUI:YES
                                  completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {

                                           switch (state) {
                                               case FBSessionStateOpen:
                                                   [self presentPostOptions];
                                                   break;

                                               case FBSessionStateClosed:
                                               case FBSessionStateClosedLoginFailed:
                                                   [FBSession.activeSession closeAndClearTokenInformation]; …
Run Code Online (Sandbox Code Playgroud)

facebook ios facebook-ios-sdk ios6 facebook-sdk-3.1

37
推荐指数
2
解决办法
3万
查看次数