环信即时通讯云

环信即时通讯云

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

环信开发文档

环信客服云

环信客服云

无需下载,注册即用
声网开发者社区

声网开发者社区

汇聚音视频领域技术干货,分享行业资讯
技术讨论区

技术讨论区

技术交流、答疑
资源下载

资源下载

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

iOS Library

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

Android Library

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

iOS 中 如何从视频中提取音频 iOS开发技巧

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

.h文件/**提取视频中的音频@param videoPath 视频路径@param completionHandle 完成回调*/+(void)accessAudioFromVideo:(NSURL *)videoPath completion:(void ... ...查看全部
0
评论

静态拦截iOS对象方法调用的简易实现 iOS开发技巧

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

最近出现了几篇关于二进制重排启动优化的文章。所有方案中都需要事先统计所有的函数调用情况,并根据函数调用的频次来进行代码的重排。这些函数调用中,OC对象的方法调用最多。统计OC对象的方法调用可以在运行时通过第三方库比如fishhook来Hook所有objc_ms... ...查看全部
0
评论

iOS runtime之--动态修改字体大小 iOS开发

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

那么既然runtime可以进行方法交换,我们只要自定义一个方法,替换系统的方法不就可以实现了吗?话不多说,我们开始动手UIFont设置font的类方法替换#import "UIFont+Category.h"#import "NSObject+Category... ...查看全部
0
评论

iOS runtime之--动态添加属性和方法 iOS开发

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

一、runtime添加属性在Objective-C中,category分类默认只能添加方法,不能添加属性。根本原因在于声明了@property后,category并不会自动生成set和get方法。如果有需要在category中添加属性,可以利用runtime的... ...查看全部
0
评论

iOS- Dealloc流程解析 Dealloc 实现原理 iOS开发

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

当对象的引用计数为0时, 系统会调用对象的dealloc方法释放- (void)dealloc { _objc_rootDealloc(self);}在内部void_objc_rootDealloc(id obj){ assert(obj); ... ...查看全部
0
评论

iOS- weak 原理 iOS开发

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

一、weak 基本用法weak 是弱引用,用 weak 来修饰、描述所引用对象的计数器并不会增加,而且 weak 会在引用对象被释放的时候自动置为 nil,这也就避免了野指针访问坏内存而引起奔溃的情况,另外 weak 也可以解决循环引用。拓展:为什么修饰代理使... ...查看全部
0
评论

iOS- Copy和Strong修饰 iOS开发

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

情况一(@property (nonatomic,copy)NSString *str;)(@property (nonatomic,strong)NSString *str;)self. str = NSString(实例)@interface ViewCo... ...查看全部
0
评论

Git 操作整理 iOS开发

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

git 使用一般企业中使用代码管理工具Git开发时都是通过拉分支进行功能细致开发,所以掌握git的分支操作时必要的。使用git下载指定分支命令为: git clone-b分支名仓库地址。初始开发git操作流程:本地创建公钥:ssh-keygen-t ... ...查看全部
0
评论

iOS Metal语言规范浅谈 iOS开发

zuyu 发表了文章 • 112 次浏览 • 2021-04-22 14:16 • 来自相关话题

一.Metal简述            Metal着色器语言是用来编写3D图形渲染逻辑、并行Metal计算核心逻辑的一门编程语言,当你使用Metal... ...查看全部
0
评论

Xcode11,Transporter上传卡在——正在验证 APP - 正在通过App Store进行认证 APP上架

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

1.当卡死在 “Authenticating with the iTunes store”解决办法:关闭上传,并打开命令行,依次调用这三行代码: cd ~ mv .itmstransporter/ .old_itmstransporter/ "/Applica... ...查看全部
0
评论

【iOS】一个简单的人脸跟踪Demo 自封装控件

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

1、sessionView - 相机画面的容器Viewself.detector - 脸部特征识别器- (void)viewDidLoad { [super viewDidLoad]; self.sessionView = [[UIView... ...查看全部
0
评论

iOS性能优化 — 三、安装包瘦身 APP上架

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

瘦身指导原则 总体指导原则为:压缩资源、删除无用/重复资源、删除无用代码、通过编译选项进行优化。 常规瘦身方案 压缩资源项目中资源包括图片、字符串、音视频等资源。由于项目中图片比较多,所以资源压缩一般会从图片入手。在把图片加入到项目中时候需要采用tinypng... ...查看全部
0
评论

iOS内存管理-深入解析自动释放池 iOS开发

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

主要内容:AutoreleasePool简介AutoreleasePool底层原理Autorelease与NSThread、NSRunLoop的关系AutoreleasePool在主线程上的释放时机AutoreleasePool在子线程上的释放时机Autore... ...查看全部
2
回复

请教IOS IM SDK3.7.4版可不可以集成EaseIMKit或旧版easeUI? 环信_iOS

正直哥 回复了问题 • 2 人关注 • 170 次浏览 • 2021-04-22 09:32 • 来自相关话题

0
评论

iOS性能优化 — 四、内存泄露检测 iOS API调用

费城 发表了文章 • 103 次浏览 • 2021-04-21 23:11 • 来自相关话题

上篇文章为大家讲解了安装包瘦身,这篇文章继续为大家讲解下内存泄露检测。造成内存泄漏原因常见循环引用及解决方案怎么检测循环引用造成内存泄漏原因在用C/C++时,创建对象后未销毁,比如调用malloc后不free、调用new后不delete;调用CoreFound... ...查看全部
0
评论

Xcode12适配The linked library is missing one or more architectures required by this target问题 iOS API调用

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

问题升级到Xcode12后,运行Release模式后,会提示以下信息: The linked library 'xxxx.a/Framework' is missing one or more architectures required by this ta... ...查看全部
0
评论

iOS 使用NSSetUncaughtExceptionHandler收集Crash 第三方类库

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

在iOS程序崩溃时,一般我们是用Bugtags、Bugly、友盟等第三方收集崩溃,其实官方提供的NSUncaughtExceptionHandler来收集crash信息。实现方式如下:自定义一个UncaughtExceptionHandler类,在.h中: @... ...查看全部
0
评论

怎么获取到环信老版本的SDK和Demo IM 环信_iOS集成问题

kijieoeew 发表了文章 • 104 次浏览 • 2021-04-21 21:06 • 来自相关话题

来到环信官网的下载页面:下载-即时通讯云-环信 找到想要下载的sdk,以iOS端为例,右键“SDK+Demo源码”,拷贝链接,然后修改链接里的版本号即可例如:https://download-sdk.oss-cn-beijing.aliyuncs.com/do... ...查看全部
0
评论

(IM)iOS端离线推送收不到怎么办? ios离线推送

kijieoeew 发表了文章 • 79 次浏览 • 2021-04-21 20:58 • 来自相关话题

离线推送收不到,按照下面步骤一步一步进行排查: 0、如果你的app之前可以收到离线推送,突然收不到了,那么先移步苹果开发者中心查看推送证书是否过期。如果过期了,需要重新制作证书,然后到环信管理后台(Console)将旧的删掉再上传新的。过期的一般会被封禁,需要... ...查看全部
0
评论

iOS 唤起APP之Universal Link(通用链接) iOS API调用

我要打中单 发表了文章 • 103 次浏览 • 2021-04-21 10:11 • 来自相关话题

iOS 9之前,一直使用的是URL Schemes技术来从外部对App进行跳转,但是iOS系统中进行URL Schemes跳转的时候如果没有安装App,会提示Cannot open Page的提示,而且当注册有多个scheme相同的时候,目前没有办法区分,但是... ...查看全部
0
评论

iOS Instruments使用 iOS开发

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

一、Instruments介绍Instruments 一个很灵活的、强大的工具,是性能分析、动态跟踪 和分析OS X以及iOS代码的测试工具,用它可以极为方便收集关于一个或多个系统进程的性能和行为的数据,并能及时随着时间跟踪而产生的数据,并检查所收集的数据,还... ...查看全部
1
评论

iOS-事件传递&&响应机制(二) iOS开发

编程扫地僧 发表了文章 • 101 次浏览 • 2021-04-20 15:00 • 来自相关话题

如果想让某个view不能处理事件(或者说,事件传递到某个view那里就断了),那么可以通过刚才提到的三种方式。比如,设置其userInteractionEnabled = NO;那么传递下来的事件就会由该view的父控件处理。例如,不想让蓝色的view接收事件... ...查看全部
0
评论

iOS-事件传递&&响应机制(一) iOS开发

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

前言:按照时间顺序,事件的生命周期:  事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的view、寻找最合适的view的底层实现、拦截事件的处理)->找到最合适的view后事件的处理(touches方法的重写,也就是事件的响应)重点和难点是:  ... ...查看全部
0
评论

iOS-异步绘制原理 iOS开发

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

在 UIView 中有一个 CALayer 的属性,负责 UIView 具体内容的显示。具体过程是系统会把 UIView 显示的内容(包括 UILabel 的文字,UIImageView 的图片等)绘制在一张画布上,完成后倒出图片赋值给 CALayer 的 c... ...查看全部
0
评论

iOS-视图&图像相关 iOS开发

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

Auto Layout 原理Auto Layout是一种全新的布局方式,它采用一系列约束(constraints)来实现自动布局,当你的屏幕尺寸发生变化或者屏幕发生旋转时,可以不用添加代码来保持原有布局不变,实现视图的自动布局。所谓约束,通常是定义了两个视图之... ...查看全部
0
评论

iOS底层系列:Category iOS底层逻辑

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

前言Category是我们平时用到的比较多的一种技术,比如说给某个类增加方法,添加成员变量,或者用Category优化代码结构。我们通过下面这几个问题作为切入点,结合runtime的源码,探究一下Category的底层原理。我们在Category中,可以直接添... ...查看全部
0
评论

iOS --常见崩溃和防护(二) iOS开发

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

接上一章。。。。。。。iOS9之前会crash,iOS9之后苹果系统已优化。在iOS9之后,即使开发者没有移除observer,Notification crash也不会再产生了。四、NSTimer Crash 防护产生的原因:NSTimer会 强引用 tar... ...查看全部
0
评论

iOS --常见崩溃和防护(一) iOS开发

编程扫地僧 发表了文章 • 132 次浏览 • 2021-04-19 20:40 • 来自相关话题

iOS 的崩溃我们常见的crash有哪些呢?1.unrecognized selector crash (没找到对应的函数)2.KVO crash :(KVO的被观察者dealloc时仍然注册着KVO导致的crash,添加KVO重复添加观察者或重复移除观察者 ... ...查看全部
0
评论

iOS - 剖析性能优化相关 iOS开发

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

性能优化的几个点:1.卡顿优化在了解卡顿优化相关的前头,首先要了解 CPU 和 GPU。CPU(Central Processing Unit,中央处理器)对象的创建和销毁、对象属性的调整、布局计算、文本的计算和排版、图片的格式转换和解码、图像的绘制(Core... ...查看全部
0
评论

iOS Universal Link(点击链接跳转到APP) iOS开发

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

Universe Link跳转流程步骤1.登录苹果开发者中心  选择对应的appid ☑️勾选 Associated Domains  此处标记的Team ID 和 bundle ID  后面文件会用到2. 用text  ... ...查看全部
0
评论

iOS--图形图像渲染原理 iOS开发

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

引言作为程序员,我们或多或少知道可视化应用程序都是由 CPU 和 GPU 协作执行的。那么我们就先来了解一下两者的基本概念:1.CPU(Central Processing Unit):现代计算机的三大核心部分之一,作为整个系统的运算和控制单元。CPU 内部的... ...查看全部
3
回复

ios 环信IM与语音室聊天SDK同时集成 冲突问题【如果需要不同的功能 建议使用低版本通用sdk】 IM与聊天室

回复

wyq 回复了问题 • 1 人关注 • 285 次浏览 • 2021-04-19 11:50 • 来自相关话题

0
评论

iOS中的emoji表情处理 iOS开发

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

emoji在社交类APP很常用,比如发动态,圈子,还有回复评论,还有会话后台在处理emoji的态度,直接就是不处理,所以我们需要对emoji包括中文,数字,还有特殊字符进行编码还有解码//编码NSString *uniStr = [NSString strin... ...查看全部
0
评论

iOS .a与framework打包以及shell自动合并 iOS开发

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

静态库打包的流程:.a打包将提前准备的项目文件及项目资源导入到SDK制作工程中添加New Header Phase将制作静态库需要的.h文件添加到Project中,将静态库调用的头文件添加到Public中静态库打包bundle文件>由于演示制作的静态库包... ...查看全部
0
评论

腾讯iOS面试题一分析 iOS面试题

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

网络相关:1. 项目使用过哪些网络库?用过ASIHttp库嘛AFNetworking、ASIHttpRequest、Alamofire(swift)1、AFN的底层实现基于OC的NSURLConnection和NSURLSession2、ASI的底层实现基于纯... ...查看全部
0
评论

iOS 头条一面 面试题 iOS面试题

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

1、如何高效的切圆角?切圆角共有以下三种方案:cornerRadius + masksToBounds:适用于单个视图或视图不在列表上且量级较小的情况,会导致离屏渲染。CAShapeLayer+UIBezierPath:会导致离屏渲染,性能消耗严重,不推荐使用... ...查看全部
0
评论

iOS底层-isa iOS开发

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

Root class (class)其实就是NSObject,NSObject是没有超类的,所以Root class(class)的superclass指向nil。每个Class都有一个isa指针指向唯一的Meta classRoot class(meta)的... ...查看全部
0
评论

iOS面试必背的算法面试题 iOS面试题

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

1、实现二分查找算法int binarySearchWithoutRecursion(int array[], int low, int high, int target) {while (low <= high) { int mid = l... ...查看全部
0
评论

iOS底层-方法的本质 iOS开发

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

通过clang -rewrite-objc main.m -o mian.cpp编译的对象调用方法底层int main(int argc, const char * argv[]) { /* @autoreleasepool */ { __AtAutor... ...查看全部
0
评论

移动iOS架构起航 iOS开发

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

架构就如人体骨架,肌肉和血液还有其他就顺着骨架填充!MVC架构思想MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组... ...查看全部
1
回复

ios apns为什么收不到离线推送 环信_iOS集成问题 环信_iOS使用问题

luzhu 回复了问题 • 2 人关注 • 287 次浏览 • 2021-04-17 08:27 • 来自相关话题

0
评论

Charles抓取iPhone接口数据 iOS开发工具

费城 发表了文章 • 111 次浏览 • 2021-04-16 21:36 • 来自相关话题

抓取HTTP请求安装Charles,自行百度安装我安装的版本是4.2.6的设置代理:Proxy->ProxySetting手机设置,手机跟电脑接同一个局域网,配置HTTP代理抓取HTTPS请求抓取请求需要安装SSL证书,Help->SSL Prox... ...查看全部
0
评论

iOS 利用UserDefaults快速实现常用搜索页记录工具 iOS API调用

费城 发表了文章 • 124 次浏览 • 2021-04-16 21:24 • 来自相关话题

1、需求分析存储内容为字符串存储内容要去重存储个数会有个上限存储个数达到上限后要先前挤掉旧数据,保留新数据调用动作一般为 存 / 读 / 清空全部2、实现.h文件// RPCustomTool.h// RollingPin//// Created by ... ...查看全部
0
评论

UITableviewCell 使用Masonry撑开cell高度 遇见[LayoutConstraints] Unable to simultaneously satisfy constraints 第三方类库

费城 发表了文章 • 115 次浏览 • 2021-04-16 21:19 • 来自相关话题

1、问题描述在布局UITableviewCell 内容时, 可用使用Masonry方便的自动计算高度撑开布局,但是当遇到cell高度不同,多个复杂的子view竖向排列时,容易产生高度计算冲突问题导致报如下一坨2、解决办法使用 Masonry 的 priorit... ...查看全部
0
评论

【iOS】Keychain 钥匙串 iOS API调用

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

钥匙串,实际上是一个加密后的数据库,如下图所示。即使吧App删除,钥匙串里面的数据也不会丢失。数据都是以 Item 的形式来存储的,每个 Item 由一个加密后的 Data 数据,还有一系列用来描述该 Item 属性的 Attributes 组成。由于是数据库... ...查看全部
0
评论

iOS 网页和原生列表混合布局开发(文章+评论) iOS API调用

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

我们总会遇见特别不适合使用原生开发的页面,比如一个文章详情页,上面是文章下面是评论,就比如现在用的简书的手机版这样,那么这种需求应该怎么做呢?最好的方法当然是整个页面都是用H5开发,哈哈哈;当然下面评论有时候会有很多交互导致得用原生控件开发,那这里就面临着严峻... ...查看全部
0
评论

iOS你需要知道的事--Crash分析 iOS开发

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

Crash ,,CrashlyticsHockeyapp友盟Bugly 等等但是,所有的但是,这不够!因为我们不再是一个简单会用的iOS开发人员,必将走向底层,了解原理,掌握装逼内容和技巧是我们的必修课首先我们来了解一下Crash的底层原理... ...查看全部
0
评论

iOS-UIView常用的setNeedsDisplay和setNeedsLayout iOS API调用

费城 发表了文章 • 93 次浏览 • 2021-04-16 10:53 • 来自相关话题

UIView的setNeedsDisplay和setNeedsLayout方法      首先两个方法都是异步执行的。而setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到 UIGraphics... ...查看全部
0
评论

iOS Crash分析中的Signal iOS开发

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

下面是一些信号说明1.SIGHUP本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联。登录Linux时,系统会分配给登录用户一个终端(Session)。在这个终端运... ...查看全部
0
评论

iOS——SDWebImage加载WebP图片 第三方类库

费城 发表了文章 • 107 次浏览 • 2021-04-15 21:57 • 来自相关话题

1.确定第三方库首先直接去SDWebImage的仓库,里面直接就有关于WebP的仓库地址也就是SDWebImageWebPCoder,直接pod 'SDWebImageWebPCoder'就行。(如果项目里没有SDWebImage,需要pod 'SDWebIm... ...查看全部