使用Flash Builder 4.5 对 Apple iOS设备地应用程序进行打包_第1页
使用Flash Builder 4.5 对 Apple iOS设备地应用程序进行打包_第2页
使用Flash Builder 4.5 对 Apple iOS设备地应用程序进行打包_第3页
使用Flash Builder 4.5 对 Apple iOS设备地应用程序进行打包_第4页
使用Flash Builder 4.5 对 Apple iOS设备地应用程序进行打包_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

FlashBuilder对AppleiOS设备的应用程序进行打包要求预备知识:熟悉如何使用FlashBuilder创建RIAs。需要下列产品:FlashBuilder下载试用版目录获取要求的证书在设备上运行和调试应用程序发行打包下一步阅读方向注:这是一篇由AndrewShorten原创文章的更新和扩展版本。FlashBuilder4.5包含对GoogleAndroid、AppleiOS和BlackBerryTabletOS设备的Flex和ActionScript应用程序进行打包的支持功能。为各种平台获取签字证书和配置应用程序包的过程是完全不同的。本文和视频旨在帮助ActionScript和Flex开发人员完成必要的步骤,以便在项目的开发、测试和部署阶段,利用FlashBuilder创建的应用程序能够安装到iOS设备上。关于对其它平台的应用程序进行打包的更多信息,请查阅下列文章:使用FlashBuilder4.5对GoogleAndroid设备的应用程序进行打包使用FlashBuilder4.5对BlackBerryTabletOS的应用程序进行打包

获取要求的证书为了对在iOS设备上进行测试/调试以及在AppleAppStore进行部署的应用程序进行打包,你需要一个AppleiOS开发证书(采用P12格式)和一个配置文件。每个开发证书和配置文件均有开发和发行两种版本。开发配置文件包含一组数据信息,它能够将开发人员和设备与经过认可的iOS开发团队绑定在一起,并且能够启用用于测试的设备。它包含一组iOS开发证书、若干设备ID和一个应用程序ID,并且它必须安装于你希望运行你的应用程序的每个设备上。另一方面,发行配置文件可能包含设备数据信息,它依据你是否希望为特定设备的特别发行或通过AppleAppStore创建应用程序包。Apple只接受采用AppStore发行配置文件创建的应用程序,但采用AppStore配置文件创建的应用程序不能直接安装到设备上。步骤1:在iOSDeveloperProgram中注册获取必要证书的第一步是成为一个AppleDeveloper并且在iOSDeveloperProgram中注册(需要收费)。浏览到*并且点击该链接加入iOSDeveloperProgram。按照相应的步骤在iOSDeveloperProgram中进行注册。你需要作为一个个体人员或作为一个公司开发团队的一分子注册为一个AppleDeveloper(如果你现在不是的话),然后等待直到你通过电子邮件收到一个确认代码。之后你可以加入iOSDeveloperProgram。在2011年6月,加入该计划的费用是每年$99。整个过程需要花费几个小时到几天的时间。步骤2:登录iOS配置门户(ProvisioningPortal)。iOS配置门户(ProvisioningPortal)是你创建应用程序ID、注册你希望在开发阶段部署应用程序的iOS设备、上载证书签名请求、批准和下载开发人员证书以及创建和下载配置文件的地方。浏览到AppleDeveloper网站,然后点击MemberCenter链接。登录到MemberCenter,然后点击iOSProvisioningPortal下面的链接。步骤3:在iOS配置门户(ProvisioningPortal)中创建一个AppID。你希望在iOS设备上部署的每个应用程序(或应用程序组)必须具有一个AppID;它是由一个BundleSeedID(也称为AppID前缀)和一个BundleIdentifier(也称为AppID后缀)组成。转到iOSProvisioningPortal的AppIDs页面,然后点击NewAppID。在Manage标签上,输入你的应用程序(或应用程序组)的描述,生成一个新的BundleSeedID(从下拉菜单中选中GenerateNew),然后输入一个BundleIdentifier(例如,com.adobe.samples.*)。AppID是一个BundleSeedID(一个生成的10字符的唯一字符串)和一个BundleIdentifier的组合。推荐的实际方法是在AppID的BundleIdentifier部分使用一个反向域名式样(reverse-domainnamestyle)字符串。你指定的BundleIdentifier必须与在AIRapplication-descriptor文件中设置的应用程序ID匹配。例如,如果你为com.adobe.samples.FlexMobileTestDrive指定一个BundleIdentifier,则app.xml文件必须包含该ID(参见图1)。图1.确保AIR应用程序的ID与AppleAppID匹配为了获得更多灵活性,你可以在BundleIdentifier中使用一个通配符,这样它可以用于一组应用程序。例如,一个BundleIndentifiercom.adobe.samples.*可以用于创建和安装带有com.adobe.sample.FlexMobileTestDrive,com.adobe.samples.myOtherApp等ID的应用程序。步骤4:使用iTunes获取iOS设备ID。你希望在上面运行或调试应用程序的设备必须在用于对应用程序打包的配置文件中指定;因此你必须在iOSProvisioningPortal中对这些设备进行注册。为了对设备进行注册,你需要其唯一的设备ID。将你的iOS设备连接到你的计算机并且打开iTunes。在iTunes中,在Devices部分选中你的设备,然后浏览到Summary标签。点击SerialNumber标签以便显示相应的Identifier字段和40字符的UDID(参见图2)。按下Command/Ctrl+C将该UDID复制到你的剪贴板上。图2.获取iOS设备ID步骤5:在iOSProvisioningPortal中注册iOS设备。一旦你拥有iOS设备ID,你可以在iOSProvisioningPortal中对它们进行注册。返回到iOSProvisioningPortal,然后浏览到Devices页面。点击AddDevice,输入一个你从iTunes获得的设备名称和相应的设备ID,然后点击Submit。步骤6:创建一个证书签名请求(certificatesigningrequest(CSR))文件。下面你需要创建一个开发开发人员证书(developmentdevelopercertificate)和一个用于特定开发人员证书、AppID和设备的开发配置文件(developmentprovisioningprofile)。为了获得一个开发人员证书,你需要在你的计算机中生成一个证书签名请求(certificatesigningrequest(CSR))文件,将其上载到iOSProvisioningPortal,然后你自己或团队领导需要批准这一请求。尽管你可以创建一个能够同时用于Mac和Windows系统计算机的CSR,但Mac系统中的CSR更为简单。在MacOS中生成一个CSR在Mac系统中,你可以使用KeychainAccessprogram生成一个CSR。打开位于Applications>Utilities中的KeychainAccess。从一个CertificateAuthority中选中KeychainAccess>CertificateAssistant>RequestaCertificate。在CertificateAssistant中,输入你的名字和电子邮件,将请求保存到硬盘中、在Letmespecifykeypairinformation字段前打勾(参见图3),然后点击Continue。图3.创建一个证书请求指定保存文件的位置和它的名称,然后点击Save。在KeyPairInformation页面上,选中具有2048比特密钥长度的RSA算法。如果你没有将密钥长度设置为2048比特,则iOSProvisioningPortal将拒绝相应的CSR。寻找保存于你计算机中的证书请求文件(certificaterequestfile)。在Windows中生成一个CSR在Windows中,你可以使用OpenSSL生成一个CSR。浏览到OpenSSL网站,在你的计算机中下载和安装OpenSSL。注:你也可能需要安装在OpenSSL下载页面中列出的VisualC++2008Redistributable文件,尽管你不需要安装VisualC++。打开一个Windows命令会话,并且浏览到OpenSSLbin目录下的CD。通过在命令行输入下列代码创建一个私有的密钥:opensslgenrsa-outmykey.key2048.保存该私有密钥文件。你将会在后面使用该文件。注:当使用OpenSSL时,不能忽略错误消息。如果OpenSSL生成一个错误消息,它仍然输出文件,但这些文件可能无法使用。如果你看到错误,先核查你的句法,然后运行相应命令。通过在命令行输入下列代码创建相应的CSR文件:opensslreq-new-keymykey.key-outCertificateSigningRequest.certSigningRequest-subj"/emailAddress=yourAddress@,CN=JohnDoe,C=US"利用你自己的值替换电子邮件地址、CN(certificatename)和C(country)。寻找保存于你计算机中的证书请求文件(certificaterequestfile)。步骤7:使用iOSProvisioningPortal创建一个开发人员证书(CER)文件。现在你可以上载证书请求文件到iOSProvisioningPortal以便创建一个开发开发人员证书(developmentdevelopercertificate)。返回到iOSProvisioningPortal,然后浏览到Certificate>Development。点击RequestCertificate,然后点击Browse按钮。选中你刚刚创建并且在你的计算机中保存的CSR文件,然后点击Submit。相应的证书将出现在Certificates页面中,其状态为等待发布(pendingissuance)。注:如果你是一个个体开发人员或开发团队领导,则需要等待直到证书状态从等待发布(pendingissuance)改变为一个Approve按钮(你必须刷新该页面)或直到你收到一个电子邮件通知:你有一个要求你批准的证书请求,然后点击Approve按钮。通常这一操作仅仅需要几分钟。如果你不是一个个体开发人员或开发团队领导,则等待直到你收到一个电子邮件通知你开发团队的领导已经批准你的证书。在iOSProvisioningPortal的Certificates页面,点击你的证书旁边的Download按钮。保存该文件。它将以文件名developer_identity.cer保存。另外,点击相应的链接下载WWDR中间证书。步骤8:将iOS开发人员证书转换为P12格式。为了能够通过FlashBuilder使用证书,你必须将它转换为P12格式。该P12文件能够将你的Apple开发人员证书和相应的私有密钥组合到一个单一文件。在MacOS中创建一个P12文件在Mac系统中,你可以使用KeychainAccessprogram生成一个P12版本。打开KeychainAccess应用程序(在Applications/Utilities文件夹中)。在Finder或KeychainAcces中,双击WWDR证书文件(AppleWWDRCA.cer),选中File>Import,然后导入AppleWWDRCA.cer。在Finder或KeychainAcces中,双击develop_identity.cer文件,选中File>Import,然后导入develop_identity.cer文件。浏览到Certificates。你应该看到列出的两个证书(参见图4)。展开相应的开发人员证书。你应该看到一个私有密钥(参见图4)。图4.导入开发人员证书右击该私有密钥,然后选择Export。选中一种文件格式:个人信息交换(PersonalInformatinExchange(.p12))并且指定一个文件名称,然后保存位置(参见图5)。指定一个名称以及保存文件的位置,选中一种文件格式:个人信息交换(PersonalInformatinExchange(.p12)),然后点击Save。图5.创建一个P12版本的证书在显示的对话框中,为该P12文件创建一个密码。当你使用该证书对应用程序进行签名时,你必须输入该密码。在Windows系统中创建一个P12文件在Windows系统中,你可以使用OpenSSL将iOS开发人员证书文件转换为一个PEM证书文件,然后生成一个基于该PEM证书和你先前利用请求生成的证书密钥的P12文件。通过在OpenSSLbin目录下输入下列命令行语句创建一个PEM文件:opensslx509-indeveloper_identity.cer-informDER-outdeveloper_identity.pem-outformPEM通过在OpenSSLbin目录下输入下列命令行语句生成一个有效的P12文件。使用你刚刚创建的PEM版本和早先在创建证书签名请求(certificatesigningrequest(CSR))文件时生成的私有密钥。opensslpkcs12-export-inkeymykey.key-indeveloper_identity.pem-outiOS_dev.p12步骤9:创建一个iOS开发配置文件(developmentprovisioningprofile)在对你的应用程序进行打包之前,你完成使用iOSProvisioningPortal需要的最后一步是创建一个iOS开发配置文件(developmentprovisioningprofile)。返回到iOSProvisioningPortal,浏览到Certificate>Provisioning,然后点击NewProfile。输入一个配置文件名称,选中你的证书,选中AppID和设备,然后击Submit。等待直到配置文件的状态从Pending改变为Active(你必须刷新该页面)。通常这一操作仅仅需要几秒钟。下载该配置文件。在设备上运行和调试应用程序在你拥有一个开发P12开发人员证书和一个开发配置文件之后,你将能够使用FlashBuilder将你的AIR应用程序打包为一个本机的iOS应用程序,该应用程序能够安装于在配置文件中指定的一个设备。你可以在项目的packaginginfo中指定这些文件,然后为iOS设备创建一个运行配置(runconfiguration)。FlashBuilder创建一个IPA应用程序包,你可以将它添加到iTunes中,并且与你的设备进行同步。步骤1:在FlashBuilder中,设置应用程序ID。记住应用程序描述符文件中的应用程序ID必须与你希望用于对应用程序进行打包的相应配置文件的AppleAppID匹配。打开应用程序描述符文件并且确保其ID设置为相同的名称(例如,com.adobe.samples.FlexMobileTestDrive),或者在使用一个通配符捆绑标识符的情形下(例如,com.adobe.samples.*),确保该ID以该字符串开头。步骤2:在FlashBuilder中,指定项目iOS打包信息。该信息将在创建调试应用程序包时使用。在FlashBuilder中,右击PackageExplorer中的项目,然后选中Properties。在Properties对话框中,选中FlexBuildPackaging>AppleiOS(对于Flex项目)或ActionScriptBuildPackaging>AppleiOS(对于ActionScript项目)。指定你创建的P12开发开发人员证书文件(P12developmentdevelopercertificatefile)和开发配置文件(developmentprovisioningfile)(参见图6)。图6.指定AppleiOS打包属性步骤3:使用FlashBuilder将应用程序打包为一个调试IPA文件。为了创建一个应用程序包,你必须先创建一个运行配置(runconfiguration)以便在一个iOS设备上运行。在FlashBuilder中,在Run菜单或Run按钮的下拉列表中选中RunConfigurations,然后点击new或duplicate按钮以便创建一个新的运行配置(runconfiguration)。对该newconfiguration进行命名,将targetplatform设置为AppleiOS,将launchmethod设置为Ondevice,然后选中standard或fast打包方式(参见图7)。Standard打包方式需要花费几分钟,但应用程序性能与发布版本相似。Fast打包方式需要花费几秒钟,但应用程序的运行速度显著慢于发布版本。图7.创建一个用于在AppleiOS设备上运行应用程序的runconfiguration点击Run按钮,然后在CertificatePassword对话框中输入你的证书密码。FlashBuilder可以将你的应用程序转换为一个本机iOS应用程序。在该过程完成之后,你将看到一个PackagingCompleted对话框(参见图8)。图8.等待直到调试IPA包创建完毕在你项目的bin-debug文件夹中找出IPA文件(参见图9)。这是开发的应用程序的一个调试版本。在下面的章节中,你将学习如何创建用于发行的IPA的发布版本。图9.寻找已创建的AppleiOS调试包步骤4:使用iTunes在iOS设备上安装应用程序。现在,你可以在iOS设备上部署或调试应用程序。与其它平台不同,FlashBuilder能够自动地将应用程序部署到设备上;你需要使用AppleiTunes完成这一任务。打开iTunes,选中File>AddtoLibrary,然后添加应用程序的配置文件。你可以通过将其拖拽到iTunesdock图标中添加该文件。选中File>AddtoLibrary,然后将应用程序IPA文件添加到iTunes(或将其拖拽到iTunesdock图标中)。在Apps中找出你的新的应用程序(参见图10)。当前,该应用程序使用默认名称和图标。你将在下一章节学习如何对它们进行定制。图10.在iTunes中找出应用程序将你的iOS设备连接到你的计算机USB端口。在iTunes中,选中附着的设备并且确保你的应用程序已经选中为设备同步方式,然后对设备进行同步(参见图11)。图11.将应用程序添加到AppleiOS设备中在设备上找出相应的应用程序(参见图12),然后运行它(参见图13)。图12.找到设备上相应的应用程序图13.运行设备上相应的应用程序步骤5:在设备上调试应用程序。为了在设备上调试应用程序,你可以使用FlashBuilder创建一个调试IPA包,然后在设备上使用iTunes安装它,就像你在设备上运行应用程序一样。不过,对于调试来说,你的计算机和设备必须位于相同的Wi-Fi网络。首先通过iTunes使用USB电缆在设备上安装应用程序;当对应用程序进行运行和调试时,可以使用Wi-Fi网络实现设备和FlashBuilder之间所有通信任务。在FlashBuilder中,从Debug按钮的下拉菜单中选中iOS设备配置文件并且点击Debug。在创建IPA包之后,你将在FlashBuilder中看到一个WaitingforDebuggerConnection对话框(参见图14)。在你在设备上安装和运行应用程序之后,调试器将进行连接操作。图14.在FlashBuilder中,等待调试器连接完成再次在你项目的bin-debug文件夹中找出IPA文件,将其添加到iTunes中,然后将其与你的设备进行同步,就像你在上一步骤中的操作一样,以便将其安装到设备上。注:在你安装一个新的应用程序版本之前,你应该从设备上卸下现有的应用程序。在设备上运行应用程序。当代码运行到一个断点时,应用程序将暂停,然后你可以使用FlashBuilder对代码进行单步调试,就像你使用设备仿真器进行调试一样。如果在你完成在设备上安装和运行应用程序之前FlashBuilder调试器超时,你只需再次从FlashBuilder中选择在iOS设备上进行调试,然后在设备上启动应用程序。如果你在设备调试过程中遇到问题,请检查是否你的计算机处于一个VPN网络之中或使用防火墙软件。如果计算机处于一个VPN网络之中但设备没有,则你需要将计算机脱离该VPN网络以便调试操作能够正常进行。如果你的防火墙已经打开,则设法关闭它。如果你不能够或不希望关闭防火墙,则设法打开端口7935,FlashBuilder调试器将使用该端口与设备进行通信。发行打包为了为你的应用程序发行创建发布版本,你必须首先使用iOSProvisioningPortal创建一个发行开发人员证书和一个发行配置文件。然后,你可以使用FlashBuilder和这些发行文件创建发布版本。步骤1:创建一个P12发行开发人员证书。你可以使用你在前面的获取要求的证书你可以使用你在前面的获取要求的证书章节中创建开发开发人员证书的相同过程来创建一个发行开发人员证书。唯一不同的是你在iOSProvisioningPortal页面的Distribution标签而不是Development标签中创建它。通过使用KeychainAccess(在Mac系统中)或OpenSSL(在Windows系统中),生成一个新的证书签名请求(certificatesigningrequest),就像你在步骤6的"获取要求的证书(Getrequiredcertificates)"中的操作一样,然后将其保存到你的计算机中。在iOSProvisioningPortal中,浏览到Certificates>Distribution,然后点击RequestCertificate。在你的计算机中,浏览到这一新的CSR文件,然后提交请求。等待直到该证书签发,然后下载该证书。该文件被保存为distribution_identity.cer。通过使用KeychainAccess(在Mac系统中)或OpenSSL(在Windows系统中),导入相应的发行证书(参见图15)并且创建一个P12版本的证书,就像你在步骤8的"获取要求的证书(Getrequiredcertificates)"中的操作一样,然后将其保存到你的计算机中。图15.导入发行证书步骤2:创建发行配置文件。你也可以使用你在创建开发配置文件时使用的相同过程来创建发行配置文件,但你使用的是iOSProvisioningPortal中的Provisioning页面,而不是的Development页面,并且你还使用发行开发人员证书。在iOSProvisioningPortal中,浏览到Provisioning>Distribution,然后点击NewProfile。将发行方法设置为AdHoc,选中AppID和相应设备,然后点击Submit。该应用程序仅能够发行到你在这里指定的设备上。这样,你可以在将应用程序的发布版本提交到AppleAppStore之前在设备上创建和测试它。再次点击NewProfile按钮,并且为AppleAppStore创建一个配置文件。当配置文件的状态从Pending改变为Active时(你必须刷新该页面),下载相应的配置文件。步骤3:在FlashBuilder中,修改应用程序的描述符文件。在使用FlashBuilder创建应用程序的发布版本之前,应该在应用程序的描述符文件中设置应用程序的属性和iOS特定的设置。返回到FlashBuilder,然后打开相应的application-descriptor文件。将应用程序的name和filename元素设置为你希望在iTunes和设备上显示的值,设置versionNumber(你应该针对发布到AppStore的每个发行版本进行更新),以及其它任何你希望指定的信息(参见图16)。关于其它设置的描述,参见AIR文档中的CommonSettings。图16.设置应用程序信息找出相应的图标标签并且为应用程序图标指定PNG文件(参见图17)。iOS在iPhone/iPodTouch的Spotlight搜索结果中使用29x29像素图标,在iPad的Spotlight搜索结果中使用48x48像素图标,在iPhone/iPodTouch的主屏幕中使用57x57像素图标,在iPad的主屏幕中使用72x72像素图标,在iPhone/iPodTouch的主屏幕图标中使用114x114像素图标实现960x640像素的显示,以及在iTunes中使用5124x512像素图标。注:512像素的PNG文件只用于对你的应用程序的开发版本进行测试。当你向AppleAppStore提交最终的应用程序时,你应该独立地将512像素的图像作为JPG文件提交。它没有包含于相应的IPA。图17.指定应用程序图标找出iPhone标签,然后修改iOS特定的设置(参见图18)。你可以设置状态栏的式样、应用程序是否需要持久的Wi-Fi的接入、它是否在图标上使用眩光效果、支持的设备类型、iOS兼容性过滤等。关于这些设置的描述,参见AIR文档中的iOSSetting。图18.设置iOS特定的设置步骤4:在FlashBuilder中,创建应用程序的发布版本。在为iOS平台导出发布版本时,你应该使用你创建的发行开发人员证书(distributiondevelopercertificate)和发行配置文件(distributionprovisioningfiles)。选中Project>ExportReleaseBuild并且确保将AppleiOS选中为目标平台(参见图19),然后点击Next。图19.导出一个发布版本浏览到你的P12发行开发人员证书(distributiondevelopercertificate)和一个发行配置文件(distributionprovisioningprofile)(参见图20)。为该特定配置文件选中包的类型:adhoc或AppStore(参见图20),然后点击Finish。应用程序将花费几分钟或更长时间进行编译。图20.为发行版本指定iOS打包设置找出相应的发布IPA包(参见图21)。图21.找出相应的发布IPA包如果你创建了adhoc发布版本,则将发行配置文件和发布IPA文件添加到iTunes中,就像你在开发配置文件中的操作一样,然后在你的设备中安装它。你应该看到在应用程序描述符文件中指定的自定义名称和图标(参见图22和23)。注:在你安装一个新的应用程序版本之前,你应该从设备上卸下现有的应用程序。图22.在iTunes中查看应用程序图23.在iOS设备上查看应用程序如果你创建了一个AppleAppStore发布版本,则按照AppleAppStoreResourceCenter的指南提交你的应用程序。下一步阅读方向在本文中,你已经学习了如何使用FlashBuilder和iTunes在iOS设备上运行和调试Flex和ActionScript应用程序。此外,你还学习了如何为你的应用程序发行创建发布版本。如需获得更多信息,请参阅下列文章:文档:利用Flex和FlashBuilder开发移动应用程序(DevelopingMobileApplicationswithFlexandFlashBuilder)运行和调试移动应用程序(Runanddebugmobileapplications)为移动应用程序打包和导出移动应用程序(Packageandexportamobileapplication)文档:创建AdobeAIR应用程序(BuildingAdobeAIRApplications)对AIR文件进行数字签名

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论