Android 开发人员必知的 50 个秘诀、技巧和资源

作者撰写本文的初衷,是为了罗列出Android Studio有用的提示、技巧、快捷方式和参考资源,将提高您的整体效率和操作性能。显然,还有很多优化、快捷方式等,但作者为了保持这篇文章的简短,限制为50个,希望读者会喜欢这篇文章!注:本文是以MacOS X操作Android Studio为例,与Windows / Linux不一致的地方已经标注,请读者注意这一点。可视化1.Android Logca...
编程开发 Android开发

Android 自定义 View 绘图基础

View的测量控件的测量可以说是固定写法,原生的View只支持EXACTLY的测量模式,我们自定义的控件可以重写onMeasure方法@Override protectedvoidonMeasure(intwidthMeasureSpec,intheightMeasureSpec){ setMeasuredDimension(getMeasuredSize(widthMeasureSpec),...
Android开发 编程开发

原来 CSS 这样写是会让 App 崩溃的

先废话一下之前在自己的个人公众号中提到了一篇利用 CSS 的方式进行 XSS 攻击,当时有朋友跟我说,让我去获取那个网站的 cookie,再然后进入那个网站的后台去玩。然而,技术能力实在有限,搞不了这些东西,只是觉得那个网站没有适当过滤 HTML 标签是一件很危险的事情。不过今天要说的 CSS 代码真的是让 app 崩溃了,至于信不信,看图就知道咯。故事背景昨晚在被窝中的我突然收到一封邮件,大概内...
WEB开发 编程开发

2017 年值得一瞥的 JavaScript 相关技术趋势

跨年前两天,Dan Abramov在Twitter上提了一个问题:JS社区毫不犹豫的抛出了它们对于新技术的预期与期待,本文内容也是总结自Twitter的回复,按照流行度降序排列。有一个尚未确定的小点是既然函数式编程已不再是少数派,是否要把它踢出红毯呢?WebAssembly去年笔者就表示过了对于WebAssembly的期待,WebAssembly就是面向Web平台的底层代码。其初衷是希望能够使所有...
编程开发 WEB开发

React-Native之 mac系统系下的环境搭建

1.安装Node.jshttps://nodejs.org/en/在上面的网址中下载Nodejs,然后进行安装一直点击下一步就好了,不做说明。默认安装目录Nodejs: /usr/local/bin/nodenpm:/usr/local/bin/npm安装完尝试下输入 node -v 查看下版本确认安装成功。2.安装React Native1)确认Node.js已经安装2)确认Xcode已经安...

RN 记录二

需要配置环境的软件1.HomebrewHomebrew, Mac系统的包管理器,用于安装NodeJS和一些其他必需的工具软件。2.Node使用刚刚安装的Homebrew来安装Node.js3.Watchmanbrew install watchman4.Flowbrew install flow5.关键来了React Native安装npm install -g react-native-cl...
记录

iOS Crash 杀手排名

iOS Crash 杀手排名随着公司嘟嘟牛app用户数量多了起来,崩溃的问题也多了起来,最近这几天终于得空,集中时间处理了一下崩溃的问题,现总结一下,希望对大家有所帮助。杀手 NO.1NSInvalidArgumentException 异常出现这个crash的原因有很多,选取了崩溃次数较多的crash。 crash 日志1-1-[__NSPlaceholderDictionary initW...
崩溃 crash 内存优化

CAShapeLayer与UIBezierPath实现注水动画与正余弦水波纹动画

初步学习了CoreAnimation框架,总结了几个动画效果,主要是通过CAShapeLayer与贝塞尔曲线实现。先看下效果1.gif扇形下载进度要实现扇形的下载进度,有两种方法, 这里先使用第一种:1.使用设置UIBezierPath的角度2.使用 CAShapeLayer的stokeEnd属性//设置中心点 CGPoint point = CGPointMake(self.fram...

Objective-c 多线程操作 自定义NSOperation 模拟下载

写在前面使用多线程下载图片,使用内存缓存和磁盘缓存。这里只为理解NSOperation及其派生类真要应用到APP中 请下载成熟的第三方库效果下载多张图片时可控制线程并发数分析自定义NSOperation 执行下载操作封装一个队列操作,创建N个线程,队列控制并发通过线程tag查找对应图片通过队列tag查找对应队列缓存设置 内存缓存和磁盘缓存下载完成通过delegate或block进行回调通知代码通...
多线程

理解 : UDID、UUID、IDFA、IDFV

关于UUID的理解 :英文名称是:Universally Unique Identifier,翻译过来就是通用唯一标识符。 UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成的API。 是一个32位的十六进制序列,使用小横线来连接:8-4-4-4-12 。 代码获取的方式: NSLog(@"uuid = %@",[NSU...
理解