标签: facebook-sdk-3.1

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万
查看次数

Facebook SDK访问令牌和ajax

我按照Facebook SDK for PHP文档创建了两个文件,login.php和fb-callback.php,其中包含fb-callback.php中的所有查找逻辑.当我这样做,一切正常.

但是我想将查找逻辑移到get-posts.php并通过fb-callback.php中的ajax调用它.当我这样做时,我似乎无法获得访问令牌.我收到下面提到的错误,"访问令牌:错误的请求".

我已将fb-config.php和get-posts.php注册为有效的OAuth重定向URI.那么如何获得get-posts.php的正确参数呢?

以下是所有相关文件:

的login.php

<?php
require_once "config.php";

$redirectURL = 'https://' . $_SERVER[ 'SERVER_NAME' ] . '/r/fb-callback.php';
$permissions = ['email','user_photos','user_posts'];
$loginUrl = $helper->getLoginUrl($redirectURL, $permissions);
?>

<a href='<?php echo $loginUrl; ?>'>
<img src='continue-with-facebook.png'>
</a>
?>
Run Code Online (Sandbox Code Playgroud)

config.php文件

<?php
if( !session_id() ) {
    session_start();
}

require_once '/home/bitnami/vendor/autoload.php';

$fb = new Facebook\Facebook([
  'app_id' => '---',
  'app_secret' => '---',
  'default_graph_version' => 'v3.1',
  ]);

$helper = $fb->getRedirectLoginHelper();
?>
Run Code Online (Sandbox Code Playgroud)

FB-callback.php

<?php
require_once("config.php");
?>
<html>
<head>
  <script type='text/javascript' src='jquery.js'></script>
  <script>
    var $j = jQuery.noConflict();

    $j(document).ready(function …
Run Code Online (Sandbox Code Playgroud)

php ajax facebook facebook-access-token facebook-sdk-3.1

10
推荐指数
1
解决办法
450
查看次数

在iOS App发布之前提交Facebook App进行审核?

我开发了一个iOS应用程序,其中包含用于将Open Graph用户故事发布到Facebook的Facebook SDK.一切都很好,所以我昨天发送了我的iOS应用程序给Apple审查.

但我的问题是Facebook应用程序:我必须提交Facebook应用程序进行审核,以便公众可以使用它.但是我无法提交,因为Facebook无法通过iTunes商店中的App-ID访问我的iOS应用程序.请参阅以下错误消息:

在此输入图像描述

如果我从任何公共应用程序(例如Whatsapp)插入App-ID,我可以保存我的更改,并且我可以提交Facebook应用程序.

我担心的是,如果我的iOS应用程序进入App Store并且Facebook功能不起作用,我将收到来自用户的错误评级.

所以我的问题是:如果我的iOS应用程序不向公众发布,有没有办法发送我的Facebook应用程序进行审核?

//编辑根据BjörnKaisers的回答:我只想提交我的Open Graph故事,但问题是我必须添加截图.如果我点击"添加屏幕截图",弹出窗口打开,我必须选择平台,但我无法选择我在设置中添加的iOS平台(它不可见),因为它没有iPhone商店ID.再次,如果我从公共应用程序(例如Whatsapp)添加(用于测试)iPhone商店ID,我可以选择iOS平台来添加屏幕截图.

看这里: 在此输入图像描述

没有这些截图我无法提交审查:(这是一个厄运循环.

更新29.01.2014:正如我提议的那样,我选择"Webseite"作为平台,并在我的iOS应用程序中使用Facebook上传截图,希望Facebook评论者能够理解屏幕截图显示的是iOS应用程序,但今天我未通过审核: 在此输入图像描述

facebook ios facebook-sdk-3.1

9
推荐指数
1
解决办法
9327
查看次数

如何从iOS中的Facebook SDK获取用户信息?

如何在用户会话打开时获取用户名.我尝试了来自Facebook sdk示例的会话登录示例.如果有人知道解决方案,请帮助我.提前致谢.

 - (IBAction)buttonClickHandler:(id)sender {
        // get the app delegate so that we can access the session property
        SLAppDelegate *appDelegate = [[UIApplication sharedApplication]delegate];

        // this button's job is to flip-flop the session from open to closed
        if (appDelegate.session.isOpen) {
            // if a user logs out explicitly, we delete any cached token information, and next
            // time they run the applicaiton they will be presented with log in UX again; most
            // users will simply close the app or switch away, …
Run Code Online (Sandbox Code Playgroud)

facebook ios facebook-sdk-3.1

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

在哪里为Facebook App设置"共享通过"文本

我有一个可以在Facebook上创建股票的iOS应用程序.共享本身工作正常,但我们没有看到"共享通道"行的文本,如附图中所示.它只是说"通过共享链接.".我希望文本"通过APPNAME共享链接".代替.

在此输入图像描述

我已经尝试为Facebook App添加一些设置,但这没有帮助.

这就是我在iOS应用中触发共享的方式:

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               name], @"name",
                               caption, @"caption",
                               description, @"description",
                               url, @"link",
                               picture, @"picture",
                               nil];

[FBRequestConnection startWithGraphPath:@"/me/feed"
                             parameters:params
                             HTTPMethod:@"POST"
                      completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
                          if (!error) {
                              // ...
                          } else {
                              // ...
                          }
                      }];
Run Code Online (Sandbox Code Playgroud)

我在哪里可以进行此设置?它是Facebook应用程序的设置还是我必须将其添加到我的iOS应用程序中的共享调用?

share facebook ios facebook-sdk-3.1

6
推荐指数
1
解决办法
1064
查看次数

如何捕获无法找到com.facebook.katana.provider.PlatformProvider错误的提供商信息

有人能告诉我在哪里设置一个try/catch来捕获它吗?

02-10 22:54:35.701: E/ActivityThread(787): Failed to find provider info for com.facebook.katana.provider.PlatformProvider
Run Code Online (Sandbox Code Playgroud)

我已经知道这是因为我没有在手机中安装facebook应用程序.

我想在抛出异常时做一个Toast这不起作用.

shareButton.setOnClickListener(new OnClickListener() {

        public void onClick(View arg0) {

            // TODO Auto-generated method stub
            try{
            FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(Archivo.this)
            .setLink(pagina)
            .setName(nombre)
            .setPicture(photo)
            .setDescription(brief)
            .build();
            uiHelper.trackPendingDialogCall(shareDialog.present());
            }
            catch(FacebookDialogException ex){
                int duration = Toast.LENGTH_SHORT;
            CharSequence FacebookDialogError="Instale y actualize su version de Facebook";
            Toast toast = Toast.makeText(activity,FacebookDialogError , duration);
            toast.show();

            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

我在facebookdialog收到异常的地方设置了相同的toast,它仍然无效.

 public FacebookDialog build() {
        validate();

        Bundle extras = new Bundle();
        putExtra(extras, NativeProtocol.EXTRA_APPLICATION_ID, applicationId);
        putExtra(extras, NativeProtocol.EXTRA_APPLICATION_NAME, applicationName); …
Run Code Online (Sandbox Code Playgroud)

android facebook exception try-catch facebook-sdk-3.1

5
推荐指数
1
解决办法
5251
查看次数

Facebook移动广告应用程序安装未显示在广告系列报告中

我已经成功实现了Facebook SDK和AppEvents,以报告我的Android应用程序的安装情况。我已经验证它在仪表板上注册了最后一次安装数据,并且在Facebook上的“应用程序事件”选项卡中看到了数千个fb_mobile_activate_app事件。

我一直在应用程序上运行付费广告系列,但是,即使自添加SDK以来超过24小时,我仍收到0次安装的报告。由于我的预算基于广告的效果,因此没有任何数据似乎很奇怪。

我在这里缺少什么吗?

android facebook facebook-ads-api facebook-sdk-3.1

5
推荐指数
1
解决办法
2910
查看次数

在Facebook页面上发布为管理员iOS Facebook SDK

我需要在自己的粉丝页面上发帖子作为管理员.我创建了这个代码跳转,传递页面的id"fbPageID"将在该页面上留下帖子,但它实际上在我的个人资料上留下了帖子.

NSArray *publishPerms = @[@"manage_pages",@"publish_actions", @"publish_stream"];
[FBSession openActiveSessionWithPublishPermissions:publishPerms     defaultAudience:FBSessionDefaultAudienceEveryone allowLoginUI:NO completionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
        if (session.isOpen) {
            [FBRequestConnection startForPostStatusUpdate:self.textBox.text place:fbPageID tags:nil completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
                if (error){
                    NSLog(@"error %@",error);
                }
                else{
                    NSLog(@"POSTED %@",result);
                }

            }];
        }
        else{
            NSLog(@"session not open");
        }
Run Code Online (Sandbox Code Playgroud)

admin objective-c facebook-page ios facebook-sdk-3.1

5
推荐指数
1
解决办法
153
查看次数

将新的Facebook 5.1 SDK导入到现有项目中时出现InternalCompilerError

如果我在一个新项目中导入这个包,我根本就没有问题.

但是,当我尝试将其导入我现有的项目(具有5.0.4版本的SDK)时,导入完成后,我收到以下错误消息:

Unhandled Exception: Mono.CSharp.InternalErrorException: Internal error

  at Mono.CSharp.MethodGroupExpr.IsApplicable (Mono.CSharp.ResolveContext ec, Mono.CSharp.Arguments& arguments, Int32 arg_count, System.Reflection.MethodBase& method, System.Boolean& params_expanded_form) [0x00000] in <filename unknown>:0 

  at Mono.CSharp.MethodGroupExpr.OverloadResolve (Mono.CSharp.ResolveContext ec, Mono.CSharp.Arguments& Arguments, Boolean may_fail, Location loc) [0x00000] in <filename unknown>:0 

  at Mono.CSharp.Invocation.DoResolveOverload (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0 

  at Mono.CSharp.Invocation.DoResolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0 

  at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec, ResolveFlags flags) [0x00000] in <filename unknown>:0 

  at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0 

  at Mono.CSharp.ExpressionStatement.ResolveStatement (Mono.CSharp.BlockContext ec) [0x00000] in <filename unknown>:0 

  at …
Run Code Online (Sandbox Code Playgroud)

facebook facebook-unity-sdk facebook-sdk-3.1

4
推荐指数
1
解决办法
2124
查看次数

Facebook SDK"包螺栓不存在错误"Android Studio

我试图使用方法将Facebook登录添加到我的应用程序,但我收到以下错误:

Error:(21, 13) error: package bolts does not exist
Error:(22, 13) error: package bolts does not exist
Error:(23, 13) error: package bolts does not exist
Error:(24, 13) error: package bolts does not exist
Error:(37, 49) error: cannot find symbol class AppLinkResolver
Error:(48, 32) error: cannot find symbol class AppLink
Error:(58, 12) error: cannot find symbol class Task
Error:(58, 17) error: cannot find symbol class AppLink
Error:(80, 12) error: cannot find symbol class Task
Error:(80, 26) error: cannot find …
Run Code Online (Sandbox Code Playgroud)

android android-studio facebook-sdk-3.1

4
推荐指数
1
解决办法
5430
查看次数