2013-12-18 169 views
0

当我使用它们的getAction()值区分两个intent时,我的应用程序崩溃。当我删除此代码,它没有,所以我的数字有什么做的代码块:Android应用程序崩溃时创建

Intent intent = getIntent(); 
String action = intent.getAction() 

if(action.equals(ViewFavorites.SOURCE) { 
    //Do something 
} else if(action.equals(AppSettings.SOURCE) { 
    //Do something 
} 

此代码是我MainActivities onCreate方法内。在ViewFavorites和AppSettings中,操作设置为SOURCE静态字段。但是,当运行此代码... 我的应用程序崩溃......这与调用回在MainActivity这是(WeatherDisplay应对继承人的其他两个类文件的代码块...

ViewFavorites:

Intent intentWeatherDisplay = new Intent(this, WeatherDisplay.class); 
intentWeatherDisplay.setAction(SOURCE); 
startActivity(intentWeatherDisplay); 

的AppSettings:

Same thing as code above^
+0

LogCat输出将对现在有帮助:) – LokiSinclair

+0

这里您的getIntent()返回null或getAction()返回null。执行空验证... –

回答

4

它看起来action可以使用null反转结构,以避免NPE

0123。