CocoaPods私有库生成
发表于|更新于
|浏览量:
CocoaPods私有库生成
文章作者: 今是昨非
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 今是昨非的博客!
相关推荐
2022-09-28
iOS CreateML的使用
CreateML使用背景业务需求,想要通过拍照识别照片中指定物体的数量或者物体的种类。而这种物体的模型网上没有训练好的,需要从头开始。所以调研了苹果的createML的实现方案,具体操作如下: 需求是:通过拍照识别照片中指定物体的数量,实现方案大致有几种: 通过第三方平台,训练数据,生成模型,提供前端使用 自己搭建平台,训练数据,生成模型,提供前端使用 通过苹果的CreateML工具,训练数据,生成模型,供iOS使用或转换成其他模型使用 对比可以发现,通过苹果的CreateML工具,可以省去搭建平台的过程。下面来看看怎么使用CreateML。 使用CreateML的整体流程是: 有大量的样本 标注所有的样本 用这些样本训练生成模型 验证模型的识别率 测试模型效果 导出模型供使用 需求是通过拍照识别照片中指定物体的数量,所以对我来说样本就是照片,下面就来看下怎么生成CreateML训练需求的标注信息。 使用样本照片标注首先要有大量的样本照片,这里由于是调研测试,所以选取20张照片,照片来源是百度图片。。。麻烦的是照片标注,由于苹果CreateML训练需要指定格式的J...
2025-09-25
Xcode 26接入混元
背景上篇写了Xcode接入通义千问,发到腾讯云开发者社区提示引流,所以就再试试接入混元,顺便说一下,接入混元要比接入通义千问简单。 实现注册混元,得到免费资源包打开腾讯混元大模型_大语言模型_自然语言大模型- 腾讯云,点击产品控制台,注册并开通,会自动送体验的资源包。 然后选择接入管理,在里面使用OpenAI SDK方式接入,点击创建API KEY,如下图: 然后点击查看文档,接下来就可以在Xcode中添加了 Xcode添加混元的Provider打开Xcode 26,打开设置,选中”Intelligence”,点击添加,如下图 然后会进入输入信息界面,共有4个信息需要输入,URL、API Key、API Key Header、Description,如下图: URL:https://api.hunyuan.cloud.tencent.com/API Key:==你自己的APIKey==API KeyHeader: ==Authorization==Description: 这个名字自己定义 点击Save后,出现下面的界面说明成功了: 然后就选中对应的模型,可以...
2022-08-26
一次诡异的录音崩溃排查
背景上午突然有用户反馈,使用录音功能崩溃。起初以为是最近更新的APP新版本有问题,赶紧去排查。 排查首先在测试手机上,测试环境调试,发现并没有崩溃,长出了一口气,说明不是所有用户都有,不是新版本改出来的问题。 然后去听云后台看日志,发现崩溃的地方是初始化AVAudioRecorder的方法——[[AVAudioRecorder alloc] initWithURL:url settings:recordSettings error:&error];。很费解,只是简单的初始化方法,为什么会导致崩溃呢? 一开始猜测会不会是用户录音权限没开,导致开始录音的时候崩溃。尝试后发现如果权限关闭,在进入录音页面前就会提示权限未开启,去开启权限,并不能进入到录音步骤。 然后怀疑会不会是初始化的url为空,又或者机型不支持设置recordSettings中的某些参数?搜索后,发现有url为空崩溃的条目,所以这里大概率也是初始化的url为空。 继续排查,发现初始化的url,是本地的缓存文件夹中Audio文件夹,并且文件名字是取日期+时分秒用于避免重复,格式为yyyyMMdd_HHmmss...
2023-02-22
CABasicAnimation进入二级界面再回来不生效
背景发现之前同事写的某个界面有个动效, 起初进入的时候是生效的, 进入二级界面再返回动效就没了, 动画用的是CABasicAnimation, 添加在 layer 上面. 解决看代码没有问题, 毕竟第一次就生效了, 以为是在页面消失时做了什么操作, 查了之后发现, 页面消失时并没有操作. 再回过来看代码, 代码动画部分是在didMoveToWindow中实现的, 大致如下: didMoveToWindow方法在页面消失和出现的时候都会调用, 难道是添加多次导致不生效了, 改成只添加一次之后发现效果一样, 进入二级页面再返回就不生效了. 1234567891011override func didMoveToWindow() { layer.addSublayer(gradientLayer) let basicAnim = CABasicAnimation(keyPath: "animateLocation") basicAnim.fromValue = [xxx] basicAnim.toValue = [xx...
2024-03-16
Pod 私有库相互引用
私有库的相互引用文章是转载自OC和Swift混合开发(Pod私有库的相互引用),在这里记录一下,方便以后查看。 概述:该文档主要介绍OC和Swift混合开发相互调用,包括3大类情况和12种具体情形。 三大类情况: 主工程内的混合互调, 主工程和Pod三方库之间的混合互调, Pod三方库和其他Pod三方库之间的混合互调。 十二种情形: 主工程内的OC 调用 主工程内的OC:#import “NSObject.h” 导入头文件直接调用。 主工程内的OC 调用 主工程内的Swift: 1. 主工程中创建.pch文件,在TARGETS -> Build Setting -> 搜索pch -> 设置.pch文件的路径, 2. 在.pch文件中添加 : 例如:#import “xxxxx_Swift.h” (该文件命名规则为:”工程名_Swift.h”,该文件为系统自动生成) , 3. 编译之后才可自动识别需要调用的Swift的文件 。 主工程内的OC 调用 OC的Pod三方库: #import ...
2024-07-11
SafariFreeMedium插件
背景在阅读上篇 Flutter状态管理中,引用的几篇文章都需要是Medium 会员才能查看的。没有付费的每个月免费只能查看几次,所以就想有没有不付费查看这个的方法,就去搜索了一下。 实现搜索之后,找到了这篇Freedium · GitHub,查看后发现里面有个简单的方法,就是把 host 替换为````freedium.cfd然后重定向。 刚好自己有账号,为了在 Safari 中便于使用,就自己写了一个插件,效果如下: 参考 Freedium · GitHub
公告
This is my Blog