Code and Zen

面朝大海 春暖花开

我是孙凯旋
英文名叫Kyle Sun
一个来自中国的iOS开发者
也会点安卓


  1. Xcode多Target下本地化App名称

    Target可能很多人都会有开发多个相似的App的需求,这些相似的App可能也就是名称、BundleID、证书配置不同,其他的功能都基本一样。对于这种情况的处理,一种比较笨的办法就是手动修改 Info.plist 文件中相应的内容,打包完了之后再次修改再打包。这种方法如果只是搞一次也不会麻烦很多,但是如果多搞几次,谁都会觉得烦,况且在修改的过程中还有可能会出错。那有没有什么更好的办法呢?答案是:使用 Target。 那么什么是 Target 呢?简单点说,一个 Target 描述了一个产品的属性 …

    iOS开发 继续阅读

  2. 检测iOS设备是否连接VPN

    前言(废话)最近接到一个限制我司国内版的产品在国外的使用App的需求,其实也就是让这种“水货”的产品在国外无法连接我们的App。 为了达到这个目的,首先需要从产品中获取它的序列号来判断它是否属于国内版,然后根据手机的定位判断是否在国外,如果两个条件同时满足就断开连接。 为了判断手机的定位是否在国外有以下两种方法: 根据手机的GPS定位坐标反地理编码获取国家代码判断是否是CN。 后台接口根据手机的IP来判断是否在国外。 这两种方式都有缺陷,第一种可以通过模拟定位到国内的方式来避开,第二种可以通 …

    iOS开发 继续阅读

  3. 让Mac终端自动补全忽略大小写

    Mac自带的 Terminal.app 已经有自动补全功能,但是需要区分大小写。只需要在用户目录下修改 .inputrc 文件的配置就可以让它忽略大小写。具体操作如下: $ vi ~/.inputrc 然后在里面添加下面的内容: set completion-ignore-case onset show-all-if-ambiguous onTAB: menu-complete 保存后重新打开终端就可以使用 Tab 键愉快的使用了。 …

    Mac技巧 继续阅读

  4. 使用Trunk发布开源库到Cocoapods

    注册安装Cocoapods$ sudo gem install cocoapods$ pod setup pod setup 的过程就是把 Cocoapods/Specs 克隆到本地的过程,由于这个库包含了所有发布到Cocoapods的开源库的说明,现在已经有数百兆的大小了,而且由于某众所周知的原因,这个过程会比较慢,需要耐心等待。 注册Trunk$ pod trunk register skx926@gmail.com 'Kyle Sun' --description='iMac' --ver …

    iOS开发 继续阅读

  5. 让你的Mac终端“漂亮”起来

    Mac自带的终端默认的配色看起来有些单调,如何让它变的“漂亮”一些呢?这里我们以Tomorrow配色方案为例来进行设置。 首先我们使用下面的命令来从Github上克隆Tomorrow项目$ git clone https://github.com/chriskempson/tomorrow-theme.git 窗口进入刚才下载的项目的文件夹中的OS X Terminal文件夹,然后双击运行Tomorrow Night.terminal即可导入Tomorrow Night主题到终端。然后我们在终端 …

    Mac技巧 继续阅读

  6. GPS坐标纠偏和加偏

    做过iOS地图开发的同学都会遇到同一个问题–坐标偏移,简而言之就是你拿到的GPS坐标显示在地图上的时候并不会像你想象的那样显示在正确的位置,通常会有一公里左右的偏移。这是为什么呢? 为何会有偏移?天朝测绘局以国家安全为由,用法律的形式对所有在天朝发型的地图类产品加了强制性规范,要求所有地图类产品都必须使用国家测绘局的一种加偏算法,对真实的GPS坐标(WGS-84)进行加偏处理。因此国内所有商用地图的坐标都是偏移的,这种加偏后的坐标就叫做火星坐标(GCJ-02)。国内的高德地图、搜狗地图、苹果地图 …

    iOS开发 继续阅读

  7. 从指针说起

    指针作为一个使用Objective-C的iOS开发者,指针对很多人来说却是最熟悉的陌生人–虽然每天都在用,但是却对它了解的不是很多。那么指针到底是什么呢? 指针即指针变量,是一个存储变量内存地址的变量。 这句话可能有点绕,我们举个例子来说一下: int a = 0;int *p = &a; 上面的代码首先声明了一个int类型的变量a,它的值为0。然后又声明了一个指针类型的变量p,p这个变量存储的值就是a变量的内存地址。 C++中的引用 引用是变量的别名。 我们同样举个例子来说一下: …

    iOS开发 继续阅读

  8. 为Git设置代理

    有人说中国大部分程序员的工作其实就是Copy from Github。当然,这句话有一些戏谑的成分,但是也能从中看出Github对一个程序员对重要性。Github作为全球最大的程序员交友平台,他服务质量肯定是毋庸置疑的。但是由于某些众所周知的原因,Github在天朝访问起来很慢,有时候甚至访问不了。这种情况下从Github上clone或者push代码上去就会很困难,为了能够稳定的访问Github我们就需要给Git服务设置代理。 假设你现在已经有了一个本地端口号为1080的socks5代理服务器。 …

    Mac技巧 继续阅读

  9. KSPhotoBrowser简介

         一个小而美的图片浏览器。 特性 拥有4种不同的消失交互动画(旋转, 缩放, 滑动等)。 拥有3种不同的背景风格(图片模糊, 背景模糊, 纯黑)。 拥有两种不同的加载风格(确定式, 不确定式)。 拥有两种不同的分页指示器(点, 文字)。 支持弹性动画。 已对长图的显示进行优化。 可以根据提供的URL链接或者UIImage对象进行显示。 后续 增加横屏显示。 增加视频的浏览。 使用根据URL链接显示NSArray *urls = @[@"http …

    iOS开发 继续阅读

  10. 打造一台你的专属黑苹果

    要打造一台你的专属黑苹果需要经过以下四个大的步骤: 配件购买 组装机器 安装系统 安装驱动 1.配件购买对于Mac的兼容配件的购买可以查看tonymacx86的Buyer’s Guide,里面已经很详细的列出了很多推荐的配件和购买的链接。美中不足的是里面给出的链接都是国外的网站,不支持国内的邮寄地址。国内要想买就得通过海淘过程比较繁琐,有些转运公司也不支持电脑配件的邮寄,邮寄的周期也比较长,一般都得半个月。我自己以前没有海淘过东西,所以不推荐,当然以前如果有过海淘经历的朋友可以根据自己的情况 …

    黑苹果 继续阅读