Android Studio, R simgesini kırmızı ile “R sembolü çözülemiyor” hata mesajıyla işaretliyor, ancak derleme başarılı


150

Android Studio'da oluşturmaya çalıştığım her projede, R'nin tüm kullanımları "R sembolünü çözemez" hata mesajıyla kırmızı olarak işaretlenir, ancak derleme başarılı olur ve uygulama çalışır. Otomatik tamamlamayı engellediğinden ve kodumun her tarafında büyük kırmızı dalgalı çizgiler gösterdiğinden bu gerçekten sinir bozucu.

Android Studio 1.7.0 çalıştırıyorum ve varsayılan ayarlarla proje oluşturuyorum. Bir ekran görüntüsü eklenmiştir:

Android Studio Ekran Görüntüsü

Bu benim build.gradle:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile files('libs/android-support-v4.jar')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 16
    }
}

Proje Yapısı şöyle görünür:

resim açıklamasını buraya girin

Bunu nasıl düzeltebileceğine dair bir fikrin var mı?


Bazı projelerimde bu oldu. Bunu düzeltmek için 'Temizle', 'Yeniden Oluştur', projeyi kapat ve yeniden aç. Ardından Araçlar -> Android -> Projeyi Sınıf Dosyaları ile Senkronize Et'i seçin. Ayrıca aşağıdakileri de denedim ... Projeyi kapatın ve klasörü yeni bir dizine taşıyın veya geçerli dizini yeniden adlandırın. Şimdi projeyi yeni gibi içe aktarın. Bunu yapmanın birkaç yolu vardır, ilk Android ekranından içe aktar'ı seçin ve Dizini bulduğunuzda, proje adından veya ana dizinden içe aktarmayın, 'Uygulama'da bir düzey içe aktarın.
Snappy Cracker

Okuyucular, karmaşık olabilecek başka bir şey denemeden önce ... sadece android stüdyosunu yeniden başlatmayı deneyin.
eRaisedToX

Yanıtlar:


111

Android Studio'nuzda Oluştur -> Projeyi Yeniden Oluştur seçeneğini tıklayın .


Düzgün dönüştürme olmadan .png olarak değiştirmiş bir .Jpg görüntüsü vardı. bu dosyayı kaldırmak sorunu çözdü. garip olsa ..
DeathRs

Bu şeyi gerçekten yapmak istedim, ancak Android Studio yapısında kötü şöhretli. Bunu yaparsam benimki 30 dakikadan fazla sürecek
Neon Warge

mükemmel çözüm!!
Akash Bisariya

Bunu iki kez yapmak zorunda kaldım
Janac Meena

bazen XML dosya hatası nedeniyle. <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">Bu satırları xml dosyalarında kontrol edin ve düzeltin.
meyasir

63

XML dosyalarımda hatalar olduğu için bu sorunun neden olduğunu buldum. XML hatalarını düzelttikten sonra, bir temizleme / derleme yapın, sorun düzeltildi.


8
Sadece kimin okuduğuna yardım ediyor. Muhtemelen XML dosyalarında hataya neden olan bir şeydir. Benim için, (neden emin değilim) ama bir parça yerleşim hattı neden oldu: android: layout_bottom = "@ id / my_list" Bu satırdan bir parçadan başka bir parçada layout_top kullanmak için basitçe bu satırdan geçiş.
Mingsheng

Benim için de aynı şey! Yardım için teşekkürler
Michael

Burada aynı! Teşekkür ederim.
Teddy Wilson

Mükemmel cevap! Teşekkürler
Berat Eyüboğlu

Evet, benim durumumda: xml eleman yüksekliğim '50dp' yerine '50' idi.
Krishna Raj Salim

44

Öğesini Build -> Rebuild Projectve ardından öğesini tıklayın Tools -> Android -> Sync Project with Gradle Files.


2
Bu çalışıyor. Sınıf sürümünü yükselttikten sonra hatayla karşılaştım.
Vaquita

Benim durumdu: Her cleanyapılan tüm Rhaline hatalar her builddüzelttim ama tabii 'uncleans' projesi. Bu cevabı izledikten sonra nihayet hataları almadan projeyi temizleyebilirim.
talz

Sadece @ user2284700'ün cevabına ekleyerek: AS 3.1.3'te "Gradle Dosyaları ile Senkronizasyon Projesi", "Dosya" menüsü altında
BMU

33

AndroidManifest.xmlPaket adınızın doğru olduğundan emin olun . Benim R.whateverkırmızı işaretlendiğinde benim için sorun düzeltildi !

gradleBu paket adlarının doğru olduğundan emin olmak için tüm dosyalarınızı kontrol etmenizi de tavsiye ederim . Bu her şeyi kırmızı yapmamalı, ancak gradledosyalarınızın düzgün şekilde senkronize edilmesini durduracaktır .


Teşekkürler! Bunu unutmak için paket yeniden adlandırma ile küçük bir deney yapıyordum ...
tom

17

HİÇBİR ŞEY YAPMAYIN . Sadece Android Studio'yu güncelleyin . Sorunumu çöz! Mükemmel çalışın.


1
Burada bahsedilen tüm çözümleri denedim. Android stüdyosunun güncellenmesi sorunu çözdü
Siva K Reddy C Shiva

1
Beni bu konuda daha fazla saat harcamaktan kurtardığın için teşekkürler
wmurmann

12

'Com.android.tools.build:gradle:3.3.1' ile benzer bir sorun yaşadım, yukarıdaki çözümlerin hiçbirini işe yaramadı. Aslında inşa edildi: 3.3.1 no'lu sınıf sorunu. Bunu 3.2.1 olarak değiştirdim ve işe yaradı.

Bu yüzden build: gradle sürümü ile ilgili sorun olabilir.


03.2019 Bu yardımcı oldu. İlginç olan, bunun sadece projelerimden birinde ve diğer iki projede gerçekleşmediğidir. Umarım Android Studio güncellemesi başka bir şeyi karıştırmaz ...
Martin Berger

9
  1. Dosya> Proje Yapısı menü seçeneğini seçin.
  2. İleti kutusunda Tamam'a basın (Proje Yapısı değişiklikleri build.gradle dosyasını güncellemez).
  3. "Proje Ayarları" yan bölmesinde "Modüller" i seçin.
  4. Her modül (proje) için, "Hariç Tutulan Klasörler" bölümünün "derleme" klasörünü içermediğini kontrol edin. Varsa, "derleme" klasörünün yanındaki "x" düğmesine basın.
  5. tamam tuşuna basın

Şimdi "MyAppProject / MyApp / build / source" klasörünü görmelisiniz. Bu "r" klasörünü içermelidir (R.java dosyasının oluşturulduğu yer). Burada ya "hata ayıklama", "sürüm" mavi görmelisiniz (build.gradle dosyasında bir projectFlavour varsa, bunlar "" klasörü altında olacaktır). Bu hata ayıklama / bırakma klasörü içinde uygulamanızın paket adı ve ardından tüm kaynak kimliklerinizi içeren bir R.java dosyası olmalıdır.


1
Bu artık geçerli değil, ancak Loïc'e verdiğim yanıtta görebileceğiniz gibi, bu klasörde bir R.java dosyası olmadığımı unutmayın.
Ilya Kogan

9
  1. Projeyi yeniden oluşturun.
  2. (1) çalışmazsa Android Studio / Eclipse uygulamasını yeniden başlatın.

İkisi de çalışmazsa, tüm xml dosyalarınızı kontrol edin. Bu hata, xml dosyanız yanlış olduğunda oluşur.


Benim durumumda, manifest.xml dosyasında soruna neden olan bir özellik vardı. Ben keşfetti ve sadece çizgi silene kadar uykusuz geceler vardı. Özellik android oldu: fullBackupContent = ""
Kingsley Ijike

6

Bazı nedenlerden dolayı, Android stüdyosu editör ve derleyici için farklı yapılandırmalar kullanır. Derleyici için çalışıyorsa o zaman iyidir. Editör için işe yaramazsa. (çözümlenmemiş dosyaları görür).

Projenizin kaynağına bazı dizinler eklemeniz gerekir. Örneğin, tüm kaynaklar "kaynak" olarak işaretlenmelidir.

Dosya-> Proje Yapısı

"Modüller" i ve ardından projenizi seçin. Ve sourcessekmeyi seçin . Sağ taraftaki kaynak dizininizi bulun ve mavi renkli "kaynak" düğmesini tıklayın. Hepsini kapatın ve işe yarayacak.

Ayrıca,

build/source/r/debugaynı zamanda bir kaynaktır. Ben build/source/*/debugkaynak olarak işaretlenmiş tüm var .

ana modül .iml

<?xml version="1.0" encoding="UTF-8"?>
<module external.system.id="GRADLE" type="JAVA_MODULE" version="4">
  <component name="FacetManager">
    <facet type="android" name="Android">
      <configuration>
        <option name="SELECTED_BUILD_VARIANT" value="debug" />
        <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
        <option name="ALLOW_USER_CONFIGURATION" value="false" />
        <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
        <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
        <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
      </configuration>
    </facet>
    <facet type="android-gradle" name="Android-Gradle">
      <configuration>
        <option name="GRADLE_PROJECT_PATH" value=":SherlockHolmes" />
      </configuration>
    </facet>
  </component>
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <content url="file://$MODULE_DIR$">
      <sourceFolder url="file://$MODULE_DIR$/build/source/r/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/aidl/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/rs/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/buildConfig/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/res/rs/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/r/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/aidl/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/rs/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/buildConfig/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/res/rs/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/jni" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/res" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/assets" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/res" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/aidl" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/assets" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/java" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/jni" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/rs" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/res" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/resources" isTestSource="true" />
      <excludeFolder url="file://$MODULE_DIR$/build/apk" />
      <excludeFolder url="file://$MODULE_DIR$/build/assets" />
      <excludeFolder url="file://$MODULE_DIR$/build/bundles" />
      <excludeFolder url="file://$MODULE_DIR$/build/classes" />
      <excludeFolder url="file://$MODULE_DIR$/build/dependency-cache" />
      <excludeFolder url="file://$MODULE_DIR$/build/exploded-bundles" />
      <excludeFolder url="file://$MODULE_DIR$/build/incremental" />
      <excludeFolder url="file://$MODULE_DIR$/build/libs" />
      <excludeFolder url="file://$MODULE_DIR$/build/manifests" />
      <excludeFolder url="file://$MODULE_DIR$/build/symbols" />
      <excludeFolder url="file://$MODULE_DIR$/build/tmp" />
    </content>
    <orderEntry type="jdk" jdkName="Android 4.2.2" jdkType="Android SDK" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" name="Sherlock.aar" level="project" />
    <orderEntry type="library" name="SlidingMenu.aar" level="project" />
    <orderEntry type="library" name="support-v4-13.0.0" level="project" />
  </component>
</module>

proje iml

<?xml version="1.0" encoding="UTF-8"?>
<module external.system.id="GRADLE" type="JAVA_MODULE" version="4">
  <component name="FacetManager">
    <facet type="android-gradle" name="Android-Gradle">
      <configuration>
        <option name="GRADLE_PROJECT_PATH" value=":" />
      </configuration>
    </facet>
  </component>
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <content url="file://$MODULE_DIR$">
      <excludeFolder url="file://$MODULE_DIR$/.gradle" />
      <excludeFolder url="file://$MODULE_DIR$/build" />
    </content>
    <orderEntry type="inheritedJdk" />
    <orderEntry type="sourceFolder" forTests="false" />
  </component>
</module>

Kara büyü

Bundan emin değilim, ama hiçbir şey değiştirmemesi gerektiğinden eminim. Gereken tüm satırları yorumladıktan sonra projeyi derlemeyi ve kaydetmeyi deneyinR . Sonra her şey kırmızı olmadığında. Onları tekrar eklemeyi deneyin. Garip olan bu, derlemenizin / kaynağınızın oluşturulmamasıdır.

Ayrıca bu soru "derleyici dış yapı kullanın" kontrol öneririz

Android Studio, içe aktarma projem için R.java oluşturmuyor

Kenar notu

Ayrıca, java kodunuzda yok olduğundan emin olun. import android.r;gösterdiğinizden, her şey iyi görünüyor. Sadece yapı / kaynağın oluşturulmadığını garipleştirin. Örneğin, derleme / apk yok. Sürüm modunda olabilirsiniz ve bu dizinleri oluşturmaz.


Merhaba Loïc, soruya proje yapısının bir ekran görüntüsünü ekledim. Gördüğünüz gibi, tüm resklasör "kaynak" olarak işaretlenmiş ve bir build/sourcedizinim yok. Yaratmam gerekir mi? Öyleyse nasıl?
Ilya Kogan

inşa edebildiğim kadarıyla inşa / kaynak dizini oluşturulması gerekir. Android stüdyosu "alfa" bir sürümdür. Çok tuhaf şeyler geliyor. 1.7.0_21 var. Bir fikir bir şey yapmak olacaktır build/rebuil project. Gradle'ı komut satırından çalıştırabiliyorsanız, editörde gösterilmeyen bazı hatalar verebilir.
Loïc Faure-Lacroix

Proje cihazda başarıyla derlenip çalışsa da, oluşturulmaz.
Ilya Kogan

İml dosyaları sizinkine çok benziyor, aynı klasörler dahil ve hariç tutuluyor. "file: // $ MODULE_DIR $ / build / source / r / debug" mevcut olmasa da dahil edilir. Harici bir yapı kullanmak başka sorunlara neden olur (proje hiç derlenmez). Sürüm modunda olup olmadığımı nasıl kontrol ederim?
Ilya Kogan

5

Daha iyi bir çözüm bulana kadar geçici çözümüm burada:

  1. Herşeyi kullanarak R.java'nın nerede oluşturulduğunu bulun. Benim durumumda C:\Program Files (x86)\Android\android-studio\system\compiler\<project-name>.cb969c52\.generated\aapt\<module-name>.6badd9a4\production\com\<project-name>\<module-name>

  2. Proje görünümünde modülü tıklatın ve F4 tuşuna basın. Uyarıyı dikkate almayın.

  3. "+ İçerik Kökü Ekle" yi tıklayın ve yukarıda belirtilen klasörü seçin. Mavi olarak işaretlendiğinden emin olun (kaynak olarak).

Bunu yaptıktan sonra aniden tüm uyarılar kayboldu. Sorun, diğer insanlarla işbirliği yaparsanız, klasör adının her makinede farklı olması, bu nedenle senkronizasyon yaparken dikkatli olmanızdır.


Android Studio'nun en son 0.2.3 sürümünü denediniz mi? Hâlâ sorunu alıyorsanız, Android Studio geliştiricilerinin farkında olması ve sorunu araştırabilmesi ve çözebilmesi için bunu code.google.com/p/android/issues adresine bildirin .
reece

1
Hayır, Android Studio'dan vazgeçtim. IDE'yi seviyorum, ancak hala bir takımda çalışmak için uygun olmayan çok fazla hata var. Eclipse'e geri döndük.
Ilya Kogan

2
Sorun değil. Android Studio hala geliştirilmekte olduğundan, bulduğunuz hataları (düzeltilebilmeleri için) bildirebilmeniz ve pürüzlü kenarlarına toleranslı olmanız gerekir. Bu herkes için değil.
reece

5

Bu benim için çalıştı:

  1. Projeyi kapat ve yeniden aç

  2. "Project'i Gradle dosyasıyla senkronize et" düğmesine basın (üst menüdeki AVD yöneticisi simgesinin yanındadır) Gradle ilk kez Senkronize edemediyse 1-2'yi tekrarlayın. (benimki ikinci kez çalıştı).

Android Studio 1.2.2 ile çalıştı


5

Ben çözdüm:

1) Sync Project with gradle files
2) Build -> Clean Project
3) Build -> Rebuild Project
4) File -> Invalidate caches

//imp step
5) Check your xml files properly.

Belirgin bir sebep olmadan bir gün benim app sadece ... her yerde hataları ... çok teşekkür ederim! Bu çok yardımcı oldu!
JFreeman

1
Size korusun, yardımcı olan tek şey önbellekleri geçersiz
kıldı

4

Android Üst menü listesine gidin. Oluştur Menüsü'ne tıklayın, Oluştur altında Projeyi Yeniden Oluştur'a tıklayın .

resim açıklamasını buraya girin


4

Bazen bu derleme hataları hiçbir yerden devam etmez. Bu size olursa, şunu deneyin:

Kaynak dosyalarınızdaki XML'nin geçerliliğini yeniden kontrol edin: R.java dosyanız son derleme için oluşturulmadıysa, bir kaynağa başvurduğunuz her yerde projenizde hatalar görürsünüz. Bunun nedeni XML dosyalarınızdan birindeki yazım hatası olabilir. Düzen XML'si her zaman doğrulanmaz, bu nedenle bu dosyalardaki yazım hataları dikkatinizi çekmeyebilir. Yazım hatası bulmak ve dosyayı kaydetmek R.java'nın yenilenmesine neden olur.

Projenizi temizleyin! Select Build → Clean ProjectBu, projeyi sıfırdan yeniden oluşturacak ve hatasız bir yapıya neden olabilir.

Projenizi Gradle ile senkronize edin! Select Tools → Android → Sync Project with Gradle FilesAndroid Studio, Gradle yapılandırmanızı değiştirdikten sonra sorunları çözmenize yardımcı olabilecek doğru proje ayarlarıyla projeyi sıfırdan yeniden oluşturacaktır.

Android Lint'i çalıştırın! Lint size bir sorun hakkında iyi bilgi verebilir. Yukarıdakiler işe yaramazsa, sorununuzu muhtemelen bulacağınız yerdir. Lint'i çalıştırmak içinselect Analyze → Inspect Code → select Whole project → OK Lint önerilerini dikkatlice analiz edin; hatalar ve ardından uyarılarla başlayın.

İyi şanslar.


Benim durumumda, manifest.xml dosyasında soruna neden olan bir özellik vardı. Ben keşfetti ve sadece çizgi silene kadar uykusuz geceler vardı. Özellik android oldu: fullBackupContent = ""
Kingsley Ijike

3

Activity_main.xml dosyamda geçersiz bir girdi olduğu için bu hata bana geliyor .

Projenizi oluşturmaya veya temizlemeye çalıştığınızda hata mesajları göreceksiniz .

Bu hata mesajlarını okuyarak benimkini çözdüm , xml dosyamdaki sorunu düzeltin. sonra projeyi yeniden oluşturun .


2

Birkaç gün önce bu hatayı aldım, Android Studio'yu yeniden yüklemeye karar verene kadar etrafa bakmayı denedim. Benim için çalıştı.


Yeniden yükleme yardımcı olmadı :(
Ilya Kogan

Bu çok kaba bir yöntem.
Taslim Oseni

2

Bir projeden bir örnek oluştururken, mevcut projeyi içe aktarmamak iyi olur (çakıl, .idea, .iml, build, kavanozlar ve apks, yani gereksiz tüm oluşturulmuş dosyalar ile çatışmaları önler), yeni bir proje oluşturduktan sonra ve tüm ilgili kaynakları yapıştırarak şunları öneririm:

{AndroidManifest beyanı ve java sınıflarındaki tüm ithalatlar}, tüm kaynaklar (çekilebilir, mip-haritası, düzenler ve menüler ve build.gradle (en son sdk ile kullanılacak build.gradle örneği) istek üzerine sağlanabilir)) olup olmadığını ve bildirilen dizeler ve kimliklerin gerçekten var olup olmadığını ve kullanıldığını görmek için, bundan sonra tek hatanız sorulan soru olmalıdır:

Bulid-> Temiz Proje

Araçlar-> Android-> Proje'yi Gradle Dosyaları ile Senkronize Et

Dosya-> Önbellekleri Geçersiz Kıl ve Yeniden Başlat

En kötü durumlarda makinenizi yeniden başlatmanız yardımcı olur.

Yukarıdakilerin çalışması gerekir. Gerekirse soru sormaktan çekinmeyin, yani yorum gönderin.


2

Bu, esas olarak xml dosyasındaki hatalardan kaynaklanır, en son xml değişikliklerinizi kontrol edin ve benimle aynı sorunu yeniden oluşturun.


Bu yardımcı oldu, teşekkürler!
farahm

2

Manifest için paket bildiriminde bir kopyala / yapıştır yeniden kullan hatası var

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="wrong.package.name">

Ana etkinlik adı doğru yola sahipti, bu nedenle bildirimde herhangi bir kontrol hatası yoktu.

Bunu çözdükten sonra, derleme başarılı olmasına rağmen kaynak dosya hala hatalar gösterdi. Ben sadece app koştu ve sonra kaynak hata göstergeleri temizlendi.


Benim için, manifest.xml dosyasında soruna neden olan bir özellik vardı. Sadece çizgiyi sildim. Özellik android oldu: fullBackupContent = ""
Kingsley Ijike

1

Ayrıca .idea / library klasörlerini el ile temizleyerek ve daha sonra "Proje Gradle Dosyaları ile Senkronize Et" üzerine tıklayarak benim için çalıştı sorunu çözer. Görünüşe göre bu Senkronizasyon öğeleri kaldırmaz, ancak eskilerini tutar ve geçerli olanları ekler. Muhtemelen rapor etmek için bir hata :)


1

Android studio ile aynı sorun vardı, ben inşa / oluşturulan / kaynak / r hata ayıklama değil sadece yayın klasörü içerdiğini öğrendim. Bazı nedenlerden dolayı hata ayıklama derlemesi kullanılabilir R sınıfı üretmedi.

Proje iml dosyasını açarak çözdüm ve bu satırı düzelttim

<option name="RES_FOLDERS_RELATIVE_PATH" value="" />

için

<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />

sınıflandırma ile yeniden senkronize edildi, R'yi kullanarak satırları yorumladı, R'yi oluşturmak için hata ayıklamayı çalıştır, R'yi kullanarak uncommented olmayan satırları ve hata ayıklamasını tekrar çalıştır, düzeltildi.


İml dosyasını nerede bulabilirim?
Cappuccino90

build.gradle ile aynı klasör ... büyük olasılıkla
Lukas Hanacek

1

Çözüm basit:

Sekmesine gidin File > Project Structure > appve seçin , açılır listeden Flavoursöğesini seçin .API 21: Android 5.0 (Lollipop)Min Sdk Version


Teşekkürler, bu işe yarıyor! MinSdkVersion değerini çok daha düşük bir değere ayarladım ve geri döndürme sorunu benim için düzeltti.
Arvindh Mani

1

Benim durumumda, Stackoverflow'da bulabildiğim tüm cevapları takip ettim ve hiçbiri bu sorunu çözmedi. Tüm yanıtlar olası bir xml dosyasının bozulmasına veya Gradle adlarıyla çakışmasına işaret eder. Bazı cevaplar, projeyi temizlemenin veya Project'i Gradle dosyalarıyla Senkronize Etmenin gerekli olacağını iddia etti. bu çözümlerin hiçbiri sorunu çözmez. Ayrıca, bir Hello World uygulamasının nasıl oluşturulacağına dair bir eğiticiyi izlediğimde ve herhangi bir kodlama yapmadan Android Studio sihirbaz pencerelerini izledim, bunun böyle bir şey olduğundan şüphelenmek mantıklı olmazdı.

TLDR

Sorun, Oluşturma Araçları Sürümü olarak ortaya çıktı. Benim için kuruldu 23.0.0 RC1 ben bunu değiştirdi, böylece 22.0.1 . Sanırım Android Mevcut en son sürümünü kullanıyorum.

Bu değeri değiştirmek için sol pencerede Proje tarayıcınızı açıp "app> Modül Ayarını Aç" ı sağ tıklayıp "Özellikler Sekmesi" nden arama yapabilirsiniz.


1

proje R dosyanızı İHRACAT etmeniz gerekir

import <YOUR-PROJECT-PACKGENAME>.R;

1

Projemin temizlenmesi davamda yardımcı oldu

Adresine git

Build -> Clean Project

1

Bu hatayı alıyorsanız, projenizi temizleyin.

  1. Android stüdyosunun üstüne inşa et
  2. Temiz proje seçeneğini seçin

Bunun nedeni .apk, sisteminizde bulunan android studio proje klasörünüzde bulunan önceki dosyanızı temizleyerek silinmesidir.


1

Son zamanlarda projemi Android stüdyosuna aktarıyorum. aktarıyorum R'nin kırmızı renkle işaretlenmiş "meesage" sembolü R'yi çözemiyor ", ancak derleme başarılı ve uygulama çalışıyor.

Kanıt geliştirin:

  • IDE: Android stüdyosu 3.1.2
  • Sistem: Mac Os

Çözüm:

Aşama 1:

Android stüdyosu
My path için yapılandırma dosyasını bulun :

/Applications/Android Studio.app/Contents/bin/idea.properties

Adım 2:

Değişim 2500:

idea.max.intellisense.filesize=2500  

5000 veya daha fazla:

idea.max.intellisense.filesize=5000  

bunu nasıl düşündün? bu ne demek?
Nikos Hidalgo

1
# Maksimum dosya boyutu (kilobayt) IDE için kod yardımı sağlamalıdır. # Daha büyük dosya düzenleyicisi daha yavaş çalışır ve kod yardımı etkinse daha yüksek sistem belleği gereksinimleri # olur. Boyutlarından bağımsız olarak kullanılabilir herhangi bir dosya için # kod yardımına ihtiyacınız varsa bu özelliği kaldırın veya çok büyük bir sayıya ayarlayın. idea.max.intellisense.filesize = 2500
Yu Zhang

1

Yapmalisin yolunu değiştirmek:

Örneğin

import it.example.project.myproject.R;

değiştirmek

import it.example.project.R;


0

Aynı hatayla karşılaştım, manifest dosyasında bazı hatalar olduğu ortaya çıktı. Düzelttikten sonra tekrar Proje Yap'ı tıklattı, iyi çalıştı. Android stüdyosu bazen çok yararlı hata mesajları vermez.


0

Ben her zaman bu tarafından ısırıldı ve denemek için başka bir şey var: compileSdk ve buildSdk sürümlerini mevcut en son ile eşleştirin.

Android Studio (1.1 kanarya kanalı) hata ayıklayıcısı önceden oluşturulmuş kitaplıklara doğru şekilde izlenmediği için compileSdkVersion'umu 21'den 19'a değiştirmiştim. Ben yığın izleme bir hatayı (ve sonra 21 yerine 19 seçerek) doğrulayarak buildToolsVersion (19.1.0) dayalı izleme gibi görünüyordu bulundu. Doğrudan build.gradle dosyasında değiştirmiş olmama rağmen, grafiksel bir izlenim burada: https://www.blogger.com/comment.g?blogID=4722727826918942842&postID=3875998513888772255 ve özetleyeceğim:

  1. Android Studio IDE, Dosya | Proje Yapısı.
  2. "Uygulama" gibi modülünüzü seçin
  3. SDK Derle alanında en son sürümü seçin
  4. Ayrıca Oluşturma Araçları'nda en son sürümü seçin

Onaylayın; proje otomatik olarak düzgün şekilde senkronize edilmelidir.

Bundan aldığım ders, her ikisinin de aynı olması gerektiğidir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.