0

我有一个需要对 Facebook 帐户进行 OAuth 身份验证的 iOS 应用程序,但我必须使用自己的服务器进行 API 调用。所以我想在单击某个按钮时打开一个带有登录 URL 的 FBLogin 屏幕(UIWebView)。

我有以下代码:

FBWebViewController.h

#import <UIKit/UIKit.h>

@interface FBWebViewController : UIViewController <UIWebViewDelegate>
- (void)initFBWebView;
@end

FBWebViewController.m

- (void)initFBWebView {
NSLog(@"DetailViewController->initUIWebView {");

    UIWebView *aWebView;

    //  init and create the UIWebView
    aWebView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 400)];
    aWebView.autoresizesSubviews = YES;
    aWebView.autoresizingMask=(UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth);

    //set the web view delegates for the web view to be itself
    [aWebView setDelegate:self];

    //Set the URL to go to for your UIWebView
    NSString *urlAddress = @"http://www.google.com";

    //Create a URL object.
    NSURL *url = [NSURL URLWithString:urlAddress];

    //URL Requst Object
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

    //load the URL into the web view.
    [aWebView loadRequest:requestObj];

    //add the web view to the content view
    [self.view addSubview:aWebView];

}

在我的 Authorize.m 文件中,该文件处理所有 API 调用等。

- (void)fbLogin:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options {
    FBWebViewController *webview = [[FBWebViewController alloc] init];
    [webview view];
    [webview initFBWebView];
}

什么都没发生。没有打开 WebView。我在 initWithFbWebView 方法中放了一些调试语句,该方法被调用并运行到最后,但没有显示任何屏幕。

我究竟做错了什么?

4

0 回答 0