自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (18)
  • 收藏
  • 关注

原创 flutter boost

# 第二章、构建基于flutter的混合应用## 2.2常见的原生解决方案##### 2.2.1 flutter boost演进''0.0 双引擎利用AB两个引擎,对界面进行预加载解决flutterVC切换时,加载时间长的问题1.0 共享视图将页面通过key:value的形式进行存储,减少放回页面时的视图构建时间内存只存两个截图,其余存磁盘解决平级flutterVC页面切换,(会被栈顶丢出去)状态丢失的问题2.0 共享引擎将VC与引擎相关联,使flutterVC与app生命周期捆

2022-03-05 10:02:08 4910

原创 flutter组件化调研

# 一、组件化接入方式跟原生组件化类似,共有两种方式接入:pod和framework怎么配置flutter环境,flutter官网上讲得很详细了,不在累赘了## 1.以pod的方式接入 1.创建一个flutter_module```flutter create -t module flutter_module```![WX20220303-103123@2x.png](https://upload-images.jianshu.io/upload_images/3355903-f99...

2022-03-03 20:44:46 2123

原创 2022年iOS面试题简答题

级别方面:iOS中级:基础70%,底层原理20%,架构10%iOS高级:基础10%,底层原理50%,架构20%,算法20%iOS架构:底层原理50%,架构20%,算法20%,手写算法10%iOS专家:底层原理20%,架构20%,算法40%,手写算法20%总的来说就是:中级偏向运用,会不会使用,怎么使用,有没有使用过。高级偏向底层原理,底层是怎么实现的,你在哪里使用过架构偏向为什么这么设计(这样设计解决了什么问题,又出现了什么新的问题)一般都是第三方框架,比如ASI和AFN,http2.0和

2022-03-03 10:16:27 3307

翻译 UIWebView体系结构(一)概貌

UIWebView属于UIKit,封装了WebKit.framework的WebView;WebView组合管理了WebCore.framework的Page,并提供了各种Clients;Page管理了Main Frame,Main Frame管理了sub Frame(FrameTree)。UIWebView层(点击图片查看全图):WebView层(点击图片查看全图):

2016-08-19 17:44:51 342

翻译 Objective-C Runtime 运行时之六:拾遗

前面几篇基本介绍了runtime中的大部分功能,包括对类与对象、成员变量与属性、方法与消息、分类与协议的处理。runtime大部分的功能都是围绕这几点来实现的。本章的内容并不算重点,主要针对前文中对Objective-C Runtime Reference内容遗漏的地方做些补充。当然这并不能包含所有的内容。runtime还有许多内容,需要读者去研究发现。super在Objectiv

2016-08-19 17:44:00 391

翻译 Objective-C Runtime 运行时之五:协议与分类

Objective-C中的分类允许我们通过给一个类添加方法来扩充它(但是通过category不能添加新的实例变量),并且我们不需要访问类中的代码就可以做到。Objective- C中的协议是普遍存在的接口定义方式,即在一个类中通过@protocol定义接口,在另外类中实现接口,这种接口定义方式也成为 “delegation”模式,@protocol声明了可以呗其他任何方法类实现的方法,协议

2016-08-19 17:43:40 214

翻译 Objective-C Runtime 运行时之四:Method Swizzling

理解Method Swizzling是学习runtime机制的一个很好的机会。在此不多做整理,仅翻译由Mattt Thompson发表于nshipster的Method Swizzling一文。Method Swizzling是改变一个selector的实际实现的技术。通过这一技术,我们可以在运行时通过修改类的分发表中selector对应的函数,来修改方法的实现。例 如,我们想跟踪在程序中

2016-08-19 17:43:24 301

翻译 Objective-C Runtime 运行时之三:方法与消息

前面我们讨论了Runtime中对类和对象的处理,及对成员变量与属性的处理。这一章,我们就要开始讨论Runtime中最有意思的一部分:消息处理机制。我们将详细讨论消息的发送及消息的转发。不过在讨论消息之前,我们先来了解一下与方法相关的一些内容。基础数据类型SELSEL又叫选择器,是表示一个方法的selector的指针,其定义如下:typedef struct objc_selec

2016-08-19 17:42:54 467

翻译 Objective-C Runtime 运行时之二:成员变量与属性

在前面一篇文章中,我们介绍了Runtime中与类和对象相关的内容,从这章开始,我们将讨论类实现细节相关的内容,主要包括类中成员变量,属性,方法,协议与分类的实现。本章的主要内容将聚集在Runtime对成员变量与属性的处理。在讨论之前,我们先介绍一个重要的概念:类型编码。类型编码(Type Encoding)作 为对Runtime的补充,编译器将每个方法的返回值和参数类型编码为一个字符串

2016-08-19 17:42:30 919

翻译 Objective-C Runtime 运行时之一:类与对象

Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等。这 种特性意味着Objective-C不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。对于Objective-C来说,这个运行时系统就像一 个操作系统一样:它让所有的

2016-08-19 17:42:01 474

原创 WWDC15 Session笔记 - 30 分钟开发一个简单的 watchOS 2 app

Apple Watch 和 watchOS 第一代产品只允许用户在 iPhone 设备上进行计算,然后将结果传输到手表上进行显示。在这个框架下,手表充当的功能在很大程度上只是手机的另一块小一些的显示器。而在 watchOS 2 中,Apple 开放了在手表端直接进行计算的能力,一些之前无法完成的 app 现在也可以进行构建了。本文将通过一个很简单的天气 app 的例子,讲解一下 watchOS 2

2015-09-14 15:43:31 897

转载 iOS标准时间与时间戳相互转换

[cpp] view plaincopy设置时间显示格式:      NSString* timeStr = @"2011-01-26 17:40:50";      NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];      [formatter set

2015-09-11 10:28:28 285

原创 如何清除iOS模拟器的数据

xcode->preference->location->derived Data删除里面所有的 就ok了

2015-09-11 10:07:02 1474

原创 NSDate 时间比较

由 NSDate 转换为 NSString:NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];NSString *strDate = [dateFormatter stringFromDate:[

2015-09-10 17:52:41 1137

原创 日期和日期相减

//实例化一个NSDateFormatter对象    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];    //设定时间格式,这里可以设置成自己需要的格式    [dateFormatter setDateFormat:@"yyyyMMdd"];NSDate *toDate = [formater

2015-09-10 09:24:44 385

原创 微信支付

文档说明术语支付账户接口规则APP支付场景介绍案例介绍业务流程API详细说明APP端开发步骤API列表API列表SDK下载首页APP支付APP端开发步骤说明1.IOS开发要点说明以下项目开发环境以Xcode10.0,运行环境为IOS7.0为例,说明其开发中需要的操作。1)项目设置

2015-09-10 09:22:44 772

原创 ALAsset,ALAssetsLibrary,ALAssetsgroup常见属性及用法

​ALAssetsgroup--------------------------------------------------------------------------- Enumerating Assets(遍历资源)– enumerateAssetsUsingBlock:(用一个block来遍历组里的资源)– enumerateAssetsWithO

2015-08-03 17:54:37 394

转载 简单介绍以下几个宏: 1

简单介绍以下几个宏:1) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持)。宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉,否则会编译出错。2) __FILE__ 宏在预编译时会替换成当前的源文件名3) __LINE__宏在预编译时会替换成当前的行号4

2015-04-04 14:42:06 459

转载 声明和创建Blocks 3.1 声明一个block的引用

Block 变量拥有 blocks 的引用。你可以使用和声明函数指针类似的语法来声明它 们,除了它们使用 ^修饰符来替代 * 修饰符。Block 类型可以完全操作其他 C 系统 类型。以下都是合法的 block声明:     void (^blockReturningVoidWithVoidArgument)(void);    int (^blockReturning

2015-04-04 14:42:04 429

原创 谓词NSPredicate

NSMutableArray *array = [[NSMutableArray alloc]init];        for (int i = 0 ; i             Person *person = [[Person alloc]init];            if (i                 person.name = [NSString st

2015-04-04 14:41:00 396

转载 OC学习笔记

一、OC简介> C语言的基础上,增加了一层最小的面向对象语法> 完全兼容C语言> 可以在OC代码中混入C语言代码,甚至是C++代码> 可以使用OC开发Mac OS X平台和iOS平台的应用程序 二、OC语法预览1. 关键字> 基本上所有关键字都是以@开头> 下面列举一些常见的关键字,看一眼就行了,不用去翻资料查找它们的含义@interface、@impl

2015-04-04 14:40:18 504

转载 日期和日期相减

//实例化一个NSDateFormatter对象    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];    //设定时间格式,这里可以设置成自己需要的格式    [dateFormatter setDateFormat:@"yyyyMMdd"];NSDate *toDate = [formater

2015-04-04 14:38:55 648

转载 使用GTMBase64编码解码字符串

#import "GTMBase64.h"- (void)testExample{ NSData *data = [@"HelloWorld" dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; NSString* encoded = [[NSString alloc] initWith

2015-04-04 14:37:04 780

转载 为什么不能上Facebook?

你要到中国做生意,你就必须把店开到中国,把服务器放在中国,这就是治权,治理的权利,这在那一个国家都不例外。美国人办的公司咋了?到中国就的尊重中国的治权。  广州日报:中国的Facebook为什么非死不可  有个《Facebook在中国为何会沦为“非死不可”》贴子,说在中国照抄Facebook没戏,最终只能沦为“非死不可”。大致上我同意他的结论,却不同意他得出结论的

2015-03-16 15:40:00 830

OATH标准OTP算法

从OATH标准资料整理的OTP算法Java工程代码。 完整Eclipse工程代码,使用JCE。 包括:HOTP(事件OTP),TOTP(时间OTP)和 OCRA(挑战与应答OTP)。 完全来源于网上标准文档,RFC6226,RFC6238,RFC6287。

2017-12-12

OmniGraffle 全部模板

OmniGraffle 全部模板

2017-06-26

IStreamContract

如果您的项目不需要P2P、不需要传文件、不需要群集等功能,只需要简单的TCP/UDP通信。那么,可以考虑使用轻量级的通信引擎StriveEngine。相比较而言,StriveEngine更单纯、更容易上手,也更容易与已存在的遗留系统进行协作。 一.StriveEngine 主要特性 1.底层采用高效的IOCP(完成端口)模型。 2.内部自动管理可复用的线程池、以及内存池。 3.内置多种通信引擎类型:TCP/UDP、文本协议/二进制协议、服务端/客户端。而且,所有这些引擎的使用方式一致。 4.解决了TCP通信中的粘包以及消息重组问题。 5.发送消息支持同步、异步两种方式。 6.服务端引擎支持异步消息队列模式。 7.客户端TCP引擎支持断线自动重连。 8.支持Sock5代理。 9.兼容IPv6。 二.使用StriveEngine的步骤 (1)实现ITextContractHelper或者是IStreamContractHelper接口(如何实现该接口,可参考后面demo的源码)。 (2)调用NetworkEngineFactory的创建引擎的方法,得到正确的通信引擎实例。 (3)根据需要,设置引擎实例的某些属性(如MaxMessageSize属性)。 (4)根据需要,预定引擎实例的某些事件(如MessageReceived事件)。 (5)调用引擎实例的Initialize方法启动通信引擎。

2017-06-01

.NET通用权限系统快速开发框架

.NET通用权限系统快速开发框架

2017-03-17

标注神器MarkMan_2.7.15

标注神器MarkMan_2.7.15

2016-12-09

springside4.3.0.zip

我找了很久,都是那种hubgit上的那种,一直没明白怎么用,终于后来会了,不明白为什么不直接提供jar包,还要自己生成。这个是已生成成功的。仅支持Oracle, H2, MySql, PostgreSql, SQLServer。包括core和utils,以及source源码

2016-10-18

harles 3.11.2Mac破解文件

harles 3.11.2Mac破解文件

2015-11-23

能用的折线图

pnchart 折线图 股票图 证卷图 基金图 走势图

2015-09-06

AFN,请求类,下载上传

AFN,请求类,get,post,下载,上传

2015-09-02

socket即时通信

socket即时通信,既有客户端,又有服务端。

2015-08-05

支付集成,微信支付,支付宝支付,apple支付,百度钱包

支付集成,微信支付,支付宝支付,apple支付,百度钱包

2015-07-29

versions版本控制器

versions,iOS开发版本控制器

2015-07-29

推送php端代码

推送php端代码

2015-07-29

仿微信聊天布局

模仿微信的聊天布局。高度自适应

2015-07-29

AsyncSocket

AsyncSocket后台与客户端的异步即使通信。

2015-04-04

xmpp即时通信

xmpp实现后台与手机客户端的即时通信。

2015-04-04

openfire苹果上搭建后台的工具

openfire在苹果上搭建后台的工具。

2015-04-04

reachability

reachability网络检查,用于检测当前网络状态

2015-04-04

空空如也

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

TA关注的人

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