2017-11-11 2 views
-1

"compile 'com.daimajia.slider:library:[email protected]'"ライブラリを使用して、画像のURLを渡して画像を表示すると、エラーが発生します。致命的な例外:メインのjava.lang.ExceptionInInitializerError(com.squareup.okhttp.Cache)。 <init>(Cache.java:172)

ArrayList変数にはマルチ画像のURLが含まれています。メインラインの

https://www.android-examples.com/android-multiple-auto-image-slider-example-tutorial-using-online-url/

app.gradle

defaultConfig { 
     applicationId "com.google.tho.oe" 
     minSdkVersion 16 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     multiDexEnabled true 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 

compile 'com.squareup.okhttp:okhttp:2.5.0' 
compile 'com.squareup.picasso:picasso:2.5.2' 
compile 'com.github.bumptech.glide:glide:3.8.0' 
compile 'com.nineoldandroids:library:2.4.0' 
compile 'com.daimajia.slider:library:[email protected]' 

いくつかのクラス

private ArrayList<String> collecter = new ArrayList<>(); 
sliderLayout = (SliderLayout)findViewById(R.id.slider); 

TextSliderView textSliderView = new TextSliderView(Main2Activity.this); 
     for (int i = 0; i<collecter.size();i++) { 

      textSliderView 
        .description(collecter.get(i)) 
        .image(collecter.get(i).toString()) 
        .setScaleType(BaseSliderView.ScaleType.Fit) 
        .setOnSliderClickListener(Main2Activity.this); 
      textSliderView.bundle(new Bundle()); 
      textSliderView.getBundle() 
        .putString("extra", collecter.get(i)); 
      Toast.makeText(getApplicationContext(),"HI Thofiq"+collecter.get(i),Toast.LENGTH_LONG).show(); 

     } 
     sliderLayout.addSlider(textSliderView); 
     sliderLayout.setPresetTransformer(SliderLayout.Transformer.Accordion); 
     sliderLayout.setPresetIndicator(SliderLayout.PresetIndicators.Center_Bottom); 
     sliderLayout.setCustomAnimation(new DescriptionAnimation()); 
     sliderLayout.setDuration(3000); 
     sliderLayout.addOnPageChangeListener(this); 
から

エラー:

11-11 21:25:30.045 18458-18458/com.google.tho.oe E/AndroidRuntime: FATAL EXCEPTION: main 
                     java.lang.ExceptionInInitializerError 
                      at com.squareup.okhttp.Cache.<init>(Cache.java:172) 
                      at com.squareup.okhttp.Cache.<init>(Cache.java:168) 
                      at com.squareup.picasso.OkHttpDownloader.<init>(OkHttpDownloader.java:78) 
                      at com.squareup.picasso.OkHttpDownloader.<init>(OkHttpDownloader.java:55) 
                      at com.squareup.picasso.OkHttpDownloader.<init>(OkHttpDownloader.java:45) 
                      at com.squareup.picasso.Utils$OkHttpLoaderCreator.create(Utils.java:424) 
                      at com.squareup.picasso.Utils.createDefaultDownloader(Utils.java:250) 
                      at com.squareup.picasso.Picasso$Builder.build(Picasso.java:832) 
                      at com.squareup.picasso.Picasso.with(Picasso.java:662) 
                      at com.daimajia.slider.library.SliderTypes.BaseSliderView.bindEventAndShow(BaseSliderView.java:210) 
                      at com.daimajia.slider.library.SliderTypes.TextSliderView.getView(TextSliderView.java:25) 
                      at com.daimajia.slider.library.SliderAdapter.instantiateItem(SliderAdapter.java:81) 
                      at com.daimajia.slider.library.Tricks.InfinitePagerAdapter.instantiateItem(InfinitePagerAdapter.java:54) 
                      at com.daimajia.slider.library.Tricks.ViewPagerEx.addNewItem(ViewPagerEx.java:848) 
                      at com.daimajia.slider.library.Tricks.ViewPagerEx.populate(ViewPagerEx.java:998) 
                      at com.daimajia.slider.library.Tricks.ViewPagerEx.populate(ViewPagerEx.java:930) 
                      at com.daimajia.slider.library.Tricks.ViewPagerEx.onMeasure(ViewPagerEx.java:1453) 
                      at android.view.View.measure(View.java:15371) 
                      at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:617) 
                      at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:399) 
                      at android.view.View.measure(View.java:15371) 
                      at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:617) 
                      at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:399) 
                      at android.view.View.measure(View.java:15371) 
                      at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:617) 
                      at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:399) 
                      at android.view.View.measure(View.java:15371) 
                      at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4876) 
                      at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
                      at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:139) 
                      at android.view.View.measure(View.java:15371) 
                      at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4876) 
                      at android.support.v7.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:393) 
                      at android.view.View.measure(View.java:15371) 
                      at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4876) 
                      at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
                      at android.view.View.measure(View.java:15371) 
                      at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4876) 
                      at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1396) 
                      at android.widget.LinearLayout.measureVertical(LinearLayout.java:681) 
                      at android.widget.LinearLayout.onMeasure(LinearLayout.java:574) 
                      at android.view.View.measure(View.java:15371) 
                      at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4876) 
                      at android.widget.FrameLayout.onMeasure(FrameLayout.java:310) 
                      at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2423) 
                      at android.view.View.measure(View.java:15371) 
                      at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2011) 
                      at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1250) 
                      at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1425) 
                      at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1143) 
                      at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4674) 
                      at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725) 
                      at android.view.Choreographer.doCallbacks(Choreographer.java:555) 
                      at android.view.Choreographer.doFrame(Choreographer.java:525) 
                      at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711) 
                      at android.os.Handler.handleCallback(Handler.java:615) 
                      at android.os.Handler.dispatchMessage(Handler.java:92) 
                     at android.os 
+1

これはCOMPLETEスタックトレースのようには見えません。実際の問題を理解する上で重要な「起因する」セクションが1つ以上存在する必要があります。 –

+0

https://github.com/square/okhttp/issues/2228 –

+0

例外に基づいて同じ問題ではないようです。しかし、完全なスタックトレースが必要です –

答えて

0

を削除するようにしてくださいこの依存関係。イメージローダーライブラリで異なるバージョンのokhttpを使用していると、エラーが発生する可能性があります。あなたは、新しいバージョンとの互換性が可能となるため、次の依存関係

dependencies { 
    compile "com.android.support:support-v4:+" 
    compile 'com.squareup.picasso:picasso:2.3.2' 
    compile 'com.nineoldandroids:library:2.4.0' 
    compile 'com.daimajia.slider:library:[email protected]' 

}

を追加して、例のようにライブラリのバージョンを使用する必要があります。 そして、あなたはあなたが2つの以上okhttpのインスタンスを持っている場合にも、エラーが発生する可能性が

マニフェスト
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
... 
でアクセス許可を追加するために忘れていないかどうかを確認します。それをチェックしてください。 IntelliJ Amiyaによって書かれたように、githab https://github.com/square/okhttp/issues/2228 の問題を見ることができます。おそらくそこにある解決策は役に立ちますが、 okhttpのためにdaimajia.slider libのコードを変更する必要があります。

関連する問題