• 24-08-2017, 01:02:00
    #1
    Herkese Selamlar
    Bugün bütün gün üstünde çalıştığım projeyi bu akşam tekrar açmaya çalışınca hata verdi. Yeni bir layout oluşturdum oraya button vs. ne sürüklesem form üzerinde gözükmüyor ama ekleniyor. Build ettiğimde hata yok emülatörde gözüküyor. Ne yaptıysam çözemedim sorunu. Googleden ne diye aratacağımı bilemediğimden ayrıntıları burdan paylaşıyorum. Bilen biri yardımcı olursa çok makbule geçer.

    Gradle Dosyam
       compile 'com.google.android.gms:play-services-gcm:11.0.4'
        compile 'com.google.android.gms:play-services-location:11.0.4'
        //  compile 'com.onesignal:OneSignal:[3.5.8, 3.99.99]'
        compile 'com.google.android.gms:play-services:11.0.4'
        compile 'com.google.android.gms:play-services-ads:11.0.4'
        compile 'com.google.firebase:firebase-core:11.0.4'
        compile fileTree(include: ['*.jar'], dir: 'libs')
        androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
            exclude group: 'com.android.support', module: 'support-annotations'
        })
        compile 'com.android.support:appcompat-v7:26.+'
        compile 'com.android.support:design:26.+'
        compile 'com.android.support.constraint:constraint-layout:1.0.2'
        testCompile 'junit:junit:4.12'
    appcombat kütüphanesinin altı çizili üzerine gelince şöyle bir hata açıklaması yazıyor.
    Avoid using + in version numbers; can lead to unpredictable and unrepeatable builds (com.android.support:design:26.+) less... (Ctrl+F1)
    Using + in dependencies lets you automatically pick up the latest available version rather than a specific, named version. However, this is not recommended; your builds are not repeatable; you may have tested with a slightly different version than what the build server used. (Using a dynamic version as the major version number is more problematic than using it in the minor version position.)


    Bu Hatadan anladığım kadarı ile kütüphanenin tam sürümünü yazın diyor. Son sürümü bulup onları ekledim.

    Aldığım Hata
    All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 26.0.0-alpha1, 25.2.0. Examples include com.android.support:animated-vector-drawable:26.0.0-alpha1 and com.android.support:mediarouter-v7:25.2.0 less... (Ctrl+F1)
    There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion.)


    com.android.support:mediarouter-v7:25.2.0 kütüphanesi yüzünden oluyor galiba. Fakat gradlede böyle bir kütüphane yok.

    Son olarak xml Görülen hata

    The following classes could not be instantiated:
    -*android.support.v7.widget.ActionBarContainer (Open Class, Show Exception, Clear Cache)
    -*android.support.v7.widget.Toolbar (Open Class, Show Exception, Clear Cache)
    -*android.support.v7.widget.ActionBarContextView (Open Class, Show Exception, Clear Cache)
    -*android.support.v7.app.WindowDecorActionBar (Open Class, Show Exception, Clear Cache)
     Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE.  If this is an unexpected error you can also try to build the project, then manually refresh the layout.  Exception Details java.lang.NoSuchMethodError: android.support.v4.view.ViewCompat.setBackground(Landroid/view/View;Landroid/graphics/drawable/Drawable;)V **at android.support.v7.widget.ActionBarContainer.<init>(ActionBarContainer.java:64) **at java.lang.reflect.Constructor.newInstance(Constructor.java:423) **at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727) **at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:858) **at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70) **at android.view.LayoutInflater.rInflate(LayoutInflater.java:834) **at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821) **at android.view.LayoutInflater.inflate(LayoutInflater.java:518) **at android.view.LayoutInflater.inflate(LayoutInflater.java:426) **at com.android.layoutlib.bridge.bars.BridgeActionBar.<init>(BridgeActionBar.java:84) **at com.android.layoutlib.bridge.bars.AppCompatActionBar.<init>(AppCompatActionBar.java:59) **at com.android.layoutlib.bridge.impl.Layout.createActionBar(Layout.java:241) **at com.android.layoutlib.bridge.impl.Layout.<init>(Layout.java:153) Copy stack to clipboard
    2 saattir bir çözüm bulamadım. yardımcı olacak arkadaşlara şimdiden teşekkürler.
  • 24-08-2017, 01:56:41
    #2
    Üyeliği durduruldu
    com.android.support:animated-vector-drawable
    com.android.support:mediarouter-v7
    Bu ikisi büyük ihtimalle com.android.support:design veya com.android.support:appcompat kütüphanelerinin içerisinde barınıyor. Bu yüzden gradleda gözükmüyordur.

    Android SDK'dan Extras bölümündekileri güncelledin mi? Belki çözüm olur.
  • 24-08-2017, 01:59:48
    #3
    bekmekci_ adlı üyeden alıntı: mesajı görüntüle
    com.android.support:animated-vector-drawable
    com.android.support:mediarouter-v7
    Bu ikisi büyük ihtimalle com.android.support:design veya com.android.support:appcompat kütüphanelerinin içerisinde barınıyor. Bu yüzden gradleda gözükmüyordur.

    Android SDK'dan Extras bölümündekileri güncelledin mi? Belki çözüm olur.
    garanti olsun diye güncellemesi gelen tüm sdklari güncelledim. Değişen bir şey yok maalesef.
  • 24-08-2017, 02:01:54
    #4
    Üyeliği durduruldu
    Hata veren kütüphaneleri gradle'a eklemeyi denermisin ? (Appcompat ile aynı versiyon olsun)
    Şu linkte seninle aynı hatayı alan kişi böyle yapmış : https://stackoverflow.com/a/43524025
  • 24-08-2017, 02:11:29
    #5
    bekmekci_ adlı üyeden alıntı: mesajı görüntüle
    Hata veren kütüphaneleri gradle'a eklemeyi denermisin ? (Appcompat ile aynı versiyon olsun)
    Şu linkte seninle aynı hatayı alan kişi böyle yapmış : https://stackoverflow.com/a/43524025
    Gradle hatası çözüldü fakat layoutlarda bir değişme yok, aynı şekilde hatası devam ediyor.

    The following classes could not be instantiated:
    -*android.support.v7.widget.ActionBarContainer (Open Class, Show Exception, Clear Cache)
    -*android.support.v7.widget.Toolbar (Open Class, Show Exception, Clear Cache)
    -*android.support.v7.widget.ActionBarContextView (Open Class, Show Exception, Clear Cache)
    -*android.support.v7.app.WindowDecorActionBar (Open Class, Show Exception, Clear Cache)
    *Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE.* If this is an unexpected error you can also try to build the project, then manually refresh the layout.* Exception Details java.lang.NoSuchMethodError: android.support.v4.view.ViewCompat.setBackground(Landroid/view/View;Landroid/graphics/drawable/Drawable;)V **at android.support.v7.widget.ActionBarContainer.<init>(ActionBarContainer.java:64) **at java.lang.reflect.Constructor.newInstance(Constructor.java:423) **at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727) **at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:858) **at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70) **at android.view.LayoutInflater.rInflate(LayoutInflater.java:834) **at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821) **at android.view.LayoutInflater.inflate(LayoutInflater.java:518) **at android.view.LayoutInflater.inflate(LayoutInflater.java:426) **at com.android.layoutlib.bridge.bars.BridgeActionBar.<init>(BridgeActionBar.java:84) **at com.android.layoutlib.bridge.bars.AppCompatActionBar.<init>(AppCompatActionBar.java:59) **at com.android.layoutlib.bridge.impl.Layout.createActionBar(Layout.java:241) **at com.android.layoutlib.bridge.impl.Layout.<init>(Layout.java:153) Copy stack to clipboard
  • 24-08-2017, 02:20:42
    #6
    Üyeliği durduruldu
    File - Invalidate Caches / Restart işlemini yaparmısın ?
    Eğerki hala düzelmezse res/values/styles.xml dosyasından parent="Theme.Holo...." kısmını parent="Base.Theme...." şeklinde yapıp denermisin ?
    Yani Theme kelimesinin başına Base. koyarak dene.
    Bu da olmazsa classda extends ActionBarActivity yerine sadece Activity'i kullan.

    Xmldeki hatanın sebebi appcompat ile ilgili olduğunu düşünüyorum ama tam nedenini bilmiyorum. Aklıma bu seçenekler geldi.
  • 24-08-2017, 02:26:19
    #7
    bekmekci_ adlı üyeden alıntı: mesajı görüntüle
    File - Invalidate Caches / Restart işlemini yaparmısın ?
    Eğerki hala düzelmezse res/values/styles.xml dosyasından parent="Theme.Holo...." kısmını parent="Base.Theme...." şeklinde yapıp denermisin ?
    Yani Theme kelimesinin başına Base. koyarak dene.
    Bu da olmazsa classda extends ActionBarActivity yerine sadece Activity'i kullan.

    Xmldeki hatanın sebebi appcompat ile ilgili olduğunu düşünüyorum ama tam nedenini bilmiyorum. Aklıma bu seçenekler geldi.


    Style dosyasından theme parentin basına Base koymak sorunu çözdü hocam çok teşekkürler gece gece hayır duası aldın