说说近来近况与计划

时间过得太快,转眼已经是六月底了。离今年自己的目标好远。 一直想写点东西,却不知道怎么写,要如何才能养成写作的好习惯。 最近玩的心思太重了。还记得是某天,在公司上班听歌,突然想再走一朝江湖了,然后去玩儿了倩女。 也差不就是那个时间开始玩儿到现在,大概是三个月前吧。一直玩儿到现在。我也不知道自己在写啥,思绪很乱。 从今年的1月1号开始,基本都是下班就走,不加班,周末不加班,没了刚出来的那种拼搏的动力了。 沉沦了半年,去年说的今年要跳槽也没跳,一直没去学习新的知识,知识拿着现有的用,缺啥找啥,感觉也没认真复习。 今天才醒悟时间过去了一半,不能再这样沉沦下去了,该好好规划一下了。 首先不能再继续玩儿了,玩儿得心不能太重,多花时间在学习工作上。

2017-06-25 · 1 min · 8 words · Cee Yang

iOS11上手体验

WWDC2017于今天凌晨1点准时开始,说实话笔者等这一天等很久了。 ##以下是笔者的上手体验: 系统界面的更新 iMessage:通过iCloud将iMessage里的对话内容进行云端同步。 Camera:相机可以直接读取图片中的二维码,每张照片压缩率为此前的两倍,你会有更多空间存储照片,此外还可更好地分类,笔者测试了一下,拍一张照片是比以前用的内存小,各位内存吃紧的小伙伴有福利了。 Control Center:更多的功能将加入其中,改变音量大小等变为了模块式,界面优化明显。 Siri:通过深度学习,可以理解你的言语,结合上下文进一步知晓你的兴趣爱好等,笔者对iOS9的 Siri有点小失望,这一代的估计不错,不过笔者来得及没体验,留个各位同学自己上手体验吧。 Apple Music:可以与朋友一同分享音乐,包括微信,QQ。 App Store:经过重新设计,内容将通过“今日推荐”、“游戏”、“App”三个标签页进行展示。 Keyboard:内置键盘加入中国的拼音输入,并且新增单手操作模式。 Fiels:属于 iOS 的文件管理器。不过貌似没啥用,不能获取其他 APP 的沙盒文件。 ###凌晨看完发布会直播,眼睛已经涩得不行,只能去睡觉,第二天体验新版的 iOS11 系统了,一大早来公司就下载了新系统安装,刚开始还不适应,不过感觉也还行。使用中发现许多 bug,不过毕竟是测试版,就不多做评价。下面笔者带你走进 iOS11,至于是否更新测试版本各位同学自己决定咯。 系统界面的更新 顶部状态了的信号图标变了,变成安卓风格,个人觉得还是以前的小圆点好看,虽然笔者用的是表示信号强度的数字。以前锁屏界面的通知消息能够右滑清除,新版的系统好像不可以了。只能长安,或者重按,笔者用的 iPhone 7,带 3DTouch 的功能,重按后出现了上面的通知详情界面。上拉能显示历史通知消息,笔者这里把历史通知都删除了,看不到所以就没截图。不管是在通知消息上面右滑还是在空白处右滑都会打开相机。有点小小的不习惯啊。 进入主页的动画效果也有改变。 Camera:照相机 哈哈,相机已经可以直接读取图片中的二维码了,也就是说拿着相机就可以扫描其他二维码,虽然整个过程需要打开浏览器,再打开各个 APP,过程比较繁琐,但这进步也是值得称赞的。不过笔者跳转到微信后没任何反应,哈哈,看来又是 bug 。期待后期的使用了。等等,听说安卓的早就可以了?安卓同学请略过QAQ。 Control Center:控制中心 控制中心可以自定义菜单,如图,笔者选了一些功能。笔者这里只提几点:点击 WiFi 后只能打开与关闭,重按也只能打开一个更多的页面,并不能在控制中心选择 WiFi,蓝牙也是如此。看以前暴露的视频,WiFi 和蓝牙是可以在控制中心选择的,但笔者没测试出来,或许是 bug 来着。字体大小按钮,可以将全局的字体整体放大缩小,拿 iPhone 当老年机的话笔者感觉这个功能会有点用。辅助功能里面新增几个选项:SOS,Pay,重新启动,SOS 创建临时急救方案,点一下自动拨打急救电话,貌似以前也有,现在提到控制中心了而已。其他几个也不多说。 计算器页面也重新做了次,各位同学不知意下如何。 Apple Music:苹果音乐 ...

2017-06-08 · 1 min · 80 words · Cee Yang

I have a dream

 I have a dream.It’s marry you. So much words wants to talk you. I miss you so much already and I haven’t even know you yet!

2017-01-09 · 1 min · 26 words · Cee Yang

Leave me

 Stay with me or bring me away.

2017-01-09 · 1 min · 7 words · Cee Yang

勇气

Finally I make up my mind You are the one I want to find How I wish I could stay by your side I promise wherever I will follow you Life is not easy as you told Hrer I am always trying to convince my soul Unwilling to hear you lose your hope If you love me tell me so I love you or te amo Above suspicion,you're my whole But you are irresolute When you hold me in your arms never never be apart I can feel you when you go so far your love is in my palm inside my heart Finally I make up my mind You are the one I want to find How I wish I could stay by your side I promise wherever I will follow you Life is not easy as you told Here I am always trying to convince my soul Unwilling to hear you lose your hope If you love me tell me so I love you or te amo Above suspicion, you're my whole But you are irresolute When you hold me in your arms never never be apart I can feel you when you go so far your love is in my palm inside my heart Maybe someday you have to go Let me be the first one to know I will give my diary to you Everyday I write it out of love, just for you

2017-01-07 · 2 min · 238 words · Cee Yang

深夜独白

世事无常,总是让人琢磨不透。

2017-01-06 · 1 min · word · Cee Yang

随笔

Sometimes I want to write someting,but when I make my tool ready,I had forgot what I want to say. People always are. You are the reason why I become stronger,but still you are my weakness. Finally I make my mind you are the one I want to find. I wanna do someting for you, but I cant't find the reason for you.

2017-01-06 · 1 min · 62 words · Cee Yang

App热修复详解

App Hotfix(热修复)详解 定义: 从广义的角度理解,大家都比较认同 Hotfix 是在移动端不需要重新发版,通过在线更新对版本 Bug 的修复。 现在比较流行的热修复技术分为三种: 一、使用JSPatch进行热修复: Objective-C 是动态语言,OC上所有方法的调用/类的生成都通过 Objective-C Runtime 在运行时进行,我们可以通过类名和方法名反射得到相应的类和方法,也可以替换某个类的方法为新的实现,还可以新注册一个类,为类添加方法替换方法,通过这些即可实现动态修复 APP 技术。 JSPatch是一个在Github上的开源项目,JSPatch下载地址。JSPatch 的实现主要是通过 Objective-C的 runtime 原理,即利用JS传递字符串给OC,OC通过 Runtime 接口调用和替换OC方法。具体实现原理请参考作者的帖子:JSPatch 实现原理详解 (整改版)。 OC转JS工具,具体实现参考该博客 大体实现思路如下: 首先,开发者提供热修复脚本; 其次,要将脚本上传到后台,后台需要提供上传的操作页面; 然后,终端设备每次运行后请求获取最新的脚本文件; 最后,解析脚本文件,调用 JSPatch 引擎,执行脚本文件并修复; 1、开发者提供热修复脚本: 脚本的书写: 脚本书写也很简单,先用Objective-C将要需要更改的代码改好,然后根据需要修改的代码更改成js代码即可,具体书写方法请参照 JSPatch使用说明,或者使用上面提供的OC转JS工具。 例如: OBjective-C代码,这里是需要修改的内容。 @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; /** 该代码在上线后的项目里面并没有 * 即在 APP 上线后又临时修改的。 * 添加或者修改我们需要改动代码,如无需改动,该方法不变,此处拿修改标题做测试,可以做很堵其他操作; */ self.title = @"Welcome to use JSPatchDemo"; } /** * 省略其他代码 */ @end javascript代码:JS 属于链式语法,相信很多人都会,可以查看 JSPatch 的语法规则自己写,也可以通过OC转JS工具将上面的代码转换成JS 代码 ...

2017-01-05 · 1 min · 163 words · Cee Yang

快速添加圆角和描边

前言 对于习惯使用Storyboard的人来说,设置圆角、描边是一件比较蛋疼的事,因为苹果没有在xcode的Interface Builder上直接提供修改控件的圆角,边框设置。 我们来说说如何对某个控件进行圆角、描边处理: 初级 对于一个初学者来说,如果要进行某个控件的圆角、描边设置,就要从Storyboard关联出属性,然后再对属性进行代码处理。 如下代码: self.myButton.layer.cornerRadius = 20; self.myButton.layer.masksToBounds = YES; self.myButton.layer.borderWidth = 2; self.myButton.layer.borderColor = [UIColor blackColor].CGColor; 这样不仅需要Storyboard关联出属性,还要写一堆代码对属性进行设置,不得不说实在麻烦~ 中级 更聪明的做法是使用Storyboard提供的Runtime Attributes为控件添加圆角描边。 选中控件,然后在Runtime Attributes框中输入对应的Key与Type与Value,这样程序在运行时就会通过KVC为你的控件属性进行赋值。(不仅仅是圆角、描边~) 如下图 设置圆角、描边的Key为: layer.borderWidth layer.borderColorFromUIColor layer.cornerRadius clipsToBounds 我这次在测试时, 这样做不用关联出属性,但是需要输入大串字符串,也是不够方便。 高级 创建UIView的分类,使用IBInspectable+ IB_DESIGNABLE关键字: #import <UIKit/UIKit.h> IB_DESIGNABLE @interface UIView (Inspectable) @property(nonatomic,assign) IBInspectable CGFloat cornerRadius; @property(nonatomic,assign) IBInspectable CGFloat borderWidth; @property(nonatomic,assign) IBInspectable UIColor *borderColor; @end #import "UIView+Inspectable.h" @implementation UIView (Inspectable) -(void)setCornerRadius:(CGFloat)cornerRadius{ self.layer.masksToBounds = YES; self.layer.cornerRadius = cornerRadius; } -(void)setBorderColor:(UIColor *)borderColor{ self.layer.borderColor = borderColor.CGColor; } -(void)setBorderWidth:(CGFloat)borderWidth{ self.layer.borderWidth = borderWidth; } - (CGFloat)cornerRadius{ return self.layer.cornerRadius; } - (CGFloat)borderWidth{ return self.layer.borderWidth; } - (UIColor *)borderColor{ return [UIColor colorWithCGColor:self.layer.borderColor]; } @end 附上:GitHub地址 ...

2016-12-01 · 1 min · 121 words · Cee Yang