自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (1)
  • 收藏
  • 关注

原创 Easy Connect Mac详细安装教程

访问https://vpn.dtwave.com/ 会跳转到软件下载地址选择对应系统的安装包点击下载即可解压安装包(普通安装流程),安装成功后,在弹出的窗口输入服务器地址;在弹出的窗口输入用户名、密码,点击登录即可...

2020-03-02 15:32:26 7552 2

原创 配置Flutter环境时,在链接库文件报错

brew link python Linking /usr/local/Cellar/python/3.7.2_2... Error: Permission denied @ dir_s_mkdir在用brew doctor执行的时候提示:You have unlinked kegs in your Cellar.Leaving kegs unlinked can lead to bu...

2019-07-27 14:39:12 415

原创 升级完macOS Mojave至10.14.6后,cocoapods就报错了

xcrun: error: invalid active developer path使用CocoaPods 时报错了 :分析:Failed to extract git version from ' git --version ' xcrun: error: invalid active developer path未能从' git—version '中提取git版本:错误:...

2019-07-23 20:35:51 496

转载 iOS面试题

1 iOS基础 1.1 父类实现深拷贝时,子类如何实现深度拷贝。父类没有实现深拷贝时,子类如何实现深度拷贝。 深拷贝同浅拷贝的区别:浅拷贝是指针拷贝,对一个对象进行浅拷贝,相当于对指向对象的指针进行复制,产生一个新的指向这个对象的指针,那么就是有两个指针指向同一个对象,这个对象销毁后两个指针都应该置空。深拷贝是对一个对象进行拷贝,相当于对对象进行复制,产生一个新的对象,那么就有两个指针分别指向两个...

2018-07-23 17:25:59 248

转载 使用Jenkins配置iOS自动化构建工具

 关于iOS自动化构建其实并不复杂,通过一些简单的Git与Xcode指令,加上UI,我们自己也可以动手编写一款自动化构建工具。这在之前的博客中也有涉及,有兴趣的朋友可以在如下地址找到这篇博客:自己动手设计一款iOS自动构建发布工具:my.oschina.net/u/2340880/b…       本篇博客主要记录使用Jenkins搭建iOS自动化构建项目的过程,关于Jenkins的更多自...

2018-07-23 17:20:41 3284

原创 mac OS 10.13系统 Pod报错

升级 mac ox 10.13 之后突然发现 cocopods 不能使用,报错如下:/usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory 解决方案:在命令行输入:sudo gem insta...

2018-05-08 16:22:51 233

原创 ios打包Archive时报错

在xcode 8 上模拟器和真机编译成功,但是进行Archive时,报以下错误:clang: error: linker command failed with exit code 1 (use -v to see invocation)原因:在Xcode 7中,我们新建一个iOS程序时,bitcode选项默认是设置为YES的。我们可以在”Build Settings”->”Ena

2017-08-31 11:20:45 1368

原创 代码管理工具git端遇到的问题

1.checkout代码出错Last login: Tue May  9 14:14:42 on ttys003tdeMacBook-Pro:~ longjun$ lsApplications DownloadsMusic gitkeyfilersacert.csrDesktop LibraryPictures gitkeyfile.pubDoc

2017-08-30 16:50:28 15387

原创 集成ShareSDK第三方(QQ)登录时遇到的小问题

:Error Domain=ShareSDKErrorDomain Code=207 "(null)" UserInfo={error_message=Can't share because plat...解决方案:在kppkey于appid配置之后的情况下,需要添加两个配置,如图:注意图中设置tecent+appid 和QQ+appid,对应的appi

2017-08-30 14:34:40 686

原创 UITableView中cell的重用机制

UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件。上面主要是一个个的UITableViewCell,可以让UITableViewCell响应一些点击事件,也可以在UITableViewCell中加入UITextField或者UITextView等子视图,使得可以在cell上进行文字编辑。UITableView中的cell可以有很多,一般会通过

2017-08-17 16:26:56 234

原创 OC和C++混编造成其它类错误的问题(Compile Sources As Objective-C++)

最近集成百度SDK,实现路径规划,导入这个SDK库到新项目中,程序需要有以下设置才能不会报错:项目-Targets-Build Settings Apple LLVM 6.0 -Language-Compile Sources AS:C++ Language Dialect 和 C++ Standard Library这么做后,.a静态库文件都能编译

2017-08-10 18:27:41 878

转载 mac 终端命令

终端命令一. 启动,关机,登入,登出相关命令 登录 登出 登出 停止系统 停止系统 重启动 切断电源 把内存里的内容写入磁盘 安装lilo启动管理程序 安装lilo启动管理程序二. Shell相关命令 切换Shell 显示命令履历 设置命令别名 取消命令别名

2017-05-09 18:31:27 3907

转载 CocoaPods的安装

1、升级Ruby环境终端输入:$ gem update --system此时会出现没权限升级Ruby的提示这是因为你没有权限去升级Ruby这时应该输入:$ sudo gem update --system此时会出现输入密码接下来输入密码,注意:输入密码的时候没有任何反应,光标也不会移动,你尽管输入就是了,输完了直接回车

2017-05-06 13:46:46 205

转载 ios开发中SVN的使用

SVN命令行工具1、从本地导入代码到服务器(第一次初始化导入),在终端中输入:svn import /Users/apple/Documents/workspace/project svn://hostname/svn/project --username=mj --password=123 -m "初始化导入"说明:将/Users/apple/Documents/wo

2017-05-05 18:30:35 2450

转载 iOS中集成ijkplayer视频直播框架

ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijkplayer, 即便以前从没有接触过, 按着下面做也可以集成成功!一. 下载ijkplayerijkplayer下载地址:https://github.com/Bilibili/ijk

2017-04-27 21:13:30 185

转载 iOS 音视频高级编程:Audio Unit播放FFmpeg解码的音频

文档描述了iOS播放经FFmpeg解码的音频数据的编程步骤,具体基于Audio Toolbox框架的Audio Session和Audio Unit框架提供的接口实现。在iOS 7及以上平台Audio Session已标识为废弃,改用AVAudioSession实现即可,编程逻辑基本保持一致。同时,尝试不解码的情况下,直接播放AAC流,这是个人理解的『硬解』AAC。所有测试数据均来自iPhon

2017-04-27 21:12:15 1228

转载 ios开发之与CoreData的连接

1.在TableView没遇到CoreData的时候我们怎么通过动态表视图来显示我们的通讯录的内容呢?也就是说我们通讯录的数据结构该如何组织呢?    为了在TableView中显示我们的信息我们这样设计我们的数据结构:      1.整个TableView是一个可变的数组tableArray;      2.tableArray中的每个元素又是一个存放分组的字典secti

2017-04-26 20:16:02 453

转载 基于XMPP协议来实现通信

关于XMPP的理论介绍在本篇博客中就不做赘述了,如何在我们之前的微信中加入XMPP协议来实现通信呢?下面将会介绍一下XMPP的基本的知识,让我们的微信可以实现互联通信。要做的准备工作是要有服务器支持XMPP协议,然后通过spark注册个测试账号,最后就可以通过XMPP用我们已有的账号和密码进行通信啦。至于如何使服务器支持XMPP协议,如何通过Spark注册账号,不是本篇博客的论述主题,本篇博客中主

2017-04-26 13:23:30 444

原创 iOS开发之手势识别

iOS开发之手势识别,总共有六种手势识别:轻击手势(TapGestureRecognizer),轻扫手势(SwipeGestureRecognizer), 长按手势(LongPressGestureRecognizer),  拖动手势(PanGestureRecognizer), 捏合手势(PinchGestureRecognizer),旋转手势(RotationGestureRecognizer

2017-04-26 13:21:42 363

转载 iOS 基于GCDAsyncSocket快速开发Socket通信

GCDAsyncSocket是CocoaAsyncSocket第三方库中的其中一个类,本文介绍的就是基于这一个类来做快速的socket通信开发,而且该库已经支持IPv4和IPv6我们对GCDAsyncSocket做了一层封装调用,它包含了建连、断开、重连、心跳、自定义请求首先,介绍一下CocoaAsyncSocket第三方库的用途CocoaAsyncSocket p

2017-04-11 13:01:12 629

转载 模仿iOS7 task switcher的卡片动画

最近看到一个iOS9的task switcher开源实现,但是没有删除功能,就想着干脆做一个模仿iOS7系统的效果,加上删除和重用卡片功能,效果图如下:这是代码地址:https://github.com/Yuzeyang/GCCardViewController实现上可以使用scrollView或者collectionView去做,这个我是用scrollView去做功能点上

2017-04-11 12:59:54 261

转载 method Swizzling实践

实现跨平台的缘故,所以在最顶层是由lua来编写相关的业务代码的,实现安卓和iOS端业务的快速开发,中间是一层统一的c++接口,然后iOS跟安卓根据这份统一的c++接口实现各自平台的底层逻辑代码,比如对于一个View,c++的统一接口为: void *createView(const char *type)然后创建view由iOS跟安卓各自去实现,iOS端可以实现c++跟oc的混合编码,

2017-04-06 00:14:58 242

转载 iOS-缓存机制的理解与实现

(1)运行中的现象:在iOS开发中,会遇到:同一NSURL被多次请求,会造成用户的流量浪费,程序的响应速度不够快。比如说,从服务器上请求一张图片,请求100次,下载的结果都是一样的。(2)解决方法:为了提高程序响应速度,可以考虑缓存。内存缓存和硬盘缓存。 内存缓存其实是沙盒缓存。缓存在客户端和服务器通信的过程(2-1)客户端第一次向服务器请求数据:第一次请求数据

2017-04-05 23:30:33 853

转载 iOS app性能优化的那些事

iPhone上面的应用一直都是以流畅的操作体验而著称,但是由于之前开发人员把注意力更多的放在开发功能上面,比较少去考虑性能的问题,可能这其中涉及到objective-c,c++跟lua,优化起来相对复杂一些,导致应用在比如touch等较低端的产品上,光从启动到进入页面就花了将近一分钟的时间,页面之间的切换没有那种很流畅的感觉,内存也居高不下,比较影响应用的用户体验,所以很有必要进行一些优化,下面记

2017-04-05 23:21:53 270

转载 iOS超全开源框架、项目和学习资料汇总(1)UI篇

动画1. Core Animation笔记,基本的使用方法 – Core Animation笔记,基本的使用方法:1.基本动画,2.多步动画,3.沿路径的动画,4.时间函数,5.动画组。2. awesome-ios-animation – iOS Animation 主流炫酷动画框架(特效)收集整理 收集整理了下iOS平台下比较主流炫酷的几款动画框架。3. pop –

2017-04-05 22:18:11 321

转载 HTTP长连接与短链接以及推送技术原理

HTTP长连接和短连接以及推送服务原理HTTP长连接和短连接11. HTTP协议与TCP/IP协议的关系      HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且顺序

2017-04-05 21:57:48 270

转载 浅谈TDD、BDD与ATDD软件开发 (敏捷开发模式)

1. 首先了解一下这三个开发模式都是什么意思:TDD:测试驱动开发(Test-Driven Development)测试驱动开发是敏捷开发中的一项核心实践和技术,也是一种设计方法论。TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。TDD的基本思路就是通过测试来推动整个开发的进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,

2017-04-05 21:41:14 284

转载 并发和并行的区别

并发和并行的区别就是一个处理器同时处理多个任务和多个处理器或者是多核的处理器同时处理多个不同的任务。前者是逻辑上的同时发生(simultaneous),而后者是物理上的同时发生.来个比喻:并发和并行的区别就是一个人同时吃三个馒头和三个人同时吃三个馒头。         当有多个线程在操作时,如果系统只有一个CPU,则它根本

2017-03-31 12:50:59 230

转载 简单理解Socket及TCP/IP、Http、Socket的区别

TCP/IP要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,定义了主机如何连入因特网及数据如何再它们之间传输的标准,从字面意思来看TCP/IP是TCP和IP协议的合称,但实际上TCP/IP协议是指因特网整个TCP/IP协议族。不同于ISO模

2017-03-31 12:08:07 302

转载 苹果为什么要禁止 JSPatch 等热更新技术?

前言最近不少 iOS 开发者都收到了苹果的警告邮件,在邮件中,苹果称开发者使用了动态代码更新技术,要求开发者删除相关代码,并重新提交一个新的 App 版本以供审核。邮件原文翻译如下:尊敬的开发者,您的应用,扩展程序和/或链接框架似乎包含明确设计的代码,能够在应用审核批准后更改应用的行为或功能,这不符合 Apple 开发人员计划许可协议和应用的第 3.3.2 节商店审查指

2017-03-09 20:43:39 2689

原创 block

Grand Central Dispatch,或者简称 GCD,是一个与 Block Object 产生工作的低级的 C API。GCD 真正的用途是将任务分配到多个核心又不让程序员担心哪个内核执行哪个任务。 在 Max OS X 上,多内核设备,包括笔记本,用户已经使用了相当长的时间。通过多核设备 比如 iPad2 的介绍,程序员能为 iOS 写出神奇的多核多线程 APP。GCD 的核心

2016-07-08 00:50:23 209

原创 tableview的应用

UITableView简介UITableView继承自UIScrollView,只支持垂直滚动。在iOS中的绝大部分表格数据展示,都可以由UITableView来完成。UITableView具有延迟加载和重用的特性,加载数据时不会一次加载完所有的数据,而是只加载当前被显示的内容,移出屏幕的单元格,被放到缓存池中等待重用UITableView的常用方法与属性常用方法

2016-06-30 00:08:59 257

原创 浅析block

////  main.m//  07-Block演练////  Created by LNJ on 14-6-25.//  Copyright (c) 2014年itcast. All rights reserved.//#importvoidblockDemo2();voidblockDemo3();voidblockDemo4();i

2016-06-29 23:59:42 463

原创 cocoapods安装

1.替换ruby更新源.gem sources --remove https://rubygems.org/ gem sources -a https://ruby.taobao.org/注意:是https,不是http2.验证更新是否成功.gem sources -l*** CURRENT SOURCES *** https://ruby.taobao

2016-06-19 21:08:35 214

原创 UITableView的“静态单元格”

##UITableView的“静态单元格”###静态单元格与动态单元格* 静态单元格:不会随数据的改变而改变,当在storyboard中创建好后,显示的数据内容和模板样式都固定不变。需要修改,只能在storyboard中修改* 动态单元格:设计时只是创建了一个空壳和一些基础属性(比如背景色、字体等),实际的大小和显示方式,需要在运行时通过显示数据的不同而动态计算再显示。优点是可以根据不

2016-06-16 23:29:03 1830

原创 UICollectionView

UICollectionView概念UICollectionView继承自UIScrollView,支持水平和垂直滚动。UICollectionView和UITableView共享API设计,并在UITableView的基础上做了扩展。UICollectionView最强大、同时显著超出UITableView的特色就是其完全灵活的布局结构UICollectionView也是由d

2016-06-16 23:26:25 240

原创 collectionView

##collectionView图片无限滚动实现的思想* collectionView只有3个Cell。每次滚动结束后,都让collectionView以非动画方式,滚回到第一个Cell(Cell从序数0开始)上,以保证每次拖拽滚动结束后,collectionView依然可以滚动* 通过监听collectionView的滚动方向对应修改图片的全局索引值,每次collectionView自动

2016-06-16 23:23:05 318

MindNode思维导图

思维导图软件

2016-06-19

空空如也

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

TA关注的人

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