আমি কীভাবে আইফোন অ্যাপ থেকে সাফারি চালু করতে পারি?


127

এটি সম্ভবত একটি সুস্পষ্ট প্রশ্ন হতে পারে তবে আপনি কি একটি আইফোন অ্যাপ্লিকেশন থেকে সাফারি ব্রাউজার চালু করতে পারবেন?

উত্তর:


200

নিম্নলিখিত হওয়া উচিত:

NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];

if (![[UIApplication sharedApplication] openURL:url]) {
    NSLog(@"%@%@",@"Failed to open url:",[url description]);
}

এটি কি আপনার অ্যাপ্লিকেশনটির মেমরির ব্যবহারের দিকে গুনবে? এছাড়াও, আপনার অ্যাপে ফিরে যাওয়ার কোনও ভাল উপায় আছে (সামাজিক নেটওয়ার্কিং সাইটগুলিতে লগইন বৈশিষ্ট্যের মতো)?
ব্রেন্ডন

1
@ ব্রেন্ডন আমার অনুমানটি কোনও হবেনা যেহেতু আমি ধরে নিচ্ছি যে 'ওয়েবভিউ' সাফারি অ্যাপ্লিকেশনটিতে চালু হয়েছে যাতে এটি সেই প্রক্রিয়াধীন হবে
সুরতায়ার

12
এর আগের 5/9/09 এর উত্তরের দ্বাপ
বেলারেট

2
@ বারেট: আসলেই নয়, কারণ এটি একটি 9/21/09 উত্তর
বার্গি

4
আইএমও এপিএল কলটি যথেষ্ট অনুরূপ যে এই উত্তরটি পূর্ববর্তী উত্তরের সম্পাদনা বা মন্তব্য হিসাবে আরও ভালভাবে প্রয়োগ করা যেতে পারে।
বেরেট

52

ইউআইএপ্লিকেশনটির ওপেন ইউআরএল নামে একটি পদ্ধতি রয়েছে:

উদাহরণ:

NSURL *url = [NSURL URLWithString:@"http://www.stackoverflow.com"];

if (![[UIApplication sharedApplication] openURL:url]) {
  NSLog(@"%@%@",@"Failed to open url:",[url description]);
}


4

আইওএস 10 এর সাথে আমাদের সম্পূর্ণকরণ হ্যান্ডলার সহ একটি আলাদা পদ্ধতি রয়েছে :

উদ্দেশ্য গ:

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
}

2

হতে পারে কেউ সুইফট সংস্করণ ব্যবহার করতে পারে:

দ্রুত 2.2 এ:

UIApplication.sharedApplication().openURL(NSURL(string: "https://www.google.com")!)

এবং 3.0:

UIApplication.shared().openURL(URL(string: "https://www.google.com")!)

2

4 এবং 5 এর দ্রুতগতিতে, যেমন ওপেন URL কে অবমূল্যায়ন করা হয়, তাই করার একটি সহজ উপায় কেবল ন্যায়সঙ্গত হবে

if let url = URL(string: "https://stackoverflow.com") {
    UIApplication.shared.open(url, options: [:]) 
}

আপনি ব্যবহার করতে পারেন SafariServices। আপনার অ্যাপ্লিকেশনটির মধ্যে সাফারি উইন্ডোর মতো কিছু।

import SafariServices

...

if let url = URL(string: "https://stackoverflow.com") {
    let safariViewController = SFSafariViewController(url: url)        
    self.present(safariViewController, animated: true)
}

যদিও এই কোড স্নিপেট একটি ব্যাখ্যা সহ প্রশ্নটি সমাধান করতে পারে , আপনার প্রতিক্রিয়ার মান উন্নত করতে সহায়তা করে। মনে রাখবেন যে আপনি ভবিষ্যতে পাঠকদের জন্য প্রশ্নের উত্তর দিচ্ছেন, এবং সেই লোকেরা আপনার কোড পরামর্শের কারণগুলি জানেন না।
স্টেফান ক্রেইন

1

সুইফট ৩.০-এ, আপনি যোগাযোগ করতে সহায়তা করতে এই শ্রেণিটি ব্যবহার করতে পারেন। কাঠামোর রক্ষণাবেক্ষণকারীরা পূর্ববর্তী উত্তরগুলি হ্রাস করেছেন বা সরিয়ে দিয়েছেন।

ইউআইকিট আমদানি করুন

ক্লাস ইন্টারঅ্যাপকমিউনিকেশন {
    স্ট্যাটিক ফানক ওপেনুরি (_ ইউআরআই: স্ট্রিং) {
        UIApplication.shared.open (ইউআরএল (স্ট্রিং: ইউআরআই) !, বিকল্পগুলি: [:], সমাপ্তি হ্যান্ডলার: print (সাফল্য: বুল) মুদ্রণে ("সম্পূর্ণ! সাফল্য? \ (সুক)")})
    }
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.