flutter web中url路由模式以及参数传递

Flutter开发中,项目中我使用Get库进行路由管理状态管理。其页面跳转使用Get.toNamed()的方式是比较方便的,参数传递方式也比较简单,例如

Get.toNamed(
    AppRouters.myOrderList,
    arguments: {
        "fromExternal": true,
        "orderStatus": 2
    }
);

可以在对应页面的Controller中onInit方法中,获取到传递过来的参数。

在web的场景中,情况会变得稍微有点复杂。 在web中除了页面跳转以及参数传递外,它的每个页面都有个对应的url,用户可以通过浏览器直接访问到某一个指定的页面,跟App相比,这点就脱离了程序的本身的掌控范围。直接通过Url来进入到指定页面,就需要可以通过URL传递参数的需求。

iOS修复CocoaPods引入的老旧三方库Bug方法

一些年代比较久远的但是依然在运行的iOS项目中,其中使用的一些三方库作者停止维护,但这个库在项目中依然在使用。随着iOS系统版本的更新,有些方法被弃用,会出现一些警告,甚至直接出现闪退问题。

比如 YBImageBrowser 这个查看大图的库,在旧项目中点击直接出现闪退。查看断点,问题出在 _UIGraphicsBeginImageContextWithOptions 方法在iOS17中被 UIGraphicsImageRenderer 替代。