自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 Swift 运行 shell 命令(可实时输出Log)

//// CommandRunner.swift// zhengyh//// Created by zhengyh on 2019/5/9.// Copyright © 2019 zhengyh. All rights reserved.//import Cocoaclass CommandRunner: NSObject { /** 同步执行 ...

2019-05-09 21:00:19 2481 1

原创 iOS 开发之仿咸鱼初期在老项目引入集成 Flutter【生产中不建议采用此方案】

 【Flutter 环境配置传送门】 1、在工程目录执行如下命令引入 flutter 配置flutter create -t module flutter_module补充:添加 flutter 依赖库流程:cd flutter_modulevim pubspec.yaml // (编辑 pubspec.yaml(类似于iOS Podfile) 添加需要引入的库,例...

2018-11-11 13:16:30 4533 3

原创 Mac下使用命令行安装 jenkins 方法

首先说明不建议使用官网 dmg 形式的安装包,搭建环境什么的强烈建议使用**命令行**。1. 安装 brew  /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"2. 升级 javabrew cask install ja

2017-03-08 18:45:41 5029 1

原创 iOS开发APP瘦身之PDF图片资源加载框架

本文介绍的是一个用于在iOS项目中高效加载PDF矢量图标(尺寸可以无限放大)的工具。我们知道在 Xcode 6 及以上版本可以在 Asset Catalog 中使用 PDF 格式的矢量图资源。 YHPDFImageLoader 这个工具,它旨在解决 Asset Catalog 中后期动态调整放大图片发虚的问题,与系统调用加载图片兼容,并具有三级加载两级缓存功能,以减少重复性质的运算并提高加载效率

2016-10-19 01:06:16 4128 1

转载 iOS运行时编程(Runtime Programming)和Java的反射机制对比

运行时进行编程,类似Java的反射。运行时编程和Java反射的对比如下: 1.相同点  都可以实现的功能:获取类信息、属性设置获取、类的动态加载(NSClassFromString(@“className”))、方法的动态调用  下面是iOS中涉及到的相关使用方法   类的动态加载:NSClassFromString(@“className”

2016-08-15 19:06:37 1047

原创 在 Mac 端获取【网易云音乐】付费音乐的播放地址(注意下载要坚决支持正版!)

1. 查看本地日志文件2. 网络抓包3. 直接定位缓存不过到最后还是要说,这属于一次好奇心“研究”,生命在于折腾寻找不同的可行路线嘛。大家下载音乐还是要支持正版啊,支持辛苦创作的音乐人!

2016-08-14 23:51:40 12751 5

原创 移动应用测试框架——Appium篇

免费移动应用测试框架

2016-07-11 18:13:37 627

转载 iTunes Connect Developer

iTun

2016-06-13 17:13:33 487

原创 结构体在内存中占的空间大小详解

C 语言中结构体在内存中占的空间大小详情的计算方法,先确定模数,再依次依据如下相应规律相叠加。

2016-06-04 19:18:09 1527

转载 移动开发用户行为分析神器之--AppSee!

一是点击热图(Touch Heatmaps)二是用户记录(User Recordings)

2016-06-04 19:17:17 5821

原创 iOS 打包提示 Command/usr/bin/codesign failed with exit code 1 并且钥匙串中证书全部无效的解决方案

一、问题描述由于苹果的根证书失效打企业包时发现提示报错 1akis25FC97FA851693DEEB23A01AD91B2D0ro09: no identity found Command /usr/bin/codesign failed with exit code 1查看相关的证书配置并没有错误,打开钥匙串发现里面的证书都爆红显示此证书的颁发者无效。不使用签名强行

2016-02-17 19:40:28 6747

原创 iOS开发之内购完全笔记(您已购买此 App 内购买项目。此项目将免费恢复。)

iOS开发之内购完全笔记 解决无限提示 --(您已购买此 App 内购买项目。此项目将免费恢复。)的问题梳理内购逻辑记录个人集成过程中遇到的问题点与大家分享

2016-01-16 11:43:07 52641 3

原创 富文本之某些字体之间的间距特殊调整

近期业务要求金额的文案展示风格借鉴微信红包的样式,因多处使用故抽取处如下的分类方便后续使用。//// UILabel+XYMoneyAmountDisplay.m// yaheng//// Created by 郑亚恒 on 15/11/22.// Copyright © 2015年 yaheng. All rights reserved.//#import "UI

2015-11-22 19:36:08 1992

原创 iOS 字符串常用编码互相转换

在日常的网络请求中难免 URL 中会有汉字的内容,若不做相应的处理直接将字符串转换成 URL 来加载是有问题的,至于文字编码的基本知识请参考这里 Unicode与UTF-8互转(C语言实现),现整理下几种常用的转换方法的代码如下,另推荐一个在线转换的网页{这里传送门}。/// 汉字 UTF8 互转 NSString* strA = [@"%E4%B8%AD%E5%9B%BD"

2015-10-20 19:18:03 5439

转载 互联网推送服务原理:长连接+心跳机制(MQTT协议)

互联网推送消息的方式很常见,特别是移动互联网上,手机每天都能收到好多推送消息,经过研究发现,这些推送服务的原理都是维护一个长连接(要不不可能达到实时效果),但普通的socket连接对服务器的消耗太大了,所以才会出现像MQTT这种轻量级低消耗的协议来维护长连接,那么要如何维护长连接呢:  在写之前,我们首先了解一下为什么android维护长连接需要心跳机制,首先我们知道,

2015-10-20 11:55:13 947

转载 iOS9 适配中遇到的问题记录

1>网络访问默认使用HTTPS请求由于iOS9改用更安全的https,为了能够在iOS9中正常访问http类型网络,需要在"Info.plist"中进行添加如下配置。NSAppTransportSecurity NSAllowsArbitraryLoads 2>应用程序之间跳转需要添加进跳转白名单,否则不能够成功跳转如果在

2015-10-13 16:20:14 756

原创 Xcode7 集成百度地图静态库以及百度坐标火星坐标的互相转换

最近项目中需要集成百度地图的 SDK,但是设置完毕后发现在 Xcode7 中真机调试一直出现静态库报错的问题可是用终端查看支持的系统架构也是含有当前类型的架构补充://模拟器架构: i386 / x86_64//真机架构: armv7/armv7s/arm64另模拟器正常。相同的项目改用 Xcode6.4 打开也是一切正常,真机调试完全没有问题,前段时间发现

2015-09-24 16:23:46 2273

原创 去掉 TabBar 上部横线以及 navigationBar 下部横线的方法探讨

在一些应用中需要将 TabBar 上部横线或者 navigationBar 下部横线取消掉,之前也尝试了多种方法,现将个人目前使用的方法列举如下,各位看官若是有更好的方案欢迎补充。tabBar:直接将系统 tabBar 中所有的控件打印输出,会发现有如下控件(数量依据标签栏的数量不同而不同)( ">", ">", ">", ">")再结合

2015-09-21 13:36:10 4902 4

原创 旧项目适配 iOS9 时 .dylib 系统库文件的链接报错的问题处理

今天将公司的项目改用 Xcode7 开发,刚打开项目就有醒目的四个地方爆红但是在模拟器环境的依旧能够正常的运行,一旦连接到真机(非 iOS9 系统)就提示有两个库文件找不到,如下所示:难道 iOS9 苹果的库文件也发生了相应的变化?查看 8.4 与 9 的模拟器中的库文件存放文件夹发现果真苹果在iOS9的情况下将库文件的后缀由 .dylib 更改为了 .tb

2015-09-20 16:59:49 3729 2

原创 静态库编译命令-ObjC, -all_load, -force_load

有时在做项目的时候会涉及到使用第三方的库,有些库的添加说明中有时会让在Xcode的Build Settings下Other Linker Flags 中添加 -ObjC、 -all_load 或者 -force_load 命令,现在对这三个指令做一个简单的辨别:-ObjC:This flag causes the linker to load every object file i

2015-09-20 16:15:34 1517

原创 最新制作 Mac 电脑 U 盘启动盘笔记

MAC 系统在 10.9.5 的时候制作 U 盘启动盘的方法就已经发生了改变,最近帮同事装10.10.3 的系统又重新做了几个安装盘,现把制作过程记录下来以免后期制作又得去网上查找资料 :)1、首先下载苹果原生的系统安装包2、将安装包中的一个配置文件createinstallmedia拷贝出来放到桌面(方便后续使用)路径:Install OS X Yosemite.app/Conten

2015-08-26 21:21:38 1160

原创 Swift 注释格式使用技巧小结

在之前的Xcode版本中使用注释插件 VVDocumenter 可以快速的根据上下文的环境生成相应的注释格式,但是该插件目前在 Xcode7 bate 版中并不太兼容,这就需要我们了解一下原生的注释格式怎么书写了,现总结以下自己使用的几种格式与大家共同交流。Swift 中的普通注释与 Objective-C 中的一致,大概分为以下三种....针对于 Swift 中函数的原生注释方法在此列举几个如下,使用好了可以让别人更容易读懂我们的代码功能以及具体的参数意义。

2015-08-26 13:34:00 4774

原创 iOS开发中的NSDateFormatter日期格式解析总结

在工作中,经常遇到将时间解析出来转换成自己对应要求的时间格式,之前也有收集相应的转换格式,现在将自己收集的一部分了做个分享,应该比较完善了,欢迎大家继续补充年y 将年份 (0-9) 显示为不带前导零的数字yy 以带前导零的两位数字格式显示年份yyy 以四位数字格式显示年份yyyy 以四位数字格式显示年份月M 将月份显示为不带前导零的数字(如一月表示为 1)M

2015-08-25 00:02:29 3404 1

原创 谈谈 OC 中的内联函数

内联函数即在编译的时候将函数体替换函数调用,从而不需要将parameter,returnaddress进行push/pop stack的操作,从而加速app的运行,然而,会增加二进制文件的大小。疑问:内联函数和非内联函数有很大不同吗?解答:对硬件硬性不大,但在性能上有影响。   内联函数不能保证编译时候一定是内联的,内联仅仅是告诉编译器请求内联,但编译器不一定内

2015-08-21 23:09:21 3285

原创 通过运行时添加属性小例

程序运行时动态的为某个类添加属性// MARK: -运行时的关联对象,动态添加属性--->给cell中的iconView添加了一个属性作为当前要显示图片的地址标记,在下一次更新图片时验证与重用的cell的上一次图片链接是否相同,若不相同取消下载管理器中的上一次的下载操作

2015-08-10 16:28:51 1313

原创 Swift 与 Object-C 项目混搭桥接文件的配置小记

虽然目前 Xcode 支持两种开发语言混合开发,但若是原来的工程是用 Object-C 写的,在引入 Swift 代码后会使最后生成的安装包文件体积增加 10M 左右,猜测是由于苹果在处理混搭桥接的时候引入了整套 Swift 的相关库,所以在不是急需的情况下,不建议在原来的项目中做这种混和开发

2015-08-06 01:06:37 763

原创 iOS开发之控件ContentMode代码改变填充模式小结

在UIImageView的使用中,有时需要用代码设置其内图片内容的填充模式, 为方便以后工作方便查找使用,现把各种模式测试如下// 测试图片内容填充模式static int a;-(void)test1{ self.imageV.image = [UIImage imageNamed:@"aa.jpg"]; // 改变内部内容的填充方式 self.ima

2015-07-10 01:16:08 1782

原创 iOS开发之控件frame/bounds/center尺寸快速赋值改变小技巧-简单给UIView新增分类

大家是否还记得对控件的frame/bounds/center进行属性更改时的三部曲?1>将结构体取出2>改变取出后的结构体对应的数据3>将修改后的结构体赋值给控件CGRect frame = self.view.frame; // your code... frame.origin.x = frameX; // your code... se

2015-07-06 00:45:36 2485

原创 iOS开发应用程序之-名称国际化四种方法

1>直接使用storyboard来实现语言自动切换2>程序标题国际化3>使用Localizable.strings 文件运行时依据系统语言自动选择加载4>指定加载相对应的原语言文件来读取  2>程序标题国际化//存放键值对的文件名必须为InfoPlist.strings系统才可以自动读取--在配置信息里要新添加一个键值属性    3>使用Localizable.strings  文件运行时依据系统语言自动选择加载 // 提取---->会自动加载Loc

2015-07-04 23:17:29 1173

原创 loadView、viewDidLoad、initWithCoder、initWithNibName、awakeFromNib的调用时间及用法

1> loadView无论XIB还是代码创建都会调用loadView方法。self.view为nil时才会被调用。     手工创建视图时,loadView被调用时self.view还为nil。一般在该方法中手工定制view。      XIB创建视图时,loadView仍会被系统调用、loadView被调用时XIB定制的视图还没创建完成,若是再覆写该方法的话、会将XIB定制的视图覆盖

2015-07-04 23:14:12 2064

原创 iOS7之后UIBarButton在导航栏上的过大边距问题解决方案

#import "UINavigationItem+margin.h"@implementation UINavigationItem (margin)- (void)setCustomLeftBarButtonItem:(UIBarButtonItem *)_leftBarButtonItem

2015-06-29 03:35:05 1033

原创 iOS文件路径操作

应用沙盒简介iOS系统为每个应用程序提供了独立的存储空间“沙盒”。每个应用程序都遵守沙盒机制,即程序仅能访问自身所属沙盒空间内的数据。沙盒为程序主路径,包含以下目录:Document:存储用户自定义数据。Library:存储应用程序相关数据。tmp: 存放临时文件的地方,当iPhone重启时,会丢弃该目录里所有的文件 。路径获取:

2015-06-12 02:11:31 786

原创 iOS开发之Frame与Bounds小结

frame: 该view在父view坐标系统中的位置和大小。(参照点是,父亲的坐标系统)        bounds:该view在本地坐标系统中的位置和大小。(参照点是,本地坐标系统,就相当于ViewB自己的坐标系统,以0,0点为起点)        center:该view的中心点在父view坐标系统中的位置和大小。(参照点是,父亲的坐标系统)通过修改view的bou

2015-06-07 23:04:52 975

转载 漫谈之堆和栈

漫谈之堆和栈

2015-04-28 21:24:59 951

原创 【记录】常用资料查找链接备份

常用资料查找链接记录

2015-03-23 11:11:56 456

原创 iOS开发之-指针小结

1>指针分类:   (1)强指针:默认情况下,都是强指针(__strong)   (2)弱指针: __weak 修饰 指针:指针是一个地址,我们可以通过获取地址来操控此地址中存储空间的值。2>指针变量    作用:只能存放地址(指针变量占用8个字节存储空间),能够根据地

2015-03-22 22:59:48 2635

转载 源代码管理器git与svn辨析

git svn

2015-03-11 18:15:19 826

原创 iOS开发之iPhone分辨率终极指南(含iphone6/6+)

iPhone分辨率终极指南(含iphone6/6+)

2015-03-09 08:54:40 722

原创 iOS开发之-KVC的实现原理探讨

优先检索对应 key 的访问器方法(setter / getter)找不到去检索对应 key 匹配的 成员变量 比如:key为age,只要存在_age,_isAge,age,isAge 名字的成员变量即可以成功赋值若两步都检索不到崩溃抛出异常NSUndefinedKeyException

2015-03-02 22:26:24 706

转载 iOS 的视图层次结构、继承关系及常用结构体探讨

视图生命周期探讨

2015-02-28 10:13:06 2815

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除