2014-02-18 66 views
2

我是iOS和Objective C的新手。我必須創建一個簡單的應用程序,用戶將按下按鈕,因此應用程序將打開Safari。然後用戶必須再次回到我的應用程序。我打開Safari,但我不知道如何將用戶帶回我的應用程序。我已經使用這個簡單的代碼:通過按下按鈕打開Safari,我如何回到我的應用程序

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.google.com"]]; 

任何建議,我怎麼能做到這一點?

+0

我認爲如果重定向未回到您的應用中,則無法將其歸檔。 –

+0

您將需要使用自定義URL方案.. – GenieWanted

+0

我已閱讀有關自定義URL方案,但無法使用它。 – iBug

回答

2

當您打開使用

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.google.com"]]; 

您的操作系統的URL需要加載新的應用服務。相反,如果你想加載一個網址使用蘋果的UIWebView類。

+0

我無法使用UIWebView – iBug

+0

但是,通過webview瀏覽safari有什麼優勢? – Rajesh

0

我認爲你不能跟隨這做到這一點,只有你自己的網址:

首先你要自定義方案。 https://coderwall.com/p/mtjaeq

[[UIApplication sharedApplication] openURL:[NSURL 
URLWithString:@"http://www.yourserver.com/file.php"]]; 

現在,因爲該網址是點你自己的服務器,您使用您創建如方案可以重定向。 myapp://

在你的服務器上,在file.php如果設爲:

<script type="text/javascript">location.href="myapp://"</script> 

然後將您的應用程序回來。

+0

如果我試圖打開谷歌,該怎麼辦? – iBug

+1

我認爲這不能做到這一點。任何人糾正我,如果我錯了。事實上,它必須有一個觸發器。谷歌將如何觸發這個並回到你的應用程序? –

0

如果您無法控制要發送給他們的頁面,則不能這樣做。

如果您想提醒他們回來,您可以安排UILocalNotification在打開網址後幾秒鐘出現 - 如果他們觸摸此網址,他們將被重新帶回到您的應用中。這將根據當前用戶首選項在屏幕上彈出警告或橫幅。

+0

但是,如果他還沒有完成並且不想回到應用程序,那可能會刺激用戶。 – iBug

相關問題