7 高爽

iOS工程师

我要认证

Had I not seen the Sun I could have borne the shade But Light a newer Wilderness My Wilderness has made

等级
TA的排名 1w+

IOS- ZFIJKPlayerManager ZFAVPlayerManager

IJKFFMoviePlayerController 直播IJKAVMoviePlayerController 点播 ,需要修改ZFIJKPlayerManager 中player 为IJKAVMoviePlayerController

2020-01-20 16:50:48

iOS面试题:Socket原理

1、套接字(socket)概念套接字(socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。应 用层通过传输层进行数据通信时,TCP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序...

2019-12-27 11:19:53

图片的解压缩到渲染过程

一.图像从文件到屏幕过程通常计算机在显示是CPU与GPU协同合作完成一次渲染.接下来我们了解一下CPU/GPU等在这样一次渲染过程中,具体的分工是什么?CPU: 计算视图frame,图片解码,需要绘制纹理图片通过数据总线交给GPU GPU: 纹理混合,顶点变换与计算,像素点的填充计算,渲染到帧缓冲区。 时钟信号:垂直同步信号V-Sync / 水平同步信号H-Sync。 iOS设备...

2019-12-26 11:00:36

深入理解RunLoop

深入理解RunLoop由ibireme| 2015-05-18 |iOS,技术RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。IndexRunLoop 的...

2019-12-24 17:25:27

RunLoop剖析

一、RunLoop概念RunLoop是通过内部维护的事件循环(Event Loop)来对事件/消息进行管理的一个对象。1、没有消息处理时,休眠已避免资源占用,由用户态切换到内核态(CPU-内核态和用户态)2、有消息需要处理时,立刻被唤醒,由内核态切换到用户态为什么main函数不会退出?int main(int argc, char * argv[]) { @aut...

2019-12-24 14:32:56

IOS- 静态库制作

原理基本流程什么网上很多老郏桌面新建文件夹 终端cdlipo -create 2拖进去3拖进去 -output TestFramework (看好空格)将生成的TestFramework替换2或3,拖进工程就可以测试了...

2019-12-11 16:07:39

认识CALayer 离屏渲染 缘由 优化

layer和view的关系开始开发都是从view开始,而且很长一段时间可能都只认识到view,而只会在某些角落看见layer,比如圆角,比如coreAnimation动画,还有绘制内容时也使用CALayer,所以对于layer的首要疑问肯定是:这货跟view到底什么关系?出自 WWDC 2012- iOS App Performance- Graphics and Animations...

2019-12-09 16:31:20

iOS 开发--怎样高效的使用多线程

写在前面多线程技术在移动端开发中应用广泛,GCD 让 iOS 开发者能轻易的使用多线程,然而这并不意味着代码就一定高效和可靠。深入理解其原理并经常结合业务思考,才能在有限的线程控制 API 中最大化发挥并发编程的能力,也能轻易的察觉到代码可能存在的安全问题并优雅的解决它。本文不会讲解 GCD 和各种“锁”的基本用法,而是结合操作系统的一些知识和笔者的认识讲述偏“思维”的东西,当然,最终也是...

2019-12-09 15:47:36

谈一谈 iOS 的锁

收录:原文地址翻看目前关于 iOS 开发锁的文章,大部分都起源于 ibireme 的 《不再安全的 OSSpinLock》,我在看文章的时候有一些疑惑。这次主要想解决这些疑问: 锁是什么? 为什么要有锁? 锁的分类问题 为什么 OSSpinLock 不安全? 解决自旋锁不安全问题有几种方式 为什么换用其它的锁,可以解决 OSSpinLoc...

2019-12-09 15:03:45

iOS面试题:谈谈你对事件的传递链和响应链的理解

一:响应者链UIResponser包括了各种Touch message 的处理,比如开始,移动,停止等等。常见的 UIResponser 有 UIView及子类,UIViController,APPDelegate,UIApplication等等。回到响应链,响应链是由UIResponser组成的,那么是按照哪种规则形成的。 A: 程序启动UIApplication会生成一个单例,并会关联...

2019-12-09 14:30:44

索引

socket 连接和 Http 连接的区别iOS面试题:谈谈你对事件的传递链和响应链的理解谈一谈 iOS 的锁iOS 开发--怎样高效的使用多线程认识CALayer 离屏渲染 缘由 优化...

2019-12-09 14:03:07

socket 连接和 Http 连接的区别

http 是基于 socket 之上的。socket 是一套完整的 tcp,udp协议的接口。HTTP协议:简单对象访问协议,对应于应用层,HTTP协议是基于TCP连接的。 tcp协议:对应于传输层。 ip协议:对应于网络层。 TCP/IP是传输层协议,主要解决数据如何在网络中传输,而HTTP协议是应用层协议,主要解决如何包装数据。Socket是对TCP/IP 协议的封装,它本...

2019-12-09 14:01:49

iOS 数据安全、数据加密传输

近期接到一个新需求:APP企业版需要接入热更新功能。热更新需要下发补丁脚本, 脚本下发过程中需要保证脚本传输安全,且需要避免中间人攻击。需要用到数据加密传输方面的知识,以下是我设计的加密解密流程:  0. 将脚本 base64 编码,得到编码后的文本 encodedScript;  1. 将encodedScript使用 AES 算法 加密,得到密文 cipherScript;...

2019-12-04 15:37:37

IOS - app账号appstoreconnect信息,审核,上传确认项,被拒记录

1.App Transport Security Settings需要指明权限以及用途<key>NSCameraUsageDescription</key> <string>您还没有开启相机权限,开启之后可拍照或录像</string> <key>NSContactsUsageDescription</key> &l...

2019-11-19 14:50:55

IOS - 内测分发 adhoc

iOS内测分发背景:我写博客一般都会写背景,因为我觉得光写某个技术点没有意义,技术最终都是为业务服务,因此我喜欢交代自己的使用场景,基于什么原因,我做过哪些常识,为什么最终这么做,这么做能解决我的什么问题….我们是一个小业务部,而且是传统行业转型互联网,业务部内还处于"史前洪荒"的状况,各种现在流行的东西都没有使用,移动端更是如此,开发迭代出的app都是靠微信/内部邮件转发来转发去,i...

2019-11-14 17:28:23

IOS- 11 Assets.xcassets方法添加LaunchImage Launch Images Source去掉了

1.在LaunchScreen.storyboard中拖拽imageView并设置约束,取消勾选右侧Use as launch Screen2.置空路径Launch Screen File3.最后在工程targets--Build Settings搜索Asset Catalog Launch Image Set Name然后设置Launch Image 就可以了从2020年4...

2019-10-29 14:32:42

IOS -推送 push相关

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {errro 中提示未找到应用程序的“aps-environment”的授权字符串需要勾选 signing& Capabilities 中 Remote ...

2019-10-12 20:30:44

IOS:FMDB使用databaseQueue实现数据库操作线程安全

sqlite数据库是ios开发中经常使用到的数据持久化方案,因为项目需求的不同,对数据库操作的要求也不同。由于最近使用sqlite时,有一些地方需要频繁的更新,这时在多线程操作时,其他线程访问数据库会造成程序崩溃,因为之前的框架里设计的数据库管理工具类采用的是单例模式,这样在多线程操作同一个数据库时很容易引起冲突,导致程序崩溃,所以开始寻找多线程下线程安全的办法。其实FMDB本身已经对多线...

2019-07-26 11:06:32

material

import 'package:flutter/material.dart';// void main() => runApp(MyApp());void main() { runApp(MyApp());}class MyApp extends StatelessWidget { // //自定义方法返回动态列表 // List<Widget> _ge...

2019-06-19 09:39:41

Flutter学习资源

Flutter是Google出品的一款用于开发高性能、高保真、跨平台App(Android iOS)的SDK。 目录文章 一开始 HOWTO文档 网站/博客 高级 视频 组件 演示 UI 材料设计 效果 日历 图片 地图 图表 导航 验证 文字和富文本 分析、流量统计 自动构建 ...

2019-06-18 16:05:39

查看更多

勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。