iPhone App 上架流程
1. 申请 App ID
(1) 连到 Developer 网页 ( http://developer.apple.com )。
(2) 进入 iOS Provisioning Portal。
(3) 点选左侧的 App IDs。
(4) 点选右上角的 New App ID。
(5) Description : 输入 app name。
Bundle Seed ID (App ID Prefix ) : 选 Generate New。
Bundle Identifier (App ID Suffix ) : 输入 com.companyname.(app name),Ex: com.taolewireless.myDemo。
(6) 点选 submit。
(7) 在 App IDs 页面,即可看到一组写着 appname 的Description。
2. 申请 DistributionProvisioning Profiles
(1) 在 iOS Provisioning Portal 页面,点选左侧的 Provisioning。
(2) 点选上面的 Distribution tab。
(3) 点选右上方的 New Profile。
(4) Distribution Method 选 App Store。
Profile Name 输入 TaoleWireless_myDemo_Distribution。
(5) 点选 submit。
(6) 在 Distribution Provisioning Profiles 页面可看到多出一组名为 TaoleWireless_myDemo_DistributionProfile。
(7) 过一分后重新整理网页,点 Download Provisioning Profile。
(8) 开启 Xcode -> Window -> Organizer。
(9) 点选左下的 Profisioning Profiles。
(10) 将 (7) 下载的profile 拖拉到 Xcode的Organizer 画面。
3. iTunes Connect New App
(1) 连到 iTunes Connect 网页 (http://itunesconnect.apple.com)。
(2) 点选右边中间的 Manage Your Applications。
(3) 点选左上方的 Add New App。
(4) App Name 输入 app name,Ex: myDemo。
SKU Number 输入 yyyyMMdd。
Bundle ID 选 app 后,按Continue。
(5) 选日期、价格后 Continue。
(6) Version Number 输入 1.0.0。
Description 输入 ….
Primary Category
Secondary Category
Keywords
Copyright: @2011 TaoleWireless All Rights Reserved.
Contact Email Address: 输入上传人员的 email。
…
(7) 点选 Ready to Upload Binary。
4. Upload by Application Loader
(1) 开启 Xcode 的指定Project。
(2) 点选 Project -> Edit Project Settings。
(3) 点选上方的 Configurations tab,先选 Debug,再按 Duplicate,并将 configuration 名称改为 Distribution。
(4) 切换至 Project Settings 的 Build tab,在 CodeSigning -> Code Signing Identity,选在 2. (9) 的 iPhone Distribution。
(5) 在 Deployment 的 Target Device Family,选择 support iPhone 或 iPad。
(6) 在 iOS Deployment Target 选 iOS 3.2
(7) 修改 Info.plist档,将 Bundle identifier 改成 com.companyname.appname
(8) 左上角的选项勾 Device,Active Configuration 选 Distribution,之后按 Build and Run。
(9) 在 Project 目录下的 build-> Distribution-iphoneos ,将 app name 压缩成 .zip 檔,在 .zip 档点右键,选”打开档案的应用程序”,选 “Application Loader
(10) 之后就 Next … Next … Send 即可(若在公司网络会被挡下来,必需改用手机上网或在家upload 才 work)。
5. 申请发送 APNS(Apple PushNotification Service)
(1) 开启Mac的钥匙圈存取程序。
(2) 点选选单上的”钥匙圈存取”->”凭证辅助程序”->”从证书颁发机构要凭证”
(3) 输入 email (CA email 不用填)。
(4) 名称输入如( Ken Lai APNS for match test)。
(5) Continue后,选择(1)~(4)产生的档案后,按Generate。
(6) 下载 aps_developer_identity.cer档后,点二下该 .cer 檔。
(7) 在钥匙圈存取程序的钥匙圈选登入,类别选凭证,可看到一组 “Apple Development PushServices”的凭证。
(8) 在该凭证上右键单击,选择输出,文件格式选.p12,名称命名为xxxx-cert.p12。
(9) 在类别选钥匙,可看到(4)输入的名称,种类为专用密钥里面的”Apple Development Push Services”,点右键,选择输出,文件格式选 .p12,名称命名为 xxx-key.p12。
(10) 开启终端机,cd 到 (8), (9) 的目录,执行以下 command:
openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in apns-dev-cert.p12
openssl pkcs12 -nocerts -out apns-dev-key.pem -in apns-dev-key.p12
(密码必须输入)。
(11) 将 (10) 二个 .pem 檔加在一起:
cat apns-dev-cert.pem apns-dev-key-noenc.pem > apns-dev.pem
(1) 2.1 Register for remote notifications
- (void)applicationDidFinishLaunching:(UIApplication *)app {
// other setup tasks here....
[[UIApplicationsharedApplication]registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge |UIRemoteNotificationTypeSound)];
}
// Delegation methods
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)devToken {
const void *devTokenBytes =[devToken bytes];
self.registered = YES;
[selfsendProviderDeviceToken:devTokenBytes]; // custom method
}
- (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError*)err {
NSLog(@"Error inregistration. Error: %@", err);
}