现在位置: 首页 > iOS开发经验 > 文章
2016年11月10日 iOS开发经验 ⁄ 共 3407字 评论关闭
const,static,extern 简介 一、const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量。     执行时刻:宏是预编译 ( 编译之前处理 ),const是编译阶段。 编译检查:宏不做检查,不会报编译错误,只是替换,const会编译检查,会报编译错误。 宏的好处:宏能定义一些函数,方法,const不能。 宏的坏处:使用大量宏,容易造成编译时间久,每次都需要重新替...
阅读全文

2016年11月10日 iOS开发经验 ⁄ 共 1646字 评论关闭
发送网络请求有时失败,分析一下响应行,在响应的响应行内,你会发现响应行由三部分组成,用空格来隔开,HTTP/1.1 404 NOT FOUND,第一个是响应的HTTP的版本,第二个和第三个是状态值。 发送完网络请求会得到一个Error和response对象,我们不能单单只判断Error,直接打印出error这个错误,我们应该分析respon的属性statusCode,然后根据状态码分析错误的原因 分析状态值来分析网络请求错误的原因 分为五类错误     &...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 5134字 评论关闭
文章目录 5.后台restful-- /wechat/authorization,根据code换取用户信息 微信开发中,经常有这样的需求:获得用户头像、绑定微信号给用户发信息.. 那么实现这些的前提就是授权! 1.配置安全回调域名: 在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的“开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 3912字 评论关闭
作为一名搬运工,应该懂得避免重复创建轮子。 配置keystore密码信息 通常在 app/build.gradle 中我们会使用以下方式配置: signingConfigs { release { storeFile file("myapp.keystore") storePassword "mystorepassword" keyAlias "mykeyAlias" keyPassword "mykeypassword" } } 但这种方法不是特别好,因为如果你把代码分享到 github ,你的密码就泄露了。 推荐的做法应该是在Androd项目中 ...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 2085字 评论关闭
为了快速查询会被多次调用的数据,或者构建比较废时的实例,我们一般使用缓存的方法。缓存的基本概念大体上差不多,这里就不再重复,有兴趣的可以查看维基百科的介绍。 缓存有很多的实现方式,技巧性还有坑都很多,今天我给大家介绍一些非通用的方法,可以巧妙地帮大家简单实现一些内存缓存。 Supplier和Memoize SQLite是Android里常用的一种数据存储方式,在访问数据库数据时需要通过SQLiteOpenHelper。 一份好的数...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 4535字 评论关闭
火车票作为携程体系下的重要环节,要兼顾良好的App用户体验及迅速的业务迭代,一个月左右一次App版本的节奏很难满足,而React Native跨平台、媲美原生App的用户体验以及无需发版的升级模式等等优势无疑使人眼前一亮。 加上基础团队的Ctrip React Native框架对RN的性能优化、业务封装以及拆包发布等的大力支持,火车票现已上线将近20个RN页面,经历了携程App三个大版本的迭代与考验。 本文将着重介绍React Native在携...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 7433字 评论关闭
React React的优点有很多,现在很多应用都接入React这个框架。 在我看来,有下列优点: - Facebook团队研发并维护——有团队维护更新且有质量保证 - 在MVVM结构下只起View的作用——简单接入,不需要花费大量人力重构代码 - 组件化形式构建Web应用——复用性强,提高开发效率 - 用Virtual DOM减少对DOM的频繁操作提高页面性能——批量操作减少重排(reflows)和重绘(repaints)次数——性能对比旧的方式有提高 React对重排和重...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 2790字 评论关闭
工欲善其事,必先利其器。一个好的开发库可以快速提高开发者的工作效率,甚至让开发工作变得简单。本文收集了大量的Android开发库,快来切磋一下,到底哪一个最适合你。 动画 Android View Animations :一个非常强大的开源动画库,开发者可以用来创建各种效果。 RecyclerView Animators :可实现RecyclerView动画。 APIs CloudRail :可以将多个服务(例如Dropbox、Google Drive和OneDrive)捆绑成一个统一的API...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 5612字 评论关闭
一.简述总体内容 1.直播流程介绍 2. Mac 搭建 nginx+rtmp 服务器(模拟推流拉流) 3.简单的集成推流拉流( 实用篇 ) 4.好的博客推荐 二.直播流程介绍 1.简单的流程图 简单的流程图 2.七牛的直播流程 七牛的直播流程 3.视频直播,可以分为 采集 , 前处理(美颜等等) , 编码 , 推流和传输 , 服务器处理 , 解码拉流 1. 采集 :采集是整个视频推流过程中的第一个环节,它从系统的采集设备中获取原始视频...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 4322字 评论关闭
文章目录 设置Mask效果 Android图形处理-百变Paint Paint的基本属性 在 Android图形处理-Canvas 已经有了基本的使用,但是这节介绍几个好玩的属性 设置阴影和渐变 设置渐变 主要是给画笔(Paint)设置一个Shader sp161108_143636 Paint paint = new Paint(); LinearGradient linearShader = new LinearGradient(0, 0, 100, 100, ne...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 2920字 评论关闭
Auto Layout 网上关于 Auto Layout 的文章繁多, 但是总觉得有些内容并没有说清楚。所以在这篇文章里,我将通过一个demo演示 Auto Layout 中几个容易被忽略,但是又相当重要的概念 demo效果 demo效果 demo 中要通过约束要实现的效果如下: backgroundView width>=60; backgroundView的width随着Label中内容的增加而增加 backgroundView与其superView的margin>=30。也就是当Label的内容过长时,会显示出省略...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 6126字 评论关闭
关于View我们需要知道的 什么是View Android中的View类是所有UI控件的基类(base class),我们平时所有到的各种UI控件,比如Button、ImagView等都继承自View类。LinearLayout、FrameLayout等布局管理器的直接父类是ViewGroup,而ViewGroup也由View类派生。总的来说,View是对UI控件的抽象,它代表了屏幕上的一个矩形区域。通过继承View,并重写相应方法,我们就能够实现具有各种外观及行为的UI控件。Button等控件我...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 2558字 评论关闭
严格来讲,AppDelegate除了负责应用生命周期之外,不应该再有多余的责任。 但在iOS 实际开发过程中,很多人习惯将全局变量定义在 AppDelegate 中,因为任何项目都会访问 AppDelegate,但如此这般,AppDelegate就变得更加臃肿。 在大型项目中,想要接触耦合和模块化时,都不利于AppDelegate的维护。 所以最好的办法就是 将很多全局变量放在AppDelegate上,将AppDelegate作为一个依赖中心店,虽然很多模块可以访问全...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 2141字 评论关闭
先看下效果图: 01.jpg 这是两张前后对比图,右边第二张图里面的已抢光标签图片当已经没有商品的时候就会显示了,在每个图片的中心位置,第一想法是在ImageView的外层再套一层RelativeLayout <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <SelectableRoundedImageView android:id="@+id/imageView" style="@style/margin_distance" android:lay...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 2525字 评论关闭
客户端技术,如 JavaScript, 有很多有用的特性,正因为如此,它成为了世界上最流行的语言之一。它有很多优点,即时解析就是其一。即时解析有不少优点,比如可以在浏览器下载代码并立即执行。然而,自由度越高,责任越大。 我们会在这篇文章中深入 JavaScript 的安全隐患,不过范围仅限于浏览器中运行的前端代码。我们会关注一些将来产生的其它类型。 现在发挥你的想像,浏览器总是要执行代码的,它首先下载页面并进...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 3759字 评论关闭
在iOS开发之城市选择器一文中用两列的UIPickerView实现了城市选择器,今天用两个UITableView来实现一下,首先这种联动在很多地方用得上,而且方法有好几种,我这里选择了个人喜欢的一种方式:弄两个UITableView,让当前控制器管理。这种方式总体思路如下: 1、添加两个UITableView到当前控制器中,分别设置它们的的尺寸,然后拖线到控制器中 2、左边的表格设置数据源和代理为当前控制器,然后显示数据,右边的表格也...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 7558字 评论关闭
Android动画机制-传统动画 概述 Android动画机制-传统动画是指在Android3.0之前存在的两种动画机制,一种是逐帧动画,也就是号首先人工画出来每一个时间点的视图效果,然后一张图片一张图片的播放形成动画效果; 另一种就是补间动画,就是开发人员指定开始与结束的情况,然后系统自动生成中间的图形,不断播放,形成动画效果。 逐帧动画 要开发逐帧动画首先要画出每一个时间点的图形效果,也就是每一个帧,而且Andro...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 10017字 评论关闭
  本篇会对KVO的实现进行探究,不涉及太多KVO的使用方法,但是会有一些使用时的思考。 一、使用上的疑问 1.keyPath是什么 [email protected],keyPath是指的是我们的属性名,实例变量或者是存取方法? :point_down: [email protected] # import "Person.h" @interface Student : Person @property (nonatomic, strong) NSString* mark; @end @implementation Student @synth...
阅读全文
2016年11月10日 iOS开发经验 ⁄ 共 6055字 评论关闭
最近在使用 Retrofit 和 OkHttp 框架的过程中发现创建相关对象时频繁使用到了Builder模式,链式调用的方式让代码变得简洁、易懂,但自己也只是知其然而不知其所以然,所以决定做个笔记加深下印象。 一、场景分析 在实际开发中,往往会遇到需要构建一个复杂的对象的代码,像这样的: public class User { private String name; // 必传 private String cardID; // 必传 private int ...
阅读全文
2016年11月09日 iOS开发经验 ⁄ 共 4948字 评论关闭
文章目录 申请开发(Development)证书 添加调试设备 申请开发(Development)描述文件 申请发布(Production)证书 申请发布(Distribution)描述文件 iOS有两种证书和描述文件: 证书类型 使用场景 开发(Development)证书和描述文件 用于开发测试,在HBuilder中打包后可在真机环境通过Safari调试 发布(Distribution)证书和描述文件 用于提交Appstore,在HBuilder中打...
阅读全文
×