用于iPhone的ChildBrowser插件显示:空白页面

时间:2012-03-22 13:49:55

标签: xcode jquery-mobile

我非常困惑于此。我正在使用phoneagap childbrowser插件。窗口弹出,但只显示空白窗口。我使用的phonegap版本是Phonegap 1.2.0和ios sdk 5.

它没有给出任何错误,但我可以在日志中看到的是:


查看确实已加载

打开网址:about:blank

新地址是:about:blank


我已经为此做了以下事情:

  1. 将ChildBrowser.js添加到“www”文件夹。

  2. 在“插件”文件夹中添加了ChildBrowserCommand.h,ChildBrowserCommand.m,ChildBrowserViewController.h,ChildBrowserViewController.m文件。

  3. 在“资源”文件夹中添加了ChildBrowser.bundle和ChildBrowserViewController.xib

  4. 在phonegap.plist文件中添加了以下插件:

    键:ChildBrowserCommand值:ChildBrowserCommand

    Key:ChildBrowser Value:ChildBrowser.js。

  5. 我替换了appdelegate.m文件中的follwing,因为我的childbrowser窗口没有打开:


    - (BOOL)webView:(UIWebView *)theWebView     
    
    shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:    
    
    (UIWebViewNavigationType)navigationType
    
    {
        NSURL *url = [request URL];
           if ([[url scheme] isEqualToString:@"http"] || [[url scheme] isEqualToString:@"https"])
    
           {
    
           //This code will open any url that is not in the PhoneGap whitelist in Child Browser
    
    
            return [ super webView:theWebView shouldStartLoadWithRequest:request  
                  navigationType:navigationType ];
        }
    

    使用


    - (BOOL)webView:(UIWebView *)theWebView
    
    shouldStartLoadWithRequest:(NSURLRequest *)request
    
    navigationType:(UIWebViewNavigationType)navigationType
    
    {
        NSURL *url = [request URL];
        if ([[url scheme] isEqualToString:@"http"] || [[url scheme]
                                                       isEqualToString:@"https"])
    
    {
          return [ super webView:theWebView shouldStartLoadWithRequest:request
                    navigationType:navigationType ];
    
        }
    
            if ([[url scheme] isEqualToString:@"gap"] || [url isFileURL]) {
    
            return [ super webView:theWebView shouldStartLoadWithRequest:request
    
                    navigationType:navigationType ];
    
        }
    
        else {
    
            ChildBrowserViewController* childBrowser =
    
            [ [ ChildBrowserViewController alloc ] initWithScale:FALSE ];
    
            [super.viewController presentModalViewController:childBrowser
    
                                                    animated:YES ];
            [childBrowser loadURL:[url description]];
    
            [childBrowser release];
            return NO;
    
        }
    
    }
    

    在此之后,儿童浏览器弹出,但屏幕空白。

    我们将不胜感激。

    由于

    Prabhjot

0 个答案:

没有答案