mac系统下,全自动打包dmg多渠道包的脚本分享

 紧接上篇如何在 mac 下制作 dmg 文件以进行分发的教程,我们不可能在每次程序需要发布新的版本时,都手动去操作一遍打包过程,太容易出错了,能自动化的,我们一定是要争取自动化让计算机来完成这类事情。这里分享一段我们在用的脚本,想必只要做mac程序开发的都会需要的。点击可前往github下载

set -e

title=’千尋影視’ # dmg 文件 mount 了之后在文件系统中显示的名称
background_picture_name=’mac-dmg-bg.png’ # dmg 文件在 mount 了之后界面中显示的背景图片路径
application_name=’千尋影視.app’ [......]

继续阅读

Posted in mac开发 | Tagged | Leave a comment

如何在 mac 下制作 dmg 文件以进行分发的教程

在mac系统下,AppStore之外的程序在分发时,通常采用的有两种打包分发方式,一种是pkg安装包,另外一种是dmg磁盘映像,本文就接着上篇《Xcode 6下使用 Developer ID 对 mac 程序进行签名》介绍如何将开发好的程序打包成dmg映像。

本篇的最终目标:诸如我们通常都用的QQ,在mac QQ官网下载并打开dmg之后,会有一个很友好的安装提示,没错,本篇就是要教大家制作一个一样效果的。

Mac qq dmg

下面的教程中,我们以制作我们千寻影视mac版本的安装包为例

第一步:在应用程序->实用工具下打开磁盘工具

open disk utility mac

第二步:新建一个磁盘映像,放在桌面上(可随意),名称设置为temp.dmg[......]

继续阅读

Posted in mac开发 | Tagged | Leave a comment

Xcode 6下使用 Developer ID 对 mac 程序进行签名

(How to use Developer ID code sign for mac OSX apps)

mac app 程序在发布时,存在三种发布方式:

  1. 发布到mac AppStore,由苹果在2010年10月20宣布在OSX 10.6.6中发布
  2. 使用Developer ID进行签名然后自行提供给用户下载
  3. 不做签名

对应到系统的安全设定的三个级别:

osx-security-privacy

发布到AppStore上的应用,所有用户在AppStore上下载了之后就可以使用;使用Developer ID签名的应用,只能在打开了第二级安全限定了之后才可以使用;不做签名的应用,需要安全设定中选择了Anywhere才可以使用。

所以,当[......]

继续阅读

Posted in mac开发 | Tagged | Leave a comment

初始化 centos 服务器并配置 puppet

Agent 服务器

第一步:安装puppet

# 检查服务器版本 cat /etc/*-release

CentOS 5:

sudo rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-5.noarch.rpm
sudo yum makecache
sudo yum install -y puppet
sudo puppet resource package puppet ensure=latest

CentOS 6:

sudo rpm -ivh http://yum.puppetlabs.com/puppetlabs-releas[......]

继续阅读

Posted in 杂七杂八 | Leave a comment

ios下获取设备的IP地址

要获取设备的IP地址,网上随便一搜就能找到一大堆结果,但是这些能找到的代码基本上都是用C写的,并没有针对iOS做过优化调整,使用起来也不方便。就只是要获取IP地址而已,封装成一个函数调用一下然后使用起来才方便。代码比较简单,就是把网上抄来的代码做了整理和iOS适配。函数返回一个包含了所有网卡的IP地址的一个数组。

- (NSArray *)getIpAddresses {
int sockfd = socket(AF_INET, SOCK_DGRAM, 0);
if (sockfd < 0) return nil;
NSMutableArray *ips = [NSMutab[......]

继续阅读

Posted in iOS | Leave a comment

修复iOS7下leftBarButtonItem位置相比之前版本靠右的问题

Xcode升级到5.0版本之后,在iOS7下,通过 leftBarButtonItem 设定的左导航栏按钮会出现明显的靠右偏移的情况,就像下面图片这样:

Ios7 leftbar button item

这样的效果看起来是比较别扭的,为了让iOS7下面看起来跟以前一样,就需要针对iOS7特别处理一下了:

UIButton * backButton = [UIButton buttonWithType:UIButtonTypeCustom];
backButton.frame = CGRectMake(0, 0, 60, 44);
[backButton setImage:[UIImage imageNamed:@"b[......]

继续阅读

Posted in iOS | Tagged | Leave a comment

execute raw insert or update query and get affected row count in sequelize

Sequelize is a ORM framework for nodejs. It makes that it’s very easy to work with database in nodejs. Though it provide methods to do raw query, the raw query callback doesn’t give the useful information just like affected rows and insert id when wo do a insert or update query. But the mysql driver[......]

继续阅读

Posted in nodejs | Tagged , | Leave a comment

use jquery date picker in yii without CForm system

We know that yii framework is built with jquery ui and we can use the CJuiDatePicker class to output a date picker component. But CJuiDatePicker needs a CFormModel or CActiveRecord, and sometimes, we have to build a form without CFormModel system. In this post, I will introduce how to build a date p[......]

继续阅读

Posted in PHP | Tagged , | Leave a comment

mac osx下制作包含有16*16以及32*32两种大小的favicon.ico图标

一般来说,一个网站都会要制作一个小图标,用来在浏览器上的小角落上进行展示,像这样:

how to create Favicon

虽然上目前有一些网站提供了png转ico的服务,还有好几个大小可供选择,但是转出来的文件都是只能包含一个大小,不能既包含16*16又包含32*32大小的ico文件。

找了一些时间,发现了有一个小命令行软件可以提供这个功能,png2ico

这个网站上直接已经提供了windows下使用的exe文件,但是对于我们这些mac用户来说,只好下载代码自己编译了

wget http://www.winterdrache.de/freeware/png2ico/data/png2ico-src-2002-12-08.tar.[......]

继续阅读

Posted in PHP, 杂七杂八 | Tagged | Leave a comment

给微信iOS版SDK合并成一个真正全兼容的静态 .a 文件

微信的iOS版SDK下载下来之后,我们可以看到有四个文件,两个头文件和两个 .a 静态库文件。也不知道微信为什么要提供两个而不是把他们合并成一个,不过既然他这么提供的,那为了在使用时候更方便,我们就给这两个文件做了一下合并。

首先,我们可以用file命令看到,其中 libWeChatSDK.a 包含了 armv6, armv7, i386 三种架构,而 libWeChatSDK_armv7_armv7s.a 则包含了 armv7, armv7s, i386 这三种架构。其中,armv7 和 i386是两个 .a 文件都有的,我们在合并成一个 .a 文件的时候,可以把前面的 armv6 架构提取[......]

继续阅读

Posted in iOS | Tagged | Leave a comment