繁体   English   中英

Android + Phonegap + Admob

[英]Android + Phonegap + Admob

顾名思义,我正在尝试使用Phonegap创建一个Android应用,然后尝试将Admob插入其中。

我正在使用Adobe提供的本教程 ,效果很好。 之后,当我使用Google提供的教程时 ,我遇到了问题。 根据Google教程,我必须更改活动类,以下是原始类,第二段代码是更改后的代码。 似乎没有任何错误可以阻止其编译。 只是当我尝试使用Android模拟器运行它时,我收到一条错误消息,指出“不幸的是MyFirstPhonegapPlugin已停止”

请注意,使用Google教程,有两种方法来实现代码,仅使用下面的类,以及使用XML和下面的类的混合。 我尝试了另一种方法,由于遇到无法编译的错误,因此我选择了这种方法。

package com.tricedesigns;
import org.apache.cordova.DroidGap;
import android.os.Bundle;

public class MyFirstPhoneGapPluginActivity extends DroidGap {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.loadUrl("file:///android_asset/www/index.html");
    }
}

调整后的代码:

 package com.tricedesigns;

    import org.apache.cordova.DroidGap;
    import android.os.Bundle; 
    import com.google.ads.*;


    public class MyFirstPhoneGapPluginActivity extends DroidGap {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            super.loadUrl("file:///android_asset/www/index.html");
            // Look up the AdView as a resource and load a request.
            AdView adView = (AdView)this.findViewById(R.id.adView);
            adView.loadAd(new AdRequest());
          }
        }

我正在使用Phonegap 1.6.1和适用于Android和Admob的最新SDK

Phonegap的实现方式几乎隐藏了有关Android的所有细节,并让您基本上将移动Web应用程序实现为本机应用程序。 如果您想原生实现Android,建议您阅读Hello World教程。 您此处的代码在AdView adView = (AdView)this.findViewById(R.id.adView);上崩溃了AdView adView = (AdView)this.findViewById(R.id.adView); 因为您没有包含ID为adView的AdView元素的布局文件。

如果您对其中的移动网络部分更感兴趣,并计划继续使用Phonegap,那么最好的选择是尝试使用此插件该插件可让您使用Phonegap框架进行JavaScript调用,并且该插件将执行所有底层Android调用获得广告所必需的。

这是我正在寻找的功能齐全的项目

旧版本phonegap不支持扩展jar lib。 但是现在,phonegap添加了一些新功能。 使用phonegap生成器,添加配置添加一些配置

<gap:plugin name="com.admob.plugin" version="1.0.0" source="plugins.cordova.io"/>

因此不再需要任何Java代码。 只需要一些js代码。

admob.initAdmob("admob banner ID","admob interstitial ID");
admob.showBanner(admob.BannerSize.BANNER,admob.Position.TOP_APP);

这会在您的应用顶部创建并显示一个admob横幅。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM