Sessão 'app': Erro ao iniciar atividade

97

Após a atualização do Android Studio 2.0 enquanto a compilação do Gradle termina, recebo o seguinte:

Sessão 'app': Erro ao iniciar a atividade.

Impede que o aplicativo seja iniciado, mas está instalado no meu emulador. Isso é o que aparece na guia Executar:

Erro inesperado ao executar: am start -n "com.example.user.ypologismosmoriwn / com.example.user.ypologismosmoriwn.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER Erro ao iniciar a atividade

Aqui está o código:

package com.example.user.ypologismosmoriwn;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

É apenas uma atividade vazia, nada adicionado

e o código XML é apenas um layout relativo com 4 textos e 3 caixas de seleção

Este é o logcat que estou recebendo

Obrigado a quem estiver disposto a ajudar

John R.
fonte
1
você editou seu arquivo de manifesto? por favor verifique isto.
Mounir Elfassi
Outro registro
John R.
Como é o seu manifesto?
ninjahoahong
É o manifesto padrão, dê uma olhada no Manifesto
John R.
Corrigi o problema (no meu relógio Anroid Moto 360) desinstalando o aplicativo antes de instalar do AS
Kiryl Ivanou

Respostas:

128

Também enfrentei esse problema depois de atualizar para AS2.0. Descobri que é por causa do instant runhabilitado. Portanto, minha solução é desativar o "instant run". e funcionou. Para desativar a "execução instantânea", você pode ir para Preference Dialog(caixa de diálogo Pode ser configuração no Windows), selecionar Build, Execution, Deployment> Instant Rune desmarcar todas as caixas de seleção para desativar Instant Run.

Esta é a minha solução temporária e pode ajudá-lo. Mais tarde, encontrarei uma maneira melhor de resolver esse problema.


atualização em 06/06/2016

Uma solução melhor em vez de desativar instant run. Remova a .ideapasta e a pasta e .gradle, em seguida, clique no botão Sync Project with Gradle Files(ou através do menu File-> Sync Project with Gradle Files), após a finalização desse processo, você poderá executar o aplicativo normalmente.

Boa sorte ~

usuario
fonte
1
Desativar a execução instantânea interrompeu o 'aplicativo' da Sessão: Erro Erro de atividade de inicialização. Ainda assim, o aplicativo não iniciará automaticamente no emulador.
John R.
2
Será que precisamos para eliminar .ideae gradlepasta antes de cada corrida ?!
VSB
1
Não, apenas na primeira vez
Nick
1
Acabei de fazer uma sincronização do Gradle para resolvê-lo. Estava me deixando louco até que encontrei este tópico. No meu caso, eu havia renomeado o applicationId anteriormente para causar esse problema.
riper
3
Se você estiver enfrentando esse problema depois de instalar o aplicativo do dispositivo, o aplicativo ainda pode sair, tente verificar nas configurações -> Aplicativos -> Excluir o aplicativo. Em seguida, tente executar o aplicativo. Funcionou para mim
amj de
51

Se você estiver usando o Android 7.0 e superior, é provável que o aplicativo tenha sido instalado em dois locais (Convidado e Administrador) e você o desinstalou apenas para um usuário, o que está causando problemas.

Para resolver isso, vá para: Configurações -> Aplicativos e notificações -> Ver todos os aplicativos -> encontre o aplicativo que está tentando instalar.

insira a descrição da imagem aqui insira a descrição da imagem aqui

Em seguida, clique no menu no canto superior direito e selecione Desinstalar para todos os usuários

insira a descrição da imagem aqui

Execute seu aplicativo no Android Studio, ele deve funcionar.

EdgeDev
fonte
Esse problema pode existir em dispositivos Android 7.0 também. Esta solução funciona!
Maverick7,
Esse problema me incomodou algumas vezes recentemente. E sua abordagem é a mesma que usei em medium.com/@kaikoenig/… . Graças a Deus eu encontrei essa abordagem!
Jiaheng
34

Tente reinstalar o aplicativo, isso resolveu o erro para mim. O truque é que eu desinstalei meu aplicativo, mas o Android não o desinstalou de verdade. No meu telefone, há um usuário convidado (minha irmã usa às vezes). Se você desinstalar o aplicativo de seu usuário principal, ele ainda estará disponível no telefone, mas apenas para o usuário convidado. Parece que o Android Studio não consegue lidar com este caso. Eu acho que ele detectou que o aplicativo está instalado, então ele não será reinstalado novamente para o usuário atual, portanto, o sistema operacional não pode acessar e iniciar a atividade. Belo bug, vou relatá-lo.

klenium
fonte
1
Isso é o que me ajudou - comportamento Android muito interessante
d4c0d312
Esse foi o meu caso também, obrigado por encontrar isso!
Julian Honma
Este foi o meu caso também, quando nada mais funcionou. Foi especialmente interessante que eu pudesse construir o aplicativo no Android Studio, mas não pudesse executá-lo no dispositivo. Um rápido adb uninstallfez o truque!
Chad Schultz
21

Eu tive o mesmo problema, reconstruir o projeto limpa o erro para mim.

construir -> reconstruir projeto -> executar

Spek
fonte
1
de longe a solução mais simples!
nova estrela de
E o único correto. Desativar o "Instant run" é totalmente errado porque na verdade funciona bem em 99% dos casos.
louco
9

Este é um problema com o Studio 2.0+

Problema 206036: sem alterações locais, sem implantação de APK

Eu encontrei a boa solução aqui, basta adicionar a sinalização -r aqui nas configurações de edição e também desabilitar o instantâneo

insira a descrição da imagem aqui

Esperando para que o recurso de execução instantânea funcione sem problemas em breve, sem mais erros do tipo 3 !!

Rahul
fonte
1
@RanjithKumar você precisa adicionar essa configuração para cada projeto e o que estou fazendo é embora esteja mostrando um erro, mas um novo apk é instalado e, em seguida, você pode depurar ou jogar o mesmo depois. Também desmarque Pular instalação na guia Diversos
Rahul
7

Para mim, o problema era que o aplicativo que eu estava tentando iniciar já estava instalado com uma conta de usuário diferente no meu telefone. Eu vi isso quando fui para Configurações-> aplicativos procurando desinstalá-lo. Troquei para o outro usuário, desinstalei-o, voltei para o usuário original e consegui instalar e iniciar o aplicativo do Android Studio sem mais problemas.

elíptico1
fonte
4

Passei muitas horas exatamente neste assunto. A correção da "execução instantânea" foi um fracasso total. E eu não estava perdendo oandroid.intent.category.LAUNCHER eu removi todo o Android Studio e código SDK aplicável e reinstalei. Ainda não vou.

Em última análise, acho que meu problema era o hardware marginal. Estou executando em um laptop com processador AMD A6-4400M. Não há ferramentas de aceleração / virtualização de hardware disponíveis. Eu estava executando o emulador padrão do Android Studio / Google. Foi dolorosamente lento e, embora eu tenha conseguido ver o emulador e interagir com ele, nunca consegui conectar o emulador ao Android Studio para fazer upload de APKs.

Mas descobri uma solução incrível.

  • Remova todos os dispositivos virtuais Android e instale o emulador GenyMotion (com VirtualBox).
  • Eu tentei emuladores GenyMotion antes (com um Linux) e não fez muita diferença na velocidade de carregamento.
  • Nesta máquina com Windows 10, funciona excepcionalmente bem. É muito rápido e fácil de conectar ao Android Studio e funciona bem implantando meus aplicativos.
  • GenyMotion oferece um dispositivo de uso pessoal sem nenhum custo. Parabéns à equipe GenyMotion!

Resposta fornecida aqui no caso de alguém ficar preso com este erro, possivelmente com esta causa raiz.

zipzit
fonte
3

Eu tive o mesmo problema e resolvi com esta resposta .

Mas esse problema foi criado por mim mesmo, enquanto tentava depurar meus testes de unidade. Portanto, eu tive que desmarcar a Use in-process buildopção de configurações AS em Build, Execution, Deployment>Compiler .

Então, no meu caso funciona, se eu desabilitar instant run. Mas também funciona, pois habilitei instant run e também a Use in-process buildopção.

FreshD
fonte
3

Apenas corra adb uninstall <package name> em seu terminal e reinstalar o aplicativo novamente.

Espero que ajude.

kiran puppala
fonte
E para obter o nome do pacote, useadb shell pm list packages
h8pathak
2

O mesmo problema, mas para mim o problema era que o Android Studio não conseguia encontrar minha atividade padrão. Quando especifiquei o filtro de intent para capturar o intent da ação MAIN, não especifiquei a categoria LAUNCHER e isso causou o problema de 'Atividade de inicialização de erro'.

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />  <-- forgot
    </intent-filter>
CodyF
fonte
1
O problema estava lá, embora eu não tivesse alterado nada, era um novo projeto padrão. Talvez tenha sido causado após a atualização do Android Studio 2.0.
John R.
2

Apenas Run --> clean and rerun, no meu caso isso ajuda. Solicita automaticamente como a seguinte mensagem

você desinstalaria a atividade já instalada com o mesmo nome

se a atividade já estiver instalada, primeiro desinstale-a e prepare o projeto após instalar o aplicativo.

Muhammad Usman
fonte
2

Eu cometi esse erro por causa da minha estupidez. No manifest.xml, declarei erroneamente duas Activity como Launcher. Certifique-se de ter apenas uma atividade como lançador.

    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

   <activity android:name=".WelcomeActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>
Sanjoy Kanrar
fonte
1

Eu estava enfrentando o mesmo problema no android studio 2.1.2, mas trabalhei após selecionar Build -> Clean Project ou, alternativamente, Run -> Clean and Rerun

Macbee
fonte
1

Tentei todas as respostas sugeridas. Descobri que este é um problema de hardware no telefone Android N com a versão Studio 2.3. O aplicativo é inicializado corretamente em telefones abaixo da versão 7.

user3329166
fonte
1

Corrigi o problema usando esta solução. Se você estiver executando o aplicativo em um dispositivo USB, feche todos os dispositivos virtuais como: genymotion / máquina virtual.

Hoque MD Zahidul
fonte
1

Basta desativar o Instant Run.

Go To File >> Settings >> Build, Execute, Deployment >> Instant Run

Desmarque a caixa que dizEnable instant run to hot swap code/resource changes on deploy

Execute novamente o emulador.

devDeejay
fonte
1

OK já tantas soluções possíveis para este problema, se nenhuma dessas funcionar então tente isto.

Eu enfrentei esse problema quando desinstalei meu aplicativo pela primeira vez e tentei reinstalar do ADB. Mas então, depois de tentar essas várias soluções, percebi que desinstalar o aplicativo hoje em dia não o desinstala realmente. Apenas o desativa por alguns dias para que possa ser habilitado caso você mude de ideia.

Agora não tenho certeza se é feito pela LG ou Native Android Nougat.

Eu apenas fui em Configurações-> aplicativos-> meu-aplicativo e desinstalei-o completamente. Depois disso, do Android Studio, consigo instalar o aplicativo novamente de maneira adequada, sem esse erro.

UzumakiL
fonte
Sim, eu odeio esse recurso. Se eu desinstalei, não quero mais. Levei um tempo para descobrir o que estava errado.
Panama Jack
1

O Adb também gera esse erro se o applicationIdpacote da atividade de inicialização ou nome do módulo contiver errorsubstring

adray
fonte
OH MEU DEUS, QUERO PODER BEIJÁ-LO. 2 ANOS ESTOU LIDANDO COM ISSO ON E FORA.
Bassinator
Google, por quê? Exijo saber quem é o responsável por essa programação desleixada.
Bassinator
1

Nenhuma das respostas existentes me ajudou, pois eu tinha o mesmo aplicativo instalado em meu outro perfil. Solução -

  1. Mudar para o outro perfil
  2. Desinstale o aplicativo do segundo perfil
  3. Voltar
espiraldev
fonte
0

Tentei a resposta acima . No entanto, nenhuma das soluções funcionou para mim. Mudei o emulador para USB e o código está sendo executado no dispositivo de destino USB perfeitamente!

Homayoun
fonte
Também não tive problemas com o emulador, apenas no meu relógio Android 'Moto 360'. Eu consertei desinstalando o aplicativo do dispositivo antes e depois disso, instalei-o do AS com sucesso!
Kiryl Ivanou de
0

Todas as respostas não funcionaram para mim. Este erro surgiu quando eu estava tentando renomear o pacote do aplicativo. Acabei criando um novo projeto com o nome do novo pacote e movo meus arquivos para o novo.


fonte
Que triste foi isso .. :(
simo
0

Corrigi o problema (no meu relógio Anroid Moto 360) desinstalando o aplicativo antes de instalar do AS

Kiryl Ivanou
fonte
0

ele ocorreu quando eu alterei o applicationId no arquivo gradle do aplicativo. Funciona para mim depois de sincronizar o Gradle.

Maggie
fonte
0

Desinstale o aplicativo em seu dispositivo ou emulador real. Em seguida, execute novamente. Funcionou para mim. Usei o Android Studio 2.3.3

Fathurzero
fonte
0

Eu tentei, clean & rebuild projecte Invalidate Cache & Restarttambém removi manualmente .gradlee.idea pastas , mas isso não resolveu o problema.

Tenho 3 contas de usuário no meu telefone. Então, eu não selecionei Desinstalar para todos os usuários , e apenas desinstalei meu aplicativo da primeira conta de usuário, mas ele ainda estava lá na conta de convidado e na segunda conta de usuário .

Então, eu removi do resto das contas e resolveu meu problema !!

Tirth Patel
fonte
0

Eu tive o mesmo problema. Eu estava usando AVD com imagem do processador arm e recebi esta mesma mensagem. A única maneira de fazer com que o Android Studio 2.1.2 execute o aplicativo com execução instantânea foi mudar para uma imagem de processador X86. O erro foi embora e (até o momento) acho que o emulador funciona mais rápido do que o emulado ARM. A configuração da minha estação de trabalho é Intel I5, 6 Gb RAM. Talvez isso ajude até a próxima correção.

Projgo
fonte
0

Desabilite a "execução instantânea", você pode ir para a caixa de diálogo Preference (pode ser configuração no Windows), selecione Build, Execution, Deployment> Instant Run e desmarque todas as caixas de seleção para desativar o Instant Run.

E reinicie o dispositivo, isso deve fazer a coisa funcionar .... instant run tem um bug no Android Studio 2+ Isso deve fazer a mágica

atish naik
fonte
0

Eu tenho o mesmo erro. Esse problema foi causado pela desinstalação do aplicativo do dispositivo (desinstalado de apenas 1 usuário)

Resolvido ao fazer login no outro usuário e desinstalar o aplicativo de lá.

e resolveu.

Hatim
fonte
0

Fiz todas as sugestões acima, mas não funcionaram! Eu reconstruí o projeto, desinstalei o aplicativo do meu dispositivo real, desconectei o USB e, em seguida, executei o Android Studio e executei o aplicativo no meu dispositivo real e o problema foi resolvido.

Espero que isto ajude!

analisar
fonte
0

Eu tive o mesmo erro do título. depois de alterar o nome e o código da versão no gradle, a sincronização aconteceu e funcionou. então, às vezes, apenas a sincronização pode ajudar.

Gilad Levinson
fonte