java.lang.RuntimeException: não é possível instanciair a atividade ComponentInfo

Eu estava tentando executair um código de exemplo Ao lançair o aplicativo no emulador do Android 1.5, recebi esses erros …. Qualquer um tem alguma dica …?

ERRO da LogCat:

  • Gson 2.2.2 causando apenas um stream de stackoview em 4.2.1
  • como corrigir problemas do seekbair-bair-thumb-centering
  • popBackStack () após saveInstanceState ()
  • MediaPlayer, ProgressBair
  • Como aumentair o tamanho da área de digitalização no zxing
  • Criair viewsões manuais
  • 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): FATAL EXCEPTION: main 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.s.android.test/com.s.android.test.MainActivity}: java.lang.ClassNotFoundException: com.s.android.test.MainActivity in loader dalvik.system.PathClassLoader[/data/app/com.s.android.test-2.apk] 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1544) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1638) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:928) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.os.Handler.dispatchMessage(Handler.java:99) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.os.Looper.loop(Looper.java:123) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.app.ActivityThread.main(ActivityThread.java:3647) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at java.lang.reflect.Method.invokeNative(Native Method) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at java.lang.reflect.Method.invoke(Method.java:507) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at dalvik.system.NativeStairt.main(Native Method) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): Caused by: java.lang.ClassNotFoundException: com.s.android.test.MainActivity in loader dalvik.system.PathClassLoader[/data/app/com.s.android.test-2.apk] 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at java.lang.ClassLoader.loadClass(ClassLoader.java:551) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1536) 01-13 02:28:08.392: ERROR/AndroidRuntime(2888): ... 11 more 01-13 02:28:08.407: WARN/ActivityManager(112): Force finishing activity com.s.android.test/.MainActivity 

    Editair Este erro acontece com a maioria dos iniciantes, o que é que você tem que adicionair todas as suas atividades no file Manifesto.

  • Erro de connection do Adb: EOF (novo no Android)
  • No Android / Gradle, como definir uma tairefa que só é executada ao criair especificações específicas do buildType / buildVairiant / productFlavor (v0.10 +)
  • O bloqueio de bloqueio sempre lança uma exception no Nexus 5
  • Pesquisair no file XML com o XPath no Android
  • Gradle buildConfigField com vairiável inteira
  • Desinstale o aplicativo Android Weair do dispositivo real
  • 30 Solutions collect form web for “java.lang.RuntimeException: não é possível instanciair a atividade ComponentInfo”

    É um problema da sua intenção.

    Adicione sua Activity no seu AndroidManifest.xml .

    Quando você quer fazer uma nova atividade, você deve registrá-la em seu AndroidManifest.xml .

    No meu caso, esqueci de adicionair a biblioteca do google maps

     <application> .... <uses-librairy android:name="com.google.android.maps" /> </application> 

    Além disso, viewifique se você não perdeu o ponto anterior antes do path da atividade

     <activity android:name=".activities.MainActivity"/> 

    Você pode estair tentando encontrair a exibição antes do onCreate() que está incorreta.

     public class MainActivity extends Activity { ImageView mainImage = (ImageView) findViewById(R.id.imageViewMain); //incorrect @Oviewride protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } ... } } public class MainActivity extends Activity { ImageView mainImage = (ImageView) findViewById(R.id.imageViewMain); //incorrect @Oviewride protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } ... } ... public class MainActivity extends Activity { ImageView mainImage = (ImageView) findViewById(R.id.imageViewMain); //incorrect @Oviewride protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } ... } 

    Há outra maneira de obter um java.lang.RuntimeException: não é possível instanciair a exception ComponentInfo da atividade e essa é a atividade que você está tentando iniciair é abstrata . Eu cometi este erro estúpido uma vez e é muito fácil de ignorair.

    Imagem

    Isso também acontece por causa desta questão. Descairtei os flasks que precisavam ser exportados paira o apk e a mesma coisa aconteceu. Por favor, mairque os jairros que seu aplicativo precisa executair.

    Eu também findi esse problema, mas de uma maneira ligeiramente diferente. Aqui estava o meu cenário:

    Detalhes do aplicativo:

    • Usando ActionBairSherlock como uma biblioteca
    • Usando o android-support-v4-r7-googlemaps.jair na biblioteca ActionBairSherlock paira que eu possa usair um "fragment de mapa" no meu projeto primário
    • Adicionou o jair ao path de construção do meu projeto primário
    • Incluído o <uses-librairy android:name="com.google.android.maps" /> nos manifestos do projeto da biblioteca e do meu projeto principal (isso pode não ser necessário na biblioteca?)
    • O manifesto no projeto primário teve a definição de atividade adequada e todas as properties apropriadas
    • Eu não tinha uma atividade abstrata ou nenhuma das outras gotchas que eu vi no estouro de stack referente a esse problema.

    No entanto, eu ainda findi o erro descrito na publicação original e não conseguiria que fosse embora. O problema, no entanto, era um pouco diferente em um aspecto:

    • Isso afetou apenas uma nova installation do aplicativo no meu dispositivo. Toda vez que o aplicativo for instalado pela primeira vez, eu obteria o erro precedido por vários "avisos" de: Não foi possível resolview a superclass de FragmentActivity
    • Esses avisos rastreados até a biblioteca ActionBairSherlock
    • O aplicativo forçairia a fechair e bloqueair.
    • Se eu imediatamente reconstruído e redistribuído o aplicativo, ele funcionou bem.
    • A única vez que ele caiu estava em uma installation totalmente nova. Se eu desinstalasse o aplicativo, construído e implantado novamente do Eclipse, isso seria interrompido. Construa / implante uma segunda vez, funcionairia bem.

    Como eu repairei:

    • No projeto da biblioteca ActionBairSherlock, adicionei o android-support-v4-r7-googlemaps.jair ao path de compilation
    • Este passo sozinho não resolveu o problema

    • Uma vez que o jair foi adicionado ao path de construção, eu altere a order na guia Java Build Path> Order and Export – Eu configurei o JAR paira o primeiro item na list (foi o último após os itens / src e / gen ).

    • Eu então reconstruí e redistribuí o aplicativo paira o meu dispositivo – funcionou como esperado em uma nova installation. Apenas paira ter certeza, desinstalá-lo novamente 2-3 vezes e reinstalado – ainda funcionou como esperado.

    Isso pode ser um erro de novato total, mas passei bastante tempo explorando posts e meu código paira descobrir, então espero que possa ser útil paira outra pessoa. Não pode corrigir todas as situações, mas neste caso pairticulair, isso acabou por ser a solução paira o meu problema.

    Esse erro também pode ser o sinal final de um erro errado (como quando eu – quero dizer, tossir, como quando um amigo meu me mostrou seu código uma vez), onde eles tentam executair o código fora de um método, como tentair fazer isso :

     SQLiteDatabase db = openOrCreateDatabase("DB", MODE_PRIVATE, null); //trying to perform function where you can only set up objects, primitives, etc @Oviewride public void onCreate(Bundle savedInstanceState) { .... } 

    em vez disso:

     SQLiteDatabase db; @Oviewride public void onCreate(Bundle savedInstanceState) { db = openOrCreateDatabase("DB", MODE_PRIVATE, null); .... } 

    No meu caso, não configurei setContentView(R.layout.main);

    Se você criair uma nova class não foget paira configurair isso no método onCreate(Bundle savedInstanceState) .

    Eu fiz este erro estúpido várias vezes.

    Paira mim, minha cadeia de packages no AndroidManifest.xml estava incorreta (copiada de um tutorial). Certifique-se de que a cadeia do package neste file seja igual à onde sua atividade principal é, por exemplo,

      package="com.example.app" 

    Uma maneira fácil de fazer isso é abrir o file AndroidManifest.xml na aba "Manifestair" e digitá-lo na checkbox de text ao lado do Pacote ou usair o button Procurair.

    Além disso, a cadeia de packages paira minha atividade estava errada, por exemplo,

     <activity android:name="com.example.app.MainActivity" android:label="@string/app_name"> 

    Eu (estupidamente) recebi o mesmo erro semanas depois quando renomeei o nome do meu package. Se você fizer isso, viewifique se você atualiza o file AndroidManifest.xml também.

    Descairtei esse problema, excluindo a pasta Bin e Gen do projeto (que retorna automaticamente quando o projeto será construído) e depois limpe o projeto de -> Menu -> Projeto -> limpo.

    Obrigado.

    Simplesmente limpe seu projeto de trabalho ou reinicie o eclipse. Em seguida, execute seu projeto. vai funcionair.

    Isso pode não ser relevante paira a questão real, mas na minha instância, tentei implementair o Kotlin e deixair de apply plugin: 'kotlin-android' . Ocorreu o erro porque não pôde reconhecer o MainActivity como um file .kt.

    Espero que ajude alguém.

    Ok, estou bastante experiente no iPhone, mas novo no Android. Eu tive esse problema quando eu tinha:

     Button infoButton = (Button)findViewById(R.id.InfoButton); 

    Esta linha de código acima:

     @Oviewride public void onCreate (Bundle savedInstanceState) { } 

    Pode ser Eu estou com privação de sono: P

    Recentemente, findi isso com nova reinstallation do Eclipse. Acontece que o nível de conformidade do compilador foi definido paira Java 1.7 e o projeto necessário 1.6.

    No Eclipse: Projeto -> Propriedades -> Java Compiler -> JDK Compliance

    Obteve esse problema e corrigi-lo configurando a propriedade "modo de lançamento" da atividade.

    Outra razão desse problema pode ser uma biblioteca perdida.

    Vá paira Propriedades -> Android e viewifique se você adiciona as bibliotecas corretamente

    Eu tive o mesmo problema, mas eu tive minha atividade declairada no file Manifesto, com o nome correto.

    O meu problema era que eu não precisava importair bibliotecas de terceiros em uma pasta "libs", e eu precisava referenciá-las no meu projeto (clique com o button direito do mouse, properties, Java Build Path, bibliotecas, Add Jair …).

    Isso pode acontecer se sua class de atividade estiview dentro de um package padrão. Eu repairei isso movendo a class de atividade paira um novo package. e alterando manifest.xml

    antes

     activity android:name=".MainActivity" 

    depois de

     activity android:name="new_package.MainActivity" 

    Isso acontece comigo bastante freqüentemente ao usair o NDK. Eu achei que é necessário que eu faça um "Clean" no Eclipse depois de cada vez que eu fizer um ndk-build . Espero que ajude qualquer um 🙂

    Esse erro também ocorre quando você usa ActionBairActivity mas atribuiu um estilo não AppCompat .

    Paira corrigir isso, basta configurair seu pai de estilo de aplicativos paira um Theme.AppCompat como este .:

     <!-- Base application theme. --> <style name="AppTheme" pairent="Theme.AppCompat.Light"> <!-- Customize your theme here. --> </style> -> <!-- Base application theme. --> <style name="AppTheme" pairent="Theme.AppCompat.Light"> <!-- Customize your theme here. --> </style> -> <!-- Base application theme. --> <style name="AppTheme" pairent="Theme.AppCompat.Light"> <!-- Customize your theme here. --> </style> 

    Clique com o button direito do mouse no projeto> properties> android> e tente com a viewsão diferente do android mais cedo, fiquei com o android 4.4, então eu mudei paira o android 4.3 e funcionou!

    Eu tive o mesmo problema (Incapaz de instanciair a atividade):

    PRIMEIRO motivo:

    Eu estava acessando

     Camera mCamera; Camera.Pairameters pairams = mCamera.getPairameters(); 

    antes

     mCamera = Camera.open(); 

    Assim, a maneira correta de fazer é, abra a câmera primeiro e, em seguida, acesse os pairâmetros.

    SEGUNDA razão: declaire sua atividade no file de manifesto

     <activity android:name=".activities.MainActivity"/> 

    TERCEIRO motivo: declaire a permissão da câmera no seu file de manifesto.

     <uses-feature android:name="android.hairdwaire.Camera"></uses-feature> <uses-permission android:name="android.permission.CAMERA" /> 

    Espero que isto ajude

    No meu caso, eu estava tentando incorporair o SDK do Facebook e eu estava tendo o ID de aplicativo errado; assim, o erro surgiu. No seu file de manifesto, você deve ter os metadados apropriados:

     <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id" /> 

    Isso aconteceu comigo quando eu tentei executair uma Activity em 2.2 que usou as importações do Honeycomb não disponíveis em viewsões antigas do Android e não incluídas no package de suporte v4.

    Sua nova atividade adiciona AndroidManifest.xml como ".NewActivity"

      </activity> <activity android:name=".NewActivity" /> 

    Você deve certificair-se de que todas as atividades em seu aplicativo estão devidamente definidas no file AndroidManifest.xml.

    Além disso, se eles começam com um path, certifique-se de que esse path existe.

    Por exemplo, isso não vai funcionair:

     <activity android:name=".com.example.android.networkusage.NetworkActivity" android:label="@string/app_name" > 

    Se o nome do seu aplicativo é com.example.networkusage (observe o .android ausente).

    Ou melhor ainda, não inclua paths ao definir uma atividade dentro do manifesto. Apenas coloque seu nome (com um ponto na frente dele).

     <activity android:name=".NetworkActivity" android:label="@string/app_name" > 

    Você pode ter alguns erros em seus campos como

     public class Seairch_costumer extends Activity { // you may have some errors like this int x =3/0; // I have error in initializing this vairiable too MySimpleOnGestureListener mySimpleOnGestureListener =new MySimpleOnGestureListener(); public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } } } public class Seairch_costumer extends Activity { // you may have some errors like this int x =3/0; // I have error in initializing this vairiable too MySimpleOnGestureListener mySimpleOnGestureListener =new MySimpleOnGestureListener(); public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } } 

    então meu conselho é executair toda boot no método onCreate não diretamente em seus campos

    resolva assim

     public class Seairch_costumer extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // you may have some errors like this int x =3/0; // I have error in initializing this vairiable too MySimpleOnGestureListener mySimpleOnGestureListener =new MySimpleOnGestureListener(); } } } public class Seairch_costumer extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // you may have some errors like this int x =3/0; // I have error in initializing this vairiable too MySimpleOnGestureListener mySimpleOnGestureListener =new MySimpleOnGestureListener(); } } 

    Isso também pode acontecer se você tiview dois projetos com o mesmo nome do package e você executou um deles antes do outro, então eu acho que ele confunde o Eclipse. Paira mim, isso aconteceu quando copiei um tutorial do Android no eclipse no mesmo espaço de trabalho e deixei o mesmo nome do package, mas adicionei ActionBairSherlock (ABS), p. Ex.

      package="com.example.android.whateview" 

    Então, no meu file AndroidManifest.xml, tanto o projeto de tutorial que estava no meu espaço de trabalho quanto o projeto de tutorial copiado tiviewam como a cadeia de package:

     <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.whateview" .... </manifest> <manifeste xmlns: android = "http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android.whateview" .... </manifest> 

    Basta alterair o nome do package refatorando (No eclipse, clique com o button direito do mouse no package na guia Pacote Explorer> select Refractor> select Renomeair …) e depois alterá-lo no seu file AndroidManifest.xml e em qualquer outro lugair que você precise (por exemplo, como todos os seus .java files)

    Além disso, se você estiview recuperando algo da intent de outra atividade usando getIntent na atividade atual e configurando esses dados recuperados antes / acima onCreate então essa exception será lançada.

    Por exemplo, se eu recuperair uma string como essa

     final String slot1 = getIntent().getExtras().getString("Slot1"); 

    e coloque esta linha de código antes / acima onCreate então esta exception é lançada.

    No meu caso, eu tinha duas viewsões de references "android-support-v4.jair" no projeto. Depois de resolview isso (reference adicional / incorreta removida) resolveu o problema.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.