2013-06-20 51 views
-2

我有存儲靜態主變量(應用程序的計算器)的主類(擴展應用程序)。 if (!_.calc.Calculated) CALCULATE_();變量空指針異常

_ extends Application 

如何解決它:所以暫停該應用程序(home鍵或調用)

06-21 00:43:14.916: E/AndroidRuntime(26676): FATAL EXCEPTION: AsyncTask #1 
06-21 00:43:14.916: E/AndroidRuntime(26676): java.lang.RuntimeException: An error occured while executing doInBackground() 
06-21 00:43:14.916: E/AndroidRuntime(26676): at android.os.AsyncTask$3.done(AsyncTask.java:299) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.util.concurrent.FutureTask.setException(FutureTask.java:124) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.util.concurrent.FutureTask.run(FutureTask.java:137) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.lang.Thread.run(Thread.java:856) 
06-21 00:43:14.916: E/AndroidRuntime(26676): Caused by: java.lang.NullPointerException 
06-21 00:43:14.916: E/AndroidRuntime(26676): at com.AMain$CalcTask.doInBackground(AMain.java:106) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at ru.ps.horoscope.AMain$CalcTask.doInBackground(AMain.java:1) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at android.os.AsyncTask$2.call(AsyncTask.java:287) 
06-21 00:43:14.916: E/AndroidRuntime(26676): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 
06-21 00:43:14.916: E/AndroidRuntime(26676): ... 5 more 

106串後?

 @Override 
      protected Void doInBackground(Void... arg0) { 
       // TODO Auto-generated method stub 
if (!_.calc.Calculated) CALCULATE_(); 
       return null; 
      } 
+2

你必須提供更多的代碼。但要回答,有一些你不初始化(顯然設置爲空) –

+0

你可以請你的代碼在你的doInBackground()嗎? – verybadalloc

+0

_.calc被定義並得到了很多計算。沒有onresume,onstart,onpause,onstop。只是按住回家。有時候所有作品都是正確的但是在調用應用程序之後就會退出。 – Vyacheslav

回答

0

_calc爲空。您需要發佈代碼才能獲取比此更多的信息。

+0

public class _ extends Application {etc ...和static _Calc calc;他們在之前定義並且有大量計算 – Vyacheslav

+1

您是否在清單中指定了'_'作爲您的應用程序?例如。 ''?你是否初始化了'_Calc'? – Dororo

+0

<應用程序android:name =「com.your.package.name._」 - 是否隱藏?可能是這是錯誤。我沒有添加它。 – Vyacheslav