我更新了Android Studio到2.2,我的項目不會再生成。我活動的super.onCreate(savedInstanceState)給我一個錯誤:java.lang.NoSuchMethodError:沒有靜態方法getDrawable(Landroid/content/Context; I)Landroid/graphics/drawable/Drawable;
java.lang.NoSuchMethodError: No static method getDrawable(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable; in class Landroid/support/v4/content/ContextCompat; or its super classes (declaration of 'android.support.v4.content.ContextCompat' appears in /data/app/x.y.z-1/base.apk:classes32.dex)
at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:197)
at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:185)
at android.support.v7.widget.AppCompatDrawableManager.checkVectorDrawableSetup(AppCompatDrawableManager.java:720)
at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:190)
at android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:77)
at android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.java:127)
at android.support.v7.app.AppCompatDelegateImplV9.<init>(AppCompatDelegateImplV9.java:147)
at android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.java:27)
at android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.java:50)
at android.support.v7.app.AppCompatDelegateImplV23.<init>(AppCompatDelegateImplV23.java:29)
at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:199)
at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:181)
at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:521)
at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:71)
at zz.yyy.xxx.activities.AsdActivity.onCreate(AsdActivity.java:12)
at android.app.Activity.performCreate(Activity.java:6904)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
at android.app.ActivityThread.access$1100(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
我做了一個完全新的活動,看它是否是我的代碼,是造成問題,但它並沒有幫助。這裏的活動:
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class AsdActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_asd);
}
}
而且這裏是我的build.gradle(APP)
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
android {
compileSdkVersion 24
buildToolsVersion "23.0.3"
defaultConfig {
minSdkVersion 21
targetSdkVersion 24
...
}
buildTypes {
debug {
...
minifyEnabled false
}
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.crashlytics.sdk.android:crashlytics:[email protected]') {
transitive = true;
}
compile project(':ViewLib')
compile files('libs/commons-io-2.5.jar')
compile project(':GridHeaders')
compile 'com.amazonaws:aws-android-sdk-s3:2.2.16'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.squareup.okhttp3:okhttp:3.2.0'
compile 'com.github.franmontiel:PersistentCookieJar:v0.9.3'
compile 'com.amazonaws:aws-android-sdk-mobileanalytics:2.2.9'
compile('com.facebook.fresco:fresco:0.11.0') {
exclude module: 'support-v4'
}
compile 'org.apache:pdfbox-android:1.8.9.0'
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support:design:24.2.1'
}
這個錯誤,我得到這個之前:java.lang.NoSuchMethodError: No static method setOnApplyWindowInsetsListener
而在這之前我有另一個類似的錯誤。兩者都通過更新我的支持庫來解決。現在我得到了最新的(24.2.1)版本的appcompatv7和設計庫,所以我不知道我能做些什麼。
我有同樣的問題,但android-support-v13.jar文件沒有發現我的lib文件夾plz幫助... –
我檢查'在android.support.v7.widget.AppCompatDrawableManager.getDrawable'文件它給C:\用戶\ ajagtap \應用程序數據\本地\ Android的\ SDK \演員\機器人\ m2repository \ COM \機器人\ SUPPORT \程序兼容性-V7 \ 25.3.0 \程序兼容性-v7-25.3.0-sources.jar!\機器人\ SUPPORT \ V7 \ widget \ AppCompatDrawableManager.java路徑 –