[英]Puzzling java.lang.NullPointerException in Android App
我目前正在使用Android應用程序,幾乎每次使用它時,都會出現錯誤。 在大多數情況下,它不會使應用程序崩潰,但仍然令人沮喪的是,我看到了此錯誤。 我以為我做了檢查,但我可能錯了。 謝謝您的幫助! 相關代碼如下。 (這是相關的,因為if
語句之外的行將拋出NullPointerException
。)
Activity activity;
if(activity == null)
{
activity = new Activity();
}
Intent intent = new Intent(activity, Service.class);
您通常不會以這種方式實例化Activity類。 請在此處查看有關Android Activity類的文檔:
http://developer.android.com/reference/android/app/Activity.html
您應該發布更多周圍的代碼,但是問題是創建新的Intent
需要有效的Context
。 通常,您可以在Activity
(或Service
或BroadcastReceiver
)類中創建一個Intent
,因此您可以執行以下操作:
Intent intent = new Intent(this, Service.class);
有時,您會在其他地方創建它並傳遞該有效Context
,但是您幾乎絕不應該通過直接調用構造函數來創建Activity
。 要使它有用,還有許多其他初始化需要。
如postet先前所述,除了調用構造函數之外,還需要為活動發起更多的工作。 可能是在Intent構造函數的內部深處出現了一個空指針異常,在該異常中它試圖獲取通常提供的一些Activityinformation信息。
如果您確實要創建服務,那么這里提供了啟動服務的鏈接,但是您應該真正閱讀整篇文章,並可能閱讀更多活動生命周期資源。
http://developer.android.com/guide/topics/fundamentals/services.html#StartingAService
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.