环信即时通讯云

环信即时通讯云

单聊、群聊、聊天室...
环信开发文档

环信开发文档

环信客服云

环信客服云

无需下载,注册即用
环信机器人

环信机器人

智能,高效
技术讨论区

技术讨论区

技术交流、答疑
资源下载

资源下载

收集了海量宝藏开发资源
iOS Library

iOS Library

不需要辛辛苦苦的去找轮子, 这里都有
Android Library

Android Library

不需要辛辛苦苦的去找轮子, 这里都有
0
评论

数据时代之非侵入式埋点方案 iOS埋点 iOS开发

费城 发表了文章 • 19 次浏览 • 2021-05-10 19:25 • 来自相关话题

在发展日新月异的移动互联网时代,数据扮演着极其重要的角色。埋点作为一种最简单最直接的用户行为统计方式,能够全面精确的采集用户的使用习惯以及各功能点的迭代反馈等等,有了这些数据才能更好的驱动产品的决策设计和新业务场景的规划。本文旨在提出一种轻量级非侵入式的埋点方... ...查看全部
0
评论

探究产生离屏渲染的秘密 iOS热门技术

费城 发表了文章 • 25 次浏览 • 2021-05-10 17:28 • 来自相关话题

一.渲染机制CPU将计算好的需要显示的内容提交给GPU,GPU渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按照Vsync(垂直脉冲)信号逐行读取帧缓冲区的数据,经过可能的数模转换传递给显示器进行显示。二.GPU屏幕渲染两种方式1.On-Screen Re... ...查看全部
0
评论

iOS — Swift高级分享:SWIFT协议的替代方案 iOS开发

费城 发表了文章 • 29 次浏览 • 2021-05-10 13:30 • 来自相关话题

毫无疑问,协议是SWIFT总体设计的主要部分-并且可以提供一种很好的方法来创建抽象、分离关注点和提高系统或功能的整体灵活性。通过不强烈地将类型绑定在一起,而是通过更抽象的接口连接代码库的各个部分,我们通常会得到一个更加解耦的体系结构,它允许我们孤立地迭代每个单... ...查看全部
0
评论

iOS OC开发 BTC、ETH、区块链钱包 iOS开发

费城 发表了文章 • 21 次浏览 • 2021-05-10 13:19 • 来自相关话题

ETH钱包部分:功能有:1、创建钱包2、通过助记词导入钱包3、通过KeyStore导入钱包4、通过私钥导入钱包5、查询余额6、查询以太坊系代币余额7、转账BTC钱包部分:功能:1、创建钱包2、通过私钥导入钱包3、通过助记词导入钱包4、查询余额5、查询交易记录6... ...查看全部
0
评论

ARC对init方法的处理 iOS开发

费城 发表了文章 • 19 次浏览 • 2021-05-10 13:15 • 来自相关话题

前言此文源于前几日工作中遇到的一个问题,并跟同事就init方法进行了相关讨论。相关代码如下:Person *myPerson = [Person alloc];NSMethodSignature *signature = [NSMethodSignature ... ...查看全部
0
评论

iOS 开发:『Crash 防护系统』(二)KVO 防护 iOS开发

费城 发表了文章 • 29 次浏览 • 2021-05-08 13:16 • 来自相关话题

1. KVO Crash 的常见原因KVO(Key Value Observing) 翻译过来就是键值对观察,是 iOS 观察者模式的一种实现。KVO 允许一个对象监听另一个对象特定属性的改变,并在改变时接收到事件。但是 KVO API 的设计,我个人觉得不是... ...查看全部
0
评论

Swift高级分享 - 在Swift中构建模型数据 iOS开发

费城 发表了文章 • 24 次浏览 • 2021-05-08 13:05 • 来自相关话题

在代码库中建立可靠的结构通常是必不可少的,以便更容易使用。然而,实现一个既足够严格以防止错误和问题的结构 - 以及对现有功能足够灵活的结构以及我们想要的任何未来变化 - 都可能非常棘手。对于模型代码而言尤其如此,模型代码通常由许多不同的功能使用,每个功能都有自... ...查看全部
0
评论

iOS开发性能监控 iOS开发

费城 发表了文章 • 50 次浏览 • 2021-05-08 12:07 • 来自相关话题

App 的性能问题虽然不会导致 App不可用,但依然会影响到用户体验。如果这个性能问题不断累积,达到临界点以后,问题就会爆发出来。这时,影响到的就不仅仅是用户了,还有负责App开发的你。线下性能监控其中线下监控使用的还是Instruments,Instrume... ...查看全部
0
评论

iOS-编译过程 iOS开发

zuyu 发表了文章 • 31 次浏览 • 2021-05-07 22:02 • 来自相关话题

编译器iOS编译和打包时,编译器直接将代码编译成机器码,然后直接在CPU上运行。而不用使用解释器运行代码。因为这样执行效率更高,运行速度更快。C,C++,OC都是使用的编译器生成相关的可执行文件。解释器:解释器会在运行时解释执行代码,获取一段代码后就会将其翻译... ...查看全部
0
评论

iOS- 核心动画分类以及基本使用 iOS开发

编程扫地僧 发表了文章 • 33 次浏览 • 2021-05-07 21:22 • 来自相关话题

1、UIView和核心动画区别?核心动画只能添加到CALayer, 核心动画一切都是假象,并不会改变真实的值。如果需要与用户交互就使用UIView的动画. 不需要与用户交互可以使用核心动画。在转场动画中,核心动画的类型比较多。根据⼀个路径做动画,只能用核心动画... ...查看全部
0
评论

iOS--开发中遇到的der,csr,crt,p12,pem文件到底是什么 iOS开发

费城 发表了文章 • 35 次浏览 • 2021-05-07 19:22 • 来自相关话题

关于pem文件的话,上一篇文章已经有提到:iOS---利用OpenSSL演示RSA加密解密,PEM在工作中,pem文件,我们是不会直接使用的,需要从pem文件里面提取csr文件。csr文件步骤1:从private.pem文件里,提取rsacert.csr文件,... ...查看全部
0
评论

Swift高级分享 - 在Swift中提取视图控制器操作 iOS开发

费城 发表了文章 • 29 次浏览 • 2021-05-07 19:04 • 来自相关话题

视图控制器往往在为Apple平台构建的大多数应用程序中起着非常重要的作用。他们管理我们UI的关键方面,提供系统功能的桥梁,如设备方向和状态栏外观,并经常响应用户交互 - 如按钮点击和文本输入。由于它们通常具有这样的关键作用,因此许多视图控制器最终遭受常见的大规... ...查看全部
1
回复

请教IOS IM SDK3.7.4版 发送消息的方法封装在哪里? 环信_iOS

yangjian 回复了问题 • 2 人关注 • 59 次浏览 • 2021-05-07 15:43 • 来自相关话题

0
评论

iOS 列表界面如何优雅实现模块化与动态化 iOS开发

九漏鱼 发表了文章 • 53 次浏览 • 2021-05-07 11:48 • 来自相关话题

前言去年做了一个小组件,前些时间考虑到项目中可能会大规模实施,完善简化后新开了一个 repo: YBHandyList 。有些朋友抛出了 nimbus、IGListKit 等业界应用很广的库,前些时间网易工程师也推出了 M80TableViewComponen... ...查看全部
0
评论

iOS 应用内打开三方地图app直接导航 iOS开发

九漏鱼 发表了文章 • 52 次浏览 • 2021-05-07 11:32 • 来自相关话题

当然因为有需求喽。疯狂试探- (BOOL)canOpenURL:(NSURL *)url NS_AVAILABLE_IOS(3_0);常用地图应用的url Scheme://百度地图 baidumap //高德地图 iosamap //谷歌地图 comgo... ...查看全部
0
评论

Swift之构建非常优雅的便利API—Swift中的计算属性 iOS开发

九漏鱼 发表了文章 • 35 次浏览 • 2021-05-07 11:27 • 来自相关话题

使Swift成为如此强大且通用的语言的主要原因在于,当我们选择在为特定问题形成解决方案时选择使用哪种语言功能时,我们通常可以使用多种选项。然而,这种多样性也可能引起混淆和争论,特别是当我们正在考虑的功能的关键用例之间没有明确的界限时。本周,我们来看看一个这样的... ...查看全部
0
评论

iOS -开发SDK的技巧 iOS开发

编程扫地僧 发表了文章 • 36 次浏览 • 2021-05-07 10:36 • 来自相关话题

本文目标:掌握封装及开发SDK的全部技巧内容提要:不同场景下如何封装及开发SDK.a静态库创建直接创建Framework库在已有工程中创建创建Framework工程进行封装创建Bundle资源库文件含界面SDK如何进行依赖开发使用脚本创建Framework库,... ...查看全部
0
评论

iOS 类簇(class clusters) iOS开发

编程扫地僧 发表了文章 • 21 次浏览 • 2021-05-07 10:36 • 来自相关话题

类簇(class clusters)类簇是Foundation framework框架下广泛使用的一种设计模式。它管理了一组隐藏在公共抽象父类下的具体私有子类。没有使用类簇(Simple Concept but Complex Interface)为了说明类簇... ...查看全部
1
回复

iOS 环信集成报错 环信_iOS集成问题

yangjian 回复了问题 • 2 人关注 • 73 次浏览 • 2021-05-06 11:46 • 来自相关话题

0
评论

Swift的高级技巧 - 动态注入和更改代码 iOS开发

九漏鱼 发表了文章 • 65 次浏览 • 2021-04-30 11:47 • 来自相关话题

虽然Xcode为lldb命令提供了几个可视化抽象,例如通过单击代码行添加断点并通过单击播放按钮来运行,但lldb提供了一些Xcode UI中不存在的有用命令。这可以是从即时创建方法到甚至更改CPU的寄存器以强制应用程序上的特定流而无需重新编译它,并且了解它们可... ...查看全部
0
评论

iOS KVO 与 readonly的讨论 (数组array & setter) iOS开发

费城 发表了文章 • 71 次浏览 • 2021-04-29 18:56 • 来自相关话题

在开发过程中,可能会有这样的需求:当数据源变动的时候及时刷新显示的列表。期望是去监听数据源数组的count,当count有变动就刷新UI,可是实际操作中却发现了不少的问题。例如:self.propertyArray = [NSMutableArray arra... ...查看全部
0
评论

避免 iOS 组件依赖冲突的小技巧 iOS开发

我要打中单 发表了文章 • 65 次浏览 • 2021-04-29 17:13 • 来自相关话题

问题缘由本文以 YBImageBrowser 组件举例。YBImageBrowser 依赖了 SDWebImage,在使用 CocoaPods 集成到项目中时,可能会出现一些依赖冲突的问题,最近社区提了多个 Issues 并且在 Insights -> ... ...查看全部
0
评论

iOS核心动画高级技巧-1 iOS开发

我要打中单 发表了文章 • 57 次浏览 • 2021-04-29 16:51 • 来自相关话题

1. 图层树图层的树状结构巨妖有图层,洋葱也有图层,你有吗?我们都有图层 -- 史莱克Core Animation其实是一个令人误解的命名。你可能认为它只是用来做动画的,但实际上它是从一个叫做Layer Kit这么一个不怎么和动画有关的名字演变而来,所以做动画... ...查看全部
1
回复

ios聊天界面的头像显示 聊天页面头像昵称

yangjian 回复了问题 • 2 人关注 • 187 次浏览 • 2021-04-29 16:46 • 来自相关话题

0
评论

解决 SourceKitService 内存占用过高 iOS开发

我要打中单 发表了文章 • 58 次浏览 • 2021-04-29 15:52 • 来自相关话题

SourceKitService 是用来服务于解析 Swift 代码格式的,和 Swift 的代码着色、类型自动推断等特性息息相关,如果我们在活动监视器中强制停止掉这个服务,那么会发现 Xcode 中 Swift 代码大部分都会变成白色,并代码提示和类型推断都... ...查看全部
0
评论

2019年11月:JD iOS开发岗面试题及答案! iOS面试题

九漏鱼 发表了文章 • 68 次浏览 • 2021-04-29 14:37 • 来自相关话题

随着移动互联网技术的不断发展和创新,访谈对于公司和开发人员和设计师来说都是费时且昂贵的项目,面对iOS开发者和设计师在访谈过程中可能遇到的问题,现在为大家总结iOS技术面试题及应对答案。一、如何绘制UIView?绘制一个UIView最灵活的方法就是由它自己完成... ...查看全部
2
评论

iOS 可用的热更新、热修复方案 iOS开发

九漏鱼 发表了文章 • 74 次浏览 • 2021-04-29 14:25 • 来自相关话题

前言JSPatch虽然在两年前被苹果邮件警告,但是ReactNative依然盛行,只不过ReactNative并没有对Native进行热修复的功能,只是动态下发新的bundle模块。动态加载而已。很多时候线上出现bug,可能是很小,很细微的。对此我们可能仅仅需... ...查看全部
0
评论

iOS多张图片合成一张 iOS开发技巧

费城 发表了文章 • 57 次浏览 • 2021-04-29 13:25 • 来自相关话题

在我们的开发过程中,有时候会遇到不同的需求,比如将不同的图片合成一张图片下边是实现代码:#import "RootViewController.h"@interface RootViewController ()@end@implementation Root... ...查看全部
0
评论

iOS 实现类似通讯录按拼音排序 - PinYin4Objc iOS开发技巧

费城 发表了文章 • 69 次浏览 • 2021-04-29 12:29 • 来自相关话题

最近项目中需要实现类似通讯录那样按拼音进行排序以及索引列表的显示的功能,这里使用了 PinYin4Objc 这个库来实现此功能。PinYinObjc是一个效率很高的汉字转拼音类库,智齿简体和繁体中文,有如下特点:1、效率高,使用数据缓存,第一次初始化以后,拼音... ...查看全部
0
评论

iOS 基于AFNetWorking的联想搜索的实现 iOS开发技巧

费城 发表了文章 • 64 次浏览 • 2021-04-29 12:24 • 来自相关话题

需求描述:输入框搜索功能,输入小米,键盘输入按照x-i-a-o-m-i的顺序,而请求是根据输入框内容的变化进行请求,输入框每变化一次就要进行一次请求,直到输入停止,请求的结果列表展示。关键点:频繁的网络请求,又不能影响下次请求的进行,这就要求当新的请求开始前,... ...查看全部
0
评论

在Swift中使用泛型 swift开发

费城 发表了文章 • 58 次浏览 • 2021-04-27 22:53 • 来自相关话题

Swift 5.0 都发布这么久了,而泛型作为该语言的重要特性,还是非常有必要了解一下的。在 Swift 泛型的运用几乎随处可见,在系统层面,Swift 标准库是通过泛型代码构建出来的,Swift 的数组和字典类型都是泛型集。在主流的轮子里,也是有大量的泛型使... ...查看全部
4
评论

关于 iOS 中各种锁的整理 iOS开发技巧

费城 发表了文章 • 88 次浏览 • 2021-04-27 22:41 • 来自相关话题

名词解释原子:同一时间只允许一个线程访问临界区:指的是一块对公共资源进行访问的代码,并非一种机制或是算法。自旋锁:是用于多线程同步的一种锁,线程反复检查锁变量是否可用。由于线程在这一过程中保持执行,因此是一种忙等待。一旦获取了自旋锁,线程会一直保持该锁,直至显... ...查看全部
0
评论

常用开发加密方法 iOS开发

费城 发表了文章 • 56 次浏览 • 2021-04-27 22:33 • 来自相关话题

前言相信大家在开发中都遇到过,有些隐秘信息需要做加密传输的场景.A:你就把 XXX 做一下base64加密传过来就行这些问题相信大家都遇到过,那么在实际开发中我们应该如何选择加密方法呢?加密这里我就直接抛出来几个加密规则AES 对称加密,双方只有同一个秘钥ke... ...查看全部
0
评论

iOS 13:更多系统APP和组件采用Swift编写 iOS调研

费城 发表了文章 • 84 次浏览 • 2021-04-27 22:27 • 来自相关话题

苹果在 2014 年 WWDC 发布了全新 Swift 编程语言,Swift 是苹果平台未来的编程语言。自那以后,很多第三方开发者开始使用 Swift 编写程序,不过苹果 iOS 和 macOS 系统,以及各种系统应用还是采用 Objective-C 编写。这... ...查看全部
0
评论

CoreSimulator与Xcode两个文件夹造成Mac中多了100G的“其他”空间 Mac空间整理

费城 发表了文章 • 48 次浏览 • 2021-04-27 22:24 • 来自相关话题

tips 没有购买cleanMyMac的同学,不要担心,我既然写了文章,肯定是不为了让同学们花钱购买软件的。CoreSimulator与Xcode两个文件夹造成Mac中多了100G的“其他”空间;请原谅我表述的不太明白,还是上图吧:1.清理之前mac电脑只剩下... ...查看全部
0
评论

iOS websocket接入 iOS开发

费城 发表了文章 • 60 次浏览 • 2021-04-27 22:06 • 来自相关话题

接触WebSocket最近公司的项目中有一个功能 需要服务器主动推数据到APP。考虑到普通的HTTP 通信方式只能由客户端主动拉取,服务器不能主动推给客户端 。然后就想出的2种解决方案。1.和后台沟通了一下 他们那里使用的是WebSocket ,所以就使用We... ...查看全部
0
评论

iOS 用symbolicatecrash符号化崩溃日志中系统库方法堆栈 iOS开发技巧

费城 发表了文章 • 54 次浏览 • 2021-04-27 18:56 • 来自相关话题

说明现在已经有很多第三方平台支持解析crash日志中的系统方法了,比如bugly。但是万一遇到情况特殊或者公司要求,还是走上传崩溃日志到自己的服务器,然后自己去定期解析的话,就需要用到symbolicatecrash这个工具了。指令操作均在终端中进行。另外,每... ...查看全部
0
评论

关于WKWebView的post请求丢失body问题的解决方案 iOS开发技巧

费城 发表了文章 • 61 次浏览 • 2021-04-27 18:37 • 来自相关话题

WKWebView的优点这里不做过多介绍,主要说一下最近解决WKWebView的post请求丢失body问题的解决方案。WKWebView 通过loadrequest方法加载Post请求会丢失请求体(body)中的内容,进而导致服务器拿不到body中的内容的问... ...查看全部
0
评论

iOS - 同一个workspace下创建多个项目编程 iOS开发

编程扫地僧 发表了文章 • 51 次浏览 • 2021-04-27 17:03 • 来自相关话题

在iOS开发中,相关联的多个项目可能会放在同一个workspace下进行开发,那习惯了一个项目在一个工作空间下的同学该怎么快速开撸呢?只需要三步而已!第一步,先用Xcode在目标目录下创建一个workspace文件。见图说话。第二步,用Xcode打开works... ...查看全部
0
评论

iOS- 安装CocoaPods详细过程 iOS开发

编程扫地僧 发表了文章 • 50 次浏览 • 2021-04-27 16:35 • 来自相关话题

一、简介什么是CocoaPodsCocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。CocoaPods的好... ...查看全部
0
评论

iOS- 集成Bugly详解 iOS开发

编程扫地僧 发表了文章 • 68 次浏览 • 2021-04-27 14:31 • 来自相关话题

SDK 集成Bugly提供两种集成方式供iOS开发者选择:通过CocoaPods集成手动集成如果您是从Bugly 2.0以下版本升级过来的,请查看iOS SDK 升级指南Bugly iOS SDK 最低兼容系统版本 iOS 7.0通过CocoaPod... ...查看全部
0
评论

iOS- 研发助手DoraemonKit技术实现(二) iOS开发

编程扫地僧 发表了文章 • 54 次浏览 • 2021-04-27 14:18 • 来自相关话题

一、前言性能问题极大程度的会影响到用户的体验,对于我们开发者和测试同学要随时随地保证我们app的质量,避免不好的体验带来用户的流失。本篇文章我们来讲一下,性能监控的几款工具的技术实现。主要包括,帧率监控、CPU监控、内存监控、流量监控、卡顿监控和自定义监控这几... ...查看全部
0
评论

iOS- 研发助手DoraemonKit技术实现(一) iOS开发

编程扫地僧 发表了文章 • 65 次浏览 • 2021-04-27 14:11 • 来自相关话题

一、前言一个比较成熟的App,经历了多个版本的迭代之后,为了方便调式和测试,往往会积累一些工具来应付这些场景。最近我们组就开源了一款适用于iOS App线下开发、测试、验收阶段,内置在App中的工具集合。使用DoraemonKit,你无需连接电脑,就可以对于A... ...查看全部
0
评论

iOS使用RunLoop监控线上卡顿 iOS开发技巧

费城 发表了文章 • 44 次浏览 • 2021-04-27 13:35 • 来自相关话题

通过iOS性能优化 我们知道,简单来说App卡顿,就是FPS达不到60帧率,丢帧现象,就会卡顿。但是很多时候,我们只知道丢帧了。具体为什么丢帧,却不是很清楚,那么我们要怎么监控呢,首先我们要明白,要找出卡顿,就是要找出主线程做了什么,而线程消息,是依赖RunL... ...查看全部
0
评论

iOS序列化的进阶方案——Protocol Buffer iOS开发技巧

费城 发表了文章 • 56 次浏览 • 2021-04-27 13:22 • 来自相关话题

前言最近项目需要,引入Protocol Buffer来做对象序列化。正文Protocol Buffer是Google出的序列化数据格式,下面简称pb。我们更常用的序列化数据格式应该是json,json和pb本质上都是对象的序列化和反序列化,在项目中json也是... ...查看全部
0
评论

探讨SWIFT 5.2的新功能特性 iOS API调用

费城 发表了文章 • 48 次浏览 • 2021-04-27 13:13 • 来自相关话题

从表面上看,SWIFT 5.2在新的语言特性方面肯定是一个小版本,因为这个新版本的大部分重点是提高SWIFT底层基础结构的速度和稳定性,例如如何报告编译器错误,以及如何解决构建级依赖。然而,斯威夫特5.2总数新的语言特性可能相对较小,它确实包括两个新功能,它们... ...查看全部
0
评论

iOS- WMZDropDownMenu:App各种类型筛选菜单 iOS开发

编程扫地僧 发表了文章 • 59 次浏览 • 2021-04-27 11:42 • 来自相关话题

软件介绍一个能几乎实现所有 App 各种类型筛选菜单的控件,可悬浮。目前已实现 闲鱼 / 美团 / Boss直聘 / 京东 / 饿了么 / 淘宝 / 拼多多 / 赶集网 / 美图外卖 等等的筛选菜单,可以自由调用代理实现自己想组装的筛选功能和 UI,且控件的生... ...查看全部
0
评论

IOS-图片浏览之YBImageBrowser的简单使用 iOS开发

编程扫地僧 发表了文章 • 44 次浏览 • 2021-04-27 11:23 • 来自相关话题

1.安装第一种方式 使用 cocoapodspod 'YBImageBrowser'    注意:请尽量使用最新版本(1.1.2);若搜索不到库,可使用rm ~/Library/Caches/CocoaPods/sear... ...查看全部
0
评论

iOS- 多页面嵌套(JXPagerView、JXCategoryView) iOS开发

编程扫地僧 发表了文章 • 48 次浏览 • 2021-04-27 11:10 • 来自相关话题

目录 1. 示例 2. 详细说明Podfile中导入 pod 'JXPagingView/Pager' pod 'JXCategoryView'1. 示例VC// 头部View高#define JXTableHeaderViewHeight (kIs_... ...查看全部
0
评论

iOS-TZImagePickerController获取图片视频 iOS开发

编程扫地僧 发表了文章 • 47 次浏览 • 2021-04-27 10:54 • 来自相关话题

TZImagePickerControllerDemo项目介绍TZImagePickerControllerDemoPodfile新增行 pod 'TZImagePickerController'使用之前导入头文件 #import <... ...查看全部