2017-01-18 4 views
-1

Моя проблема заключается в том, что одна специфическая активность в мое приложение не может быть запущен по какой-то причине, и он бросает:класс Android деятельности дает NullPointerException

java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference

Все остальные запуска кода, который выглядит следующим образом работа прекрасна, проблема ТОЛЬКО, когда я запускаю Player1. Разумеется, класс существует, и я не могу понять, в чем проблема.

Я запускаю деятельность под названием Player1 от деятельности под названием ChooseLevel. При некоторых нажатии кнопки вызов:

Intent intent = new Intent(ChooseLevel.this, Player1.class); 
Bundle b = new Bundle(); 
b.putInt("game_level", 1); 
intent.putExtras(b); 
startActivity(intent); 
finish(); 

Журналы показывают, что ошибка в: Player1.onCreate(Player1.java:50)

Код в линии Player1:50 является:

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

    changeIndex = 0; 
    cards = new ArrayList<Card>(8); 
    score = (TextView) findViewById(R.id.score_text); 
    message = (TextView) findViewById(R.id.msg_text); 
    timer = (TextView) findViewById(R.id.timer); 
    timer.setText(String.valueOf(definitions.TIMER_START)); # LINE 50 

    Bundle b = getIntent().getExtras(); 

    ... 
} 

При выполнении этого запуск кода , Я получаю это в своих журналах:

33:04.338 18302-18302/com... D/AndroidRuntime: Shutting down VM 
01-18 10:33:04.338 18302-18302/com... E/AndroidRuntime: FATAL EXCEPTION: main 
      Process: com..., PID: 18302 
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.../com....Player1}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference 
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference 
     at com....Player1.onCreate(Player1.java:50) 




EDIT:

Я нашел мой ответ, это было связано с какой-то предмет, который я имел в моем Player1.onCreate() методе. В чужом режиме андроид-студия подняла исключение в отношении getClass(). Если кто-то знает, почему это случилось, пожалуйста, поделитесь :) использовать контекст

+1

' Player1.onCreate (Player1.java:50) '- Это число номер строки, в которой происходит исключение. Посмотрите на строку 50. Кстати, если бы вы ответили в предложенном дубликате, вы бы это знали. –

+1

Вы не показываете строку, бросающую исключение. – shmosel

+0

Проверьте свой файл манифеста, объявили ли вы Player1 в манифесте? –

ответ

0

, getApplicationContext() or getActivity() `

Intent intent = new Intent(context, Player1.class); 
Bundle b = new Bundle(); 
b.putInt("game_level", 1); 
intent.putExtras(b); 
startActivity(intent); 
finish(); 
+2

Эмм, нет, это не то, что вам следует делать –