自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(253)
  • 资源 (3)
  • 收藏
  • 关注

转载 iOS 删除float小数点后多余的0,如:10.020000 修改成10.02

删除小数点后面多余的0,比如90.00100可以转换成90.001。新建一个NSString的分类。

2024-06-27 17:11:16 56

转载 Apple账号密码自动填充

这个功能已经推出比较久了,在WWDC17上,苹果发布的iOS11,其中带来了App密码自动填充的这一新的API。这一功能的实现能够让用户更方便的管理密码,更容易在我们的应用上登录。密码自动填充简化了iOS应用和网页的登录和帐户创建任务。只需轻点几下,您的用户就可以创建并保存新密码或登录现有帐户。用户甚至不需要知道他们的密码;系统处理一切。这种便利性增加了用户完成应用程序登录或注册流程并更快地开始使用您的应用程序的可能性。此外,通过鼓励用户选择唯一的强密码,您可以提高应用的安全性。

2024-06-03 14:06:45 66

转载 iOS 获取设备的唯一标识

iOS设备唯一标识的方案

2024-04-25 15:29:38 658

原创 苹果审核警告:ITMS-91053: Missing API declaration

苹果审核隐私声明

2024-04-24 10:31:43 1843

转载 dyld: Library not loaded: /System/Library/Frameworks/SwiftUI.framework/SwiftUI 的错误

当回部署到不包含 SwiftUI 框架的操作系统时,将 -weak_framework SwiftUI 标志添加到其他链接器标志设置在构建设置"选项卡中。我在所有正确的位置使用 @available(iOS 13.0, *) 并且没有编译器警告并且该应用程序在 iOS 13 上完美运行。一切正常,直到我在 iOS 12 设备上运行它.该应用程序立即崩溃,我收到的警告说无法加载 SwiftUI.我决定在我的应用中使用 SwiftUI 实现一些视图.该应用向后兼容 iOS 12.

2024-02-01 15:50:48 595 3

转载 xcode15编辑完后的项目,在iOS12 跑不起来

【代码】xcode15编辑完后的项目,在iOS12 跑不起来。

2024-01-26 11:43:57 404

转载 ios中相机UIImagePickerController按钮文字为中文

找到info.plist的Localization Native Development Region,把en(或者$(DEVELOPMENT_LANGUAGE))改为zh-Hans。UIImagePickerController是一个简单的获取照相和相册中图片的工具,是系统自有的,但是默认按钮都是英文的,为此我们需要修改为简体中文。

2023-12-08 11:53:00 290

转载 组件化遇到的问题Your configuration specifies to merge with the ref ‘refs/heads/master‘ from the remote, b...

没有勾选这一栏,造成仓库内是空的。

2023-10-23 16:37:20 1625

转载 iOS Xcode 15 Sandbox: rsync(xxxx) deny(1) file-write-create

在Xcode 新建项目并pod install后,run的时候,遇到了如下的问题:cd??

2023-10-20 13:57:35 7848

转载 pod lib create xx 遇到 Ignoring ffi-1.15.5 because its extensions are not built

【代码】pod lib create xx 遇到 Ignoring ffi-1.15.5 because its extensions are not built。

2023-10-20 11:05:59 654

原创 JS常见的事件

code 是指键盘上某个按键对应的code码。key 是指code上对应的值。

2023-07-16 18:31:11 306

转载 mac 修改python默认版本

参考文档:https://blog.csdn.net/m0_46191695/article/details/126005932。

2023-07-05 11:01:24 852

原创 React Native 集成到iOS原有的项目上

需要注意的是,官方有个提示了一个注意事项,如下:4.4 代码集成4.4.1 创建一个 index.js 文件4.4.2 在index.js中添加你自己的 React Native 代码4.4.3 在iOS项目添加交互的代码上述的代码中,还需要在iOS项目中,添加一个(可以随便取名字)类:4.4 设置info.plist, 添加 App Transport Security 例外4.5 开启服务4.6 在xcode执行代码打开xcode,如果按住 执行项目。

2023-07-01 23:16:50 2602 3

原创 React Native 环境配置 遇到的问题记录

然后Preferences->在标签中选择Components。然后在列表中安装任何一个(或多个)可用的模拟器。解决过程就是,我的watchman 没安装好,于是卸载,重新安装。修改hosts, hosts文件位置:/etc/hosts。(这个我一直提示错误,但是我忽略不管了)其中 “AwesomeProjec”是项目名。将下面的三个ip地址添加上。

2023-06-23 19:18:51 1384 1

原创 iOS 制作私有库framework + 图片资源的使用

将framework拖到需要使用的工程目录下,为了方便管理添加的framework库,我在工程目录下创建了一个“Library”文件夹,我添加的路径,如下图。如果代码中引用到了其他的三方库,例如AFN, Masonry等等,那么也需要在framework的工程中集成过来,保证能编译成功。Framework中 图片的获取,注意需要区分@2x.png 和 @3x.png , 图片的名称必须写全,否则会找不到图片的。在自动生成的IGLiveSDK的.h 文件中,加入需要暴露的头文件, 格式应该是用"“

2023-06-22 17:42:09 2591

原创 将ipa包上传到服务器供测试人员下载

一个是上架AppStore一个是放到自己的http/https服务器上,通过自己的网页下载。上架AppStore可能会遇到一些限制,审核严格,过程坎坷,这里主要介绍如何放到自己的http服务器上以供外部玩家进行下载安装ipa。注意,必须使用企业证书打的ipa包或者”AH-hoc 打的包“才可以通过自己的http/https服务器下载安装。

2023-06-02 18:14:20 1062

原创 flutter_学习记录_03_通过事件打开侧边栏

实现类似这样的侧边栏的效果:可以用Drawer来实现。

2023-05-28 18:09:39 347

原创 flutter_学习记录_02底部 Tab 切换保持页面状态的几种方法

IndexedStack 和 Stack 一样,都是层布局控件, 可以在一个控件上面放置另一 个控件,但唯一不同的是 IndexedStack 在同一时刻只能显示子控件中的一个控 件,通过 Index 属性来设置显示的控件。IndexedStack 来保持页面状态的优点就是配置简单。IndexedStack 保持页面状 态的缺点就是不方便单独控制每个页面的状态。

2023-05-28 10:29:01 1293

原创 fullter 学习记录_01_插件整理

flutter 插件的整理

2023-05-21 20:16:36 697

原创 算法题记录

解释:你只能交换 s[0] = ‘a’ 和 s[1] = ‘b’ 生成 “ba”,此时 s 和 goal 不相等。解释:你可以交换 s[0] = ‘a’ 和 s[1] = ‘b’ 生成 “ba”,此时 s 和 goal 相等。解释:你可以交换 s[0] = ‘a’ 和 s[1] = ‘a’ 生成 “aa”,此时 s 和 goal 相等。步骤 2:剩下 4 个数字,所以将它们分成两个含 2 个数字的块。给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。

2023-03-28 22:58:20 499

原创 iOS-发布代码到cocoapods上

前言不知道你们是否好奇过,SDWebImage的代码,为什么podfile中配置一下,然后pod isntall就可以下载下来?我们应该如何才可以开发一个可以用cocoapods管理的开源库?一、 原理从上图来看,大概需要了解这几个流程:我们的代码,需要push 到 trunk库中;trunk 会更新到 github的specs repo库更新后,我们才能用pod install 安装我们push上去的代码。二、过程2.1 创建工程用命令行进入工程要创建的位置cd /Us

2021-02-22 20:36:01 713

原创 05-网络分层之网络层了解

一、网络层网络层数据包(IP数据包,Packet)由首部和数据两部分组成。其中数据很多时候是从传输层传递下来的数据段(Segment)。网络层的首部结构如下图:#二、网络分层的首部2.1 首部-版本占4位,即上图的 0-4之间,存放的是网络层的首部版本的值0b0100:表示IPv40b0110:表示IPv62.2 首部-首部长度表示整个网络层的首部的总长度,就是上图中(20个字节)的固定长度+可变部分(一般可变部分都是没有值的)一般首部长度占用4位,也就是从上图中4-8之间

2020-11-29 19:16:04 888

原创 04-网络分层

在了解物理层之前,先记录一个问题。为什么不同局域网通信时,第一个包被丢弃的原因?如果把数据通过路由器与不同网段通信时,一般第一个包会被丢弃;因为第一次把数据发送到路由时,路由不知道目标ip地址的MAC地址;那么路由就需要先通过ARP协议查找目标IP地址的MAC地址;但是路由器会忙不过来,因此会先把第一包丢弃,先处理查看目标IP地址的MAC地址;查找到目标IP地址的MAC地址后,路由器保存下来;但是因为第一包已经被丢弃了,所以会超时;但是IP会发送4次请求,那么到了第二次之后的包,因为路由已经知

2020-11-22 17:32:28 229

转载 OC --利用OSS图片云存储解决图片缩放的问题

最近项目中使用阿里云OSS云存储解决方案来处理图片, 根据需要, 需要在OSS图片的全路径URL上拼接缩放等参数, 来限定在不同手机机型上面的显示大小和清晰度, 为此, 我们暂且封装了OSS图片存储缩放处理的几个方法, 上传到cocoapods 公共库,方便调用一 OSSImageMaker 简单介绍采用链式调用, 调用更简单目前仅仅实现了Resize图片的缩放根据iOS不同设备自动转换@2x和@3x的计算, 比如Frame 100 * 200 的imageView, 经过处理后会返回一张 在2

2020-11-13 17:34:13 1104

转载 charlse抓包和Mock数据

1. 安装charlse百度搜索charles,第一个地址官方链接了:https://www.charlesproxy.com如果没安装java环境,首次进入charles会提示需要安装java包,下一个java包就可以了。安装后,长这样的。2.设置网络a.进入系统偏好设置中的网络,查看当前的ip地址b、将移动设备和电脑设备设置为同一个网络c、设置移动设备的网络代理进入无线局域网的高级设置页面,找到HTTP代理字样。选中手动代理,并在服务器中填自己电脑查到的ip地址,然后把端口调8

2020-11-07 21:47:48 704

转载 05-核心动画了解之变换和专用图层

5. 变换很不幸,没人能告诉你母体是什么,你只能自己体会 – 骇客帝国在第四章“可视效果”中,我们研究了一些增强图层和它的内容显示效果的一些技术,在这一章中,我们将要研究可以用来对图层旋转,摆放或者扭曲的CGAffineTransform,以及可以将扁平物体转换成三维空间对象的CATransform3D(而不是仅仅对圆角矩形添加下沉阴影)。5.1 仿射变换在第三章“图层几何学”中,我们使用了UIView的transform属性旋转了钟的指针,但并没有解释背后运作的原理,实际上UIView的tra

2020-10-31 21:21:44 779

转载 04-ios核心动画了解之图层几何学

核心动画系列:03-ios核心动画了解之图层[接:03-ios核心动画了解之图层]3. 图层几何学不熟悉几何学的人就不要来这里了 --柏拉图学院入口的签名在第二章里面,我们介绍了图层背后的图片,和一些控制图层坐标和旋转的属性。在这一章中,我们将要看一看图层内部是如何根据父图层和兄弟图层来控制位置和尺寸的。另外我们也会涉及如何管理图层的几何结构,以及它是如何被自动调整和自动布局影响的。3.1 布局UIView有三个比较重要的布局属性:frame,bounds和center,CAL

2020-10-31 17:10:13 191

转载 03-ios核心动画了解之图层

1. 图层树1.1图层的树状结构巨妖有图层,洋葱也有图层,你有吗?我们都有图层 – 史莱克Core Animation其实是一个令人误解的命名。你可能认为它只是用来做动画的,但实际上它是从一个叫做Layer Kit这么一个不怎么和动画有关的名字演变而来,所以做动画这只是Core Animation特性的冰山一角。Core Animation是一个复合引擎,它的职责就是尽可能快地组合屏幕上不同的可视内容,这个内容是被分解成独立的图层,存储在一个叫做图层树的体系之中。于是这个树形成了UIKit以及在

2020-10-31 16:26:55 238

原创 01-动画的了解之CALayer

1.CALayer1.1 CALayer的了解在 iOS框架中,你能看得见摸得着的东西基本上都是UIView,例如按钮、文本、输入框、图标等都是UIView。其实UIView之所以能显示在屏幕上,是因为它内部有一个图层;在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个图层:@property(nonatomic,readonly,strong) CALayer *layer; 当UI

2020-10-29 11:21:52 357

原创 00-UIGraphics

Quartz 2D的概述Quartz 2D是一个二维绘图引擎,同时支持 ios 和 Mac系统。Quartz 2D的应用范围:绘制图形:线条、三角形、矩形、圆、弧等;绘制文字绘制\生成图片(图像)读取\生成PDF截图\裁剪图片自定义UI控件Quartz 2D 在ios开发中的价值为了便于搭建美观的UI界面,ios提供了UIKit框架,里面有各种各样的UI控件,例如UILabel、UIImageView、UIButton等;利用UIKit框架提供的空间,拼拼凑凑,能搭建和实现一些简单

2020-10-28 10:22:00 207

转载 探讨iOS 中图片的解压缩到渲染过程

一.图像从文件到屏幕过程通常计算机在显示时是CPU与GPU协同合作完成一次渲染。接下来我们了解一下CPU/GPU等在这样一次渲染过程中,具体的分工是什么?CPU: 计算视图frame,图片解码,需要绘制纹理图片通过数据总线交给GPUGPU: 纹理混合,顶点变换与计算,像素点的填充计算,渲染到帧缓冲区。时钟信号:垂直同步信号V-Sync / 水平同步信号H-Sync。iOS设备双缓冲机制:显示系统通常会引入两个帧缓冲区,双缓冲机制对于应用来说,图片是最占用手机内存的资源,将一张图片从磁盘中加

2020-10-21 11:56:03 234

原创 OC-AutoRelease的了解

1.前言随着Xcode的发展,我们已经不需要自己手动管理OC对象的引用计数了;编译器在编译的时候会根据环境上下文帮我们自动添加上管理的代码。创建一个项目,我们把环境切换到MRC下,看看如果不自己手动管理内存对象会怎么样。如下图,新建一个项目,把环境切换到MRC下:新建一个Person的类,添加如下的代码:-------.h-----------@interface Person : NSObject@property (nonatomic, copy) NSString *name;

2020-10-19 14:03:40 348

原创 OC-主线程调dispatch_semaphore_wait的坑,线程会卡死

我们都知道线程同步方案中dispatch_semaphore是一个很不错的选择,但是dispatch_semaphore如果在线程中等待,另外开启线程再回到主线程释放信号,就会出现信号卡死的情况。信号量的使用简单回顾一下信号量的使用,API如下:// 创建信号量,参数:信号量的初值,表示最多几个资源可访问。dispatch_semaphore_create(信号量值)//等待信号量dispatch_semaphore_wait(信号量,等待时间)//发送信号量dispatch_semapho

2020-10-14 11:34:47 7600 1

原创 09-安全攻防之LLDB

不错的参考链接:LLDB调试器使用简介LLDB调试利器及高级用法WWDC 2018:效率提升爆表的 Xcode 和 LLDB 调试技巧

2020-10-13 18:01:26 83

原创 08-安全攻防之Mach-O文件

一、简介Mach-O是一种文件格式,是mac上可执行文件的格式,类似于windows上的PE格式 (Portable Executable ), linux上的elf格式 (Executable and Linking Format)。我们编写的C、C++、swift、OC,最终编译链接生成Mach-O可执行文件二、mach-o文件类型分为:总共有11种。MH_OBJECT (0x1 )目标文件(.0)静态库文件(.a),静态库文件其实就是多个.o文件的合集.比如支持多种cpu建构的.a

2020-10-12 17:30:08 415

原创 07-安全攻防之指针宽度

我们都知道指针在iOS中的长度为8,可以对指针进行加减运算,但是编辑器决定了指针不能做乘法和除法运算!在指针运算过程中,运算结果,由它所指向的数据类型的宽度决定的!换句话说,也就是看去掉一个" * "之后的类型决定的。例如, char * a; 那么a的的指针类型是 char;int * a; 那么a的指针类型是 int;注意:int a, 那么a就是基本数据类型 int,跟指针没有关系。指针的运算问题:char * a;a = (char *)100;a++;那么a的值是

2020-10-10 17:52:26 184

原创 iOS 线程同步(加锁)的方案

OSSpinLockOSSpinLock叫做“自旋锁”, 等待锁的线程会处于忙等状态,一直占用这CPU资源。缺点:目前已经不再安全,可能会出现优先级反转问题。如果等待锁的线程优先级较高,它会一直占用CPU资源,优先级低的线程就无法释放锁。例如,有两个贤臣:thread1 (优先级比较高)thread2 (优先级比较低)thread2 先用OSSpinLock加锁,此时thread1 进来,一看代码已经被加锁。那么此时,优先级高的线程会一直判断是否加锁;如果加锁了,就继续一直判断,那么C

2020-10-10 11:47:56 599 1

原创 03-网络基础知识之MAC和IP地址

一、 MAC地址MAC地址的全称为:Media Access Control AddressMAC地址也成为网卡;在计算机的通信过程中,需要把数据发送给网卡,再由网卡发送给计算机处理。所以,每一台计算机都会有一个网卡,也就是有一个对应的MAC地址。MAC地址是全球唯一的,固化在网卡的ROM中,由IEEE802标准规定。MAC地址的格式如下:每一个网卡都有一个6字节(48位bit)的MAC地址;前3个字节称为OUI(Organizationally Unique Identifier),也

2020-10-09 15:38:27 1317

转载 程序启动原理和UIApplication

一、UIApplication1.简单介绍(1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序;(2)每一个应用都有自己的UIApplication对象,而且是单例的,如果试图在程序中新建一个UIApplication对象,那么将报错提示;(3)通过[UIApplication sharedApplication]可以获得这个单例对象;(4) 一个iOS程序启动后创建的第一个对象就是UIApplication对象,且只有一个(通

2020-10-09 12:03:30 432

原创 IOS中在代码中判断是Debug模式还是release模式

#ifndef __OPTIMIZE__ NSLog(@"Debug========="); #else NSLog(@"release========="); #endif NSLog(@"结束=========");

2020-09-30 09:32:10 2272

苹果审核警告:ITMS-91053: Missing API declaration

苹果审核警告:ITMS-91053: Missing API declaration

2024-04-24

tmpEffect.json

tmpEffect.json

2021-03-15

0423-地球与月亮.zip

用OpenGL模拟实现地球和月球自传,以及月球绕着地球公转的案例。本案例主要是OpenGL中的GLKit框架实现的。

2020-04-23

电子画板需要的资源.zip

本资源用于OpenGL 中实现电子画板的案例中需要用到的资源。如果需要请自行下载。里面包含了 清空和换画笔颜色时需要的声音文件,还有封装好的顶点着色器加载的方法。

2020-04-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除