0

我是开发人员世界的新手,我 2 天前才开始编码,但直到现在一切都很顺利。

现在我正在尝试制作一个android表盘,我正在尝试在智能手表上显示一个基本位图(使用模拟器)

问题是我的表盘刚刚崩溃,logcat 说:

06-29 17:35:58.182 5594-5594/wear.trombettonj.prova2 E/AndroidRuntime: FATAL EXCEPTION: main
                                                                   Process: wear.trombettonj.prova2, PID: 5594
                                                                   java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference
                                                                       at android.graphics.Bitmap.createScaledBitmap(Bitmap.java:658)
                                                                       at wear.trombettonj.prova2.AnalogWatchface$Engine.onSurfaceChanged(AnalogWatchface.java:126)
                                                                       at android.service.wallpaper.WallpaperService$Engine.updateSurface(WallpaperService.java:770)
                                                                       at android.service.wallpaper.WallpaperService$Engine.attach(WallpaperService.java:878)
                                                                       at android.service.wallpaper.WallpaperService$IWallpaperEngineWrapper.executeMessage(WallpaperService.java:1165)
                                                                       at com.android.internal.os.HandlerCaller$MyHandler.handleMessage(HandlerCaller.java:37)
                                                                       at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                       at android.os.Looper.loop(Looper.java:154)
                                                                       at android.app.ActivityThread.main(ActivityThread.java:5974)
                                                                       at java.lang.reflect.Method.invoke(Native Method)
                                                                       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:801)
                                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691)

我尝试修复这些错误,例如,如果我单击 WallpaperService.java:770,它会将我带到此文件。

我假设这个文件是一个原始的 java 库,因为它不是我创建的,而且这个文件充满了错误“无法解析符号'PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS(示例)'”

这里有什么问题?

4

1 回答 1

0

堆栈跟踪的重要部分是:

Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference

at wear.trombettonj.prova2.AnalogWatchface$Engine.onSurfaceChanged(AnalogWatchface.java:126)

这意味着在您AnalogWatchface班级的第 126 行,您getWidth()正在调用一个空Bitmap对象。WallpaperService 这与本身无关。

于 2016-06-30T03:50:03.720 回答