草庐IT

hook_event_proc

全部标签

events - Flutter - 每次页面更改时运行一个函数

每当我的Flutter应用程序中的页面发生变化时,我都想运行一个函数。理想情况下,我不想在每个页面的initState中调用此函数,因为有时人们会忘记在新页面中添加调用。将其视为中间件-基本上在页面加载之前,一些代码需要运行。更新代码以供审核import'package:flutter/material.dart';import'package:flutter_secure_storage/flutter_secure_storage.dart';import'package:myapp/pages/login_page.dart';import'package:myapp/pages

events - Flutter - 每次页面更改时运行一个函数

每当我的Flutter应用程序中的页面发生变化时,我都想运行一个函数。理想情况下,我不想在每个页面的initState中调用此函数,因为有时人们会忘记在新页面中添加调用。将其视为中间件-基本上在页面加载之前,一些代码需要运行。更新代码以供审核import'package:flutter/material.dart';import'package:flutter_secure_storage/flutter_secure_storage.dart';import'package:myapp/pages/login_page.dart';import'package:myapp/pages

dart - GestureDetector 内的 ScrollView : Dispatch Touch Events

我有一个GestureDetector负责上下拖动容器以更改高度。容器内容可能太长,必须滚动内容。我不知道如何将触摸事件分派(dispatch)到正确的组件,我尝试使用IgnorePointer并更改ignoring属性。class_SlideSheetStateextendsStatebool_ignoreScrolling=true;GestureDetector(onVerticalDragUpdate:(DragUpdateDetailsdetails){if(isDraggedUp){setState((){_ignoreScrolling=false});}//update

dart - GestureDetector 内的 ScrollView : Dispatch Touch Events

我有一个GestureDetector负责上下拖动容器以更改高度。容器内容可能太长,必须滚动内容。我不知道如何将触摸事件分派(dispatch)到正确的组件,我尝试使用IgnorePointer并更改ignoring属性。class_SlideSheetStateextendsStatebool_ignoreScrolling=true;GestureDetector(onVerticalDragUpdate:(DragUpdateDetailsdetails){if(isDraggedUp){setState((){_ignoreScrolling=false});}//update

events - Flutter Google Calendar Api 列表事件

Flutter,谷歌日历APIv3https://pub.dartlang.org/packages/googleapis作品:Future>getEvents()=>calendarApi.events.list("primary",).then((Eventsevents){returnevents.items;}).catchError((e){print("errorencountered");print("${e.toString()}");});不起作用:DateTimestart=newDateTime.now().subtract(newDuration(days:10

events - Flutter Google Calendar Api 列表事件

Flutter,谷歌日历APIv3https://pub.dartlang.org/packages/googleapis作品:Future>getEvents()=>calendarApi.events.list("primary",).then((Eventsevents){returnevents.items;}).catchError((e){print("errorencountered");print("${e.toString()}");});不起作用:DateTimestart=newDateTime.now().subtract(newDuration(days:10

Unidbg中Hook和Patch

hook之前之后类似于xposedpatch两种方式,直接修改hex,以及指令转化hex(keystone将汇编指令转化为hex)hextoarm|armtohex推荐网站:https://armconverter.com/packagecom.dta.lesson5;importcom.github.unidbg.AndroidEmulator;importcom.github.unidbg.Emulator;importcom.github.unidbg.Module;importcom.github.unidbg.arm.HookStatus;importcom.github.unidb

git hook

hookhook翻译为钩子,简单说就是监听某个事件(操作),然后触发自定义逻辑在git中可以监听commit,push等操作,在操作之前或之后触发对应的hook,在hook中写自定义的逻辑,比如在提交之前做一些检查,检查未通过不允许提交下面这些是githook触发的时机其中蓝色方块是某些操作之后触发,它不会阻塞操作,就是执行一些额外的操作黄色和红色方块是某些操作之前触发,可以做一些检查,不满足条件会阻塞操作,区别在于黄色方块的操作可以跳过克隆一个仓库并显示隐藏的文件,可以看到仓库根目录下的.git文件夹中有提供了一些hook例子,这些hook默认不生效,去掉.sample后缀才会生效这些hoo

uniapp 开发微信小程序出现这个 Error in onLoad hook: “SyntaxError: Unexpected end of JSON input“

原因:由于JSON.parse无法识别某些url中的特殊字符比如&等特殊符号造成的。解决办法:页面A(JSON.stringify传参)messageInfo(item){uni.navigateTo({url:`/pagesA/pages/message/chat?info=${encodeURIComponent(JSON.stringify(item))}&type=2`})},页面B(JSON.parse接受参数)接收页面onLoad(option){letinfo=JSON.parse(decodeURIComponent(option.info))}

unicornHook原生hook

都知道unidbg是基于unicorn开发的;hook_add_new第一个参数是Hook回调,我们这里选择CodeHook,它是逐条Hook,参数2是起始地址,参数3是结束地址,参数4一般填null。这意味着从起始地址到终止地址这个范围内的每条指令,我们都可以在其执行前处理它。这一点的优点我很喜欢packagecom.hookInUnidbg;importcom.github.unidbg.AndroidEmulator;importcom.github.unidbg.Emulator;importcom.github.unidbg.Module;importcom.github.unidb