序号 | 问题 | 解决方法 |
---|---|---|
1 | 在使用kotlin时,进行网络请求,我使用的json适配器是fastjson,但一直会报default constructor not found. | 看了其它博客,说是要降级,再添加kotlin 反射包,觉得很麻烦,于是我选择了Gson |
2 | 在运用rxjava调度器时.observeOn(AndroidSchedulers.mainThread()) ,一直报java.lang.NoSuchMethodError: No static method metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; in class Ljava/lang/invoke/LambdaMetafactory; or its super classes (declaration of 'java.lang.invoke.LambdaMetafactory' appears in /apex/com.android.runtime/javalib/core-oj.jar) | 使用JavaVersion.VERSION_1_8 |
3 | kotlin中使用room切记使用kapt | 注意:对于基于 Kotlin 的应用,请确保使用 kapt ,而不是 annotationProcessor 。您还应添加 kotlin-kapt 插件 。 |
4 | room中增删改后返回值可能是long 也可能是long[] | 如果 @Insert 方法只接收 1 个参数,则它可以返回long ,这是插入项的新 rowId。如果参数是数组或集合,则应返回 long[] 或 List<Long> 。 |
持续更新中,欢迎留言补充