2016-04-22 10 views
0

I einfachen Code habenSFSafariViewController nicht geöffnet url im Mobil-Modus

NSURL *url = [NSURL URLWithString:@"https://en.wikipedia.org/wiki/Cat"]; 
if ([SFSafariViewController class] != nil) { 
    SFSafariViewController *sfvc = [[SFSafariViewController alloc] initWithURL:url]; 
    [self presentViewController:sfvc animated:YES completion:nil]; 
} else { 
    [[UIApplication sharedApplication] openURL:url]; 
} 

ich auf iOS 9.3 getestet haben. Wenn ich die URL zum ersten Mal öffne, kann ich die Seite im mobilen Modus sehen.

enter image description here(Bild 1)

Weiter I-Desktop klicken. Und ich kann diese Seite (Bild 2) sehen

enter image description here(Bild 2)

ich neu gestartet Anwendung und SFSafariViewController öffnet noch Seite im Desktop-Modus (Bild 2). Kann ich erzwingen, die URL im mobilen Modus mit SFSafariViewController und wie kann ich das erzwingen?

Antwort

1

Der Link "Desktop" bedeutet in diesem Zusammenhang, dass der Benutzer sieht, was er normalerweise sieht, wenn er auf seinen Macintosh oder PC klickt. Dies ist erwartet Verhalten.

Wenn Sie die Anwendung anhalten und dann fortsetzen, insbesondere wenn SFSafariViewController für den Benutzer sichtbar ist, wird die App auf derselben Seite fortgesetzt, auf der sie ausgeführt wurde, es sei denn, Sie weisen sie an, die ursprüngliche URL erneut zu öffnen tun können, indem Sie Ihren Anwendungsdelegaten auf applicationWillEnterForeground: überwachen lassen und dann den View-Controller zwangsweise neu laden.

0

wenn es gut gearbeitet hat, dann alles, was Sie tun müssen, ist mobil Ansicht in wikipedia Fußzeile klicken, sonst wird Ihre App wieder aufzubauen und zu reinigen, wird es meine Anwendung des Standardverhalten

+0

In gemeinsamer Situation wiederherzustellen jeden verwenden kann url. Und nicht jede Seite hat funktionierenden mobilen Modus in der Fußzeile. Außerdem möchte ich SFSafariViewController in meine Produktanwendung integrieren. Umbau und Reinigung werden mir nicht helfen. – Malder

+0

wird die mobile Version geladen, hier hast du selbst den Desktop angefordert, es gibt einige Antworten, die sagten, du würdest deinen Anfrage-Header als mobil hinzufügen, aber ich denke, das ist unnötig, da es das Standardverhalten ist – Abdoelrhman

Verwandte Themen