java - 我的 AdMob 广告未在 Android Studio 中展示

标签 java android android-studio google-maps google-ads-api

我的 AdMob 横幅未显示在我的 Android 应用程序中。在看到有关同一问题的旧问题后,没有任何帮助,因为它们引用了 android studio 的早期版本。现在有些东西已经被弃用了。

我的 NewRecord.java 文件包含以下代码:

package com.example.anxietycalendar;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;

import com.akaita.android.circularseekbar.CircularSeekBar;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.InterstitialAd;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

import java.text.DateFormat;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class NewRecord extends AppCompatActivity {
    DatabaseHelper myDB;
    private Button Submit;
    public float pr;
    private AdView mAdView;

    private InterstitialAd mInterstitialAd;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_new_record);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });
        mAdView = findViewById(R.id.adView);
        AdRequest adRequest = new AdRequest.Builder().build();
        mAdView.loadAd(adRequest);
        mAdView.setAdListener(new AdListener() {
                                  @Override
                                  public void onAdFailedToLoad(int errorCode) {
                                      String onAdFailedToLoad = null;
                                      Log.d(onAdFailedToLoad, "This is why: " + errorCode);
                                  }
        });

        myDB=new DatabaseHelper(this);

        Submit= (Button) findViewById(R.id.submit);
        CircularSeekBar seekBar = (CircularSeekBar) findViewById(R.id.seekbar);
        seekBar.setProgressTextFormat(new DecimalFormat("###,###,###,##0.00"));
        seekBar.setProgress(0);
        seekBar.setRingColor(Color.GREEN);

        seekBar.setOnCircularSeekBarChangeListener(new CircularSeekBar.OnCircularSeekBarChangeListener() {
            @Override
            public void onProgressChanged(CircularSeekBar seekBar, float progress, boolean fromUser) {
                if (progress < 5) {
                    seekBar.setRingColor(Color.GREEN);
                    pr = progress;
                } else if (progress < 8) {
                    seekBar.setRingColor(Color.YELLOW);
                    pr = progress;
                } else {
                    seekBar.setRingColor(Color.RED);
                    pr = progress;
                }
            }

            @Override
            public void onStartTrackingTouch(CircularSeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(CircularSeekBar seekBar) {

            }
        });

        Submit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                myDB.insertData(Math.round(pr));
            }
        });


    }


}

虽然activity_new_record.xml包含以下代码:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background"
    tools:context=".NewRecord">

    <TextView
        android:id="@+id/perctext"
        android:layout_width="281dp"
        android:layout_height="36dp"
        android:layout_marginTop="36dp"
        android:background="@drawable/bg_calen2"
        android:ems="10"
        android:gravity="center"
        android:inputType="textPersonName"
        android:text="How much stress do you feel?"
        android:textColor="@color/white"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.43"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />


    <com.akaita.android.circularseekbar.CircularSeekBar
        android:id="@+id/seekbar"
        android:layout_width="300dp"
        android:layout_height="224dp"
        android:layout_marginTop="52dp"
        app:enabled="true"
        app:innerCircleColor="#e0f7e9"
        app:layout_constraintHorizontal_bias="0.495"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/perctext"
        app:max="10"
        app:min="0"
        app:progress="1"
        app:progressTextColor="@android:color/black"
        app:progressTextSize="26"
        app:ringColor="@color/colorAccent"
        app:ringWidth="0.5"
        app:showIndicator="true"
        app:showInnerCircle="true"
        app:showProgressText="true"
        app:speedMultiplier="2" />

    <Button
        android:id="@+id/submit"
        style="@style/BlueButton"
        android:layout_width="271dp"
        android:layout_height="31dp"
        android:text="Submit Record"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/seekbar"
        app:layout_constraintVertical_bias="0.168" />

    <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        xmlns:ads="http://schemas.android.com/apk/res-auto"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        ads:adSize="BANNER"
        ads:adUnitId="ca-app-pub-6417467530528623/7094248892"
        ads:layout_constraintBottom_toBottomOf="parent"
        ads:layout_constraintEnd_toEndOf="parent"
        ads:layout_constraintHorizontal_bias="0.615"
        ads:layout_constraintStart_toStartOf="parent"
        ads:layout_constraintTop_toBottomOf="@+id/submit"
        ads:layout_constraintVertical_bias="0.198" />

</androidx.constraintlayout.widget.ConstraintLayout>

这是我尝试添加横幅应用程序的 Activity 。我已尝试使用测试广告单元 ID,但仍然失败。

我还想添加AndroidManifest.xml的这部分代码:

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="Anxiety Calendar"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        tools:replace="android:label">
        <activity android:name=".Statistics"></activity>
        <!-- Include the AdActivity configChanges and theme. -->
        <activity
            android:name="com.google.android.gms.ads.AdActivity"
            android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
            android:theme="@android:style/Theme.Translucent" /> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-6417467530528623~3872355031" />

我该如何解决这个问题?我已经尝试了好几天了...我正在使用 Galaxy Nexus API 22 模拟器。

最佳答案

你把这个添加到你的gradle了吗?

dependencies {

implementation 'com.google.android.gms:play-services-ads:19.0.0'
}

String myid=getString(R.string.appid);
MobileAds.initialize(this, myid);
//myid is ca-app-pub-3940256099942544/6300978111
mAdView = findViewById(R.id.adView);

AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
mAdView.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
    // Code to be executed when an ad finishes loading.
}
@Override
public void onAdOpened() {
    // Code to be executed when an ad opens an overlay that
    // covers the screen.
}
});

我想你忘了添加这一行

String myid=getString(R.string.appid);
MobileAds.initialize(this, myid);

关于java - 我的 AdMob 广告未在 Android Studio 中展示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60662086/

相关文章:

java - 向上/向下滚动时如何隐藏/显示 View ?

java - 数学难度

java - hive serde 中多分隔符字符串的正则表达式

android - 单击关联的 TextView 时如何启用复选框

android-studio - Android Studio 中子模块中的字符字符集错误

java - Android Studio 2.1.3 中的 Retrolambda 3.3 : error configuring project ':app'

android-studio - 库使用与该项目相同的包

java - Jersey 中的字段名称可以与 setter 和 getter 不同吗?

java - Eclipse e4 : Accessing properties in PostContextCreate

android - Nexus 相机——从不返回数据