
iOS
文章平均质量分 51
hnjyzqq
这个作者很懒,什么都没留下…
展开
-
在macOS上实现多进程任务处理
macOS 多进程开发, XPC原创 2022-11-09 09:55:47 · 1102 阅读 · 1 评论 -
关于Apple的私有API
介绍一.基本知识iPhone中的API除了公开的 API:Published API外(或者叫文档中记录的API:Documented API),还有两类API:私有API:Private API和未公开的API:UnPublished API(或者叫文档中未记录的API:Undocumented API)。其中私有API是指放在PrivateFrameworks框架中的API,未公开的AP...转载 2015-01-23 19:08:41 · 1753 阅读 · 0 评论 -
address book api 图型
找不到原图地址,就只能抓来直接用了,如果有知道地址的说下。转载 2015-01-24 01:16:49 · 392 阅读 · 0 评论 -
NSInvocation的使用
在ios直接调用某个对象的消息是方法有两种:一:performselector:withObject:二:invocation第一种方式比较简单,能完成简单的调用。但是对于>2个的参数或者有返回值的处理,那就需要做些额外工作才能搞定。那么在这种情况下,我们就可以使用NSInvocation来进行这些相对复杂的操作NSInvocation可以处理参数、返回值。会jav转载 2015-01-24 00:18:02 · 552 阅读 · 0 评论 -
UITableView的一些简单问题的处理
问题一:第一次初始化UITableView,在没有数据的情况下UITableView是不可以上下滚动的原因:在没有数据的情况下UITableView无法计算单元格的高度解决方法:在viewdidload方法中指定UITableView的frame大小问题二:UITableView加载数据的工程中,如果速度较慢,会造成卡壳,在这个时候多长点击某一个单元格会造成Na原创 2015-01-23 20:01:15 · 456 阅读 · 0 评论 -
iOS裁剪图片
一: - (void)drawRect:(CGRect)rect {CGContextRef context=UIGraphicsGetCurrentContext();//设置倒立CGContextRotateCTM(context,M_PI);//重新设置坐标 self.bounds获取整个屏幕的区域。CGContext原创 2015-01-23 19:18:03 · 522 阅读 · 0 评论 -
Core Animation
iOS 提供了一系列的图形图像技术,这是建立动人的视觉体验的基础。特定的框架—处理 2D,3D 和动画效果—能够让您的程序访问 iPhone 和 iPod touch 卓越的图形功能。Core Animation基于合成独立图层的简单编程模型,您可以使用 Core Animation 来建立具有动画效果的用户体验。动画是按定义好的关键步骤创建的,步骤描述了文字层、图像层和转载 2015-01-23 22:48:00 · 681 阅读 · 0 评论 -
iphone上面编写具有root权限的程序
正常途径下, 我们编写的程序发布在App store上, 使用官方规定的SDK. 但有些时候, 正常途径实现不了的功能, 可以在破解的iphone上面实现. 以cydia上文件管理软件iFile为例, iFile可以修改系统的任何文件, 这需要iFile具有root权限, 在iphone没有破解的情况之下, 是无论如何都实现不了的. 我个人并不支持破解, 但之前接到个任务编写的一个程序只要求转载 2015-01-23 22:28:04 · 611 阅读 · 0 评论 -
Modal View Controller的不同呈现方式
Present ViewController Modally 一、主要用途 弹出模态ViewController是IOS变成中很有用的一个技术,UIKit提供的一些专门用于模态显示的ViewController,如UIImagePickerController等。弹出模态ViewController主要使用于一下这几种情形: 1、收集用户输入信息 2、临时呈现转载 2015-01-23 22:31:16 · 599 阅读 · 0 评论 -
iPad UIPopoverController弹出窗口的位置和坐标
TodoViewController *contentViewController = [[TodoViewController alloc] init]; UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:contentViewC转载 2015-01-23 22:24:17 · 527 阅读 · 0 评论 -
Xcode里的-ObjC
有时候使用第三方库,这个库的使用向导里面特别说明,在添加完该库后,需要在Xcode的Build Settings下Other Linker Flags里面加入-ObjC标志。之所以使用-ObjC,和Objective-C的一个重要特性:类别(category)有关。根据这里的解释,Unix的标准静态库实现和Objective-C的动态特性之间有一些冲突:Objective-C没有为每个函数转载 2015-06-16 09:42:18 · 2335 阅读 · 0 评论 -
M3U8
M3U8文件概念 M3U8文件是指UTF-8编码格式的M3U文件。M3U文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的网络地址进行在线播放。M3U8文件举例 例如使用云图TV点播直播节目时,发送请求: http://121.199.63.236:7613/m3u8/cckw1/szws.m3u8?from=bab&fun=yes&chk=转载 2016-03-28 15:56:06 · 1720 阅读 · 1 评论 -
CFSocket相关(未完待续)
CFSocket相关今天想深入了解下CFNetworking,然后就去看了Apple的API,又结合了网络上前人的经验,发现了这么一段话。Sockets 是网络通讯的最基本一层。一个 socket 起的作用类似与一个电话线接口,它可以使你连接到另一个 socket 上(不论是本地的还是网络另一端的),并且向那个 socket 发送数据。最常见的 socket 抽象概念就是 BSD sockets,...原创 2015-02-03 00:06:06 · 1130 阅读 · 0 评论 -
ARC中__bridge, __bridge__transfer, __bridge_retained 关系
现在已经凌晨了,但是我却没发觉困。琢磨了好久的东西,终于顿悟。这篇是其中的一个点,记录下来,以备后续查阅!说到__bridge,就不得不说Objective-C和Core Foundation对象之间的关系。当你在 Objective-C 和 Core Foundation 对象之间进行转换时,就需要使用 Bridge cast。今天的多数应用很少需要使用 Co原创 2015-01-22 01:05:20 · 768 阅读 · 0 评论 -
数据加密
数据加密通常分为两种,即对称加密和非对称加密。对称加密: 所谓对称,就是采用同一个密钥同时用作信息的加密和解密,加密的双方使用方式用同样的密钥进行加密和解密。由于其速度,对称性加密通常在消息发送 方需要加密大量数据时使用。密钥是控制加密及解密过程的指令。算法是一组规则,规定如何进行加密和解密。对称式加密本身不是安全的。转载 2015-01-25 23:47:08 · 594 阅读 · 0 评论 -
info.plist
当新建一个工程之后,会生成一个名为xx-Info.plist的文件,该文件包含了一些工程属性的配置:1 常用项:Application requires iPhone environment:如果应用程序不能在ipod touch上运行,设置此项为true;Application uses Wi-Fi如果应用程序需要wi-fi才能工作,应该将此属性设原创 2015-01-31 14:55:54 · 495 阅读 · 0 评论 -
The Ultimate Guide To iPhone Resolutions
转载自:http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions转载 2016-03-28 16:05:44 · 669 阅读 · 0 评论 -
AVPlayer的使用(远程控制)
导入头文件#import 远程控制事件接收与处理- (void)viewWillAppear:(BOOL)animated{[super viewWillAppear:animated];[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];[self becomeFirstResponder转载 2015-06-23 18:10:00 · 1144 阅读 · 0 评论 -
extern "C" 详解
extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般之包括函数名。 这个功能十分有转载 2015-06-23 22:25:29 · 882 阅读 · 0 评论 -
SDWebImage
SDWebImage这个类库提供一个UIImageView类别以支持加载来自网络的远程图片。具有缓存管理、异步下载、同一个URL下载次数控制和优化等特征。 SDWebImage 支持异步的图片下载+缓存,提供了 UIImageView+WebCacha 的 category,方便使用。SDWebImage加载图片的流程:1. 入口 setImageWithURL转载 2015-06-23 18:10:50 · 495 阅读 · 0 评论 -
Reveal查看任意app的高级技巧
原文链接:http://zhuanlan.zhihu.com/iOSRe/19646016Reveal查看任意app的高级技巧hangcom · 1 年前Reveal是一个很强大的UI分析工具,与其他几个功能相近的工具(比如PonyDebugger)相比,其最大的特点就是非常直观,用来查看app的UI布局非常方便。其常规用法是将framework集成至Xcode工程转载 2015-06-02 10:36:29 · 522 阅读 · 0 评论 -
在iOS上绘制自然的签名
怎么才能在iOS设备上获取用户的签名呢?虽然我没有找到任何关于获取签名的文章,但是在App store上已经有了实现得很好的app。 Paper by 53 是一个画画的iPad应用程序,它拥有漂亮并且灵敏的画笔,这也是我所要追求的用户体验。代码可以从这里得到: SignatureDemo连点成线最简转载 2015-01-21 23:31:48 · 904 阅读 · 0 评论 -
iOS常用尺寸大小说明
元素控件尺寸(pts)Window(含状态栏)320 x 480Status Bar的高度20Navigation Bar的高度44含Prompt的Navigation Bar的高度74Navigation Bar的图标20×20(透明的png)T原创 2015-01-22 00:04:41 · 492 阅读 · 0 评论 -
软件漏洞的主要来源
没有一款软件或平台敢说自己是绝对安全的。软件漏洞永远存在,我们的目的是通过细致的软件设计,良好的编码,发现漏洞后快速的响应来尽量减少软件漏洞的产生,以及降低漏洞被利用后所带来的危害。下面介绍一下iOS中(当然也适用于其他平台)中几种常见的漏洞的来源。一:缓冲区溢出(buffer overflows)缓冲区溢出是软件安全漏洞的主要来源。所谓缓冲区溢出,指的就是代码写入转载 2015-01-31 01:14:22 · 6645 阅读 · 0 评论 -
网络视频的播放
#import #import //导入视频播放库@interface CustomMoviePlayerViewController : UIViewController{ MPMoviePlayerController *mp; NSURL *movieURL; //视频地址 UIAct转载 2015-01-31 15:36:46 · 1002 阅读 · 0 评论 -
iOS App分发
一:如何打包并分发安装?我们都知道,为苹果开发应用需要通过苹果审核并在App Store上架,但审核周期极为漫长,同时如果需要在发布前,想通过内侧的方式对自己的应用进行测试,都需要用到程序的打包方式,下面,介绍几种主要的打包方式:分发安装包供越狱机使用程序打包前,需要有与应用对应的App ID以及对应的Distribution版本的Provisioning File,转载 2015-01-31 00:43:08 · 1273 阅读 · 0 评论 -
Xcode提示“Valid signing identity not found”的解决方法
1:首先进行Organizer,Provisioning file里所有显示为黄色感叹号的文件删掉。(设备里provisioning file也同样操作,在Organizer内也可完成)2:打开Keychain Access (钥匙串访问),‘菜单栏’ -> '钥匙串设访问' -> '证书助理' -> "从证书颁发机构申请证书",选择“存储到磁盘”,输入必要信息原创 2015-01-31 01:28:40 · 878 阅读 · 0 评论 -
开源类库之三(MPProgressHUD)
MPProgressHUD是一个非常好用的进度指示器类库,其提供了苹果官方sdk没有提供的progress indicator接口,且提供多种样式,使用方法简便。首先将类库文件添加到项目中。使用实例代码如下:[cpp] view plaincopy#import #import "MBProgressHUD.h"原创 2015-01-31 01:13:37 · 1670 阅读 · 1 评论 -
开源类库之二 (FMDataBase)
FMDataBase是iOS平台中一个非常强大的数据库类库,其将sqlite面向过程的接口以面向对象的方法展现出来,提供了极高的可用性。其使用很简单,将sqlite 库添加到项目中,然后将FMDataBase类库文件添加到项目中,下面是对笔者对FMDataBase进行的一个二次封装,处理的数据库很简单,只有一张表,两个列,存储的都是一些key-value对,读者可以根据自身需要对此类进行修原创 2015-01-31 01:12:07 · 1333 阅读 · 0 评论 -
真机调试
前言:准备工作:一个苹果开发者账号一个应用ID,对应你想要调试的项目,注意申请App ID时填写bundle identifier必须与你的项目中的bundle identifier完全对应一台iOS设备,其操作系统版本要与你使用的SDK版本相匹配第一步:获取设备ID打开你的项目,然后将设备接入到你的开发机中,打开organizer,在Device tab页下可以看到你刚刚转载 2015-01-31 00:45:25 · 588 阅读 · 0 评论 -
iOS 程序开发路线图
原文链接:http://www.appdeveloperatlas.com/1集成 工具表面企业apiAPI访问网关API管理API目录2开发 应用开发工具MVC框架UI框架混合动力工具跨平台工具企业移动开发平台3测试 用户测试和认证工具自动化应用程序测试测试应用程序认证对比测试4部署 应用商店和云基础设施翻译 2015-01-22 01:14:01 · 793 阅读 · 0 评论 -
iOS内IPC-------------进程间通信
受限与iOS系统的运行机制,绝大多数情况下一个应用在进入后台后会马上进入suspend或terminate状态,也就是说不能执行代码,iOS中也没有类似WIndows中Service的概念,但存在某些例外:1:有某些重要的任务,例如保存用户数据,网络下载等,可以申请一段时间的background运行时间,但时间段内能进行的操作比较有限,且有时间限制,长度为600秒左右。2:某些特定转载 2015-01-31 00:46:55 · 776 阅读 · 0 评论 -
#ifdef _DEBUG 使用总结
#ifdef _DEBUG virtual void AssertValid() const; //assert(断言)valid(有效的,正确的)virtual void Dump(CDumpContext& dc) const; //存储上下文#endif这两个函数是调试用的,第一个函数检查可用性,即是否有效 第二个函数如果未更改的话,最终调用的是Cwnd::Dump();转载 2015-01-08 13:08:52 · 1156 阅读 · 0 评论 -
NSFileManager
NSFileManager中包含了用来查询单词库目录、创建、重命名、删除目录以及获取/设置文件属性的方法(可读性,可编写性等等)。每个程序都会有它自己的沙盒,通过它你可以阅读/编写文件。写入沙盒的文件在程序的进程中将会保持稳定,即便实在程序更新的情况下。如下所示,你可以在沙盒中定位文件目录://对于错误信息NSError *error;// 创建文件管理器N原创 2015-01-31 15:26:14 · 717 阅读 · 0 评论 -
iOS设备的流量分析:Remote Virtual Interface
想测试一下应用在网络传输层面的安全性,最直观的就是直接抓设备上的网络包了,查了一些方案,要么需要设备越狱,要么要装一堆东西,很麻烦。后来发现苹果官方已经提供了相应的方法,叫做“Remote Virtual Interface",可以直接将iOS设备映射成为Mac上的一块网卡。在Mac上,便可以使用常用的流量监控工具对这块虚拟网卡的流量进行监控。 配置的过程其实也比较简单1:转载 2015-01-31 01:28:13 · 2413 阅读 · 0 评论 -
Core Image
Core Image是个相当强悍的框架,不仅功能强大,而且可以直接使用GPU,效率奇高,甚至可以很容易就能处理图片的各种效果,色彩,曝光,饱和度,变形以及实时对视频进行渲染。下面让我们来看看,如何具体使用它:首先你需要导入 CoreImage.framework 框架;进行Mac(不是iOS)开发的同学请导入 QuartzCore.framework 框架,包含在其中了。然后我们先原创 2015-01-31 15:23:37 · 683 阅读 · 0 评论 -
iOS开发——加载、滑动翻阅大量图片解决方案详解
加载、滑动翻阅大量图片解决方案详解今天分享一下私人相册中,读取加载、滑动翻阅大量图片解决方案,我想强调的是,编程思想无关乎平台限制。我要详细说一下,在缩略图界面点击任意小缩略图后,进入高清大图全屏浏览界面的这短暂的1秒内(和后续的几秒),都发生了什么。常规思路流程点击任意小图后,1.首先制作scrollview框架:大小2个scrol转载 2015-01-21 23:35:26 · 467 阅读 · 0 评论 -
keychain
通常情况下,我们用NSUserDefaults存储数据信息,但是对于一些私密信息,比如密码、证书等等,就需要使用更为安全的keychain了。keychain里保存的信息不会因App被删除而丢失,在用户重新安装App后依然有效,数据还在。使用苹果官方发布的KeychainItemWrapper或者SFHFKeychainUtils很方便,后来看到 iphone使用keychain来存取用户转载 2015-01-22 00:08:13 · 607 阅读 · 0 评论 -
CFNetwork编程指南(中文版)
···下载地址:http://pan.baidu.com/s/1mgj3hMg 密码:l32c原创 2015-02-03 00:59:42 · 1097 阅读 · 1 评论 -
经典讲解:@class和 #import
很多刚开始学习iOS开发的同学可能在看别人的代码的时候会发现有部分#import操作写在m文件中,而h文件仅仅使用@class进行声明,不禁纳闷起来,为什么不直接把#import放到h文件中呢?这是因为h文件在修改后,所有import该h文件的所有文件必须重 新build,因此,如果把#import写在h文件中,import该h文件的文件也就会产生不必要的编译,增加编译时间,特别是在项目文转载 2015-02-03 00:35:46 · 489 阅读 · 0 评论