2017-03-14 11 views
-2

私はどのように修正できますか?NoSuchMethodError:ContextCompatクラスの静的メソッドgetDrawableはありません。またはそのスーパークラス宣言の 'android.support.v4.content.ContextCompat'

app.gradle

android { 
    compileSdkVersion 24 
    buildToolsVersion '25.0.0' 
    defaultConfig { 
     applicationId "*****" 
     minSdkVersion 21 
     targetSdkVersion 24 
     versionCode 5 
     versionName "2.1.1" 
     multiDexEnabled true; 
    } 
-- 
} 
dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:multidex:1.0.1' 
    compile 'com.squareup.okhttp3:okhttp:3.2.0' 
    compile 'pl.bclogic:pulsator4droid:1.0.3' 
    compile project(path: ':libs:AlexaAndroid') 
    compile project(path: ':libs:RecorderLevelView') 
    compile project(path: ':libs:speechutils-master') 
    compile project(path: ':libs:pulsator4droid') 
    compile project(path: ':libs:MaterialRippleLayout') 
    compile project(path: ':libs:ListViewAnimations-core') 
    compile files('--/libs/universal-image-loader-1.9.3.jar') 
    compile files('--/libs/nineoldandroids-2.4.0.jar') 
    compile files('--/libs/listviewanimations_lib-manipulation_3.1.0.jar') 
    compile files('--/libs/listviewanimations_lib-core-slh_3.1.0.jar') 
    compile files('--/libs/android-support-v4.jar') 

    compile 'com.android.support:support-v4:24.2.0' 
    compile 'com.android.support:support-v13:24.2.0' 
    compile 'com.android.support:appcompat-v7:24.2.0' 
    compile 'com.android.support:support-vector-drawable:24.2.0' 
    compile 'com.android.support:design:24.2.0' 
    compile 'com.android.support:recyclerview-v7:24.2.0' 
} 
-- shows jar file path. 

ERRORログ

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/com.***.***.***-1/base.apk) 
                        at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:194) 
                        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.AppCompatDelegate.create(AppCompatDelegate.java:201) 
                        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 com.***.***.***.BaseActivity.onCreate(BaseActivity.java:70) 
                        at com.***.***.***.MainActivity.onCreate(MainActivity.java:59) 
                        at android.app.Activity.performCreate(Activity.java:5990) 
                        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 
                        at android.app.ActivityThread.access$800(ActivityThread.java:151) 
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 
                        at android.os.Handler.dispatchMessage(Handler.java:102) 
                        at android.os.Looper.loop(Looper.java:135) 
                        at android.app.ActivityThread.main(ActivityThread.java:5254) 
                        at java.lang.reflect.Method.invoke(Native Method) 
                        at java.lang.reflect.Method.invoke(Method.java:372) 
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 

活動のsuper.onCreate(savedInstanceState)は私にエラーを与える:私は、デバイスのUSBデバッグを使用する場合 アプリケーションはADBデバイスで細かい作業やそれはうまく動作しますが、リリースAPKとはうまく動作しません。

私は、どのような違いが表示されない古いバージョンと比較して、私はどんなgradleの更新を行ったのか分かりません。

答えて

0

この問題は解決しました。プロジェクトで

は、そのlibフォルダにライブラリすなわちcompile files('--/libs/listviewanimations_lib-core-slh_3.1.0.jar')を持っていたそのjarファイルを参照するので、Gradleのcom.android.support:support-v4.jarファイルを存在しcom.android.support:support-v4.jarファイルの中で宣言されていないgetDrawable機能becasueエラーNoSuchMethodError: No static method getDrawable in class ContextCompat; or its super classes declaration of 'android.support.v4.content.ContextCompat'を与えます。

libフォルダからcom.android.support:support-v4.jarを削除してクリーンアップした後、アンドロイドプロジェクトを再構築し、gradleとその作業に同期します。

関連する問題