我正在使用Kotlin创建一个android动态壁纸。这需要一个扩展WallpaperService的类,其中包含一个扩展了WallpaperService.Engine的内部类。

所以我写了这个:

import android.service.wallpaper.WallpaperService
import android.service.wallpaper.WallpaperService.Engine

public class MyWallpaperService : WallpaperService() {

    override fun onCreateEngine(): Engine = MyEngine()

    private inner class MyEngine : Engine() {

    }
}

问题是我在编译时遇到以下两个错误:
Error:java.lang.RuntimeException: Error generating constructors of class MyEngine with kind IMPLEMENTATION

Error:java.lang.UnsupportedOperationException: Don't know how to generate outer expression for lazy class MyWallpaperService

我不知道为什么会这样,所以任何帮助将不胜感激。

最佳答案

参见KT-6727

您可以尝试以下解决方法:

private inner class MyEngine : super.Engine() {
}

10-08 17:45