dur*_*isn 7 android phonegap-plugins phonegap-build
我知道关于PhoneGap的答案很多。我经历了所有这些问题,但没有一个解决方案可行。即使从所有方面来看,其中任何一个都应该。许多答案太旧了,我怀疑它们是否仍然有效。
我的应用程序可以运行,编译,运行良好。除了我无法使广告正常工作。我首先尝试了AdMob。广告永远不会显示。所以我说:“好吧,我会自己做。” 如果点击广告导致打开新的浏览器,那就太好了。我认为一个简单的window.open()命令会起作用。但不是。那不会发生。我需要使用cordova插件才能正常工作。
我正在Adobe网站上使用PhoneGap-Build。
在我的config.xml中,我有:
<gap:plugin name="cordova-plugin-inappbrowser" spec="~3.0.0" source="npm" />
Run Code Online (Sandbox Code Playgroud)
更新源代码后,我可以看到该插件正在显示:
(来自PhoneGap页面)插件源版本已安装平台cordova-plugin-inappbrowser npm〜3.0.0 3.0.0 android,ios,winphone
经过30次左右的尝试之后,下面是我上次尝试的JS代码:
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
window.open = cordova.InAppBrowser.open;
}
function navToMobile(where){
var ref = cordova.InAppBrowser.open(where, '_system', 'location=yes');
//These two lines are incorrect and causing errors. The first doesn't do anything. The second is only supposed to be called to show and existing window. So the first line in this function is the only one that is needed.
navigator.app.loadUrl(where, { openExternal:true });
ref.show();
}
Run Code Online (Sandbox Code Playgroud)
对“ navToMobile(where)”的函数调用发送了“ where”的URL。
根据先前的答案,该功能中有2种不同的方法应该起作用。我俩都在那里,希望他们中只有一个能工作...
运行时,什么也没有发生。我在模拟器上安装了该应用程序,因此可以看到日志猫。这告诉我“ cordova不可用”。这对我说,该库没有被编译到应用程序中。
根据我的收集,如果我在没有“ build PhoneGap”的情况下进行此操作,那么我将把cordova.js库作为项目的一部分。但是我认为这就是config.xml中的引用用于...
无论如何...我怀疑AdMob会发生完全相同的事情。我按照说明进行了所有设置,然后在AdMob中创建了一个ID为ID的新横幅广告。
如果有人对如何使这些方法中的任何一种有任何想法,那就太好了。
编辑:我正在编辑此答案以显示最终的解决方案是。
正如Dexter在回答中提到的那样,必须对cordova.js文件进行引用,否则,没有任何插件可以使用。如果他们碰巧在文档中的任何地方提到了这一点,那就太好了。他们从来没有提到引用是必要的,因为它们是在编译时嵌入的。您不需要将该.js作为项目的一部分。
有了这项工作,我就遇到了错误。我知道这可能是一个问题,因为我有3行不同的代码,而且不确定哪行有效。
我已经在上面的代码中编辑了该函数以显示正确的调用。
| 归档时间: |
|
| 查看次数: |
136 次 |
| 最近记录: |