iOS 澳门美高梅手机网站开发 —–公司测试打包上传流程

 

 

单机格局

打包iOS应用程序

 1 package com.ljq.utils;
 2 
 3 import redis.clients.jedis.Jedis;
 4 import redis.clients.jedis.JedisPool;
 5 import redis.clients.jedis.JedisPoolConfig;
 6 
 7 /**   
 8  * Redis操作接口
 9  *
10  * @author NiceCui
11  * @version 1.0 2017-6-14 上午08:54:14   
12  */
13 public class RedisAPI {
14     private static JedisPool pool = null;
15     
16     /**
17      * 构建redis连接池
18      * 
19      * @param ip
20      * @param port
21      * @return JedisPool
22      */
23     public static JedisPool getPool() {
24         if (pool == null) {
25             JedisPoolConfig config = new JedisPoolConfig();
26             //控制一个pool可分配多少个jedis实例,通过pool.getResource()来获取;
27             //如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。
28             config.setMaxActive(500);
29             //控制一个pool最多有多少个状态为idle(空闲的)的jedis实例。
30             config.setMaxIdle(5);
31             //表示当borrow(引入)一个jedis实例时,最大的等待时间,如果超过等待时间,则直接抛出JedisConnectionException;
32             config.setMaxWait(1000 * 100);
33             //在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的;
34             config.setTestOnBorrow(true);
35             pool = new JedisPool(config, "192.168.2.191", 8888);
36         }
37         return pool;
38     }
39     
40     /**
41      * 返还到连接池
42      * 
43      * @param pool 
44      * @param redis
45      */
46     public static void returnResource(JedisPool pool, Jedis redis) {
47         if (redis != null) {
48             pool.returnResource(redis);
49         }
50     }
51     
52     /**
53      * 获取数据
54      * 
55      * @param key
56      * @return
57      */
58     public static String get(String key){
59         String value = null;
60         
61         JedisPool pool = null;
62         Jedis jedis = null;
63         try {
64             pool = getPool();
65             jedis = pool.getResource();
66             value = jedis.get(key);
67         } catch (Exception e) {
68             //释放redis对象
69             pool.returnBrokenResource(jedis);
70             e.printStackTrace();
71         } finally {
72             //返还到连接池
73             returnResource(pool, jedis);
74         }
75         
76         return value;
77     }
78 }

若果想要将做的iOS应用程序安装到祥和的iOS设备上测试、或者安装到旁人的iOS设备上,或者想昭示到App
Store中,先要给使用签名。签名就要有证书,这就需要提请证书的过程了。

 

把自己的应用程序安装到设备中,首要有眨眼之间间两种形式:

分布式格局

  1. 把iOS设备与电脑连接起来,假使Xcode中一度添加了包含这个设备的Profile文件且在工程中已经选拔了该文件,那么在Xcode左上角便得以选取这些装置,之后点击RUN,程序就被设置在这么些iOS设备中了。这多少个至关首要用于在真机上测试程序。
  2. 运用Xcode将应用程序以Ad
    Hoc模式打包,到处ipa文件,然后用iTunes等工具将应用程序安装到iOS中。这种格局的Profile文件根本是Ad
    Hoc类型,并且带有制定的设备音信。导出的ipa也不得不设置到制定的装置中。
  3. 将应用程序发布到App
    Store上,待苹果审核通过后,其别人就能够下载安装了。

ShardedJe、dis是基于一致性哈希算法实现的分布式Redis集群客户端

正文重要讲第几种办法。当前环境为Xcode5.1,测试时间是2014年3月。Xcode版本不同操作过程可能也会不同。此外苹果开发者网站也说不定将来改版,操作流程也会改变。

 1 package com.jd.redis.client;
 2   
 3 import java.util.ArrayList;
 4 import java.util.List;
 5   
 6 import redis.clients.jedis.JedisPoolConfig;
 7 import redis.clients.jedis.JedisShardInfo;
 8 import redis.clients.jedis.ShardedJedis;
 9 import redis.clients.jedis.ShardedJedisPool;
10 import redis.clients.util.Hashing;
11 import redis.clients.util.Sharded;
12   
13 publicclass RedisShardPoolTest {
14      
15 static ShardedJedisPoolpool;
16      
17 static{
18          
19 JedisPoolConfig config =new JedisPoolConfig();//Jedis池配置
20          
21 config.setMaxActive(500);//最大活动的对象个数
22          
23 config.setMaxIdle(1000 * 60);//对象最大空闲时间
24         
25 config.setMaxWait(1000 * 10);//获取对象时最大等待时间
26        
27 config.setTestOnBorrow(true);
28          
29 String hostA = "10.10.224.44";
30         
31 int portA = 6379;
32         
33 String hostB = "10.10.224.48";
34         
35 int portB = 6379;
36          
37 List<JedisShardInfo> jdsInfoList =new ArrayList<JedisShardInfo>(2);
38          
39 JedisShardInfo infoA = new JedisShardInfo(hostA, portA);
40          
41 infoA.setPassword("redis.360buy");
42          
43 JedisShardInfo infoB = new JedisShardInfo(hostB, portB);
44          
45 infoB.setPassword("redis.360buy");
46          
47 jdsInfoList.add(infoA);
48          
49 jdsInfoList.add(infoB);
50          
51          
52 pool =new ShardedJedisPool(config, jdsInfoList, Hashing.MURMUR_HASH,
53 Sharded.DEFAULT_KEY_TAG_PATTERN);
54     //传入连接池配置、分布式redis服务器主机信息、分片规则(存储到哪台redis服务器)
55 }
56      
57      
58 /**
59      
60  * @param args
61      
62  */
63      
64 publicstaticvoid main(String[] args) {
65          
66 for(int i=0; i<100; i++){
67            String key =generateKey();
68            //key += "{aaa}";
69            ShardedJedis jds =null;
70            try {
71                jds =pool.getResource();
72                System.out.println(key+":"+jds.getShard(key).getClient().getHost());
73                System.out.println(jds.set(key,"1111111111111111111111111111111"));
74            }catch (Exception e) {
75                e.printStackTrace();
76            }
77            finally{
78                pool.returnResourceObject(jds);
79            }
80          
81 }
82      
83 }
84   
85      
86 privatestaticintindex = 1;
87      
88 publicstatic String generateKey(){
89          
90 return String.valueOf(Thread.currentThread().getId())+"_"+(index++);
91      
92 }
93 }

一、制作Profile文件

 

假如想让祥和的App可以在真机上运行,必须要变成iOS开发者并富有iOS开发者帐号。怎么着注册改成iOS开发者将不再赘言。

运转浏览器,登录https://developer.apple.com/,在顶部菜单中找到Member
Center,打开进去登录页面,输入帐号和密码后登录。登录后根本页面如下所示:

 澳门美高梅手机网站 1

 

分选Certificates, Identifiers & Profiles进入如下页面:

 澳门美高梅手机网站 2

点击iOS Apps上面的Certificates按钮,进入证书制作页面。

 澳门美高梅手机网站 3

制作Profile文件需要通过“添加证书—添加App
ID—添加设备—制作Profile文件”六个步骤,下边将分头开展介绍。

  1. 添加证书

在上图左边的菜单栏中点击Certificates下的All选项进入证书管理界面。若要添加新的证件,点击左上角的

  • 号按钮,进入增长证书页面。

 澳门美高梅手机网站 4

      证书类型选拔App Store and Ad Hoc,然后点击continue。

 澳门美高梅手机网站 5

      这一个页面要求大家创建一个证书,方法如下:

  • 运转电脑中的“钥匙串访问”应用程序,在菜单中一遍选取 证书助理——从证书颁发机构请求证书:

澳门美高梅手机网站 6澳门美高梅手机网站, 

  • 在开拓的窗口输入电子邮件和常用名称,去掉勾选“用电子邮件发送给CA”并精选“存储到磁盘”以及“让自己制定密钥对音信”。

 澳门美高梅手机网站 7

  • 单机连续,在开辟的窗口设定文件的称呼和职位,点击继续,密钥大小采用2048位,算法选取RSA:

 澳门美高梅手机网站 8

  • 点击继续,则在往日的职位生成了.CSR的签名文件。默认名称是CertificateSigningRequest.cerSigningRequest。

讲明制作完毕,回到浏览器页面,点击continue:

澳门美高梅手机网站 9          

在开拓的页面点击Choose
File…,采用并交付刚刚制作的证件文件点击Generate。等待页面刷新,在开辟的页面中点击Download,下载证书到地面。

 澳门美高梅手机网站 10

双击下载的证件安装,此时证书会自动添加到钥匙串访问程序。

  1. 创建App ID

澳门美高梅手机网站 11 

点击浏览器页面的左边菜单栏中Identifiers下的App
IDs按钮,在开辟的页面中挑选左上角的 + 号按钮进入创立App ID页面:

 澳门美高梅手机网站 12

澳门美高梅手机网站 13

澳门美高梅手机网站 14

在Description输入你的行使的讲述,Bundle
Identifier是接纳的代码标识,例如可以输入com.company.demoapp。假使你有Team
ID,那么这些ID会自动加在Identifier前面。提出申请魏尔德(Wild) Card     
Suffix类型的App ID,即一个结尾字段为“
*”的ID,这样可以用同样的ID,提交一套应用程序,而无需为各种应用都报名单独的ID。输入完成后点击continue,进入确认音讯界面,确认无误后点击Submit。

 澳门美高梅手机网站 15

在打开的页面中精选done完成App ID注册。

  1. 加上设备

点击浏览器页面的左边菜单栏中Device下的All按钮,在开辟的页面中挑选左上角的

  • 号按钮进入增长设备页面:

 澳门美高梅手机网站 16

填写Name和UDID后交由。可将设备和统计机连续后在iTunes中查看设备UDID,在此不做赘述。提交后在打开的页面选用register,完成设备的充裕。

 澳门美高梅手机网站 17

  1. 制作Profile

点击浏览器页面的左边菜单栏中Provisioning
Profile下的All按钮,在开辟的页面中甄选左上角的 +
号按钮进入增长Profile文件页面:

 澳门美高梅手机网站 18

点击右上方的 + 号开头创造Profile文件:

 澳门美高梅手机网站 19

澳门美高梅手机网站 20

Profile文件的花色选用Ad Hoc,continue:

 澳门美高梅手机网站 21

挑选刚刚制作的App ID,continue:

 澳门美高梅手机网站 22

接纳刚刚制作的证件,continue:

 澳门美高梅手机网站 23

分选设备,continue:

澳门美高梅手机网站 24 

输入Profile文件的称谓,点击Generate:

 澳门美高梅手机网站 25

从这之后,Profile文件就炮制好了,点击Download下载到本地,即使您的Xcode在开辟的情形下的话,双击便可将Profile文件添加到Xcode中了。

 

二、打包ipa文件

首先打开需要打包的工程,选中右上角的工程进入工程安装界面:

 澳门美高梅手机网站 26

选中Broject—Build Settings—Code Signing:

Xcode 8.0 之后采用 Automatically manage
signing澳门美高梅手机网站 27

 

 

 澳门美高梅手机网站 28

中间Provisioning Profile选中恰恰制作的Profile文件,Code Signing
Identity下一切采取刚刚制作的申明。

同理选中Target—Build Settings—Code Signing,执行同一的操作。

Xcode左上角装备采取 iOS
Device,然后拔取菜单栏中的Product—Archive,起首存档,如下图:

 澳门美高梅手机网站 29

等候存档完毕后会打开如下窗口:

点击Distribute发表应用程序:

 澳门美高梅手机网站 30

慎选相应的Profile文件,点击Export:

 澳门美高梅手机网站 31

在开辟的窗口采取应用程序的储存路径,点击Save,完成操作。

由来,iOS应用程序打包完毕,你可以将iOS设备连接到电脑,通过iTunes安装App。可是,只有在您制作的Profile文件中蕴含了那个设备的UDID的处境下才能设置。

发表评论

电子邮件地址不会被公开。 必填项已用*标注