0

我已经将一个现有的 XCode 项目转换为 Rubymotion,但我一直遇到 Facebook-iOS-SDK 集成的问题。

在我的 Rakefile 中:

$:.unshift("/Library/RubyMotion/lib")

require 'motion/project'
require 'motion-cocoapods'

require File.join(File.dirname(__FILE__), 'version')

Motion::Project::App.setup do |app|
  app.name = "My App"  
  app.pods do
    dependency 'Facebook-iOS-SDK', '~> 1.2'
  end
end

在我的应用程序委托中,我为 Facebook 对象定义了一个属性:

def facebook
  @facebook ||= Facebook.alloc.initWithAppId(FACEBOOK_APP_ID, andDelegate:self)
end

虽然我可以facebook.authorize()毫无问题地调用 ,但当我询问 Facebook 会话是否有效时:

appDelegate = UIApplication.sharedApplication.delegate
if appDelegate.facebook.sessionValid?
  # do something here...
end

我得到这个例外:

(main)> Objective-C stub for message `isSessionValid' type `c@:' not precompiled. Make sure you properly link with the framework or library that defines this message.

有没有人遇到过这个?关于如何解决这个问题的任何建议?

4

1 回答 1

1

您使用的是哪个版本的 RubyMotion?我认为最新版本(1.23)解决了这个问题。尝试运行sudo motion update

于 2012-09-04T17:14:58.407 回答