4 voidxinnn

尚未进行身份认证

我要认证

越分享越牛逼,you right you B B

等级
TA的排名 17w+

读书笔记

深入理解RunLoop:http://www.cocoachina.com/ios/20150601/11970.html

2017-02-17 14:51:35

用Weex实现新闻类app详情页是怎样一种体验?

先上效果图:详情页:写在前面的话(weex在实际项目中给我的感受):公司项目中我已尝试部分页面使用Weex实现(iOS端),把weex文件放在了公司服务器上,使用url去加载weex渲染成原生页面(之前我想把文件放在七牛上,但是由于七牛有CDN缓存,每次修改一个文件之后都要刷新该文件,当文件多了之后这是一个比较牙疼的事情,所以就还是扔进了公司的服务器中)。本月中旬公司app新版本发版了,过去了十几天

2016-12-21 00:27:16

使用七牛下发JSPatch文件及文件加密

使用JSPatch这么久了,一直都是使用http://jspatch.com/平台集成SDK来实现js文件下发和版本控制,简单便捷。事实却是如此,使用它我们可以不用为了下发js文件再去搭建服务器,也避免了在解决文件加密时的麻烦(在项目中我一直是这么用的)。但今天闲着没事,决定自己实现文件下发。 1:新建工程,从github下载JSPatch sdk集成到工程 2:没有服务器来存放js文件?那么就

2016-12-15 14:10:46

Weex开发中native如何主动发送事件到weex

项目中有个weex页面需要选择时间,在不清楚weex写时间选择器复不复杂的情况下,我觉得还是直接调用native的时间选择控件,选择完时间之后把时间传递到weex然后刷新页面。 但问题也随之而来:我怎样在选择完时间之后把时间传给weex页面并主动刷新呢?由于之前也涉及到native和weex页面传数据的问题,但都不是native端主动的,换句话说:之前都是先响应weex页面中的动作然后去调用nat

2016-12-15 14:10:20

关于使用JSPatch重写setter方法

今天快下班时APP出现一个bug,是由于数组越界造成的,在根据月份去判断当月有几周时接口那边多返回了一周(本来五周返回了六周),导致数组越界。由于是先填写周再查询,这个崩溃是崩在查询里(所以肯定是填写时周数算法出错),所以也不清楚是安卓端的算法出错还是PC端的算法出错,但我能很肯定不是iOS端的错误(实力甩锅)。认真检查了我的算法,发现根据月份计算周数并没有问题,然后安卓那边也检查了一遍,也没有问题

2016-12-15 14:09:46

JSPatch在Swift项目中的使用

现在的这个项目从1月份开始做,到现在也快一年了,听起来感觉项目很大似得,其实只是效率慢的缘故(后台慢,需求慢…,种种我就不吐槽了)。 大概从7月份开始,项目中新的需求我尝试着用Swift去写,由此开始,项目变成了OC和Swift的混编项目了(安装包足足大了好几倍)。从两个文件变成一个文件,倒也清爽了许多,瞬间找回了当年写JAVA的感觉(两年前写了半年的JAVA EE之后转投进了iOS的大坑中)。

2016-12-15 14:09:03

iOS中H5向native传值或从H5跳转到native

由于项目中H5页面比较多,这几天H5页面中有个新需求:点击H5页面的某个按钮需要传递参数和跳转到Native页面。 为了省事,找了个简单的方法:按钮点击后H5请求一个假的自定义的链接,把需要传递到Native的参数通过GET请求的方式拼接。然后再Native中WebView的delegate方法中去拦截URL,解析这个URL得到我们想要的值,并且跳转到想要的页面中去: 1:实现WebView

2016-12-15 14:08:33

native给weex页面传值以及Weex调用native方法(iOS端)

今天凌晨微信小程序(应用号)对外发送内侧邀请,瞬间在广大前端和移动端界炸开了锅。恩,H5或者说JS的又一个春天来了。 原归正传,这里要说的是在iOS端集成Weex时我们如何给weex页面传值,以及weex页面如何调用iOS的native方法呢?且听我慢慢道来。 其实我这几天一直在寻找native端往weex页面传值的解决方法,只是资料太少,于是乎我去github提Issues:https

2016-12-15 14:08:04

Weex iOS 端集成的一些感想

身边一直充斥着Weex的消息(从内测到现在),几乎每一个移动端的人都在我面前提过它。我隐约的知道它其实是和ReactNative类似的东西。因为年初也玩了会儿RN,弄环境弄了挺久了,然后因为教程少,写了一个demo之后就没怎么深入学习了。 weex存在的意义就是用来跨平台的(如果不是跨平台我又何苦用蹩脚的标签来写iOS界面呢,抱歉我说的是我web知识太匮乏而蹩脚),一套代码,三端共用(iOS,

2016-12-15 14:07:30

Category添加属性(关联)

今天看HHRouter源码的时候看到这两句:- (void)setParams:(NSDictionary *)paramsDictionary{ objc_setAssociatedObject(self, &kAssociatedParamsObjectKey, paramsDictionary, OBJC_ASSOCIATION_RETAIN_NONATOMIC);}- (NSD

2016-12-15 14:06:56

让ViewController通过URL跳转吧!

代码写了这么久了,尤其是在H5大行其道的今天,项目中一半native一半H5,我眼睁睁的看着我的controller中H5页面给一个URL就能简单的实现跳转,而我原生的controller则需要写一大推的代码给一大推的参数然后非常蛋疼的import进我定义的每一个类,那真是一种痛苦而又无奈的做法,于是我就想既然web页面可以通过URL来传递参数进行跳转,那原生的controller有没有这种给个UR

2016-12-15 14:06:33

Xcode路径改变导致CocoaPods报错的解决办法

这几天心血来潮,更新了下Mac系统,然后装了下Xcode8装逼,接下来就懵逼了。 由于之前的Xcode是7.1的一直没升级,本想体验体验Xcode8的,所以装完Xcode8之后Xcode7.1也没有删掉,一直两个Xcode一起用着,用了几天之后觉得Xcode8挺稳定的,于是就删了Xcode7,故事由此开始了。 删了Xcode7的几天后,发现Xcode8 bug还是蛮多的,不是很稳定,并且大家都不

2016-12-15 14:06:06

七牛云储存实现iOS企业版分发

iOS企业证书的发版这里就不多说了。 由于app现在放在公司自己的服务器中,为了实现https的plist下载链接还特意把plist挂在了开源中国上。小公司,带宽小,多用户升级的时候给公司服务器带来不小的压力。所以最近工头有把ipa挂在七牛上去的想法,这样就可以有效的缓解服务器的压力。 企业版分发的plist下载链接必须是https协议的,所以需要SSL证书。如果你公司没有证书,那么可以使用七牛

2016-12-15 14:05:39

JSPatch的使用(第一课)

JSpatch的更多用法可以去github上找文档。不多解释。 先来个简单的demo: 1:先百度“JSPatch”,进入如下页面: 2:注册账号,添加APP项目:3:获得appkey 4: 下载 SDK 并导入项目 下载 SDK 后解压,将JSPatch.framework 拖入项目中,勾选 “Copy items if needed”,并确保 “Add to target” 勾选

2016-12-15 14:05:07

Objective-C runtime那些事儿

runtime 号称iOS开发的黑魔法。 现在就让我来探究探究runtime,一来作为学习笔记,二来给有需要的人参考。 在使用runtime的时候,我们可能会看到一些奇怪的字段,现在就让我来一一讲解一下: 1:SEL OC在编译时,根据方法的名字生成一个用来区分这个方法的唯一ID,这些SEL组成了一个set集合,当我们在这个集合中查找某个方法时,只需去查找这个方法所对应的SEL即可

2016-12-15 14:04:21

MVVM模式初体验(使用ReactiveCocoa获取网络数据)

使用RAC也有一段时间了,由于此前的项目都是使用的MVC模式,网络请求都封装在固定的模块中,抽取出来十分不方便,所以到目前为止并没有涉及到使用RAC去做获取网络请求的情景。 近期,着手重构目前手上的项目,准备给臃肿的Controller瘦身,MVVM貌似是一个不错的选择(既然使用了RAC,那为什么不使用MVVM呢?)。于是,开始上手体验MVVM模式和RAC的结合使用(RAC的基础知识在这就不介

2016-12-15 14:03:53

使用UIActivityViewController实现AirDrop分享

今天闲来无事,无意中看了一篇利用AirDrop实现文件传输的文章,于是动手写了一个很简单的demo。其实就是使用UIActivityViewController。 具体实现如下:#import "DemoViewController.h"@interface DemoViewController ()@property(nonatomic,strong)UIWebView *webView;@

2016-12-15 14:03:18

iOS监听H5页面goBack返回事件问题

从native直接push到一个webView页面,隐藏navigationBar,使用H5的头部为导航栏。此时会出现一个问题,就是push出的这个webview没有了原生的navigationBar,那么在点击H5页面上的返回按钮时怎么pop到之前的页面呢? 当然,我们可以使用上一遍博客提到的利用webViewjavascriptBridge的第三方来解决,这就需要H5和nativ相配合,如

2016-12-15 14:02:29

开篇开始bb

我是voidxin,一名iOS开发工程师。这是这个博客的第一篇文字,就不写啥技术了。之前一直在就“简书”上写自己的技术博客,简书的清爽简洁风格是吸引我的重要因素。无奈简书的受众还是太小,无法让自己分享的东西传递给更多的人,本着越分享越牛逼的心态转战CSDN,希望可以一起交流一起进步。(接下来我会把我简书上的文字都搬过来)你可以这样找到我:e-mail: voidxin@163.com

2016-12-15 13:43:09
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!