android - PhoneGap Admob,外部链接......无法让任何一个工作

标签 android phonegap-plugins phonegap-build

我知道这里有很多关于 PhoneGap 的答案。我已经完成了所有这些,但没有一个解决方案有效。尽管,从各方面来看,他们中的任何一个都应该。许多答案太过时了,我怀疑它们是否仍然有效。

我的应用可以正常运行、编译和运行。除了我无法让广告正常工作。我首先尝试了 AdMob。广告从不显示。所以我说,“好吧……我自己做吧。”如果点击广告会打开一个新的浏览器,那就太好了。我认为一个简单的 window.open() 命令就可以了。但不是。那不会发生。我需要使用 cordova 插件来完成这项工作。

我在 Adob​​e 网站上使用 PhoneGap-Build。

在我的 config.xml 中,我有:

<gap:plugin name="cordova-plugin-inappbrowser" spec="~3.0.0" source="npm" />

当我更新源代码时,我可以看到插件正在显示:

(来自 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();

    }

“navToMobile(where)”的函数调用发送“where”的 URL。

根据之前的回答,该函数中有 2 种不同的方法应该起作用。我把它们都放在了那里,希望其中一个能起作用...

运行时,什么也没有发生。我在模拟器上安装了该应用程序,以便可以看到日志猫。这告诉我“cordova 不可用”。这告诉我库没有被编译到应用程序中。

据我所知,如果我在没有“构建 PhoneGap”的情况下执行此操作,我将有一个 cordova.js 库作为我项目的一部分。但我认为这就是 config.xml 中的引用...

无论如何...我怀疑 AdMob 也会发生同样的事情。我按照说明设置了所有内容,我在 AdMob 中创建了一个带有 ID 的新横幅广告……但广告从未显示。

如果有人对如何使这些方法中的任何一种起作用有任何想法,那就太好了。

编辑:我正在编辑此答案以显示最终解决方案。

正如 Dexter 在他的回答中提到的那样,必须引用 cordova.js 文件,没有它,所有插件都将无法工作。如果他们碰巧在他们的文档中的任何地方提到这一点,那就太好了。他们从来没有提到引用是必要的,因为他们在编译时嵌入了它。您不需要将该 .js 作为项目的一部分。

随着工作的进行,我遇到了错误。我知道这可能是个问题,因为我有 3 行不同的代码,但不确定哪一个行得通。

我已经编辑了上面代码中的函数以显示正确的调用。

最佳答案

听起来你没有 <script src="cordova.js"></script>在你的index.html ,此文件由 Cordova 在构建期间添加,并且是插件运行所必需的。

关于android - PhoneGap Admob,外部链接......无法让任何一个工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55088074/

相关文章:

java - Android中周期性任务的实现

ios - phonegap.js (cordova.js) 功能缺失或无效

javascript - Phonegap/Cordova 检查带有特殊字符的文件

ios - 如何让我的 iphone/ios 应用程序在启动时打开一个 Safari 窗口

android - 联系人选择器过滤

android - 如何使用 GSON 库解析这个 jsonarray

java - 创建新项目后出现Android Studio错误时刻

cordova - 命名空间前缀 android 未定义

android - 使用Android PhoneGap : Not able to create table in the database

ios - 音隙构建 : Not receiving ios push notifications