【发布时间】:2017-07-22 20:11:58
【问题描述】:
所以,我一直在关注 Android 天气应用程序的 YouTube 教程。该应用程序似乎可以编译,但是在模拟器上打开时会崩溃。我不是最流利的程序员,但是代码是可以理解的。我无法弄清楚是什么导致了这个问题。该应用程序应该为“MainActivity.java”中硬编码位置的位置获取天气数据。数据来自 Yahoo!使用 API。
项目文件链接:https://drive.google.com/drive/folders/0B2dQ9-JQjysVeXlqZENBZDExN0E?usp=sharing
以下是我得到的错误:
--------- 崩溃开始 E/AndroidRuntime: 致命异常: main 进程:com.example.mattbenson.cw_2_weather,PID:2529 java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“int org.json.JSONObject.optInt(java.lang.String)” 在 com.example.mattbenson.cw_2_weather.service.WeatherService$1.onPostExecute(WeatherService.java:81) 在 com.example.mattbenson.cw_2_weather.service.WeatherService$1.onPostExecute(WeatherService.java:38) 在 android.os.AsyncTask.finish(AsyncTask.java:667) 在 android.os.AsyncTask.-wrap1(AsyncTask.java) 在 android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:684) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:154) 在 android.app.ActivityThread.main(ActivityThread.java:6119) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) E/Surface: queueBuffer: 到 SurfaceTexture 的错误队列缓冲区,-19 E/EGL_emulation:tid 2570:swapBuffers(487):错误 0x300d (EGL_BAD_SURFACE) W/OpenGLRenderer:swapBuffers 在 0x76990bb1c580 上遇到 EGL 错误 12301,正在停止渲染... 应用程序终止。
(对不起,我是这个网站的新手!)
非常感谢任何帮助。
【问题讨论】:
标签: java android api mobile weather