Итак, у меня есть следующее:
Общий класс, к которому многие из моих Деятельностей обращаются в моем приложении для Android, путем установки класса в моем манифесте:
<application android:name="com.dev.games.phraseparty.Common"... />
Теперь в этом классе у меня есть несколько объектов, созданных для сохранения состояния приложения, и общих служб для выполнения приложений, созданных в конструкторе Common.
е
GameStateVO gameState;
public Common()
{
gameState = new GameStateVO();
}
Моя проблема в том, что в моей активности есть реклама Admob. Когда пользователь нажимает на объявление, он вызывает намерение веб-браузера открыть URL-адрес объявления в веб-браузере.
Теперь, когда я возвращаюсь назад из веб-браузера, запущенного admob, он возвращает меня к операции вызова и вызывается метод OnCreate.
Это действие затем получает исключение нулевого указателя, потому что оно будет выполнять что-то вроде:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Common common = this.getApplication();
//null pointer here since the game state VO is null since the Common has lost its state.
int score = common.getGameState().getScore();
}