2014-02-02 4 views
1

Во-первых, я использую Eclipse IDE. Я пытался создать магазин приложений. Я не знаю, что произошло, но он работал до этого, теперь я получаю эту ошибку в LogCat.Android FATAL EXCEPTION ActivityNotFoundException

02-02 13:26:39.750: E/AndroidRuntime(280): FATAL EXCEPTION: main 
02-02 13:26:39.750: E/AndroidRuntime(280): android.content.ActivityNotFoundException: No    Activity found to handle Intent { act=com.example.appstore.GAMENAME } 
02-02 13:26:39.750: E/AndroidRuntime(280): at  android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1408) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1378) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.app.Activity.startActivityForResult(Activity.java:2817) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.app.Activity.startActivity(Activity.java:2923) 
02-02 13:26:39.750: E/AndroidRuntime(280): at com.servetech.appstore.MainActivity$1.onClick(MainActivity.java:28) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.view.View.performClick(View.java:2408) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.view.View$PerformClick.run(View.java:8816) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.os.Handler.handleCallback(Handler.java:587) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.os.Handler.dispatchMessage(Handler.java:92) 
02-02 13:26:39.750: E/AndroidRuntime(280): at android.os.Looper.loop(Looper.java:123) 
02-02 13:26:39.750: E/AndroidRuntime(280): at  android.app.ActivityThread.main(ActivityThread.java:4627) 
02-02 13:26:39.750: E/AndroidRuntime(280): at java.lang.reflect.Method.invokeNative(Native Method) 
02-02 13:26:39.750: E/AndroidRuntime(280): at   java.lang.reflect.Method.invoke(Method.java:521) 
02-02 13:26:39.750: E/AndroidRuntime(280): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
02-02 13:26:39.750: E/AndroidRuntime(280): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
02-02 13:26:39.750: E/AndroidRuntime(280): at dalvik.system.NativeStart.main(Native Method) 

MainActivity.java

package com.servetech.appstore; 


import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.view.View; 
import android.widget.Button; 

public class MainActivity extends Activity { 


Button btn; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    btn = (Button) findViewById(R.id.button1); 

    btn.setOnClickListener(
      new View.OnClickListener() { 

       @Override 
       public void onClick(View v) { 
        // TODO Auto-generated method stub 
        Intent myIntent = new Intent("com.example.appstore.GAMENAME"); 
        startActivity(myIntent); 
       } 
      }); 

} 



} 

Android манифеста:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.servetech.appstore" 
android:versionCode="1" 
android:versionName="1.0" > 

<uses-sdk 
    android:minSdkVersion="8" 
    android:targetSdkVersion="19" /> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name="com.servetech.appstore.MainActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

    <activity 
     android:name=".GameName" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="com.servetech.appstore.GAMENAME" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity> 

</application> 

PS: Я заметил, что я начинаю активность немного по-другому, чем все остальные. Просто чтобы вы знали, что я учусь из учебников thenewboston. Надеюсь, это не проблема. Я могу опубликовать класс GameName, если это необходимо.

EDIT: Уже решил это, так что не тратьте свое время, пытаясь помочь :)

ответ

0

Реальный пакет GameName является com.servetech.appstore.GAMENAME не com.example.appstore.GAMENAME. Вот почему Android не может найти активность.

android.content. ActivityNotFound Исключения: Нет активности не найдена для обработки Намерения

Так

Intent myIntent = new Intent("com.example.appstore.GAMENAME"); 

в

Intent myIntent = new Intent("com.servetech.appstore.GAMENAME"); 
+0

Вы первый ответ, поэтому я предполагаю, что это справедливо, чтобы принять ваш ответ. –

+0

Мы здесь, чтобы помочь, сделать то, что вы чувствуете себя правильно :) –

1

Вы пытаетесь запустить класс "com.example.appstore.GAMENAME, но в манифесте вы получили packageName+.GameName. Так вместо Intent myIntent = new Intent("com.example.appstore.GAMENAME"); попробовать Intent myIntent = new Intent("com.servetech.appstore.GAMENAME");

1

Изменение Intent активности на:

Intent myIntent = new Intent("com.servetech.appstore.GAMENAME");