美文网首页
Android API 33 GestureDetecto

Android API 33 GestureDetecto

作者: 善良的老农 | 来源:发表于2023-03-28 10:59 被阅读0次

错误原因    GestureDetector.OnGestureListener 覆写崩溃问题

它没有说什么时候任何 MotionEvent 参数为 null:

e1 MotionEvent:开始投掷的第一个向下运动事件。

e2 MotionEvent:触发当前onFling的移动动作事件。

我无法重现这一点,但我注意到 Crashlytics(在 Android 11 上的“realme GT Master Edition”上发现)发生崩溃,因为它被转换为 Kotlin 并被认为是不可为空的。崩溃是因为“e1”参数:

致命异常:java.lang.NullPointerException:指定为非空的参数为空:方法 kotlin.jvm.internal.Intrinsics.checkNotNullParameter,参数 e1



解决: 

这是谷歌的一个已知问题

即使 e1 被定义为不可为 null,Android API 仍然会为它生成一个 null 值。

将 compileSDK 版本升级到 33 后,无法成功构建项目('onFling' 不覆盖任何内容)

解决此问题的一种方法是添加  @Suppress("NOTHING_TO_OVERRIDE", "ACCIDENTAL_OVERRIDE")   e1 并将其设置为可为空

overridefunonFling(   e1:MotionEvent?,... )

如前所述,这是一个已知问题,应该在将来修复。

相关文章

网友评论

      本文标题:Android API 33 GestureDetecto

      本文链接:https://www.haomeiwen.com/subject/oaitddtx.html