4

iOS アプリの facebook を 3.0 にアップグレードし、https://developers.facebook.com/docs/howtos/login-with-facebook-using-ios-sdk/で提供されているコードを使用して facebook を介したユーザー ログインを行いましたが、問題は、ユーザーが Facebook へのアクセスを許可した後、- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotationメソッドが呼び出されないことです。しかし、興味深いのは、新しいアプリケーションを作成し、そのアプリケーションに同じコードを統合すると、そこで同じメソッドが呼び出されることです。私は xcode 4.4 を使用しています。なぜそれが私の既存のコードで起こっているのですか?

4

3 に答える 3

0

アプリの plist で設定されているように、古いアプリがバックグラウンドで実行されないように設定されている可能性がありますか? 私はこの同じ問題を抱えています。アプリをバックグラウンドで実行したままにしておくと、戻って openURL を呼び出すようです。ただし、アプリがバックグラウンドで実行されていない場合は、代わりに application:didFinishLaunchingWithOptions が返されて呼び出され、openURL は呼び出されません。起動オプションから URL を取得することができます。

NSURL *url = [launchOptions objectForKey: UIApplicationLaunchOptionsURLKey];

しかし、Facebook 認証から戻るときに application:openURL と同じ効果があるように、これを呼び出す方法がわかりません。これが役立つことを願っています。

于 2012-09-25T19:23:33.780 に答える
0

fburl と appid が適切に設定されていることを確認してください。デバイス/シミュレーターに同じ facebook appId を使用している複数のアプリがある場合、発生する可能性があります。

于 2012-09-21T09:25:36.203 に答える
0

正しく動作するように xcode を 4.5 GM に更新しました。これは xcode の以前のバージョンに問題があった可能性があります。

于 2012-10-10T06:22:20.117 に答える