Published onMay 17, 2026否定式声明的脆弱性:为什么"App 不嵌入 X"会随一次依赖变更悄悄变成谎言React-NativeExpo隐私合规App-Store机制分析一行依赖把数据流变成现实,而隐私政策仍停留在旧声明——本文拆解"否定式合规声明"为什么是结构性脆弱的,以及为什么代码与声明必须在同一原子单元里变更。
Published onMay 8, 2026同一份 JS,两种 UX:跨平台抽象为什么不能假设呈现形态是常量React-NativeExpoSwiftUIiPad机制分析@expo/ui 的 BottomSheet 桥接到 SwiftUI 的 .sheet——同一份代码在 iPhone 是底部抽屉、在 iPad 是居中 form-sheet,presentationDetents 被忽略。这揭示了跨平台抽象的一条隐含前提。
Published onApril 29, 2026命中测试的几何前提:SwiftUI 容器为什么需要 contentShape 才能整体可点React-NativeExpoSwiftUI手势机制分析SwiftUI 只对可见 leaf 子视图做命中测试——这条几何前提如何让"挂在容器上的 onTapGesture"只有点到子视图才生效,以及为什么 modifier 顺序不能反。
Published onApril 22, 2026安全默认值的方向:keychainAccessible 为什么把"便利"设成了默认、把"安全"留给你React-NativeExpoSecureStore安全机制分析一个 build 不会报错、只有 review 能拦的选项——expo-secure-store 的默认 keychain 类如何把密码同步上 iCloud,以及"何时读"为什么是选类的决定性变量。
Published onApril 15, 2026事件流里区分"谁动的手":单标志位为什么注定输给多帧动画React-Nativereact-native-maps手势状态机机制分析当用户手势和程序化动画发出完全同构的事件、且一次动画发出多个事件时,"单事件标志位"为什么必然失效——以及为什么正确的抽象是时间窗口而非布尔。