2014-02-27 3 views
0

다음은 안드로이드 게임 시작입니다. 제 6 장 (책에 익숙한 사용자를 위해)은 어떻게 든 매니 페스트 파일을 망쳤으며 java.lang.NullPointerException을 받았습니다. 주요 활동 수업.Android 매니페스트 구성에 문제가 있습니다

  • com.badlogic.androidgames.framework
  • com.badlogic.androidgames.framework.impl
  • com.badlogic.androidgames.framework.mrnom

    :

    이 게임은 세 가지 패키지로 구성

    <uses-sdk 
        android:minSdkVersion="5" 
        android:targetSdkVersion="19" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> 
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission> 
    <uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission> 
    <application 
        android:allowBackup="true" 
        android:icon="@drawable/ic_launcher" 
        android:label="@string/app_name" 
        android:theme="@style/AppTheme" > 
        <activity 
         android:name=".MrNomGame" 
         android:label="@string/app_name" > 
         <intent-filter> 
          <action android:name="android.intent.action.MAIN" /> 
    
          <category android:name="android.intent.category.LAUNCHER" /> 
         </intent-filter> 
         </activity> 
        </application> 
    </manifest> 
    

클래스 MrNomGame은 com.badlogic.androidgames.mrnom 패키지에 있습니다. 그것이 분명하지 않다면 나는 android dev에 매우 익숙하며 자바와 안드로이드 (manifest)가 파일 위치를 식별하는 방법에 대해 머리를 감쌀 수 없다.

감사합니다.

편집 : 주요 활동 및 로그 캣 출력 : 로비 연못의 제안에 따라

package com.badlogic.androidgames.mrnom; 

import com.badlogic.androidgames.framework.Screen; 
import com.badlogic.androidgames.framework.impl.AndroidGame; 

public class MrNomGame extends AndroidGame { 

    public Screen getStartScreen() { 
     return new LoadingScreen(this); 
    } 
} 

, 나는 android:name=".mrnom.MrNomGame"에 매니페스트 android:name: 업데이트이 그 변경 후의 로그 캣 출력입니다. 매니페스트에 패키지 이름이 com.badlogic.androidgames 경우

02-27 10:01:21.039: D/AndroidRuntime(1261): Shutting down VM 
02-27 10:01:21.039: W/dalvikvm(1261): threadid=1: thread exiting with uncaught exception (group=0xb3affba8) 
02-27 10:01:21.129: E/AndroidRuntime(1261): FATAL EXCEPTION: main 
02-27 10:01:21.129: E/AndroidRuntime(1261): Process: com.badlogic.androidgames.mrnom, PID: 1261 
02-27 10:01:21.129: E/AndroidRuntime(1261): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.badlogic.androidgames.mrnom/com.badlogic.androidgames.mrnom.MrNomGame}: java.lang.NullPointerException 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.ActivityThread.access$800(ActivityThread.java:135) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.os.Handler.dispatchMessage(Handler.java:102) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.os.Looper.loop(Looper.java:136) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.ActivityThread.main(ActivityThread.java:5017) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at java.lang.reflect.Method.invokeNative(Native Method) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at java.lang.reflect.Method.invoke(Method.java:515) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at dalvik.system.NativeStart.main(Native Method) 
02-27 10:01:21.129: E/AndroidRuntime(1261): Caused by: java.lang.NullPointerException 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.graphics.Canvas.<init>(Canvas.java:136) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at com.badlogic.androidgames.framework.impl.AndroidGraphics.<init>(AndroidGraphics.java:30) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at com.badlogic.androidgames.framework.impl.AndroidGame.onCreate(AndroidGame.java:44) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.Activity.performCreate(Activity.java:5231) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159) 
02-27 10:01:21.129: E/AndroidRuntime(1261):  ... 11 more 
02-27 10:06:21.749: I/Process(1261): Sending signal. PID: 1261 SIG: 9 
+1

전체 매니페스트 및 예외가 로그 캣 출력과 함께 발생, 특히 활동을 제공하십시오이 –

+0

매니페스트에서 중요한 부분을 잘라 .. – donfuxx

+0

죄송합니다 사람을, 나는 저작권법과> pasted-> CTRL + K와 잘 렸어. – SuperNoob

답변

1

는 당신은 .mrnom.MrNomGame.MrNomGame을 변경해야합니다. 매니페스트의 이름은 매니페스트의 클래스 이름과 관련이 있습니다. 또한 활동 android : 활동 이름을 완전히 분류 된 패키지/클래스 이름으로 변경할 수 있습니다.

+0

매니페스트 및 NullPointerException 여전히 위의 업데이트를 참조하십시오. – SuperNoob

+0

이제 문제는 Activity 내부 - com.badlogic.androidgames.framework.impl.AndroidGraphics에 있습니다. (AndroidGraphics.java30) - 행 30으로 보임 – Natali

0

이름이 아닌 Activity의 절대 패스를 추가하십시오. 예 :

android:name="com.example.package.MrNomGame" 
+0

바로 가기 : Writing '이 있습니다. '은' '의 줄임말입니다. '여기서 은 매니페스트 파일의 태그에 정의되어 있습니다. – fabian

관련 문제