今是昨非

今是昨非

日出江花红胜火,春来江水绿如蓝

iOS

RxSwfit 使用
RxSwift 常用方法使用,这里记录一下。 RxSwfit 实现搜索# distinctUntilChanged的作用是,相邻的重复事件不产生新的事件,所以搜索中使用distinctUntilChanged可以保证只有每次触发的搜索都是不同的字符串…
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover

短信过滤 APP 开发

本文发布在搜狐技术产品 - 短信过滤 APP 开发 一直想开发一个自己的短信过滤 APP,但是一直没有具体实施,现在终于静下心来,边开发边记录下整体的开发过程。 垃圾短信样本# 遇到的第一个问题是,既然要过滤垃圾短信,那首先要识别哪些是垃圾短信?如何识别呢? 参考之前训练识别钢…
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover

iPA重签名 + 香色闺阁、微信重签名实战

背景# 换手机之后,原来的香色闺阁不能下载,转移的时候就丢失了。又最近看到有人截屏 iPhone 上装了两个微信,一个是自己重签名的;想到自己有开发者账号,但是还没试过重签名 APP,是不是可以通过重签名来安装香色闺阁,以及实现多开微信? 步骤# 说干就干,首先从简单的开始…
cover

Xcode15 小组件兼容

背景# 升级到 Xcode15 后,运行小组件,会出现WIDGET_BACKGROUND_API_ADOPTION_PROMPT的提示,如下图: 解决# 创建View_Extensions.swift,代码如下: Copy import SwiftUI…
iOS16.4 Webview 不能用Safari调试
背景# Xcode 升级到 14.3 后,模拟器是 iOS 16.4 的,想通过 Safari -> Developer -> Web Inspector 查看,结果发现查看不了 修改# 一开始以为是设置 Safari 中 Advanced 没开启,去查看后,发现开关已开启。…
cover
cover

Xcode 创建项目默认文案修改

背景# 最近需要修改 Xcode 创建项目默认文案修改,就是每次创建最上面默认生成的注释说明。想起来之前看原 Raywenderlich(现在是 Kodeco)网站下载的代码时,每个已存在的文件里都有一长串自定义的说明,而且新建文件的时候也是带有同样的自定义的说明,有过疑惑…
cover
cover

Xcode 14.3 Archive 失败

背景# 由于手机升级了 iOS 16.4,想要真机调试,Xcode 也要升级到 14.3, 于是就升级了一下。 升级 Xcode 14.3 之前,Debug 和 Archive 都没问题;升级 Xcode 14.3 之后,Debug 没问题,Archive 就报错。错误信息如下:…
cover
cover
cover
cover
cover
cover
cover

导出iPhone所有短信到Excel

导出 iPhone 所有短信到 Excel# 打算找一些短信,用于作为样本训练识别。 一开始打算网上找到垃圾短信样本,但找了好久没找到,于是就想到用自己和家人手机里的短信,毕竟手机里短信一般不删除,也有小几千条,而且垃圾短信、推销、广告之类的应有尽有。 所以问题就变成了…
CABasicAnimation进入二级界面再回来不生效
背景# 发现之前同事写的某个界面有个动效,起初进入的时候是生效的,进入二级界面再返回动效就没了,动画用的是CABasicAnimation, 添加在 layer 上面. 解决# 看代码没有问题,毕竟第一次就生效了,以为是在页面消失时做了什么操作,查了之后发现…
iOS界面黑白实现
背景# iOS APP 界面黑白效果实现调研整理,总的来说网上目前有下面几种方法: 针对 H5 网页:注入 js 代码 针对 APP 原生界面: 针对图片和颜色单独设置 hook UIImageView 的setImage方法,添加 UIImage 的Category,生…
部网络货运信息交互系统位置信息插件SDK接入总结
背景# APP 接入部网络货运信息交互平台,这里记录一下接入想法和过程。 实现# iOS SDK 提供的方法,共有下面 6 个 init start send pause restart stop 看起来很简单,但是需要考虑 SDK 某个方法可能会失败…
cover

使用WidgetKit打包出的APP低版本崩溃

背景# APP 添加了 WidgetKit 功能,APP 最低版本是 10.0,用户反馈安装后,打开就闪退,这里记录一下原因: 解决# 排查后发现用户手机系统版本较老,低于 iOS 14,由于手头没有低版本的设备,通过Xcode 12.x 添加 iOS 10.x 模拟器添加了…
Xcode14编译的APP低版本崩溃
背景# 测试说 iOS 12 的手机上安装 Xcode14.0.2 导出的新包后,打开就崩溃,但是在系统版本高的手机上就没有问题。 调试后发现,崩溃日志是dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics…
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover

iOS CreateML的使用

背景# 业务需求,想要通过拍照识别照片中指定物体的数量或者物体的种类。而这种物体的模型网上没有训练好的,需要从头开始。所以调研了苹果的 createML 的实现方案,具体操作如下: 需求是:通过拍照识别照片中指定物体的数量,实现方案大致有几种: 通过第三方平台,训练数据…
cover

Xcode 14新建项目 Pod init失败

背景# 使用 Xcode 14.0 (14A309) 新建了一个项目,然后运行Pod init,就报错,[Xcodeproj] Unknown object version (56). (RuntimeError)和can't modify frozen String…
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover

手把手教你创建widget2

接上篇iOS Widget,这里介绍下 WidgetBundle 的用法和怎么做一个支付宝类似的 widget,上篇里把WidgetBundle写成了WidgetGroup,我的错。 WidgetBundle 的用法# 再来回顾一下什么情况下使用 WidgetBundle,上…
cover

Xcode14编译失败修改

背景# 升级 Xcode 14 后,项目编译失败修改,共修改了两种编译错误: 一种是 bundle code sign error,Xcode 14 needs selected Development Team for Pod Bundles 一种是Module…
cover

iOS 编译时间优化

背景# 目前 App 项目不大,但是清空后重新编译时间需要 200 多秒,感觉不太合理,所以,就着手排查了一下。 通常的编译时间优化都是分为三个部分 Xcode 编译设置的优化 代码或函数编译时间的优化 三方库编译时间的优化 这里就根据上面三个部分来一一排查。 实现# Xc…
Ownership of this blog data is guaranteed by blockchain and smart contracts to the creator alone.