自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 关于字符编码 GB2312,UTF-8,GBK,BIG5

关于字符编码 GB2312,UTF-8,GBK,BIG5 你是否对字符编码的问题还是不了解,是否遇到过文件乱码的问题呢,看到 ANSI,GB2312,GBK,latin-1,cp936,euc-cn,GB18030,big5。这么多的会不会头晕呢?先看一个很早看到的一个奇怪现象:在 Windows 的记事本里新建一个文本文件,输入 "联通" 两个字,保存,关闭,再次打开,会发现文本已经不是

2017-03-20 22:40:17 648

原创 同一个 DatagramPacket 对象可以被重用,用来多次发送或接收数据

package datagram;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;impo

2017-01-07 10:21:42 1407

原创 深入理解BufferedInputStream实现原理

通过分析FileInputStream类和BufferedInputStream类中的部分核心代码来理解带缓冲的字节输入流的实现原理,缓冲输出流原理与之相同,在此不再赘述。FileInputStream源码[java] view plain copy package java.io;    public class FileInput

2017-01-04 10:38:57 11041 12

原创 自学cocos2d js游戏开发应该按什么步骤进行

转载自百度知道: 1  两年前的一天,决定要做独立游戏制作人。选定引擎cocos2d,开始学习objective-c语言;(如果你打算只在iOS平台开发可以学obj-c配合cocos2d或者sprite kit;如果打算跨平台就要用cocos2d-x和c++了;当然unity什么的也不错但是我还没尝试过,一直很向往)  2  我跳过了iOS程序开发(似懂非懂看完了斯坦福那一系列的教学

2015-11-26 17:30:17 783

原创 菜鸟的Node.js之旅

Mark一下:http://www.gbtags.com/gb/share/9493.htm

2015-11-26 16:54:11 467

原创 iOS7,iOS8,iOS9适配

1.iOS8新增框架:1.HealthKit2.HomeKit3.CloudKit4.WebKit2.Size Classes:将屏幕分类(配合autolayout使用)3.UIAlertController:替代了 UIAlertView和UIActionSheet4.App Extensions 是iOS8新开放的一种对几个固定系统区域的扩展机制,它可以在一定程度上

2015-11-15 18:36:28 945

原创 一个国外的ios学习网站

http://tutsplus.com/tutorials/search?utf8=%E2%9C%93&search%5Btopic%5D=&search%5Bterms%5D=Building+a+Jabber+Client+for+iOS&button=

2015-06-15 22:58:04 427

原创 使用Jenkins搭建iOS开发的CI服务器

http://www.th7.cn/Program/IOS/201406/214010.shtml目录    简介     下载并运行     Jenkins配置         安装git插件         E-mail设置     自动化构建         远程仓库设置         触发条件设置         编译设

2015-06-14 17:18:51 566

原创 mac下openfire 3.8.2 源码部署 /开发配置 / 二次开发

最近新搞了openfire 从网上找了很多源码部署的相关文章但都是大同小异,拷贝加修改,我如是按照各个文章版本部署目前最新的3.8.2版本,无一例外,各种报错,头疼死我也,一次次失败,我TMD就想为啥官方没文档,一气之下 有了本作。如下是成功案例:1、准备:安装jdk就不用说了把。网上多的是这里就不赘述了。a.源码下载:【官网】http://www.igniterealti

2015-06-11 22:36:35 515

原创 NSURLSessionDownloadTask 断点下载

#import "ViewController.h"#import "ASIHTTPRequest.h"#import @interface ViewController () NSURLSessionDownloadDelegate>@property (strong, nonatomic) NSURLSessionDownloadTask *resumabl

2015-06-07 21:25:35 1636

转载 github优秀开源项目大全-iOS

前言本文旨在搜集github上优秀的开源项目本文搜集的项目都是用于iOS开发本文会持续更新…完整客户端ioctocatgithub的iOS客户端,目前开源代码是V1版本,V2版本在appstore上可以下载ChatSecure-iOS使用XMPP协议的IM开源软件,很强大,在appstore上可以下载

2015-06-02 21:42:56 761

转载 objective-c runtime安全措施之二:反注入

《O'Reilly.Hacking.and.Securing.iOS.Applications>>读书笔记反注入:在类函数被调用前做完整性检测(预防应用自定义函数或apple标准库函数被修改或替换)原理:调用dladdr()函数检查类方法的基本信息是否合法例子1:检查Foundation框架类中NSMutableURLRequest基类(用于改变URL请求)的setHTTPBody方法

2015-05-31 22:44:48 1827 2

转载 仿iOS猎豹垃圾清理(实现原理+源码)

转载请注明出处:仿猎豹垃圾清理(实现原理+源码)前几天无意打开猎豹内存大师, 发现它的垃圾清理很强大, 效果也不错,闲着就研究了下。 不过.. 结果貌似和我想象的不太一样。怎么说呢,听我下文一一分析。效果图:\\从效果图, 我们可以看出它有以下几个功能:获取设备上已安装的所有App获取App的信息, 包括图标和

2015-05-31 22:03:59 1913

转载 iOS开发之runtime的运用-获取当前网络状态

之前写过runtime的一些东西,这次通过runtime获取一些苹果官方不想让你拿到的东西,比如,状态栏内部的控件属性。本文将通过runtime带你一步步拿到状态栏中显示网络状态的控件,然后通过监测该控件的属性来获取当前精确网络状态,比如2G/3G/4G/WIFI。首先,我们需要拿到状态栏,然后通过runtime去探讨状态栏内部的组成结构。1、导入运行时头文件#import

2015-05-31 21:56:00 497

原创 在XMPP的JAVA开源实现Openfire中,增加LBS 附近的人功能

项目代码  https://github.com/node/openfireLBS 1. XMPP协议 与 OpenfireXMPP协议是IM领域的标准协议了,具体可参考  http://xmpp.org   及RFC6120,RFC6121,RFC6122等相关文档。 http://xmpp.org/xmpp-protocols/   XMPP协议实现

2015-05-24 22:16:39 1047

转载 功能复杂且包含及时通讯功能的app后台系统架构

前言:1.及时通讯开源协议:xmpp2.较好的开源协议的实现:tigase、openfire3.鉴于openfire有成套的后台程序以及客户端程序,部署简单且快速,推荐即时通讯服务端开发的新人优先采用openfire进行二次开发 项目说明:项目为一款职业社交app,客户端功能模块有焦点新闻(首页),群组(可以在没有成为群好友的情况下浏览群消息并评论收藏群消息

2015-05-24 22:08:49 944

原创 《环信支持千万并发即使通讯的技术要点》阅读摘要

一天早上起来,偶然机会看到《环信支持千万并发即使通讯的技术要点》演示文档,简单翻阅之后,感觉干货很多,于是快速记下以下笔记。一。IM协议和IM ServerXMPP确实很传统,WhatsApp选用了,同时经过压缩、精简(比如说user字符串使用u字符替代)处理,让XMPP轻量不少。MQTT,如何实现群组、好友呢,这个是业务层面上事情,大家都订阅某一个主题Topic好

2015-05-24 16:55:58 571

转载 Openfire插件开发人员指南

导言插件是增强Openfire功能。这份文件是一个开发人员创建插件指南。结构的一个插件插件存放在插件openfireHome目录。当部署一个jar或war插件文件,它会自动解压安装。该文件在插件目录结构如下:插件结构   myplugin /                  | - plugin.xml                     

2015-05-24 15:37:28 675

转载 openfire 数据库

在学习openfire 之前,先简单的了解一下支撑它运行的数据模式,以后在学习过程中,可能要经常反复的学习数据模式,了解数据处理流程和存储过程必不少的环节的。标准文档如下,原文连接:http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/database-guide.htmlIntroduc

2015-05-24 15:31:59 642

转载 openFire 源码解读

1.openfire的入口main文件在src/java 文件夹下的org.jivesoftware.openfire.starter包中。2.运行main函数之后openfire会调用start方法,首先是获取到ClassLoader对象。那么什么是ClassLoader对象呢?下面具体学习ClassLoader的知识。首先ClassLoader作用是加载Class文

2015-05-24 15:27:47 966

转载 源码详解openfire保存消息记录_修改服务端方式

实现openfire消息记录通常有两种方式,修改服务端和添加消息记录插件。今天,简单的说明一下修改服务端方式实现消息记录保存功能。实现思路修改前:默认的,openfire只提供保存离线记录至ofOffline表中。当发送一条消息时,判断用户是否在线,若为true,不保存消息;若为fasle,保存消息至离线消息表中。修改后:仿照保存离线消息,用户每发送一条消息

2015-05-24 15:26:39 3454 2

转载 XMPP协议学习笔记

XMPP协议学习笔记一即时通讯技术简介    即时通讯技术(IM)支持用户在线实时交谈。如果要发送一条信息,用户需要打开一个小窗口,以便让用户及其朋友在其中输入信息并让交谈双方都看到交谈的内容。大多数常用的即时通讯发送程序都会提供各种各样的功能:即时通讯 - 在用户和在线朋友之间来回发送信息聊天 - 创建用户与朋友或工友的自定义聊天室网页链接 - 共享用户喜爱的网址支持图片

2015-05-24 15:02:35 869

原创 openfire开发文档

openfire开发文档版本:Openfire3.5.摘自:IM即时通讯研究    目   录一、初始工作···············1 、安装 jdk1.52 、安装 eclipse,myeclipse3 、安装 oracle10gXE4 、安装 openfire3.5.1 源代码二、环境配置···············

2015-05-24 15:00:23 946

原创 Protocol Buffers for Object-C

一、先点击链接去了解一下,或者 google一下http://code.google.com/intl/zh-CN/apis/protocolbuffers/二、protobuf的使用1、编译Protocol Buffers  A.下载Protocol Buffers将下载解压后的文件存放至Applications目录下,进到ProtocolBuffers-2.2.

2015-05-24 14:35:42 470

原创 Jabber/XMPP中文翻译计划

http://wiki.jabbercn.org/Jabber/XMPP%E4%B8%AD%E6%96%87%E7%BF%BB%E8%AF%91%E8%AE%A1%E5%88%92:%E5%85%B3%E4%BA%8E

2015-05-24 14:26:52 544

转载 iOS 的 XMPPFramework 简介

XMPPFramework是一个OS X/iOS平台的开源项目,使用Objective-C实现了XMPP协议(RFC-3920),同时还提供了用于读写XML的工具,大大简化了基于XMPP的通信应用的开发。1. 登录和好友上下线1.1XMPP中常用对象们XMPPStream:xmpp基础服务类XMPPRoster:好友列表类XMPPRoster

2015-05-24 14:22:20 520

原创 使用Jenkins+Calabash+Cocoapods搭建iOS持续集成环境

持续集成持续集成究竟是什么呢?根据敏捷大师Martin Fowler的定义:持续集成是一种软件开发实践。在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以多次。每次集成会经过自动构建(包括自动测试)的检验,以尽快发现集成错误。许多团队发现这种方法可以显著减少集成引起的问题,并可以加快团队合作软件开发的速度。只要是开发就有分工,哪怕是自己一个写也要

2015-05-19 21:41:16 867

原创 使用Jenkins搭建iOS开发的CI服务器

简介     下载并运行     Jenkins配置         安装git插件         E-mail设置     自动化构建         远程仓库设置         触发条件设置         编译设置         编译后行为设置     单元测试     最后简介持续集成CI(continuous in

2015-05-19 21:35:47 1319

原创 CoreData 多线程下NSManagedObjectContext的使用

在Google的时候,我发现了这样两篇老外的博客(,)。前者是介绍NSManagedObjectContext在多线程下的三种设计,后者是博主对这三种设计进行的性能测试。下面我将一一介绍:1. persistentStoreCoordinator    这种设计就是我之前在项目中使用的,也是阻塞UI线程最严重的一种设计。它总共有两个Context,一个是UI线程中使用的mainCo

2015-05-18 20:26:47 974

原创 xcode 快捷键

2015-04-28 17:43:21 562

原创 iOS Reveal及简单破解方法

Reveal作为分析APP UI的利器确实非常好用,用来查看任意UI布局也很方便一.模拟器进行分析  1.打开Reveal(http://revealapp.com下载)  2.打开Xcode  3.Reveal——Help——Show Reveal Library in Finder        4.Xcode——导入Reveal.framewo

2015-04-28 17:34:33 1036

原创 weakself的一种写法

在不久前看AFNetworking的源码时候发现了这么一句:12345678910// 不知道这行代码的使用场景的同学你该去自习看看ARC的注意事项和Block的使用了// AFNetworking的写法__weak __typeof(&*self)weakSelf = self;// 我之前一直这么写的__weak __typeof

2015-04-28 17:15:54 1479

原创 iOS 检测版本更新

如果我们要检测app版本的更新,那么我们必须获取当前运行app版本的版本信息和appstore 上发布的最新版本的信息。当前运行版本信息可以通过info.plist文件中的bundle version中获取:[cpp] view plaincopyNSDictionary *infoDic = [[NSBundle

2015-04-28 15:18:54 778

原创 Ios 6和ios7的适配

Ios 6和ios7的适配1.普通的 ViewController:让view的显示从状态栏下面开始,只需在viewDidLayoutSubviews调整 view的bounds        CGRect bounds = self.view.bounds;  bounds.origin.y =  - [self.topLayoutGuide length];self.view.

2015-04-28 10:12:55 745

原创 Xcode高级调试技巧

1.Static Analyzer(静态分析)  Static Analyzer是一个非常好的工具, 它可以帮助我们发现编译器警告不会提示的问题。  Static Analysis 优点:  1、使用操作容易。  2、能够在编码阶段,开发自行进行代码检查。早期发现代码隐患。  3、直接分析源代码来发现程序中的错误,而不需要实际运行。  4、自动检测objective-C程序

2015-04-27 22:14:02 1561

原创 ios xcode svn

* 源代码管理工具的作用:# 能追踪一个项目从诞生一直到定案的过程# 记录一个项目的所有内容变化# 方便地查阅特定版本的修订情况* 如果是团队开发,使用源代码管理工具是强制性的!* 如果是单人开发,也强烈建议现在就开始使用源代码管理工具* 使用源代码管理工具# 由于使用简单,不会增加工作量# 不会对现有工作造成任何损害(坏的影响)# 是一位合格的

2015-04-27 21:39:53 600

原创 ios xocde git使用

02. GIT命令行帮助================================================================================$ svn help查看svn所有命令的帮助$ svn help 子命令# 要退出帮助信息,按"q"# 翻看下页,按"空格"# 翻看上页,按"CTRL+B"# 要搜索相关文字,

2015-04-27 21:30:10 956

原创 UIView的layoutSubviews和drawRect方法何时调用

首先两个方法都是异步执行。layoutSubviews方便数据计算,drawRect方便视图重绘。  layoutSubviews在以下情况下会被调用: 1、init初始化不会触发layoutSubviews。2、addSubview会触发layoutSubviews。3、设置view的Frame会触发layoutSubviews,当然前提是

2015-04-22 09:37:43 769

原创 Objective-c中对象的Copy、MutableCopy、浅拷贝、深拷贝

对象的复制就是复制一个对象作为副本,他会开辟一块新的内存(堆内存)来存储副本对象,就像复制文件一样,即源对象和副本对象是两块不同的内存区域。对象要具备复制功能,必须实现协议或者协议,常用的可复制对象有:NSNumber、NSString、NSMutableString、NSArray、NSMutableArray、NSDictionary、NSMutableDictionarycopy:产

2015-04-16 16:35:29 665

原创 分享-学习网站

游戏开发相关: http://www.gameres.com/    想学游戏的这个网站绝对不能错过,个人感觉挺不错的http://xyq.baike.163.com/ziliao/      SLG 游戏系统策划http://www.gamedev.net/page/index.html  国外http://ns.codingnow.com/     网易梦幻西游后端主程

2015-04-16 14:23:24 644

空空如也

空空如也

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

TA关注的人

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