【原创】我所理解的自动更新-知识点讲解

itms-services协议
可以通过safari,chrome等浏览器直接在IOS设备上安装应用程序。适用于安装企业签名或者已绑定设备id的测试签名的IPA。itms-services协议需要的文件有:一个ipa文件,一个plist文件,一个html文件和一个图片文件。其中,最主要的,就是plist文件。

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 3 <plist version="1.0">
 4 <dict>
 5    <key>items</key>
 6    <array>
 7        <dict>
 8            <key>assets</key>
 9            <array>
10                <dict>
11                    <key>kind</key>
12                    <string>software-package</string>
13                    <key>url</key>
14                    <string>http://xxxxx/xxxx.ipa(安装包的url)</string>
15                </dict>
16                <dict>
17                    <key>kind</key>
18                    <string>display-image</string>
19                    <key>needs-shine</key>
20                    <true/>
21                    <key>url</key>
22                    <string>图片的地址</string>
23                </dict>
24       <dict>
25                    <key>kind</key>
26                    <string>full-size-image</string>
27                    <key>needs-shine</key>
28                    <true/>
29                    <key>url</key>
30                    <string>图片的地址</string>
31                </dict>
32            </array>
33            <key>metadata</key>
34            <dict>
35                <key>bundle-identifier</key>
36                <string>和ipa中的相同)</string>
37                <key>bundle-version</key>
38                <string>1.0.0</string>
39                <key>kind</key>
40                <string>software</string>
41                <key>subtitle</key>
42                <string>Tue</string>
43                <key>title</key>
44                <string>Tue</string>
45            </dict>
46        </dict>
47    </array>
48 </dict>
49 </plist>

苹果从ios7.1开始,用户安装app,需要使用https协议,来下载plist文件。那么,需要自己建立服务器添加https签名,或者将plist文件放在第三方平台托管,我的选择是使用(github,oschina)。

ssh无密码登陆、传输

实现步骤:
1.在你的自己的机器下面使用ssh-keygen命令来实现创建公钥
    使用 ssh-keygen -t rsa 来创建密钥,程序会问你存放的目录,如果不需要修改,直接回车两次即可
2.将你~/.ssh目录中的id_rsa.pub这个文件拷贝到你要登录的服务器的~/.ssh目录中,然后再运行以下命令来将公钥导入到~/.ssh/authorized_keys这个文件中
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys,注意是管道符是 >>,你可以将很多机器加进去。完毕之后,退出服务器的登录,再使用ssh登录,你就会发现服务器不会再向你询问密码了。当然这个顺便也解决了,scp拷贝的授权问题。

1 scp -P %PUSH_SSHPORT% xx.zip %SSHUSER%@%PUSH_SSHSERVER%:/xx
2 ssh -p %PUSH_SSHPORT% %SSHUSER%@%PUSH_SSHSERVER% "ls /"

UA判断浏览器是在ios还是android上运行

ua本身是可以通过浏览器修改或者伪造的,我们不考虑被伪造的情况。

1 <?php
2     $agent = strtolower($_SERVER['HTTP_USER_AGENT']); 
3     if(strpos($agent, 'iphone')){  }   //iPhone设备
4     if(strpos($agent, 'ipad')){  }  //iPad设备
5     if(strpos($agent, 'android')){   }  //Android设备
6     其他设备
7 ?>  

我们可以根据设备类型显示不同的网页内容,比如ios设备打开xxx.php可以直接下载ipa或者去appstore更新。
【原创】我所理解的自动更新-概要
【原创】我所理解的自动更新-环境搭建和协议制定
【原创】我所理解的自动更新-外网web服务器配置
【原创】我所理解的自动更新-APP发布与后台发布
【原创】我所理解的自动更新-资源打包流程
【原创】我所理解的自动更新-客户端更新流程
【原创】我所理解的自动更新-知识点讲解

posted @ 2015-03-30 19:20  ldr123  阅读(591)  评论(0编辑  收藏  举报