Acabei de atualizar para o Android Studio 0.2.8 e recebo um erro que diz "Atividade padrão não encontrada" quando tento editar as configurações de execução.
Quando eu inicio o Android Studio, recebo este erro "O acesso é permitido apenas a partir do thread de despacho de evento"
A atividade que estou usando é uma atividade de fragmento.
Até agora, tentei reconstruir e invalidar caches / reiniciar. Ambos eram inúteis.
Diga-me o que posso fazer para resolver o problema.
android
android-studio
android-fragmentactivity
Vipassana Vijayarangan
fonte
fonte
Respostas:
No Android Studio, clique com o botão direito no projeto e escolha Open Module Settings . Então vá para a aba Sources em seu módulo, encontre a pasta src , clique com o botão direito nela e marque-a como Sources (cor azul).
EDITAR: não há guia de fontes nas versões posteriores do Android Studio, mas você pode editar o arquivo build.gradle em vez disso: https://stackoverflow.com/a/22028681/1101730 (obrigado pelo comentário Josh)
fonte
Você adicionou
ACTION_MAIN
filtro de intenção à sua atividade principal? Se você não adicionar isso, o Android não saberá qual atividade iniciar como atividade principal.ex:
<intent-filter> <action android:name="android.intent.action.MAIN"/> <action android:name="com.package.name.MyActivity"/> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
fonte
"com.package.name.MyActivity"
pode ser omitido se todo o<intent-filter>
elemento estiver dentro de um<activity>
elemento que corresponda à sua MyActivity no seu namespace.Filter
incluindo todas as variáveis nomeadasfilter
e, aparentemente, o Android Studio decidiu incluirAndroidManifest.xml
e<intent-*filter*>
. Essa resposta me fez checarAndroidManifest.xml
e me ajudou a encontrar o bug =)Tive o mesmo problema ao importar um projeto para o Android Studio, provavelmente causado pelo fato de o projeto ter sido desenvolvido em uma versão anterior do Android Studio do que a instalada atualmente no meu computador.
O que resolveu foi simplesmente escolher:
File -> Invalidate Caches / Restart...
e então selecionando
Invalidate and Restart
.fonte
Se você não tem a guia e começou com uma atividade vazia, tente isto. Abaixo está um exemplo de código de amostra:
<application android:label="@string/app_name"> <activity android:name=".HelloActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application>
Agora vá para o arquivo AndroidManifest.xml. Em seguida, copie o filtro de intent deste código. Observe o seu arquivo de manifesto realmente bom e cole o filtro de intent no local exato em que está no código acima. (após a parte .yourActivityName> do manifesto.) Espero que tenha ajudado.
fonte
Se você ainda estiver recebendo um erro que diz "Atividade padrão não encontrada" ao tentar editar as configurações de execução, mesmo depois de executar:
Invalide o cache e reinicie .
Em seguida, tente excluir a pasta Configurações / Preferências:
/< USER_HOME_DIR >/.AndroidStudioPreview3.2
ou no Mac:
/Users/<USER_NAME>/Library/Preferences/.AndroidStudioPreview3.2
fonte
Quando cliquei em "Abrir configurações do módulo", não havia guia "Origem" , acho que foi removida para versões mais recentes do Android Studio (estou no 0.8.14). Então, eu tive que fazer isso:
Adicione estas linhas ao
build.gradle
arquivo dentro doandroid { ... }
bloco:android { ... sourceSets { main.java.srcDirs += 'src/main/<YOUR DIRECTORY>' } }
Depois de editar o arquivo, clique em Ferramentas> Android> Sincronizar projeto com arquivos do Gradle .
Crédito a esta resposta e este comentário .
fonte
Seguir funcionou para mim. Em Executar -> Editar configuração .
fonte
Meu problema se resumia a um erro adicional que aparecia às vezes, informando
Manifest Merger failed with multiple errors in Android Studio
O que estava causando meu problema era o fato de que havia vários manifestos (um manifesto de depuração e um manifesto no novo módulo que acabei de importar), e eles não estavam sendo mesclados corretamente devido a isso. Depois de ver essa resposta , consegui analisar o manifesto mesclado, encontrar a causa do problema e corrigi-lo.
fonte
isso aconteceu comigo porque eu coloquei os caminhos em maiúscula no manifesto. mudou:
<intent-filter> <action android:name="ANDROID.INTENT.ACTION.MAIN"/> <category android:name="ANDROID.INTENT.CATEGORY.LAUNCHER"/> </intent-filter>
para
<intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter>
e foi consertado
fonte
Encontrei o mesmo problema hoje e estava analisando as respostas aqui.
Para mim, a diferença é que ontem funcionou bem, então percebi que não poderia ser realmente um problema de configuração, nem a configuração nem a versão do Android Studio mudaram.
Felizmente, tentei reiniciar o Android Studio antes de tentar qualquer uma das outras respostas e, felizmente, isso resolveu o problema.
Portanto, para todas as pessoas que se deparam com isso: a primeira coisa a tentar é reiniciar o Android Studio e apenas se isso não resolver o problema, tente as outras respostas aqui.
fonte
Acabei de encontrar o mesmo erro no Android Studio 1.5.1. e acabei de encontrar a origem do problema. Não tenho certeza se a causa foi um erro humano ou alguma falha estranha no comportamento do IDE, mas nenhuma das perguntas StackOverflow existentes sobre este assunto parecia mostrar algo sobre isso, então imaginei que postaria como uma resposta de qualquer maneira.
Para mim, um dos membros da minha equipe ou o próprio IDE alterou a entrada do manifesto de atividades do iniciador, fazendo com que ficasse assim:
<activity android:name="com.rhaebus.ui.activities.ActivitySplash" android:launchMode="singleInstance" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <id android:name="android.intent.id.LAUNCHER" /> </intent-filter> </activity>
Embora deva, na verdade, ser assim:
<activity android:name="com.rhaebus.ui.activities.ActivitySplash" android:launchMode="singleInstance" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <!-- Change Here --> </intent-filter> </activity>
Portanto, verifique duas, três, quatro vezes o formato da atividade do iniciador no manifesto e talvez consiga economizar algum tempo.
Espero que isto ajude.
EDITAR: Eu sugiro fortemente que as pessoas não respondam que sugerem selecionar manualmente uma atividade do iniciador dentro das opções de configuração do seu módulo, pois isso fez com que o aplicativo não fosse mais mostrado na lista de aplicativos instalados em ambos os Samsung Galaxy S5 Neo e o Samsung Galaxy S6 (pelo menos para mim).
fonte
Pressione app -> Editar configurações
Depois disso, altere o valor em Launch em "Nothing"
fonte
Certifique-se no manifesto de que o nome do pacote é o mesmo de sua atividade principal
fonte
No Android Studio, mude para a perspectiva Project (não a perspectiva Android).
Certifique-se de que seu projeto segue a estrutura padrão do plugin gradle (ou seja, project_dir / app / src / main / java ... )
Exclua todas as pastas de construção e subpastas que você vê.
Na barra de ferramentas, clique em Build -> Clean Project e , em seguida, Build -> Rebuild Project .
Tente executar o projeto.
fonte
Você pode fazer com que o Android Studio não reclame acessando o menu "Editar configurações" (toque em "Shift" três vezes, digite "Editar configurações") e, em seguida, altere Opções de inicialização> Iniciar para "Nada".
Provavelmente adicionarei uma atividade genérica contendo instruções, apenas para evitar qualquer confusão.
fonte
No meu caso, funcionou quando removi a pasta .idea do projeto (Projeto / .ida) e reabri o Android Studio novamente.
fonte
Isso resolveu o erro no meu caso.
fonte
Se você alterou o nome dos diretórios (estrutura de classe), por exemplo com.dir.sample para com.dir.sample1, depois disso não se esqueça de alterar o pacote com.dir.sample para com.dir.sample1.
fonte
Modifique "Workspace.xml" (pressione Ctrl + Shft + R para pesquisá-lo)
Modifique o nome da atividade com o nome do pacote
Certifique-se de alterar "name =" USE_COMMAND_LINE "para value =" false "
Recarregue o projeto
Feito!
fonte
Para quem, como eu, estava lutando para encontrar a "guia Fontes":
Aqui você tem que marcar sua pasta "src" em azul (primeiro clique em Mark as: Source , depois na pasta src ), e você está pronto para ir.
fonte
Existem duas etapas que você pode seguir:
fonte
Eu tentei todas as soluções, mas não funcionou. do que tentei desativar o Instant run no meu estúdio android.
Acesse Configurações ou preferências do Android Studio (para MAC) -> Build, Execution, Deployment -> Instant Run .
desmarque a funcionalidade de execução instantânea e depois clique em sincronizar o projeto com os arquivos do Gradle no menu de arquivos
agora execute sua construção ...
fonte
Em alguns casos você pode ter o modelo com algum
category
campo, se você for refatorá-lo em todos os lugares, ele pode refatorá-lo no arquivo de manifesto e então a tag xml se tornará inválida.fonte
Muitas possibilidades podem acontecer para este tipo de caso (Default Activity not Found) Se todos os códigos estiverem bem, principalmente no Manifest, basta invalidar o Cache e reiniciar o studio,
Mas às vezes isso acontece quando você tem uma declaração de atividade duplicada no manifesto, não apenas para a atividade principal, mas também é acionada por atividades filhas.
Isso aconteceu comigo, a atividade padrão não foi encontrada porque eu tenho atividades filho duplicadas no manifesto, depois de excluído isso, está tudo bem
fonte
Verifique se há alguma tag duplicada em seu
AndroidManifest.xml
arquivo.fonte
Eu descobri. Eu adicionei por engano a palavra-chave final na declaração de atividade. Depois de retirado, tudo funciona!
public class SplashActivity extends AppCompatActivity { ... }
fonte
No Android Studio
Vá para editar a configuração.
Selecione o aplicativo.
escolha o caminho da atividade do almoço.
aplique, OK.
Obrigado!!
fonte
O nome da atividade padrão foi alterado (como SplashActivity -> SplashActivity1) e funciona para mim
fonte