- 博客(61)
- 资源 (4)
- 收藏
- 关注
原创 IOS应用信息抓取
本文档主要介绍怎么在真机中获取应用列表,并获得应用的相关核心信息,如版本号、bundleID、appleID、开发的sdk、上次打开时间。。。 由于能力有限,目前只能获取这些信息,还无法获取更多有意思的信息。 一、准备工作使用最新的XCode创建应用AppList;学习IOS底层Runtime机制,包含类操作和消息分发;了解什么是私有API什么是公有API;在AppList中开
2015-09-30 14:56:35 1079
原创 Blocks Programming
一、概述 在c和c的派生语言中,如Object-c和C++,块对象为你创建一个Ad Hoc功能体。在其他编程语言中,一个块对象有时候会称为“关闭(closure)”。在IOS中,我们称呼它为“块(blocks)”。(一)Block的功能 Block是一个匿名内敛的代码集合: - 就像一个函数具有不同类型的参数列表; - 其返回类
2015-09-27 16:17:48 1982
原创 堆排序
堆排序(HeapSort),与归并排序一样,但不同于插入排序的是,堆排序的时间复杂度是O(nlgn),空间复杂度是O(n)。而与插入排序相同,但不同于归并排序的是,堆排序同样具有空间原址性:任何时候都只需要常数个额外的元素空间存储临时数据。
2015-09-25 15:52:34 820
原创 IOS音频播放
一、导入框架#import <AVFoundation/AVFoundation.h>二、设置全局变量@property (nonatomic, strong) AVAudioPlayer *audioplayer; 三、使用//1.音频文件的url路径 NSURL *url=[[NSBundle mainBundle]URLForResource:@"dahai" withExtensio
2015-09-25 15:45:36 464
原创 移动端网页控制键盘弹出样式
在移动端app开发,用WebView加载Jsp或Html页面的时候会遇到这样的情况,如某个输入框输入的是数字类型的数据,手机键盘默认弹出的样式是中文或英文。 此时为了让用户有更好的体验,当用户点击输入框时,弹出数字类型的键盘。如下所示 解决方案: 在html或者jsp找到该输入框,修改其属性为<input type="number">
2015-09-25 15:19:08 2023
原创 Objective-C和JS交互
一、核心原理1. OC–>JS stringByEvaluatingJavaScriptFromString,其参数是一NSString 字符串内容是js代码(这又可以是一个js函数、一句js代码或他们的组合),当js函数有返回值或一句js代码有值返回可通过stringByEvaluatingJavaScriptFromString的返回值获取。2. JS–>OC 利用
2015-09-25 15:10:11 807
原创 IOS 清除UIWebview的缓存以及cookie
NSLog(@"清除cookies");NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage];for (NSHTTPCookie *cookie in [storage cookies]) { [storage deleteCookie:cookie];}NSLog(@"清除UIWebV
2015-09-25 15:01:04 583
原创 快速排序
对于包含n个数的输入数组来说,快速排序是一种最坏情况的时间复杂度为的排序算法。虽然最坏情况时间复杂度很差,但是快速排序通常是实际排序应用中最好的选择,因为它的平均性能非常好,它的期望复杂度是nlgn。
2015-09-24 21:46:50 1808
原创 Core Data后端SQL的可见性
每天都有无数Apple设备运行着依赖于Core Data的应用程序。这使得Core Data成了一个成熟、稳定且非常快速的平台,以供应用程序访问其数据。Core Data本身并不是数据库,它其实是一个拥有诸多功能的框架,而其中一项功能就是把应用程序痛数据库之间的交互过程自动化。
2015-09-24 21:36:17 544
原创 备份与恢复
当你正在做一份很重要的数据汇总时,却突然断电或者电脑出现异常,使得原先辛辛苦苦做的东西一下子灰飞烟灭了,你会作何感受呢?是后悔还是气恼?后悔没有备份数据,想恢复数据又不行。当然,在这之前,我们就要做好双重的准备,以防万一,过一段时间就为数据做一个备份是不可或缺的! 在我们的生活中充满了这样的工具,往大了说有各大云盘,如:百度云盘、360云盘和苹果的iCloud等;往小了说在各种应
2015-09-24 21:32:20 480
原创 如何防止文件备份到iCloud和iTunes
How do I prevent files from being backed up to iCloud and iTunes?Q: My app has a number of files that need to be stored on the device permanently for my app to function properly offline. However, thos
2015-09-23 22:26:08 1087
原创 三十年后,你有多少钱
一、最重要的不是收入,而是理财的方法!改变之前对金钱的观念。当经济遇到困难时,要将所有责任扛在自己肩上。生活中绝对不能让自己成为金钱的奴隶,而是要成为金钱的主人。任何只停留在思想中的决定是没有任何意义的。首要的目标是还清债务。用预算来严格控制支出。运用70:30的法则(月剩余70%还款30%存储)。调整家庭资产结构,确保收入增多。理财要有目标的指引。必须把握资产投资范式的变化。
2015-09-23 22:15:03 589
原创 Xcode无法调试APP
在开发过程中,有的时候我们会遇到莫名奇妙的问题,如无法调试APP。多数情况看log日志就可以知道问题所在,但是有的时候,不知道问题在什么地方就是没法调试。 本人总结了几种方法,百试百爽。
2015-09-23 18:12:03 1417
原创 IOS项目统计源代码行数
如果要统计ios开发代码,包括头文件的,终端命令进入项目目录下,命令如下:统计每个文件的行数find . -name "*.h" -or -name "*.m" -or -name "*.c" |xargs wc -l 统计代码行数总和find . -name "*.h" -or -name "*.m" -or -name "*.c" |xargs grep -v "^$"|wc -l
2015-09-23 17:11:40 762
原创 UI基础控件 Swift
UI基础控件Swift版包含UILable、UIButton、UISegmentedControl、UITextField、UISlider、UISwitch、UIActivityIndicatorView、UIProgressView、UIPageCo
2015-09-23 16:44:48 879
原创 Objective-C Runtime Messaging
Objective-C语言的许多决策可以在编译和运行时执行。只要有可能,它是动态的。这意味着Objective-C语言不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。Runtime系统是一种用于Objective-C语言的操作系统,它使OC语言工作起来。 Runtime的核心是在运行时动态操作类和消息分发给其他对象,本文档主要介绍在运行时的消息分发机制。
2015-09-23 15:31:02 737
原创 Objective-C Runtime Classes
Objective-C语言的许多决策可以在编译和运行时执行。只要有可能,它是动态的。这意味着Objective-C语言不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。Runtime系统是一种用于Objective-C语言的操作系统,它使OC语言工作起来。 Runtime的核心是在运行时动态操作类和消息分发给其他对象,本文档主要介绍在运行时动态操作类,至于消息分发会在下一篇博文介绍。
2015-09-22 22:57:51 1231 1
原创 UIView层次管理(放到最上层或放到最下层)
将一个UIView显示在最前面只需要调用其父视图的 bringSubviewToFront()方法。 将一个UIView层推送到背后只需要调用其父视图的 sendSubviewToBack()方法
2015-09-21 21:27:30 16693
原创 UIView转UIImage
#pragma mark UIView转UIImage+ (UIImage *)createImageFromView:(UIView *)view{ CGFloat scale = [UIScreen mainScreen].scale;// 屏幕密度 // 开始绘图,参数1:区域大小;参数2:是否是非透明的(如果需要显示半透明效果,需要传NO,否则传YES);参数3:屏幕密
2015-09-21 21:26:09 511
原创 Android与服务器交互
在Android与服务器交互过程中,Android端使用的核心类是AsyncTask,服务器使用JSP或者HttpServlet做出响应。当然还可以利用框架,如Struts 2或Spring。本日志只做简单的交互实现,不考虑框架、安全性以及项目的复杂度。 AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口
2015-09-21 21:06:40 1285
原创 代码中特殊的注释技术——TODO、FIXME和XXX的用处
前言:今天在阅读Qt Creator的源代码时,发现一些注释中有FIXME英文单词,用英文词典居然查不到其意义!实际上,在阅读一些开源代码时,我们常会碰到诸如:TODO、FIXME和XXX的单词,它们是有其特殊含义的。、TODO: + 说明:如果代码中有该标识,说明在标识处有功能代码待编写,待实现的功能在说明中会简略说明。FIXME: + 说明:如果代码中有该标识,
2015-09-21 21:02:57 490
原创 利用Java反射机制调用类方法
本文主要讲述利用Java反射机制调用类方法。一、被调用类public class Yang { public void test(String str, boolean bool) { System.out.println(str + bool); }}二、调用类public class MainTest { @Test public void go()
2015-09-21 13:59:35 491
原创 TOMCAT启动加速
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。 不管是使用Eclipse还是MyEclipse做web开发,我们都想启动tomcat越快越好,此时则需要清楚tomcat的缓存。还有一种情况,也需要清缓存。当项目开发过程中遇到莫名其妙
2015-09-21 13:57:26 1291
原创 JAVA快速注释
通过菜单 Window->Preference 打开参数设置面板,然后选择:Java -> Code Style -> Code Templates 1. 类注释 打开Comments,双击Types,修改为如下代码 /** * Title: ${type_name} * Description:
2015-09-21 13:55:55 843
原创 苹果电脑截图方法
全屏截图:Command-Shift-3使用快捷键后会马上截取当前的全屏指定区域截图:Command-Shift-4使用快捷键后会出来一个带有座标的瞄准器,用鼠标的拖放可以选择需要截图的区域。此方式有秘笈,后面详细说。指定程序窗口截图:Commnad-Shift-4-Space使用快捷键后会出现一个照相机的图标,这时候你可以选择屏幕上能看到的任何程序窗口,把鼠标移到它上
2015-09-21 13:50:11 1359
原创 23设计模式之适配器(Adapter)
返回首页一、概述 Adapter属于结构型模式中的一种,将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。二、适用性 1. 你想使用一个已经存在的类,而它的接口不符合你的需求。 2. 你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(
2015-09-21 13:42:59 693
原创 23设计模式之享元模式(Flyweight)
返回首页一、概述 Flyweight属于结构型模式中的一种,运用共享技术有效地支持大量细粒度的对象。二、适用性 当都具备下列情况时,使用Flyweight模式: 1.一个应用程序使用了大量的对象。 2.完全由于使用大量的对象,造成很大的存储开销。 3.对象的大多数状态都可变为外
2015-09-21 13:29:56 688
原创 23设计模式之外观模式(Facade)
返回首页一、概述 Facade属于结构型模式中的一种,为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。二、适用性 1. 当你要为一个复杂子系统提供一个简单接口时。子系统往往因为不断演化而变得越来越复杂。大多数模式使用时都会产生更多更小的类。这使得子系统更具可重用性,也
2015-09-21 13:21:25 500
原创 23设计模式之组合模式(Composite)
返回首页一、概述 Composite属于结构型模式中的一种,将对象组合成树形结构以表示"部分-整体"的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。二、适用性 1. 你想表示对象的部分-整体层次结构。 2. 你希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象
2015-09-21 13:13:07 580
原创 23设计模式之装饰模式(Decorator)
返回首页 一、概述 Decorator属于结构型模式中的一种,动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。二、适用性 1. 在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。 2. 处理那些可以撤消的职责。 3. 当不能采用生成
2015-09-21 13:01:45 578
原创 23设计模式之中介者模式(Mediator)
返回首页一、概述 Mediator属于行为型模式中的一种,用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。二、适用性 1. 一组对象以定义良好但是复杂的方式进行通信。产生的相互依赖关系结构混乱且难以理解。 2. 一个对象引用其他很多对
2015-09-21 11:52:25 556
原创 23设计模式之备忘录模式(Memento)
返回首页一、概述 Memento属于行为型模式中的一种,在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。二、适用性 1. 必须保存一个对象在某一个时刻的(部分)状态,这样以后需要时它才能恢复到先前的状态。 2. 如果一个用接口来让其它对象直接
2015-09-21 11:40:15 483
原创 23设计模式之模板方法(TemplateMethod)
返回首页一、概述 TemplateMethod属于行为型模式中的一种,定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。 TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。二、适用性 1. 一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现。
2015-09-21 11:29:21 580
原创 23设计模式之策略模式(Strategy)
返回首页一、概述 Strategy属于行为型模式中的一种,定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。二、适用性 1. 许多相关的类仅仅是行为有异。“策略”提供了一种用多个行为中的一个行为来配置一个类的方法。 2. 需要使用一个算法的不同变体。
2015-09-21 11:18:10 599
MachOView最新版
2019-03-05
苹果手机应用信息抓取
2015-09-30
Objective-C Runtime测试代码
2015-09-23
23设计模式源代码-Swift
2015-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人