- 博客(28)
- 资源 (1)
- 收藏
- 关注
原创 关于iOS多重代理的实现(实现一对多的通知效果)
因为通知的一对多实现会产生内存泄漏、耦合关系太离散等一系列问题,有了想用代理实现一对多的方式通知。首先,我们要满足的条件是多处服从协议的类实现代理方法在触发其中一个代理,及即触发其他同一实现了的代理方法。即完成了一对多的实现。基本思路如下图所示:基本的思维导图...
2019-05-09 14:16:25 979
翻译 Flutter 进阶学习(一)Widget - State - Context - InheritedWidget 之间的关系
#Widget - State - Context - InheritedWidget 之间的关系(译文)原文来自-https://user-gold-cdn.xitu.io/2018/12/8/1678bb83bcdb5f6d (侵删)本文介绍了Flutter应用程序中Widget,State,Context和InheritedWidget的重要概念。特别注意InheritedWidget,...
2019-03-20 17:57:53 775 1
原创 iOS组件化之路-那些年走的那些坑
先宝一下组件化的私有荚方案。[ iOS的组件化方案选择(http://blog.csdn.net/shangy110/article/details/78937148 )然后确定使用哪个中间件。这里,我着重说一下MGJRouter和CTMediator 那我们用私有pods会有哪些坑的。** 第一坑 — :* 。创建私有荚,绝大多数根据官方的指南,都一般不会出现什么问题现在我要说的,我出现的...
2018-02-21 18:36:51 566
原创 iOS组件化、插件化、模块化之路(一)
前言:公司一年多的小项目,进行项目拆分,要求是每个业务模块都可以单独打包。在开发过程中,如:酒店模块,只修改酒店单元,测试也只测试酒店部分。模块间相互不干扰,就有了,今天组件化之路。一、组件化的目的。 说是组件化,其实更多的是模块化,对模块之间相互之间不干扰,可以单独打包,测试,且相同模块不同项目之间的移植便利许多。和Android的插件化大同小异,尤其是使用了cocoapods管理。二
2017-12-30 13:21:05 7008
原创 关于HTTPS的证书的那些事
xcode7之前一直使用http请求,苹果官方也默认是允许的。xcode7之后呢,因为http/2的产生,优化了网络请求和数据安全这块,所以苹果开始推荐使用HTTPS。现在过了元旦开始,强制使用https了,所以我们的项目也开始换HTTPS请求了。 首先说下sslSSLSSL - Secure Sockets Layer,现在应该叫”TLS”,但由于习惯问题,我们还是叫”SSL”比较多.http协
2016-11-21 19:13:50 2586
原创 从0总结iOS开发(二)
篇头很久以前看到一个故事,大概就是一位程序员编程 第一年写程序是 print(“hello,world”); 第二年 try{print(“hello,world”); } catch{} 第五年 封装了成了一个XXprint的类,写了多以的方法 第十年 回到了print(“hello,world”);简单点的说,我们从学会代码的实现,到学会断言抓异常,到学会优化,最后看到了本质。有点像山里
2016-11-17 12:55:51 387
原创 从0总结iOS开发(一)
正文最近换了份工作,当然还是iOS开发,感觉自己从程序员到程序猿。从每周的双休6点下班,20分钟路程 到每周8点加班单休,两个小时的路程。中间一段时间的调整了心态,一段时间算是从新思考了自己的人生(也算是职业规划吧)。一直感觉自己的开发能力还不错,但是一个人遇到了比较大的项目的时候变得手无失措,而且习惯一个人开发(前家公司自己独立完成3个APP开发),继续再怎么错都是自己一个人很容易补救的,也不会影
2016-11-15 17:36:14 344
原创 如何让一款HTML5应用上架AppStore(2016-12-2最新更新)
列表内容 AppStore的审核之严,都是我们所了解的。因为各种原因被拒的不在少数,例如APP广告太多、里面引用的webview中没有原始的痕迹、甚至因为icon太丑的,在这里就不一一列举了。需要知道AppStore上架规范可以跳转URL。现在切入正题,现在很多创业公司急用上架AppStore或者方便于更新迭代,对HTML5亲睐有加。当然,HTML5的优势是我们所知道的,没有平台限制,
2016-01-23 15:10:01 19528 2
原创 WKWebView和UIWebView及其四种交互
**UIWebView官方文档翻译** 继承关系:NSObject→UIResponder→UIView-→UIWebView遵循:NSCoding NSObject UIAppearance UIAppearanceContainer UICoordinateSpace UIDynamicItem UIScrollViewDelegate UITraitEnvironmen
2016-01-17 15:09:33 6128
翻译 iOS后台运行NSTimer
iOS 允许的几种后台几种后台存活的模式 ios7之后(一个app可以混合调用多种模式):Background Audio、VoIP、Location Services、Newsstand、Background Task Completion、Background Fetch 、Remote Notification、Background Transfer Service Background
2016-01-17 13:45:38 1969
翻译 Flutter 进阶学习(二)Widget - State - Context - InheritedWidget 之间的关系
上一章大概了解了Widget、State、Context的概念。本章主要讲解它们之间的关系。State和Context的关系现在这里还有一些基本概念被介绍,然后随着时间一步步深入。这里有一个有关Stateful Widget 的典型结构的一段代码。由于本文的主要目的是用“变量”数据来解释State的概念,我将故意跳过与某些Stateful Widget overridable方法相关的...
2019-05-21 15:08:20 1161 1
原创 xcode10及iOS12问题
iOS12及xcode10适配(iOS12真机调试包)1.升级到xcode 之后肯定是打不开的,除了像我做的另外一个项目,什么三方sdk都没有的,几乎不依赖于任何三方库。如果你没升级到xcode10,然而iOS12的机型崩溃,那么就要看看是不你的友盟SDK是否升级了。友盟的报错信息如下:[<UIStatusBarTimeItemView 0x101c29cd0> valueFo...
2018-09-26 11:04:53 1575
原创 AvoidCrash、UIImagePickerControllerSourceTypePhotoLibrary 相册崩溃问题
AvoidCrash 相机崩溃问题AvoidCrash的使用用于抓取crash上次日志信息。在开启unrecognized selector sent to instance并且控制台输出后,点击打开相册出现崩溃。崩溃信息[NSInvocation setArgument:atIndex:]: index (2) out of bounds [-1, 1]就是在ms存在的情况下还进行了,...
2018-09-18 10:52:18 1042
原创 WebViewJavaScriptBridge (swift版)
evaluateJavaScript(_ javaScriptString: String, completionHandler: ((Any?, Error?) -> Swift.Void)? = nil) “`来把数据传给js里面的回调。这里其实少说了一步,就是register 第一次注册的时候,会给webview 注入一段js代码。这段代码,就是用来和前端原生发出的js...
2017-10-25 10:59:35 2361
原创 Python的三种排序
(一)冒泡排序从数组的第一个数据进行比较。首先用第一个数据临近的数据比较,如果第二个数字比第一个数字小,交换位置。然后第三和第二比较,如果小交换位置。直接上代码。冒泡排序# 冒泡排序def sort(arr): for i in range(len(arr)): for j in range(i): if arr[j]>arr[j+1]:
2017-01-16 11:49:55 1359
原创 浅谈代码中的高内聚低耦合
前言 高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,主要是面向对象的设计,主要是看类的内聚性是否高,耦合度是否低。时隔几年再次想起这个词的时候,已经有完全不一样的理解。之前一直以为高内聚低耦合,无非让系统更新趋向于模块化。高内聚 其实结合OOP的思想,高内聚应该是更加趋向于接口化,工厂模式可以很容易体现这种思想。即方法调用,只要通过相应的接口,即可得到不同的实现。无需
2016-12-02 17:04:46 4798 2
原创 iOS银联支付(最新)
iOS 银联支付最近在开发一款类似携程的的旅游类APP,项目中可能用到的功能并不是很多。今天主要讲讲最近集成的银联支付的问题,还有和支付宝支付。微信支付的区别。一、银联支付基础介绍1、银联手机支付控件(以下简称支付控件),主要为合作商户的手机客户端提供安全、便捷的支付服务。用户通过在支付控件中输入银行卡卡号、手机号、密码(借记卡和预付卡)或者CVN2、有效期(信用卡)、验证码等要素完成支付。2、支付
2016-09-28 15:02:39 1689
原创 iOS的几种后台机制
一、首先。在Info.plist里面添加Key:Required background modes Value:App registers for location updates二、初始化#define RUNTIME 60*60//当然是控制在一小时以内- (void)viewDidLoad{[superviewD
2016-05-06 13:33:14 995
原创 iOS AFNetworking 3.0二次封装(一)
首先,这篇文章针对与菜鸟级别,大神路过的请勿拍砖。在很多时候我们时候,我们在使用AFNetworking 网络请求的时候,都要用到AFHTTPSessionManager 的类,去创建然后去设置一些不太用的到的参数。多数情况下,这些都是在无用功。 所以在闲暇的时候,把AF二次封装了一下,供自己在项目中的使用。在下次的博客中,会放出AFNetworking 的全面解析,欢迎指导学习。
2016-03-30 09:51:43 1797
原创 上架问题汇总
1丶在Build好的程式按右键,Find in finder2丶找到档案後再按右键,Show Package Content (我是英文系统,中文应该是显示内容之类的)3丶再进Products → Applications → xxx.app 再按右键,Show Package Content4丶打开Info.plist 有一个 BuildMachineOSBuild 是 15B17c ,把它成是用
2016-03-11 10:40:55 404
原创 上架 出现的问题
(void)update { NSUserDefaults *userdefaults= [NSUserDefaults standardUserDefaults]; NSDictionary *dic = [userdefaults dictionaryForKey:@”userInfo”]; NSString *str =dic[@”returnData”][@”new_version_
2016-03-11 10:25:48 287
原创 链式编程思想
1、链式编程思想:是将多个操作(多行代码)通过点号(.)链接在一起成为一句代码,使代码可读性提高。2、链式编程特点:方法的返回值是block,block必须返回对象本身(返回block时,block所在的方法调用者对象)block的参数是需要操作的值。对此编程思想代码中有较多解释。 iOS 中习惯于使用masonry布局的人都知道,使用masonry布局时,用的比较多的方法就是使用案例[sv ma
2016-02-26 13:22:26 2392
转载 KeyValueCoding
本文转载 CoffeePig的文章特此声明; 原文地址;http://www.jianshu.com/p/a6a0abac1c4a?ref=myread;有关KVC不为人知的秘密。获取数组里的,最大、最小、平均、求和 Example:NSArray *array = @[@"1",@"3",@2,@9.5,@"1.2"]; NSNumber *sum = [array valueForKey
2016-01-23 13:59:52 513
原创 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-01-16 16:07:00 264
转载 各类地图坐标转换。
/*做地图的时候可能会用到的一些地图转表转换包括API 坐标系 百度地图API 百度坐标 腾讯搜搜地图API 火星坐标 搜狐搜狗地图API 搜狗坐标 阿里云地图API 火星坐标 图吧MapBar地图API 图吧坐标 高德MapA
2016-01-16 13:32:54 373
iOS12 真机调试 (16A366)
2018-09-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人