嗨!我将AdMob的代码写到了源代码中,但是现在当我要启动我的应用程序时,它崩溃了。我无法解决此问题,Studio并没有说任何问题,只是使该应用在移动设备上崩溃了。问题出在哪里,我找不到它,您能帮我吗?这是我的代码(隐藏ID):
AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.brtrsoundboard">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
activity_main.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"
tools:context=".MainActivity"
android:background="@color/grey">
<LinearLayout
android:layout_width="match_parent"
android:orientation="horizontal"
android:gravity="center"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/linear"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:orientation="vertical"
android:gravity="center"
android:layout_centerHorizontal="true">
<com.google.android.gms.ads.AdView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/ad_view2"
android:layout_centerHorizontal="true"
xmlns:ads="http://schemas.android.com/apk/res-auto"
ads:adSize="BANNER"
ads:adUnitId="ID"/>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton1"
android:padding="10dp"
android:text="A k*rva anyádat Brétúró"
android:textColor="#ffffff" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton2"
android:padding="10dp"
android:text="Anyád biztos büszke rád"
android:textColor="#ffffff" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton3"
android:padding="10dp"
android:text="Arcade, Arcade a srác neve"
android:textColor="#ffffff" />
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton4"
android:padding="10dp"
android:text="B*asszak rá arra a kugli kopasz fejedre"
android:textColor="#ffffff" />
<Button
android:id="@+id/button5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton5"
android:padding="10dp"
android:text="Fú de értelmes gyerek vagy"
android:textColor="#ffffff" />
<Button
android:id="@+id/button6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton6"
android:padding="10dp"
android:text="Grafikust kifizetted már?"
android:textColor="#ffffff" />
<Button
android:id="@+id/button7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton7"
android:padding="10dp"
android:text="Hete Brétúró"
android:textColor="#ffffff" />
<Button
android:id="@+id/button8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton8"
android:padding="10dp"
android:text="Mosógépet kifizetted?"
android:textColor="#ffffff" />
<Button
android:id="@+id/button9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton9"
android:padding="10dp"
android:text="Nem hallak, vedd ki a f*szt a szádból"
android:textColor="#ffffff" />
<Button
android:id="@+id/button10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/buttonrectangle"
android:onClick="playButton10"
android:padding="10dp"
android:text="Te kopasz köcsög"
android:textColor="#ffffff" />
<com.google.android.gms.ads.AdView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/ad_view1"
android:layout_centerHorizontal="true"
xmlns:ads="http://schemas.android.com/apk/res-auto"
ads:adSize="BANNER"
ads:adUnitId="ID" />
</LinearLayout>
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java:
package com.example.brtrsoundboard;
import androidx.appcompat.app.AppCompatActivity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
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 static com.google.android.gms.ads.MobileAds.*;
public class MainActivity extends AppCompatActivity {
MediaPlayer button1,button2,button3,button4,button5,button6,button7,button8,button9,button10;
AdView adView1,adView2;
InterstitialAd interstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
adView1=findViewById(R.id.ad_view1);
adView2=findViewById(R.id.ad_view2);
MobileAds.initialize(this,"ID");
AdRequest adRequest = new AdRequest.Builder().build();
adView1.loadAd(adRequest);
adView2.loadAd(adRequest);
interstitialAd = new InterstitialAd(this);
interstitialAd.setAdUnitId("ID");
interstitialAd.loadAd(new AdRequest.Builder().build());
button1=MediaPlayer.create(MainActivity.this,R.raw.a_kurva_anyadat_breturo);
button2=MediaPlayer.create(MainActivity.this,R.raw.anyad_bizrtos_buszke_rad);
button3=MediaPlayer.create(MainActivity.this,R.raw.arked_a_srac_neve);
button4=MediaPlayer.create(MainActivity.this,R.raw.basszak_ra_arra);
button5=MediaPlayer.create(MainActivity.this,R.raw.fu_de_ertelmes_gyermek_vagy);
button6=MediaPlayer.create(MainActivity.this,R.raw.grafikust_kifizetted_mar);
button7=MediaPlayer.create(MainActivity.this,R.raw.hade_breturo);
button8=MediaPlayer.create(MainActivity.this,R.raw.mosogepet_kifizetted);
button9=MediaPlayer.create(MainActivity.this,R.raw.nem_hallak);
button10=MediaPlayer.create(MainActivity.this,R.raw.te_kopasz_kocsog);
}
public void playButton1(View view){
button1.start();
}
public void playButton2(View view){
button2.start();
}
public void playButton3(View view){
button3.start();
}
public void playButton4(View view){
button4.start();
}
public void playButton5(View view){
button5.start();
}
public void playButton6(View view){
button6.start();
}
public void playButton7(View view){
button7.start();
}
public void playButton8(View view){
button8.start();
}
public void playButton9(View view){
button9.start();
}
public void playButton10(View view){
button10.start();
}
}
Logcat:
2020-05-18 17:53:27.782 18492-18492/? I/.brtrsoundboar: Not late-enabling -Xcheck:jni (already on)
2020-05-18 17:53:27.819 18492-18492/? I/.brtrsoundboar: Unquickening 12 vdex files!
2020-05-18 17:53:27.838 18492-18492/? W/.brtrsoundboar: Unexpected CPU variant for X86 using defaults: x86
2020-05-18 17:53:28.382 18492-18492/com.example.brtrsoundboard I/.brtrsoundboar: The ClassLoaderContext is a special shared library.
2020-05-18 17:53:29.174 18492-18492/com.example.brtrsoundboard D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-05-18 17:53:29.175 18492-18492/com.example.brtrsoundboard D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2020-05-18 17:53:29.184 18492-18492/com.example.brtrsoundboard D/AndroidRuntime: Shutting down VM
2020-05-18 17:53:29.188 18492-18492/com.example.brtrsoundboard E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.brtrsoundboard, PID: 18492
java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException:
******************************************************************************
* The Google Mobile Ads SDK was initialized incorrectly. AdMob publishers *
* should follow the instructions here: *
* https://googlemobileadssdk.page.link/admob-android-update-manifest *
* to add a valid App ID inside the AndroidManifest. *
* Google Ad Manager publishers should follow instructions here: *
* https://googlemobileadssdk.page.link/ad-manager-android-update-manifest. *
******************************************************************************
at android.app.ActivityThread.installProvider(ActivityThread.java:7090)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6630)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6547)
at android.app.ActivityThread.access$1300(ActivityThread.java:231)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1887)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7478)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941)
Caused by: java.lang.IllegalStateException:
******************************************************************************
* The Google Mobile Ads SDK was initialized incorrectly. AdMob publishers *
* should follow the instructions here: *
* https://googlemobileadssdk.page.link/admob-android-update-manifest *
* to add a valid App ID inside the AndroidManifest. *
* Google Ad Manager publishers should follow instructions here: *
* https://googlemobileadssdk.page.link/ad-manager-android-update-manifest. *
******************************************************************************
at com.google.android.gms.internal.ads.zzyc.attachInfo(com.google.android.gms:play-services-ads-lite@@19.1.0:33)
at com.google.android.gms.ads.MobileAdsInitProvider.attachInfo(com.google.android.gms:play-services-ads-lite@@19.1.0:3)
at android.app.ActivityThread.installProvider(ActivityThread.java:7085)
... 10 more
2020-05-18 17:53:29.989 18492-18492/com.example.brtrsoundboard I/Process: Sending signal. PID: 18492 SIG: 9
像这样在AndroidManifest中添加您的应用ID:
<manifest>
<application>
<!-- 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-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
</application>
</manifest>
在application
标签内部。
参见:https://developers.google.com/admob/android/quick-start#update_your_androidmanifestxml
您应该在清单中添加以下内容
<meta-data
android:name="com.google.android.gms.ads.AD_MANAGER_APP"
android:value="true" />
有关更多信息,请阅读有关Import the Mobile Ads SDK
的官方指南。