iPhone 真机调试应用程序
原文:http://blog.sina.com.cn/s/blog_68e753f70100r3w5.html
真机调试iphone应用程序
1、真机调试流程概述
1) 真机调试应用程序,首先需要有一个苹果开发者帐号,才可创建证书请求CSR;
2) 打开应用程序钥匙串访问(keychain access)请求证书;
3) 登录iDP Portal “certificates”栏目中提交证书请求;
4) 确认提交后,刷新页面自动生成.cer文件,将它下载到本地;
5) 双击.cer文件,即把证书放到了钥匙串访问中;
6) 通过itunes或者xcode(organizer)获取设备的UDID;
7) 再回到iDP Portal“Devices”栏目中开始注册设备,并填写设备UDID和设备的用户名相关信息;
8) 完成设备注册后,进入iDP Portal“app IDs ”栏目,申请app ID,填写app ID的描述信息和与应用程序绑定的相关信息;
9) 完成app ID申请后,再进入到iDP Portal“provisioning”栏目,完成provisioning文件名称、证书名称、所要注册设备以及app ID的填写,这些选项均会在前几个步骤完成;
10) 如果完成应用程序的开发和调试工作,即可进入发布程序的iDP Portal“distribution”栏目,开始发布应用程序。但发布应用程序所创建的证书请求与真机测试不同,但基本流程相同;
真机调试应用程序大体流程如下图所示:
2、真机调试流程详述
2.1、请求证书
首先,打开keychain access创建证书请求(应用程序实用工具中),如下图所示:
钥匙串访问 图2-1
选择“钥匙访问串”“证书助理”“从证书机构请求证书”选项,打开“证书助理”对话框,如下图所示:
证书助理 图 2-2
填写相关信息,将请求选择为“存到磁盘”和“让我指定密钥信息”单击“继续”。选择存储路径。最后生成证书请求文件.certSigningRequest。
2.2、提交证书
生成请求证书文件后,登录到IDP provisioning portal页面,选择certificate栏目,请求证书,单击request certificates按钮,如下图所示:
请求证书 图 2-3
进入到创建开发证书页面,选取已创建的 “. certSigningRequest”,选择“submit”。如下图所示:
生成证书 图 2-4
刷新页面后,单击“download”按钮,将证书(.cer文件)保存在本地。
2.3、注册(安装)证书
下载完成后,双击.cer文件,安装证书。完成后可在keychain access中显示。如若证书安装成功,则会显示绿色字样——“该证书有效”,如果证书创建失败,则显示红色字样——“该证书无效”。当证书无效时,后面第三节中会讨论到问题的产生原因和解决办法。
2.4、获取设备UDID
打开xcode,选择window,打开 organizer 对话框,复制设备UDID,这里一定要连接设备,否则无法获取设备UDID信息(也可从itunes中获取,但无法复制)如下图所示:
organizer 图 2-5
2.5、注册设备
获取到设备后UDID后, 回到IDP provisioning portal页面,选择certificate栏目,单击“add Devices”按钮,注册设备,如下图所示:
注册设备 图 2-6
进入到填写设备信息页面,第一个是设备的名字(可按开发者意图填写),第二个是设备的UDID,将需要注册的设备的UDID拷入。如下图所示:
注册设备 图 2-7
2.6、注册app IDs
完成设备注册后,跳转到“app IDs”页面中注册app ID,单击“New app ID”,如下图所示:
创建app ID 图 2-8
填写app ID时,其信息的描述部分可以由开发者随意填写,但其中不要包括特殊字符,如“@”、“*”等;而“bundle identifier”的填写则相当重要,如果此信息填写不正确,则无法完成真机测试应用程序。这里具体由两种写法。具体看下苹果公司提供的一个用例“com.domainname.appname”。命名需要按照此规范填写。第一个“.com”是必须按照苹果公司给的样式填写的,而“domainname”则需要用户自定义填写,这部分信息可以由开发者随意填写,但苹果公司推荐用公司的域名。最后一部分则表示你需要测试的应用程序的名字,比如创建xcode文件时,创建了一个叫app的应用程序,那么这部分就填写app。当然也可以用“*”号代替,则表示可以用于任何iphone程序的测试。本文推荐使用第二种。如下图所示:
app ID信息图 2-9
2.7、生成provisioning文件
确认生成app IDs后,选择进入“provisioning”页面,单击“New provisioning file”,创建provisioning文件,第一填写的是profile的名字,可以按开发者意愿填写,其次证书选择刚已创建好的.cer文件,选择app id,最后选择你将要注册的设备。单击确认后,完成profile文件的创建,刷新页面后,下载.mobleProvisioning文件。
app ID信息 图2-9
2.8、安装provisioning文件
下载好provisioning文件后,双击安装文件即可。确认是否将provisioning文件正确安装在设备中,可打开xcode,在organizer对话框中查看。
2.9、配置xcode文件
最后,配置xcode文件,打开plist文件,将“bundle identifier”中的“yourcompany”,改成与公司域名。及需要与app ID一致,如在创建app ID时,创建的是“com.apple.*”,plist文件也相应改成“com.apple.*****”,“*”号部分不需要用户修改。如下图所示:
bundle identifier 图2-10
再选择xcode工程的info,将“code signing identifier”选项选择为已创建好的mobileprovisioning文件。如下图所示:
如果没有,则说明之前某些操作有错误,请按此方法重新创建证书。也可学习参考苹果公司的提供的真机测试相关视频。
3、真机调试注意事项
3.1、keychain access中请求证书
在创建请求证书之前,需要对keychain access简单的设置。打开keychain的偏好设置选项,选择证书,将“OCSP”、“CRL”选择为关闭,优先级选择为 “OCSP”,但一般不需要修改,因为是默认项。如下图所示:
keychain偏好设置 图3-1
3.2、证书无效的问题
3.3、提示证书太多的问题
回到“keychain access”应用程序中,将多余的证书删除即可。其他证书的钥匙是可以保留的,如果删除,待测试其他设备或另一个应用程序的时候,xcode就会报错了,提示你钥匙和证书不匹配。当然你也可以选择将钥匙导出备份出去,以免自己误删除了。右键单击导出需要备份的钥匙即可。
3.3、其他机器真机测试程序
如果需要其他mac电脑上真机测试时,则需要将keychain access中的私钥导出,添加到另外一台mac电脑上。打开keychain应用程序,将私钥右键导出即可,导出私钥时mac会提示你输入钥匙密码。
小结:iphone真机测试应用程序,有三个环节较为重要
1、向keychain access请求证书,创建证书请求文件,即CSR,为的是拿到一个.cer的文件,即证书
2、app ID文件的创建,这个是与你的应用程序绑定的ID号,千万不要认为是apple ID哦,应该是applicaiton ID,也就是你需要调试应用程序,一般这个步骤容易出错,即你的app ID 与你plist文件里的buddle不一致,导致无法真机调试,我比较推荐以“×”号结尾,这样这个app iD可以对应任何的应用程序
3、provision文件的创建,所有的步骤都是为了它,在这里你会选择你的app ID,设备名称等相关信息,它的成功安装,使得你的设备能够真正的真机测试,你可以在xcode organize查看,也可以在设备中看到(设置/通用/描述文件)
再 补充一点:一旦能够做真机测试,如果再拿其他设备测试程序时,不用以上繁琐的步骤,直接注册下该设备,在修改下已创建的profile文件,将另外一个设 备添加进来。最后,安装provision文件。也就是说这一个provision文件可以同时支持多个设备。(如果还是无法测试,那可以参考官方的视频 和文档,很详细,但会稍显不同,因为它是2008年的资料,可能现在有些更改,但大体应当一样)
最后,祝各位成功,精益求精做好的iphone程序,也请各位大侠多多指点,如有错误或者技术交流可以发送邮件至
elite_quan@163.com
bite apple ing ...
转载于:https://www.cnblogs.com/waizi/p/3558484.html
iPhone 真机调试应用程序相关推荐
- XCode - 无法对iPhone真机调试的解决方法!
XCode - 无法对iPhone真机调试的解决方法! 参考文章: (1)XCode - 无法对iPhone真机调试的解决方法! (2)https://www.cnblogs.com/sunylat/ ...
- iphone真机调试时上下两端出现黑边
iphone5s真机调试时上下有黑边问题 xcode7中的iphone真机调试 作为一个初学者,看了网上很多资料,都说要想在iphone真机上进行调试,需要购买苹果开发者个人账号,有一天突然在知乎上看 ...
- iphone真机调试 Xcode Could ont lauch XXX process launch failed:security
直接真机调试,会出现: 在一开始的时候,每一个写好的工程在实现真机调试的时候,都需要用到开发者账号,也就是花费99美元买一个账号用来上传程序的那个,现在不用了,苹果公司给与便利,我们可以用自己的设备直 ...
- as真机调试_如何使用真机调试android程序
展开全部 第一步:将我们开发所用的Android真机的USB调试功能打开(打开方法为Settings(设置32313133353236313431303231363533e59b9ee7ad94313 ...
- Xcode7查看iphone真机的应用程序文件
1. 点击菜单Window, 选择Devices 2. 在左边设备列表中可以看到你的真机,选择之后,可以看到有Installed Apps 3.选择想查看的app, 点击下面的那个像设备一样的图标,选 ...
- 真机调试手机程序,电脑插上手机数据线虚拟机中的系统就死掉
笔记本:Surface Pro3 操作系统:Win10 虚拟机工具:VMware Workstation 12 Pro 12.5.0 build-4352439 问题描述:插入U盘或者手机数据线,虚拟 ...
- 移动设备真机调试本地程序的Node.js【无需连wifi】
前提: 在某些场景下,我们需要调试我们的Node.js,这很简单,很多编辑器都集成了debug模式,但是某些场景下,我们想在移动设备上运行,在本地debug,这也行,只需要链接在同一个内网,通过ip ...
- ubuntu10.04 下通过usb在真机调试android程序的设置
问题说明: buntun下USB连接Android手机后,使用adb devices 出现如下: List of devices attached ???????????? no permission ...
- iPhone真机调试流程
大致流程:绑定设置ID--绑定电脑---绑定appbundle ID mac----钥匙串----证书助理-----从证书机构请求颁发证书-----填写邮件----生成证书到桌面 数据线连接设备--- ...
- H5在iphone移动端如何实现真机调试
最近公司要实现苹果移动端和H5的交互,因为平时用H5的不多,对iOS的比较熟悉,用H5的界面出问题就定位不出问题出在原生端还是H5端.应运而出iphone真机调试H5界面. 设置iphone 1.设置 ...
最新文章
- mysql java orm_ObjectiveSQL(Java ORM) 之 MySQL 实战
- 全球及中国农业保险市场营销状况与运营价值分析报告2022版
- java死循环_java小白关于while死循环时处理办法的一发求助帖
- 使用java操作ranger,hdfs ranger授权操作,hive ranger授权操作
- 54 Django 模型层(1) 单表查询
- Android之放大镜实现的两种方式
- java order()_java.util.Collections.reverseOrder()
- python杨辉三角_python中的部分高级特性
- 让旧 Windows 电脑一键变成 Chromebook,Google 收购 Neverware!
- mootools温习与深入_Element_1
- 浅析天际网、IT260、微人脉等中国职业社交网站
- jenkins java必装插件_Jenkins(三)安装相关插件
- C/C++中static与const的区别与联系
- vivado中交织模块_Adalm Pluto SDR主动学习模块让您拥有完善的无线电RF射频实验室...
- VS工具使用技巧总结
- java中visio的作用_Visio软件的概念、用途与特色是什么?
- 天津大学材料与化工考研考情与难度、参考书及上岸前辈备考经验
- 如何让电脑产生和输出特定分贝值的声音
- P2135 方块消除
- 游拍为什么显示服务器升级,4399版游拍直播
热门文章
- mybatis13--2级缓存
- linux系统资源信息监控
- 《自适应软件开发》—从奴隶主到领袖 1 序言
- [2018.10.23 T1] 战争
- nodejs后台系列--第四篇--koa
- 慕课网仿去哪儿项目笔记--(二)-首页部分
- 南极沉船_世界上一些神秘的沉船,都成了仿佛被世界遗弃的盛景
- python time函数的功能_Python中Python时间模块的常用功能,Pythontime,函数
- python反转一个三位数_反转Python整数的位
- 根据ip地址制作html,根据ip掩码计算可用ip