2013-08-22 244 views
1

我遇到问题了!我正在为iOS和Android开发一个phonegap应用程序。当我打电话Phonegap Android应用程序在外部浏览器中打开链接后终止

window.open(url, "_system") 

在iOS上它打开了,但我可以导航到我之前在我的应用程序的地方。但是当我在Android中打开链接并导航回应用程序时,它从一开始就开始。 如何让应用程序保持原样离开并返回到它之后的方式?

+0

您可能想要考虑重写'onBackPressed'函数,以便设置您希望后退按钮离开的页面。 – g00dy

+0

我有一个类似的问题:当我使用onclick =“javascript:window.open(”http:myurl“,”“,”“)打开一个新窗口时,窗口打开并加载正常,但是当我返回到我的应用程序通过按下后退按钮,我的整个应用程序重新加载。你是否也使用jQueryMobile为应用程序的任何机会吗? – Wytze

回答

1

的Andorid

function openInApp(link){ 
      console.log("Open Call"+ link); 
      if(link.length<=1){ 

        navigator.notification.alert(
             'Page not found..!', // message 
             null,   // callback 
             'Title', // title 
             'Ok'     // buttonName 
            ); 

      }else{ 
      var ref =  window.open(encodeURI(link), '_blank', 'location=yes'); 
       ref.addEventListener('loaderror', function(event) { 


        navigator.notification.alert(
             'error: ' + event.message, // message 
             null,   // callback 
             'Title', // title 
             'Ok'     // buttonName 
            ); 

       }); 

      } 
    } 

IOS

function openInApp(link){ 
      console.log("Open Call"+ link); 
      if(link.length<=1){ 
        navigator.notification.alert(
             'Page not found..!', // message 
             null,   // callback 
             'Title', // title 
             'Ok'     // buttonName 
            ); 
      }else{ 
       var ref = window.open(encodeURI(link), '_blank', 'location=no'); 
       ref.addEventListener('loaderror', function(event) { 


        navigator.notification.alert(
             'error: ' + event.message, // message 
             null,   // callback 
             'Title', // title 
             'Ok'     // buttonName 
            ); 
       }); 
      } 
    } 
+0

但我需要调用_system不_blank,因为我想在外部浏览器不inappbrowser。是可能的android? – HellOfACode

+0

手段你不需要地址栏 –

+1

我不是非常确定我们彼此了解。现在发生了什么:我按了一个打开window.open(网址,“_system”)的网址,然后例如海豚或铬打开取决于sustems默认浏览器,然后我按住主页按钮之间切换应用程序,但当我点击我的phonegap应用程序即时通讯不会返回到最后一个状态,但应用程序是从开始启动,但我需要返回到我所处的状态。这可能w母鸡打开系统默认浏览器中的网址? – HellOfACode

0

会在评论问这个,但人们需要为50声誉... :(

在你​​3210你有exit-on-suspend是否启用?也就是说,您是否有以下<preference>元素?

<cordova> 
    ... 
    <preference name="exit-on-suspend" value="true" /> 
    ... 
</cordova> 
相关问题