2012-02-27 44 views
5

我的手機上有一個phonegap應用程序。我有一個鏈接,帶我到一個網頁檢查一些信息,並提供一些數據...然後我想能夠有一個後退按鈕,以便用戶將導航回到本地應用程序。這是可能的Android和iOS?如何從網頁導航到我的phonegap應用程序中的本地頁面?

+0

它的Appstore或網頁? – Edig 2012-02-27 07:15:48

+0

我需要它爲我的應用程序 – user969275 2012-02-27 09:25:34

+0

相關但不相同的問題:http://stackoverflow.com/questions/8137909/how-to-get-back-button-working-between-remote-and-local-jquery-mobile-頁面(其中一個是JQM特定的) – Leopd 2012-06-07 19:21:31

回答

0

如果您的網頁存儲在/ assets /下的項目中,則可以使用file:///android_asset/index.html。

當然,這是Android特有的。

0

如何在iframe中顯示外部頁面。這樣你仍然可以從你的本地phonegap應用程序顯示一個後退按鈕。

+0

這是解決方案的開始。那麼iframe中的頁面如何向父框架發送消息,告訴它導航? – Leopd 2012-06-13 20:32:35

+0

嗯。我最初的想法是,您在頁面頂部顯示一個小導航欄,並在其下面顯示帶有外部頁面的iFrame。這樣您可以在導航欄上顯示後退按鈕。與Google相同,Google在圖片搜索結果中顯示一些信息http://www.google.de/imgres?hl=de&biw=1150&bih=588&gbv=2&tbm=isch&tbnid=HhYIr-Oz_5sLkM:&imgrefurl=http://www.crossmedia- zentrum.de/cms/%3Fp%3D451%3FKeepThis%3Dtrue%26TB_iframe%3Dtrue%26height%3D450%26width%3D550&docid=q0eY140VMgaNgM&imgurl=http://www.crossmedia-zentrum.de/cms/wp-content/gallery/keylearnings /apple.jpg – rdmueller 2012-06-13 21:04:08

3

我認爲你應該使用childbrowser phonegap的插件,因爲在這種情況下,你將在Android和iOS中具有一致的行爲,因爲iOS沒有backbutton返回到應用程序。

Childbrowser for Android
Childbrowser for iOS

+0

+1在兒童瀏覽器上。用戶界面方面,它會將一個工具欄添加到ios應用程序的頂部,爲用戶提供BACK按鈕以返回到您的應用程序。在其他具有硬件約定的平臺上(即後退按鈕),不會顯示任何工具欄。此外,兒童瀏覽器將在2.0之後成爲cordova/phonegap「核心」功能的一部分。 – 2012-06-11 07:18:10

+0

看起來像瀏覽器的工具欄正是我想通過首先使用Phonegap來避免的。 – Leopd 2012-06-13 20:29:53

+0

工具欄是爲了支持ui,因爲在iOS中你沒有任何其他方式切換或返回。您仍然可以自定義子瀏覽器的用戶界面,只需複製與您項目相關的源代碼 - https://groups.google.com/forum/?fromgroups#!topic/phonegap/jbXi-K7BBno – dhaval 2012-06-14 07:05:22

1

答案是「NO WAY BACK」
您可以在本地應用程序中瀏覽(類任意次數)
一旦你發送流量

 super.loadUrl("file:///android_asset/www/index.html"); 

不能導航回到任何地方類。

0

如果有外部網頁的內容完全控制,你可以實現iOS中的URL方案:http://remysharp.com/2010/09/01/custom-url-schemes-in-phonegap/

...這黑客得到它在安卓:http://remysharp.com/2010/09/01/custom-url-schemes-in-phonegap/

然後你外部頁面可以通過myappname鏈接迴應用程序:// some/parameters URL

上述兩篇文章都是從2010年開始的,它不適合Android(軟件不斷髮展)......但是如果這不起作用,我會在某個地方出現一篇更新的文章,其中介紹了一種適用於f的方法或肯定。我知道現在iOS應用程序正在使用它。

1

我入侵了ChildBrowser的自定義版本,刪除所有工具欄元素,並在子頁面和父應用程序之間傳遞消息。這個破解,SlaveBrowser,最初是爲Android上的oAuth2設計的。父應用程序知道何時關閉外部頁面,所以不需要一個醜陋的工具欄:-)。有人使用Obj-C技能可以移植到iOS

0

我已經使用了childbrowser並在xCode中修改了UI,以便我沒有地址欄和一個獨特的小「回到應用程序」按鈕。我不需要在UI編輯器中觸摸obj-c選擇你不想要的東西並刪除它。

3

這個工作在Android和iOS:

window.history.go(-(history.length - 1)); 

但是,正如其他人所說的,我發現它不值得去嘗試永遠離開UIWebView。回到應用程序頁面後,偶爾不能按預期工作。我注意到PhoneGap被卸載,似乎沒有辦法重新加載它。

相關問題