นี่อาจเป็นคำถามที่ค่อนข้างชัดเจน แต่คุณสามารถเปิดเบราว์เซอร์ Safari จากแอพ iPhone ได้หรือไม่?
นี่อาจเป็นคำถามที่ค่อนข้างชัดเจน แต่คุณสามารถเปิดเบราว์เซอร์ Safari จากแอพ iPhone ได้หรือไม่?
คำตอบ:
ควรเป็นดังต่อไปนี้:
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
if (![[UIApplication sharedApplication] openURL:url]) {
NSLog(@"%@%@",@"Failed to open url:",[url description]);
}
UIApplication มีวิธีการที่เรียกว่า openURL:
ตัวอย่าง:
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
if (![[UIApplication sharedApplication] openURL:url]) {
NSLog(@"%@%@",@"Failed to open url:",[url description]);
}
คุณสามารถเปิด url ในซาฟารีด้วยสิ่งนี้:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.google.com"]];
ด้วย iOS 10 เรามีวิธีการหนึ่งที่แตกต่างกันด้วยตัวจัดการที่สมบูรณ์ :
objectivec:
NSDictionary *options = [NSDictionary new];
//options can be empty
NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];
[[UIApplication sharedApplication] openURL:url options:options completionHandler:^(BOOL success){
}];
สวิฟท์:
let url = URL(string: "http://www.stackoverflow.com")
UIApplication.shared.open(url, options: [:]) { (success) in
}
อาจมีบางคนสามารถใช้เวอร์ชัน Swift ได้:
ใน 2.2 ที่รวดเร็ว:
UIApplication.sharedApplication().openURL(NSURL(string: "https://www.google.com")!)
และ 3.0:
UIApplication.shared().openURL(URL(string: "https://www.google.com")!)
ใน 4 และ 5 อย่างรวดเร็วเนื่องจาก OpenURL ถูกหักค่าเสื่อมราคาวิธีง่ายๆในการทำเช่นนี้ก็เป็นเพียง
if let url = URL(string: "https://stackoverflow.com") {
UIApplication.shared.open(url, options: [:])
}
SafariServices
นอกจากนี้คุณยังสามารถใช้ บางอย่างเช่นหน้าต่าง Safari ภายในแอปของคุณ
import SafariServices
...
if let url = URL(string: "https://stackoverflow.com") {
let safariViewController = SFSafariViewController(url: url)
self.present(safariViewController, animated: true)
}
ใน Swift 3.0 คุณสามารถใช้คลาสนี้เพื่อช่วยในการสื่อสารกับ ผู้ดูแลกรอบงานได้เลิกใช้หรือลบคำตอบก่อนหน้านี้
นำเข้า UIKit คลาส InterAppCommunication { openURI func คงที่ (_ URI: String) { UIApplication.shared.open (URL (สตริง: URI)!, ตัวเลือก: [:], completeHandler: {(succ: Bool) ในการพิมพ์ ("Complete! Success? \ (succ)")}) } }