这是我的app build gradle code
apply plugin: 'com.android.application'
android {
compileSdkVersion 24
buildToolsVersion "24.0.2"
defaultConfig {
applicationId "com.example.personal.numbermania"
minSdkVersion 10
targetSdkVersion 24
versionCode 1
versionName "1.0"
multiDexEnabled true
}
dexOptions {
incremental true
javaMaxHeapSize "4g" //Here stablished how many cores you want to use your android studi 4g = 4 cores
}
buildTypes {
debug
{
debuggable true
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support:design:24.2.1'
compile 'com.google.firebase:firebase-ads:9.6.1'
compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.android.gms:play-services:9.6.1'
}
apply plugin: 'com.google.gms.google-services'
这是我的项目构建gradle
//顶级构建文件,您可以在其中添加所有子项目/模块共有的配置选项。
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.3'
classpath 'com.google.gms:google-services:3.0.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
运行error
时出现错误答案 0 :(得分:0)
在致电AdView之前进行初始化
MobileAds.initialize(getApplicationContext(), "ca-app-pub-3940256099942544~3347511713");
//replace your ID
AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
更多详情请参阅Here
答案 1 :(得分:0)
编译代码后,每个类都有.class
个文件
你的计划。这些文件包括Java用于解释和运行程序的字节码。
JVM尝试查找.class
文件,但是找不到它会导致运行时错误NoClassDefError
。
将以下代码添加到build.gradle
文件可解决此问题:
dexOptions {
incremental true
javaMaxHeapSize "4g"
}
尝试调试/解决此问题的其他事项
方法1:
Android SDK Manager
>更新 Google Play服务至修订版30 Extras
。com.android.support.multidex:1.0.1
添加到您的依赖项中,或删除multiDexEnabled true
(如果不需要)。android:name="android.support.multidex.MultiDexApplication"
添加到AndroidManifest
注意:如果您的AndroidManifest
已定义了自定义应用程序类,请扩展MultiDexApplication
而不是Application
。
方法2:
更新Application
类的另一种方法:
public class App extends Application {
@Override
protected void onCreate(Bundle savedInstanceState) {
...
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
...
}
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
方法3:
如果方法1和方法2不成功,请尝试将您的Google Play服务相关性降级为8.4.0