
iOS开发
xyccstudio
这个作者很懒,什么都没留下…
展开
-
iOS17使用safari调试wkwebview
但是这个功能突然到了iOS17之后发现不能用了,还以为又是苹果搞得bug,每次升级都有一些问题,可能要过一段时间才能修复。但是过了一段时间还是老样子,查了一下发现这个又是为了安全做的一层限制。之前开发wkwebview的页面的时候一直使用safari调试,毕竟jssdk交互还是要用这个比较方便,虽说用一个脚本插件没问题。想要调试还必须把这个设置给打开,行吧行吧。改完了果然又能够愉快的调试了。首先打开设置,然后选择safari,在选择高级设置,打开网络检查器。顺便回顾一下手机端safari的配置。原创 2024-01-30 13:13:58 · 4202 阅读 · 0 评论 -
App更换图标
京东淘宝的每到618或者双十一的时候,app图标都会贴合相关主题更换一下,但是那个时间段app也没有升级,所以说肯定是有一个配置能够更改app的图标。查了一些文档,发现了如下的方法。原创 2024-01-08 13:04:08 · 821 阅读 · 0 评论 -
iOS市场生成多分辨率图标
上传一个图片然后自动下载以上尺寸的图标,这样就能直接拖到xcode里边就完事了。毕竟有的时候图标的颜色也要调整几次达到现实效果要求。手动搞起来还是不太高效,而且各种命名操作起来也比较复杂。因此搞了个页面来自动化完成这个操作。由于是苹果图标嘛,紧跟时代,给加上了一个iPhone15的钛合金按钮。看上去还是非常亮眼的~由于手机及iPad需要的分辨率图片太多了,分辨率还比较杂,看了看有以下几种尺寸。有需求的小伙伴赶紧来试试吧~原创 2024-01-05 10:49:48 · 612 阅读 · 0 评论 -
xcode 修改 target 中设备朝向崩溃
而且这个更离谱的是如果使用的是xcode自动创建的info.plist中添加 NSLocationTemporaryUsageDescriptionDictionary 这个配置xcode就直接崩溃了。而且操作的时候切换plist不会立刻保存,最好执行一下保存在修改设备朝向,修改完了之后再把这个权限配置再给配置上。就又翻腾了半天plist中的各种配置项,再把所有的用户权限提示相关的东西之后,发现有这么个配置。之后想了想,感觉这个应该还是跟xcode的配置有关系,不过改动的地方好像也只有plist。原创 2023-12-14 08:56:11 · 430 阅读 · 0 评论 -
xcode iOS 17.2 not install, Simulator 手动安装
xcode iOS 17.2 not install, Simulator 手动安装原创 2023-12-13 09:44:53 · 5992 阅读 · 5 评论 -
MacBook续命,XCode硬盘占用问题
MacBook续命,XCode硬盘占用问题原创 2023-11-30 09:53:34 · 1076 阅读 · 0 评论 -
ARKit增加一个盒子
# ARKit增加一个盒子原创 2023-11-24 16:03:09 · 253 阅读 · 0 评论 -
苹果企业账号申请思考
苹果企业账号申请思考原创 2023-11-24 13:22:47 · 130 阅读 · 0 评论 -
WKWebView iOS17设置UserAgent
WKWebView iOS17设置UserAgent原创 2023-10-25 11:41:50 · 3955 阅读 · 1 评论 -
xcode Simulator 手动安装
iOS 17 Simulator 下载安装原创 2023-10-23 14:53:25 · 1105 阅读 · 0 评论 -
iOS自定义下拉刷新控件
iOS自定义下拉刷新控件原创 2023-08-18 11:24:26 · 917 阅读 · 0 评论 -
UIColor使用hex方式创建(扩展)
UIColor使用hex方式创建(扩展)原创 2023-08-16 10:23:58 · 282 阅读 · 0 评论 -
苹果三方登录,校验identityToken方式,golang服务端处理
苹果登录,校验identityToken方式原创 2023-08-09 15:14:21 · 1899 阅读 · 0 评论 -
UITabBarController上边的线,iOS15
UITabBarController上边的线,iOS15原创 2023-08-07 13:54:37 · 441 阅读 · 0 评论 -
iOS transform rotate总结
transform旋转总结原创 2023-07-25 11:35:02 · 1401 阅读 · 0 评论 -
swift简单弹幕例子,仿哔哩哔哩
swift简单弹幕例子,仿哔哩哔哩原创 2023-07-21 15:36:06 · 799 阅读 · 0 评论 -
UILabel左上角对齐
UILabel左上角对齐原创 2023-07-13 13:30:40 · 260 阅读 · 0 评论 -
agvtool new-marketing-version 不生效问题
agvtool new-marketing-version 不生效问题原创 2023-04-04 11:28:54 · 432 阅读 · 0 评论 -
SwiftUI 实现360查看立体图片及视频
swiftui 实现360查看立体图片及视频原创 2023-01-31 15:28:09 · 347 阅读 · 0 评论 -
swiftUI coreml deeplabv3去除背景
swiftui deeplabv3去除背景,coreml,深度学习,深度学习模型原创 2023-01-17 16:11:06 · 1114 阅读 · 0 评论 -
iOS tableview左滑编辑,长按拖动排序
iOS tableview左滑编辑,长按拖动排序原创 2022-12-26 11:23:19 · 2472 阅读 · 0 评论 -
iOS持续集成
ios cid 持续集成 发布原创 2022-11-23 14:56:45 · 642 阅读 · 0 评论 -
Alamofire Async Await
Alamofire Async Await原创 2022-11-16 16:12:37 · 610 阅读 · 0 评论 -
swift 图像蒙版,image mask
swift image mask, 图像蒙版原创 2022-09-19 15:57:34 · 920 阅读 · 0 评论 -
自动生成 iOS 对应型号名称
自动生成 iOS identifier 对应型号名称原创 2022-07-07 14:02:27 · 652 阅读 · 0 评论 -
Swift日志输出方案
翻了好多的资料发现了一种比较方便的打印日志的方式:public func print(_ items: String..., filename: String = #file, function : String = #function, line: Int = #line, separator: String = " ", terminator: String = "\n") { #if DEBUG let pretty = "===### \(URL(fileURLWithPa原创 2022-01-06 09:19:50 · 1716 阅读 · 2 评论 -
xcode编译版本号、bundleID自动化方案
之前比较懒,也是思想上比较懒,没有解放生产力,一次偶然的上线问题把这个事情给安排上了。前情提要项目分了两个上线的target,一个是主项目,一个是widget。主项目widgetBundleID(测试环境)com.henshuxueTestcom.henshuxueWidgetTest显示名(测试环境)很数学测试很数学测试build(测试环境)249249BundleIDcom.henshuxuecom.henshuxueWidget显示名原创 2021-11-08 14:22:43 · 1355 阅读 · 0 评论 -
swift5 在 objectc 中使用 swift对象
为了慢慢的把老项目迁移到swift中,要慢慢的替换其中的文件,就难免涉及到在objectc中调用swift的情况。以下举个栗子。假设创建了一个项目叫做,Linlong在项目中创建一个MaKe.swift文件,类定义如下:@objcMembersclass MaKe : NSObject { static let name = "make"}然后在一个objectc的文件里边使用这个类#import "Linlong-Swift.h" // 这个是引入 <ProductName>原创 2021-10-09 13:59:50 · 264 阅读 · 0 评论 -
老mac安装xcode日常,清理xcode文件
mac比较老了,还是256G的硬盘,导致现在更新xcode的时候要日常清理一下xcode文件才能更新。为了简化操作,每次查也不是太方便,各种查找总结了以下脚本,一键清理好升级。# 清理xcode缓存文件echo "清理xcode缓存文件"rm -rf ~/Library/Developer/Xcode/DerivedData/*# 清理archives,使用的时候要注意是否有必须要保留的archivesecho "清理archives"rm -rf ~/Library/Developer/Xc原创 2021-09-24 09:29:43 · 380 阅读 · 0 评论 -
友盟稳定性分析dSYM解析看不到关键信息,无法定位问题
最近崩溃率有点高,发现是个特定版本才会出现的问题,看解析出来的文本无法定位到是哪行出的问题,而且模拟器又不支持安装那个版本了,手头也没有那个版本的真机,没办法只能想想其他的解决办法了。翻了很多文档之后发现有个xcode的工具特别有用,能解决这个问题。文档链接使用方法如下:在友盟上点击原始日志,下载,并打开,找到 Binary Images 里边基本上是第一行,记录了基地址和当前的架构,先记下来。图中基地址是 0x46000 架构是 armv7然后看一下崩溃堆栈,记录一下要解析的偏移地址,图中原创 2021-09-10 17:55:27 · 288 阅读 · 0 评论 -
老版本iOS simulator链接
下载链接如下,下完了放到~/Library/Caches/com.apple.dt.Xcode/Downloads目录下。iOS 14.3https://devimages-cdn.apple.com/downloads/xcode/simulators/com.apple.pkg.iPhoneSimulatorSDK14_3-14.3.1.1611873653.dmgiOS 14.2https://devimages-cdn.apple.com/downloads/xcode/simulators原创 2021-09-08 10:40:09 · 14689 阅读 · 1 评论 -
iOS单元测试 Failed toload module 问题
开发过程中遇到了一个iOS单元测试 Failed toload module 问题。在需要加载项目依赖的时候,报错找不到模块:@testable import XiangMu提示下图:翻了半天文档,开始是以为项目里边有个下划线导致的,然后把项目中所有的下划线都给去掉了,不过还是不行。。。翻了好多文档也没有相关的提示。只好根据项目配置在排查看看了。功夫不负有心人,终于发现原来是测试项目的bundleID同主项目的不一致导致的。。。在target 配置中的 Build Settings 搜 p原创 2021-09-02 10:41:21 · 1507 阅读 · 0 评论 -
xcode打包,image assets图片无法显示问题
xcode打包,image assets图片无法显示,起初还以为是由于xcode版本的问题导致的bug,怀疑xcode打包image assets的时候没有把图片打进去。由于包是直接上传app store的,因此直接在finder中查看包内容。Assets包的路径为xx(右键finder中打开的文件夹位置)/Products/Applications/xxx.app/Assets.car找了个cartool工具解压查看Assets,看到里边还有这个图片资源。嗯。。。再翻翻代码,发现Image A原创 2021-08-13 15:47:30 · 1748 阅读 · 0 评论 -
xcode上传app store下载符号表
xcode版本:12.5.1上传完app store之后一般接入了友盟统计,这个时候都要上传一个符号表。由于是直接上传的没有保存到本地,之前一般下载如图:不过现在居然报错了,没法下载,这不麻烦了吗。问了一下同事,现在都直接右键在finder中查看包内容有个文件夹叫 dSYMs。目前只能从这个地方拷贝出来上传了。...原创 2021-08-10 13:42:25 · 870 阅读 · 0 评论 -
Apple Foundation
访问基本数据类型、集合和操作系统服务,以定义应用程序的基本功能层。概述Foundation框架为应用程序和框架提供了基本功能层,包括数据存储和持久化、文本处理、日期和时间计算、排序和过滤、和网络。Foundation定义的类、协议、和数据类型遍及macOS,iOS,watchOS和tvOS SDKs。主题基础数字、数据和基本值Cocoa使用的基本值和其他基本类型字符串和文本创建和处理Unicode字符字符串,使用正则表达式模式查找,并对文本执行自然语言分析。集合(Collections)原创 2021-07-21 14:11:00 · 137 阅读 · 0 评论 -
swift lazy 线程不安全
起因是遇到了一个页面不刷新的问题,后来经过调查是由于 lazy 变量被重入两次导致刷新的界面跟组件持有的界面不是同一个导致的。翻阅了一下swift的文档发现有一行小字说明。。。参考地址NoteIf a property marked with the lazy modifier is accessed by multiple threads simultaneously and the property hasn’t yet been initialized, there’s no guarante原创 2021-07-20 09:52:04 · 463 阅读 · 1 评论 -
swift init coder nib 记录
平时写代码的时候总是能看到,不过倒是没有深究,最近来做了一下override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) { super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)}required init?(coder: NSCoder) { super.init(coder: coder)}...原创 2021-07-19 15:06:01 · 296 阅读 · 0 评论 -
swift5 接入内购全流程
公司需要对接内购,顺便记录一下过程。填写苹果协议app store connect 协议填写其中的付费 App,填写点公司名称、公司简介、公司帐号、公司之类的。由于已经填写过了无法截图,可以去搜搜其他人的分享。银行账户: 填的的时候注意银行帐号选择中国之后就是国内银行的代码了,选择每个地区下边的银行代码都是会变的。另外银行的受益人需要填写 英文 这个比较坑,名在前姓在后。报税表: 参照别人的截图勾选一下就行,就是本着能不填就不填的原则,稍微写了点。另外那个报税表不需要下载填写就行。联系信息:原创 2021-07-05 13:56:09 · 4694 阅读 · 0 评论 -
Alamofire 5.0 双向认证
双向认证分为两方向的认证:客户端认证服务端;服务端认证客户端;以下逐个说明:认证服务器认证服务器分为:DefaultTrustEvaluator,使用默认的验证方式,验证证书的有效性,证书信任链那套RevocationTrustEvaluator,验证证书是否被吊销PinnedCertificatesTrustEvaluator,验证证书是否同本地的一致,可以是自签证书PublicKeysTrustEvaluator,验证证书的公钥,可以是自签证书,不过这个有个好处就是不用关心证书的原创 2021-05-26 13:03:58 · 1454 阅读 · 0 评论 -
app store 下载大小、安装大小
偶尔想到app瘦身相关的事情,查看了一下test flight里边的包大小,发现应用分为下载大小和安装大小,而且还区分设备型号,思考了一下为啥。。。翻阅了一下历来的wwdc,发现从iOS9之后支持了一个新的技术,app thinning大体的意思如下几个因素:不同设备型号的需要的资源(如图片等)不同不同设备型号的硬件架构也不同,编译产物也是不一样的如果说这些都行都放到一个下载包里边会比较大,因此根据不同的设备型号拆成各种裁剪后的包,这样下载包就小了,改善了用户体验参考链接:3. http原创 2021-05-08 11:04:29 · 1144 阅读 · 3 评论