在phonegap中启动时打开网址

Posted

技术标签:

【中文标题】在phonegap中启动时打开网址【英文标题】:Open url on launch in phonegap 【发布时间】:2017-09-25 18:00:10 【问题描述】:

我想在有人点击应用程序图标时打开网站网址,即打开应用程序。

我尝试了类似的方法,但没有运气。

    <script src="cordova.js"></script> 
        <script type="text/javascript" charset="utf-8">

    // Wait for device API libraries to load
    //
    function onLoad() 
        document.addEventListener('deviceready', this.onDeviceReady, false);
    

    function onDeviceReady() 
        window.open("http://mywebsite.com");
    

    </script>

</head>


  <body onload="onLoad()"></body>

有什么帮助吗?

【问题讨论】:

嗨。你能告诉我为什么只有当我使用上述功能时,我在android上的启动画面后才会黑屏吗? 【参考方案1】:

您必须配置白名单以允许您的应用导航到该站点。

您可以通过将此行添加到您的 config.xml 来做到这一点

<allow-navigation href="http://mywebsite.com" />

如果你想允许导航到 yourdomain.com 上的所有 url,或者这个

<allow-navigation href="http://mywebsite.com/*" />

【讨论】:

【参考方案2】:

您可以使用 Jquery load() 或 Ajax 或 InApp 浏览器将您的网站加载到应用程序。

如果你想将你的网站展示给一个 div,你可以通过 load() 或者通过 ajax 调用来实现

HTML:

<div id="Load"></div>
<hr/>
<div id="ajax"></div>

JS:

/*Using Jquery Load()*/
$('#Load').load('http://apache.org');

/*Using ajax*/
$.ajax(
  dataType:'html',
  url:'http://apache.org',
  success:function(data) 
    $('#ajax').html($(data).children());   
  
);

或Inapp browser

//using device ready
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() 
  window.open = cordova.InAppBrowser.open;
  window.open('http://apache.org','_self');


//simple code 
var ref = cordova.InAppBrowser.open('http://apache.org', '_self');

在使用 inappbrowser 之前,您必须将插件安装到您的项目中才能通过命令行将 inappbrowser 添加到项目中

$ cordova plugin add cordova-plugin-inappbrowser

【讨论】:

以上是关于在phonegap中启动时打开网址的主要内容,如果未能解决你的问题,请参考以下文章

启动应用程序(如果已安装),或使用安装引荐来源网址打开 Google Play

PhoneGap 2.5.0,如何打开 iPad/iPhone 的外部 URL?

打开电子邮件应用程序网址

如何从第二个标签窗口打开第一个标签窗口的网址页面?

微信打开网址添加在浏览器中打开提示遮罩

Win2003打开网页时总是提示添加网址到信任站点的设置方法