2012-06-30 10 views
5

Zur Zeit habe ich eine Seite in einen versteckten iFrame in meinem Phonegap-Projekt geladen, um Daten von einer mobilen Version einer Webseite, die ich in meiner App verwende, zu scrappen.Stop iframe redirect/öffnung mobile safari in phonegap projekt

Das Problem ist, dass eine bestimmte Seite hat eine Art von Frame Buster und sendet eine Weiterleitung, die die App verlässt und lädt die Seite in mobilen Safari.

Gibt es eine Möglichkeit, das Nachladen zu stoppen? Verlassen der Ethik der Schaben beiseite :-)

Antwort

1

fand ich eine Antwort in diesem Beitrag http://craigpfau.com/2012/02/phonegap-ios-uiwebview-and-safari-app-links/

ersetzen th ist in dem alle Links Sie wollen nicht, dass Sie in UIWebview öffnen Ziel verwenden AppDelegate.m

- (BOOL) webView:(UIWebView*)theWebView shouldStartLoadWithRequest: (NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType 
{ 
    NSURL *url = [request URL]; 

    if ([[url absoluteString] rangeOfString:@"URLToOpenInUIWebView.com"].location != NSNotFound) { 
     return YES; 
    } 
    else { 
     return [self.viewController webView:theWebView shouldStartLoadWithRequest:request navigationType:navigationType]; 
    } 
} 

= "_ blank"

17

Wenn Sie mit PhoneGap Build fügen Sie diese zu Ihrer config.xml Datei:

<preference name="stay-in-webview" value="true" /> 

Wenn Sie verwenden nicht gesetzt Erstellen dieses in Ihrem Cordova.plist/Phongap.plist:

OpenAllWhitelistURLsInWebView = 'Yes' 
+0

Ich bin nicht durch die PG-Build zu bauen. Kann ich diese Option anders machen? –

+0

Ja, ich bin auf der Suche nach der Syntax. – ThinkingStiff

+0

@AdamWare Es gefunden. – ThinkingStiff