• Flutter: Unsupported value: false/true


    在使用FlutterBoost传参时,直接传递bool值时出现崩溃。

    1. FlutterBoost.singleton.open(
    2. 'flutter://personnel_page',
    3. urlParams: <String, dynamic>{
    4. 'isBd': i%2==0 ? true : false,
    5. },
    6. ),

    崩溃日志如下: 

     Caused by: java.lang.IllegalArgumentException: Unsupported value: false
            at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:278)
            at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:275)
            at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:275)
            at io.flutter.plugin.common.StandardMethodCodec.encodeMethodCall(StandardMethodCodec.java:38)
            at io.flutter.plugin.common.MethodChannel.invokeMethod(MethodChannel.java:99)
            at com.idlefish.flutterboost.FlutterBoostPlugin.invokeMethod(FlutterBoostPlugin.java:138)
            at com.idlefish.flutterboost.FlutterBoostPlugin.invokeMethodUnsafe(FlutterBoostPlugin.java:96)
            at com.idlefish.flutterboost.ContainerRecord$MethodChannelProxy.invokeChannelUnsafe(ContainerRecord.java:292)
            at com.idlefish.flutterboost.ContainerRecord$MethodChannelProxy.create(ContainerRecord.java:231)
            at com.idlefish.flutterboost.ContainerRecord$MethodChannelProxy.access$100(ContainerRecord.java:226)
            at com.idlefish.flutterboost.ContainerRecord.onCreate(ContainerRecord.java:106)
            at com.idlefish.flutterboost.containers.FlutterActivityAndFragmentDelegate.onCreateView(FlutterActivityAndFragmentDelegate.java:163)
            at com.idlefish.flutterboost.containers.BoostFlutterActivity.createFlutterView(BoostFlutterActivity.java:229)
            at com.idlefish.flutterboost.containers.BoostFlutterActivity.onCreate(BoostFlutterActivity.java:149)
            at com.xx.ss.SSFlutterActivity.onCreate(SSFlutterActivity.java:32)
            at android.app.Activity.performCreate(Activity.java:8142)
            at android.app.Activity.performCreate(Activity.java:8114)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1308)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3550)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3749) 
            at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) 
            at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
            at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2181) 
            ......

    原以为是FlutterBoost框架的bug,百度了一番,原来是低版本flutter的bug。

    这个是因为StandardMessageCodec的boolean检查有问题导致Native像Flutter传参map里value有boolean的时候崩溃,commit已经merge到master了

    https://github.com/flutter/engine/commit/13453596424988afa5eebafb5511b0bacbab19ae

    高版本还没有验证...

  • 相关阅读:
    DHCP配置命令
    转载-Blazor Debugging Improvements in Rider 2021.2
    Tauri+Rust+Vue 跨平台桌面应用简明教程(1)环境创建+系统事件+自定义菜单
    四种mfc140u.dll丢失的解决方法,有效恢复mfc140u.dll丢失
    如何用画图将另一个图片中的成分复制粘贴?
    TypeScript 第三章:类 class
    Leetcode_47:全排列 II
    【重新定义matlab强大系列十一】函数rescale数组元素的缩放范围
    【Unity】【VR】详解Oculus Integration输入
    【JS面试题】面试官问我:遍历一个数组用 for 和 forEach 哪个更快?
  • 原文地址:https://blog.csdn.net/jdsjlzx/article/details/125415560