Em todos os projetos que tentei criar no Android Studio, todos os usos de R são marcados em vermelho com a mensagem de erro "não é possível resolver o símbolo R", mas a compilação é bem-sucedida e o aplicativo é executado. Isso é realmente irritante, pois bloqueia o preenchimento automático e mostra enormes linhas vermelhas em todo o meu código.
Estou executando o Android Studio 1.7.0 e criando o projeto com as configurações padrão. Uma captura de tela é anexada:
Este é o meu 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
}
}
É assim que a Estrutura do Projeto se parece:
Alguma idéia de como consertar isso?
android
gradle
android-studio
Ilya Kogan
fonte
fonte
Respostas:
Basta clicar na opção Build -> Rebuild Project no seu Android Studio.
fonte
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
Verifique essas linhas nos arquivos xml e corrija-as.Eu descobri que esse problema foi causado porque havia erros nos meus arquivos XML. Depois de corrigir os erros de XML, faça uma limpeza / compilação, o problema foi corrigido.
fonte
Clique em
Build -> Rebuild Project
e, em seguida, clique emTools -> Android -> Sync Project with Gradle Files
.fonte
clean
transformavam todos emR
erros, todosbuild
corrigiam, mas é claro que "desclassifica" o projeto. Depois de seguir esta resposta, finalmente pude limpar o projeto sem obter erros.Verifique se
AndroidManifest.xml
o nome do pacote está correto. Isso resolveu o problema para mim quando meuR.whatever
foi marcado em vermelho!Também recomendo verificar todos os seus
gradle
arquivos para garantir que esses nomes de pacotes estejam corretos. Isso não deve deixar tudo vermelho, mas impedirá que seusgradle
arquivos sejam sincronizados corretamente.fonte
NÃO FAÇA NADA . Basta atualizar o Android Studio. Resolva meu problema! Funciona perfeitamente.
fonte
Eu tive um problema semelhante com 'com.android.tools.build:gradle:3.3.1', tentei todas as soluções acima e nada funcionou. Na verdade, foi a versão build: gradle 3.3.1. Eu mudei para 3.2.1 e funcionou.
Portanto, pode ser um problema com a versão build: gradle.
fonte
Agora você deve ver a pasta "MyAppProject / MyApp / build / source". Isso deve conter a pasta "r" (onde o arquivo R.java é gerado). Aqui, você deve ver "debug", "release" em azul (se você tiver um projectFlavour em seu build.gradle, eles estarão na pasta ""). Dentro dessa pasta de depuração / release, deve estar o nome do pacote do seu aplicativo e, em seguida, um arquivo R.java que contém todos os seus IDs de recursos.
fonte
Se nenhum deles funcionar, verifique todos os seus arquivos xml. Este erro ocorre quando o arquivo xml está incorreto.
fonte
Por alguns motivos, o Android studio usa configurações diferentes para o editor e o compilador. Se funcionar para o compilador, é bom. Se não funcionar para o editor. (vê arquivos não resolvidos).
Você precisa adicionar alguns diretórios à fonte do seu projeto. Por exemplo, todos os recursos devem ser marcados como "fonte".
Arquivo-> Estrutura do Projeto
Selecione "Módulos" e, em seguida, seu projeto. E selecione a
sources
guia. À direita, encontre o diretório de recursos e clique no botão azul "fonte". Feche tudo e deve funcionar.Além disso, você precisará garantir que
build/source/r/debug
também é uma fonte. Em tenho todos os meusbuild/source/*/debug
marcados como fonte.main module .iml
iml do projeto
Magia negra
Não tenho certeza sobre este, mas ouvi-o funcionar enquanto tenho certeza de que não deve mudar nada. Tente compilar e salvar o projeto depois de comentar todas as linhas que requerem
R
. Então, quando tudo não está vermelho. Tente adicioná-los de volta. O estranho é que sua compilação / fonte não é gerada.Esta pergunta também sugere verificar "compilador usar compilação externa"
O Android Studio não gera R.java para o meu projeto de importação
Nota
Também verifique se no seu código java não existe.
import android.r;
pelo que você mostrou, tudo parece bem. É estranho que a compilação / fonte não esteja sendo criada. Por exemplo, eu não tenho build / apk. Pode ser que você esteja no modo de lançamento e ele não crie esses diretórios.fonte
res
pasta inteira está marcada como "fonte" e eu não tenho umbuild/source
diretório. Devo fazê-lo criado? Se sim, como?build/rebuil project
. Se você pode executar o gradle a partir da linha de comando, pode ocorrer alguns erros que não são mostrados no editor.Aqui está minha solução temporária até encontrar uma melhor:
Usando Tudo, encontre onde R.java é criado. No meu caso foi
C:\Program Files (x86)\Android\android-studio\system\compiler\<project-name>.cb969c52\.generated\aapt\<module-name>.6badd9a4\production\com\<project-name>\<module-name>
Na visualização Projeto, clique no módulo e pressione F4. Ignore o aviso.
Clique em "+ Adicionar raiz do conteúdo" e selecione a pasta acima mencionada. Verifique se está marcado em azul (como fonte).
Depois que fiz isso, de repente todos os avisos sumiram. O problema é que, se você colabora com outras pessoas, o nome da pasta é diferente em cada máquina, portanto, tenha cuidado ao sincronizar.
fonte
Isso funcionou para mim:
Fechar e reabrir projeto
Pressione "Sincronizar projeto com o arquivo Gradle" (ao lado do ícone do gerenciador AVD no menu superior) repita 1-2 se o Gradle não puder sincronizar pela primeira vez. (o meu funcionou na segunda vez).
Trabalhou com Android Studio 1.2.2
fonte
Eu o resolvi da seguinte maneira:
fonte
Basta ir à lista de menus do Android Top. clique no menu Build , em Build, clique em Rebuild Project .
fonte
Às vezes, esses erros de compilação continuarão do nada. Se isso acontecer com você, tente o seguinte:
Verifique novamente a validade do XML em seus arquivos de recursos: Se o arquivo R.java não foi gerado para a última compilação, você verá erros no seu projeto sempre que fizer referência a um recurso. Isso pode ser causado por um erro de digitação em um dos seus arquivos XML. O XML do layout nem sempre é validado; portanto, erros de digitação nesses arquivos podem não ser destacados. Encontrar o erro de digitação e salvar o arquivo deve fazer com que o R.java se regenere.
Limpe seu projeto!
Select Build → Clean Project
Isso reconstruirá o projeto do zero, o que pode resultar em uma compilação sem erros.Sincronize seu projeto com o Gradle!
Select Tools → Android → Sync Project with Gradle Files
O Android Studio reconstruirá o projeto do zero com as configurações corretas do projeto, o que pode ajudar a resolver problemas após a alteração da configuração do Gradle.Execute o Android Lint! O fiapo pode fornecer boas informações sobre um problema. Se o acima não funcionar, é onde você provavelmente encontrará o seu problema. Para executar o Lint,
select Analyze → Inspect Code → select Whole project → OK
analise cuidadosamente as sugestões do Lint; comece com erros e depois avisos.Boa sorte.
fonte
Este erro ocorre comigo porque há uma entrada inválida no meu arquivo activity_main.xml.
Ao tentar criar ou limpar seu projeto, você verá mensagens de erro .
Resolvi o meu lendo essas mensagens de erro , corrija o que está errado no meu arquivo xml. depois reconstrua o projeto .
fonte
Eu tive esse bug alguns dias atrás, tentei procurar ao redor até decidir reinstalar o Android Studio. Funcionou para mim.
fonte
Ao criar um projeto a partir de uma amostra, mas não importar o projeto existente, é bom (evita conflitos com gradle, .idea, .iml, build, jars e apks, ou seja, todos os arquivos desnecessários gerados pela build), depois de criar um novo projeto, copiar e colando todos os recursos relevantes, recomendo:
verificando pacotes e importações de pacotes dentro do projeto {declaração AndroidManifest e todas as importações em classes java}, todos os recursos (drawable, mip-map, layouts e menus e seu build.gradle (uma amostra de build.gradle para usar com o sdk mais recente) pode ser fornecido mediante solicitação)) para ver se eles estão lá e se as strings e os IDs declarados existem e foram realmente usados, após o qual seu único erro deve ser a pergunta:
Bulid-> Projeto Limpo
Ferramentas-> Android-> Sincronizar Projeto com Arquivos Gradle
Arquivo-> invalidar caches e reiniciar
Nos piores casos, reiniciar sua máquina ajuda.
O acima deve funcionar. Sinta-se à vontade para fazer perguntas, se necessário, ou seja, postar comentários.
fonte
isso ocorre principalmente por causa de erros no arquivo xml, verifique suas últimas alterações xml e reconstrua-o, o mesmo problema comigo.
fonte
Ocorreu um erro de reutilização de copiar / colar na declaração do pacote para o manifesto
o nome da atividade principal tinha o caminho correto para que o manifesto não tivesse nenhum erro verificado.
Depois de resolver isso, o arquivo de origem ainda mostrava erros, embora a compilação tenha sido bem-sucedida. Acabei de executar o aplicativo e os indicadores de erro de origem desapareceram.
fonte
Também funcionou para mim, limpando manualmente a pasta .idea / libraries e clicando depois em "Sincronizar Projeto com Arquivos Gradle", resolvendo o problema. Aparentemente, essa sincronização não remove elementos, mas mantém os antigos e adiciona os atuais. Provavelmente um bug para relatar :)
fonte
Tive o mesmo problema com o android studio, descobri que o build / gerado / fonte / r continha apenas a pasta de lançamento e não a depuração. Portanto, por algum motivo, a compilação de depuração não gerou classe R utilizável.
Eu o resolvi abrindo o arquivo iml do projeto e corrigi esta linha
para
ressincronizado com gradle, comentou linhas usando R, execute depuração para gerar R, linhas não comentadas usando R e execute a depuração novamente, corrigido.
fonte
A solução é simples:
Vá para
File > Project Structure > app
e escolha aFlavours
guia, selecioneAPI 21: Android 5.0 (Lollipop)
na lista suspensa deMin Sdk Version
.fonte
No meu caso, segui todas as respostas que encontrei no Stackoverflow e nenhuma delas parecia resolver esse problema. Todas as respostas apontariam para uma possível corrupção de arquivo xml ou conflito com os nomes de Gradle. Algumas respostas alegaram que seria necessário limpar o projeto ou os arquivos Sync Project With Gradle. nenhuma dessas soluções resolveria o problema. Além disso, depois de seguir um tutorial sobre como criar um aplicativo Hello World e seguir as janelas do assistente do Android Studio sem nenhuma codificação, não faria sentido suspeitar que era um erro de digitação ou algo assim.
TLDR
O problema acabou sendo a versão das ferramentas de compilação. Meu foi definido como 23.0.0 rc1 , então eu mudei para 22.0.1 . Suponho que foi porque estou usando a última versão disponível do Android disponível.
Para alterar esse valor, você pode abrir o Navegador de projeto na janela esquerda> clicar com o botão direito do mouse em "app> Abrir configuração do módulo" e procurar por ele na "Guia Propriedades"
fonte
você precisa IMPORTAR o arquivo do projeto R
fonte
Limpar o projeto ajudou no meu caso
Vamos para
fonte
Se você estiver recebendo esse erro, limpe seu projeto.
A razão por trás disso é que, ao limpar o
.apk
arquivo anterior que está presente na pasta do projeto android studio no seu sistema, é excluído.fonte
Recentemente, importo meu projeto no Android studio, parte do R é marcada em vermelho com a mensagem de erro "não é possível resolver o símbolo R", mas a compilação é bem-sucedida e o aplicativo é executado.
Desenvolver evirment:
Solução:
passo 1:
Encontre o arquivo de configuração para o Android studio
Meu caminho:
passo 2:
Alteração 2500:
para 5000 ou mais:
fonte
Você precisa mudar o caminho:
por exemplo
import it.example.project.myproject.R;
mudança em
import it.example.project.R;
fonte
Corri para o mesmo erro, verifica-se que o arquivo de manifesto tinha alguns erros. Depois de corrigi-lo, clique em Criar projeto novamente, funcionou bem. Às vezes, o Android studio não fornece mensagens de erro muito úteis.
fonte
Eu sou mordido por isso de vez em quando e há outra coisa a tentar: combine suas versões compileSdk e buildSdk com as mais recentes disponíveis.
Alterei meu compileSdkVersion de 21 para 19, porque o depurador do Android Studio (canal canário 1.1) não estava sendo rastreado corretamente nas bibliotecas pré-construídas. Descobri que parecia rastrear com base na buildToolsVersion (19.1.0), que verifiquei clicando em um erro no rastreamento da pilha (e escolhendo 19 em vez de 21). Embora eu o tenha alterado diretamente no arquivo build.gradle, uma explicação gráfica está aqui: https://www.blogger.com/comment.g?blogID=4722727826918942842&postID=3875998513888772255 e resumirei:
Confirme e o projeto deve sincronizar automaticamente corretamente.
A lição que estou aprendendo disso é que ambos devem ser os mesmos.
fonte