我在WebView
中打开了带有日期字段的HTML,但在iOS 14
上,当用户点击按钮reset
时,我发现崩溃
Thread 1: EXC_BAD_ACCESS (code=2, address=0x36b90b7b50)
#0 0x00000001be6a60f8 in objc_msgSend ()
#1 0x00000001b680073c in -[WKDateTimePicker setDateTimePickerToInitialValue] ()
#2 0x00000001b6800134 in -[WKDateTimePicker reset:] ()
我认为是Apple Crash
,但我如何解决这种情况?也许有一种方法可以修复HTML
,或者在iOS
侧屏幕上做一些事情,例如
多一条链路
我用swizzling
方法解决了这个问题
let originalSelector = #selector(app.sendAction(_:to:from:for:))
let swizzledSelector = #selector(app.log_sendAction(_:to:from:for:))
并且在log_sendAction
中i检查
- 如果
iOS Version
.可用(14..<15( - 并且如果
action: Selector
.包含(find:"reset:"( - 并且如果
to target: Any?
.包含(find:"WKDateTimePicker"( - 然后skeep调用原始
originalSelector