2008年8月30日土曜日

iTunes Connectその2(アプリケーションの登録と変更)

アプリケーションの追加方法はAdd New Applicationに書かれています。先のページにもあるように、Manage Your Applicationsがアップロードして登録する場所です。アプリケーションの大きさが200MBを超える場合にはこのページにあるApplication Loaderを使用するように推薦しています。新規にアプリケーションを登録する場合には主に使用する言語と開発者名を設定します。この設定はiTunes内のApp Storeにて開発者名と解説に利用されますが、後から変更できないそうです。

アプリケーションが暗号化技術を持っている場合にはExport Compliance Pagesから米国の輸出規制法に基づいてその内容を報告します。この場合にはCCATS(Commodity Classification Automated Tracking System)に基づく承認(番号?)を得て、そのコピーを添付するそうです・・・とは言うものの面倒(苦笑)詳細は以下のURLあたりを参照してください。

U. S. Bureau of Industry and Security
http://www.bis.doc.gov/index.htm

Export Administration Regulations
http://www.access.gpo.gov/bis/index.html

詳細は読んでいませんが(笑)以下のページが役立つでしょう・・・たぶん
U. S. Bureau of Industry and Security - Guidelines for Requesting a Commodity Classification
http://www.bis.doc.gov/licensing/cclrequestguidance.html

Overview Pageにはアプリケーションのメタデータを書き込むのですが、最初にアクセスした時にはこのページを編集できないそうです。詳細はPDFにも書かれていますが、Webサイトにあるヘルプボタンを参照するように書いています。

A) Application Name -
B) Application Description –
  4000文字未満ですが、700文字以下にすることを推薦しています。
  書き込めるのはプレーンテキストです。制御文字は改行だけでHTML
  のタグなども利用できません。スペルチェックも構文チェックもしない
  と書いています(笑)
C) Device –
  iPhoneやiPod touchなどを選択できますが、今後は数が増える
  でしょうね。
D) Primary and Secondary Category -
  アプリケーションの種類を選びます。
E) Subcategories –
  ゲームはさらに種類を選びます。
F) Copyright –
  コピーライトの印を入れるなと書いています。
G) Version Number –
  バージョン番号はアプリケーション製品ページのアプリケーション
  アイコンの隣に表示されるそうです。
H) SKU Number –
  アプリケーションを特定するためのUTF8のAlphanumericだそうで、
  後から変更できないとしています。
I) Support Email Address –
  アプリケーションに何らかの問題があった場合にAppleから問い合
  わせるためのメールアドレスで、ユーザには公開されないそうで、
  このアドレスは必須とされています。
J) Support URL –
  サポート用WebサイトのURLも必須だそうです。
K) Application Website URL –
  アプリケーションに関する詳細な情報を得るためのWebサイトの
  URLですが、必須ではないそうです。
L) End User License Agreement –
  アプリケーションの説明と同様にライセンスもプレーンテキストで、
  改行だけが有効です。

入力画面とiTunes App Storeのサンプルが対応づけられた図があるので、どの内容がどこに表示されるのか、またされないのかが分かります。

Upload Pageはアセット(アプリケーション自身、大きなアイコン、メイン画面のスクリーンショット、その他の追加スクリーンショット)をアップロードするページです。追加スクリーンショット以外は必須です。Webサイトのスクリーンショットをもとに入力するべき内容を解説しています。一つのアプリケーションの最大サイズは2Gバイトだそうです。

Pricing/Availability Pageでは公開日(世界時間)、国別通貨単位での売価と売り上げの表、販売する国を設定します。販売する国にはRest of Worldという項目がある点が興味深いです。

Localization Pageでは英語のメタデータ以外を追加できるそうで、PDFに書かれている選択可能な言語は以下の通りです。

 US/UK English
 German
 Spanish
 Dutch
 Italian
 French Canadian
 French
 Japanese

Review Pageで内容の確認をし、よければSubmitしてApp Storeに上がるのを待ちます。App Storeの作業状況は以下の七つの段階で表示されるそうですが、詳細は本文を参照してください。

In Review (Yellow) – 
Waiting for Upload (Yellow) –
Pending Contract (Yellow) – 
Ready for Sale (Green) – 
Rejected (Red) –
Removed from Sale (Purple) –

Editing and Updatingではアップロードしたデータの変更方法が、またUpdating an Existing Binaryではアプリケーションのアップデート方法が紹介されています。変更とアップデートはiTunes ConnectのManage Your Applicationsで行います。最初の登録時とは異なり、各タブで変更した場合には必ず保存をするように書いています。

Large Binary Uploadsでは200 MB以上のアプリケーションをアップロードする方法が書かれています。詳細は本文を参照してください。

Game Advisoriesではゲームの登録に関して解説していますが、詳細は本文を参照してください。ゲームに関しては文章、図版、写真などの「わいせつ」「ポルノ」「不快度」「名誉毀損」およびAppleが不適切と判断したものなどを制限しています。なお、ここで書かれているESRBとPEGIはそれぞれ以下を参照してください。

Entertainment Software Rating Board
http://www.esrb.org/

Pan European Game Information
http://www.pegi.info/

日本のWikipediaにもそれぞれ解説があります。

・・・と言うことでiTunes ConnectのPDFのメモは終わり。

iTunes Connectその1(Program Portal補足)

iTunes Connect Developer Guide(ファイル名:iTunesConnect_DeveloperGuide.pdf)のメモです。

Program Portalの解説44ページに書かれている"Submitting your application via iTunes Connect"の詳細です。

Program Portalでは書かれていなかった、大小二つのアイコン(57 x 57と512 x 512)の仕様が書かれています。また、Info.plistのUIPrerenderedIconというタグが紹介されています。解説の図にあるように登録したアイコンに、光った感じ(光沢)の印影を付けてくれるようです。書式は以下のようになりますが、詳細はURLを参照すると良いでしょう。

<key>UIPrerenderedIcon</key>
<true/>

Apple - Support - Discussions - Shine/NoShine ...
http://discussions.apple.com/thread.jspa?threadID=1566351&tstart=-5

スクリーンショットの大きさに関しても図付きで紹介しています。また、縮小されますが、スクリーンショットは4つまで登録できるそうです。

販売する場合には「Contacts:」に連絡先が必要で、販売に関する契約が完了するまで販売できません。

米国とカナダ以外で販売する場合には「Additional Languages:」に書きます。

暗号化が含まれているアプリケーションは「Export Compliance:」にある質問に答えて、正規に輸出承認を得ていることを証明しなくてはなりません。

「Additional Artwork:」はAppleのWWDCがアプリケーションを紹介するかもしれないので、絵を準備するようにと言うことです。

iTunes ConnectはWebベースのApp Store用管理ツールで、契約状況、利用者管理、アプリケーションやメタデータ、アセットの追加をできます。

iPhone Developer ProgramのTeam AgentがiTunes Connectに初期登録されており、Team AgentのApple IDとパスワードでiTunes Connectにログインできます。

iTunes Connectのログイン ページへのリンクはiPhone Developer Program Portal内左欄からDistributionを選択し、App Storeタブ内の折りたたまれた分かりにくい場所にあります・・・が以下の場所です(苦笑)

https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa/wa/default

ちなみに、2008/08/29現在ではProgram Portalに一度ログインするとiTunes Connectにジャンプするときに再ログインは求められませんでした。

iTunes Connectのホームページには以下の五つのアイコンが表示されていて、GuidのPDFにある図よりも一つ増えています。

 Sales/Trend Reports
 Contracts, Tax, & Banking Information
 Financial Reports
 Manage Users
 Manage Your Applications

なにせ、iPhoneは今までのPCや携帯のビジネスモデルとは異なる事を考えているようなので、今後もProgram PortalとiTunes Connectのサービス内容は変わっていくでしょうね。

Manage Users
この項目は現在もありますが、この場合のUserは顧客ではなく、管理のための利用者です。利用者には四つの役割を割り振ることができ、それぞれのメールアドレスにiTunes Connectのアカウントに関する情報が送られます。

四つの役割、Admin、Legal、Finance、Technicalに関する詳細は本文を参照してください。それぞれの役割はこのManage Usersのページで割り振ったり、削除したりできます。面白いことにiPhone Developer Programの個人会員でも、このiTunes Connectには複数の人を割り当てることができます。使い方の詳細は本文を参照してください。

iTunes Connectから送られるメールにはいくつかのタイプがあり、iPhone Developer Programの会員にはCntractとFinancila Report、Misc Reporting、Content Tichetの四つが割り振られ、解説PDFに書かれている他の内容は2008/08/30現在では利用不可のようです。

Contracts, Tax, & Banking Information
ここは、支払いや税金などの経理事務や契約内容などがまとめられています。

Financial Reports
AdminとFinanceの利用者が各月の経理報告を見ることができます。

Manage Your Content
現在はManage Your Applicationsとなっています。アプリケーションのアップロード、メタデータの設定、価格付け、使用言語の設定ができ、設定が終わり承認されるとiTunesのApp Storeに表示されます。

Contact Us
2008/08/30現在、このタグは枠外下の中央に表示されています。また、連絡内容の分類はApplication Questions、Legal Questions、Financial Reports, Tax, Banking and Payment Questions、Reporting Questionsの四つになっています。

2008年8月27日水曜日

複数アプリケーション開発

複数のアプリケーションを作るときの注意書きBuilding Multiple Apps for Distribution and Validating Your Distribution Builds(ファイル名:distributing_multiple_apps_readme.pdf)の内容はProgram Portalの解説37ページに書かれている内容と比べて多少単語が異なるときがあるだけでほぼ同じでした。

Program Portalの解説PDFその2

ようやくDistributionの章、50ページの24ページにたどり着きました。集中して読める環境が欲しい(苦笑)

Program Portalの左欄Distributionの説明で、App StoreやAd Hoc経由で配布するためにアプリケーション提出する方法を解説しています。この作業ができるのはTeam Agentだけだそうです。

ここではiPhone Distribution Certificate(iPhone配布証明書)なるものを生成するように書いています。

iPhone Distribution Certificateを請求するために、先の項目でキーチェンアクセス.appを使って作成したCSR(Certificate Signing Request)を使用します。

これ以降に'Generating a Certificate Signing Request'と'Submitting a Certificate Signing Request for Approval'、'Downloading and Installing iPhone Distribution Certificates'、'Saving your Private Key and Transferring to Other Systems'に書かれている内容は、開発Certificateを入手するときの作業とほとんど同じです。

この次の二つの小項目ではApp Storeで配布する方法とAd Hocで配布する方法を紹介しています。

開発用Provisioning Profileと、App Store配布Provisioning Profile、さらにAd Hoc配布Provisioning Profileはそれぞれ異なるそうです。

以上でようやくXcodeを使って配布用のビルドができると書かれています。'Building your Application with Xcode for Distribution'に書かれている内容に沿ってProject Infoの設定などを行います。

先の開発用Provisioning Profileでも書かれていましたが、複数のアプリケーションを配布するにはアスタリスク( * )を使って設定することになるようです。既存のProvisioning Profileを消去するなど、面倒な作業が必要だそうで'Building Multiple Apps for Distribution and Validating Your Distribution Builds'と'All Distribution Methods'に色々と書かれています。

次にiTunes Connectに関して解説しています。 iTunes ConnectはApp Storeでのアプリケーション販売の登録や管理をするためのWebベースのツールで、Team Agentは契約の確認やユーザの管理、バイナリやメタデータ、assetの申請ができます。

Team AgentはProgram Portalの左欄にある'Distribution'項目内にiTunes Connectへのリンクがあり、そのログインページにジャンプしますので、Program Portalで使用しているApple IDとパスワードを入力してログインします。

ここで、iTunes Distribution Terms & Conditionsの再確認が求められるそうですが、わざわざ 'Distribution Terms & Conditions'と小項目を設けて、会社に法務部があれば確認するように書いています。

次に、登録に必要なメタデータを用意するように書いて、16の項目を列挙しています。さらにiPhoneなどのホームスクリーンとApp Storeに表示するために二つのアイコン(57 x 57と512 x 512 ピクセル)と、商品解説用のスクリーンショットなどを準備するように書いています。スクリーンショットは垂直(320 x 460)と水平表示(480 x 300)が利用できステータスバーを入れないように言っています。最初からステータスバーがないフルスクリーンでは320 x 480で登録できるそうです。

以上で準備ができれば、ファイルをzipで圧縮して送信するようです。

次にAd Hoc配布ですが、Standardプログラム参加者はApp Store以外(outside of App Store)に100の装置に配布できるとしています。ここではAd Hoc配布用Provisioning Profileの入手とXcodeでの作業が解説されています。

ようやく、読み終わりました。仕事場の雑音が多すぎてエラク時間がかかりました(苦笑)

2008年8月24日日曜日

Program Portalの解説PDFその1

このメモは"iPhone Developer Program Standard Program Portal User Guide for OS X iPhone 2.0"という表題(ファイル名:iphone_developer_program_user_guide__standard_program_v1.1.pdf)のPDFファイルを読んだときのものです。

Welcomeの章では開発チームを作れとか、iPhone開発証明を要求して承認を得ろとか、App IDを生成しろなど、など何やら大袈裟なことが書かれています。

Developmentの章で大袈裟な理由が分かります。iPhoneの開発者向けサイトにある'Program Portal'というページに、開発に参加する人や使用する装置(iPhoneやiPod touchなど)、作る予定のアプリケーションを登録するためです。

推測ですが、
このような手続きにより少しでもウィルスなどの悪質なプログラムを閉め出すことを狙っているのかもしれません。iPhoneという新しいプラットフォームでは、PCのような状況はユーザとして避けたいものです。しかし、同時にさまざまなアプリケーションが提供されるというPCの良いところも取り入れたいのもの確かです。その暗中模索と折衷案が今回のAppleのiPhone SDKと見るべきと思われます。

閑話休題、
個人としてiPhone Developer Programに登録した人は、チームなどの登録は不要ですし、出来ません。

チームのメンバーには三つの役割が割り振られます。それぞれTeam Agent、Team Admin、Team Memberです。

Team AgentはiPhone Developer Programに登録した人で、Appleとの連絡やライセンスなどの責任者です。Team Agentができることは以下の通りです。
 Team AdominやMemberの登録、
 デジタル証明要求の承認、
 開発装置の登録、
 App IDの生成、
 iPhone Distribution Certificateの入手、
 開発用と配布用のProvisioning Profileの生成

Team AdominがProgram PortalでできることはTeam Agentと同じです。Team AdominとTeam Agent がチームの最小構成になります。Team Adominの数に制限はありません。
 新しいTeam AdominやMemberの登録、
 デジタル証明要求の承認、
 開発装置の登録、
 App IDの生成、
 iPhone Distribution Certificateの入手、
 開発用と配布用のProvisioning Profileの生成

Team Member ができることは以下の通りです。
 デジタル証明を要求
 開発用のProvisioning Profileのダウンロード

以上の三つのメンバーは装置でのアプリケーション検証ができます。

Adding Team Admins and Team Membersの小項目ではTeam AgentとTeam Adminが新規にTeam AdminやMemberを登録する方法を紹介しています。登録場所はProgram Portalページ左欄の'Team'を選択し'Invitation'タブにあります。Invitationの名前からも推測できますが、登録したメールアドレスにチームへの招待状を発送する方法で登録を処理します。

面白いことにTeam Agentの新規登録はProgram Portalページからはできないらしく、ADC Support Teamの連絡用ページを通して要求するようです。

次はiPhone Development Certificateの申請です。まず最初にMac OS X 10.5.xに付属するキーチェーンアクセス.appを使ってCSR(Certificate Signing Request)の時に公開鍵と非公開鍵を生成します。

ここからは、日本語版キーチェーンアクセス.appでも、英語版と同様にできるか試してみます。

「キーチェーンアクセス」メニューから「証明書アシスタント>証明局に証明書を要求...」を選択します。なお、左下欄「分類」の「鍵」が選択されていると、「証明局に証明書を要求...」の表示が異なりますので、注意してください。

「ユーザのメールアドレス」と「コモンネーム」には、iPhone Developer Programに登録したメールアドレスと名前を入力します。「CAのメールアドレス」は無視して、「要求の処理」で「ディスクに保存」「鍵ペア情報を指定」を選択し、「続ける」ボタンを押します。鍵情報を保存するダイアログが表示されますので保存します。

次の画面で「鍵のサイズ」を「2048ビット」、「アルゴリズム」を「RSA」を選択します。

以上でCSRファイルが指定した場所に保存されます。

以上でCSRファイルができたので、Program Portalに登録するそうです。ここからはProgram Portalでの作業なので動作検証せずにPDFを読み進みます。

WebブラウザSafariでProgram Portalのサイトを開き、‘Certificates’、 ‘Development’、‘Add Certificate’の順でクリックしていきます。

作成したCSRファイルをテキストエディタで開いて、内容をすべてコピーし、Safariに表示されているテキストフィールドにペーストし、「Submit」のボタンを押します。キーの大きさが2048ビットでないと、Program Portalからはねられます。

以上の作業でTeam Adminに登録完了のメールが届きます。登録失敗したときもその趣旨を書いたメールが届くそうです。さらに、Team AdminがCSRを承認したり削除してもメールが届くそうです。

Team AgentとAdminはiPhone Development Certificate要求の承認と非承認ができますが、Team Adminは自身のCSRの承認を得ないと、Team Memberからの要求に承認を出せないそうです。Approving Certificate Signing RequestsとDownloading and Installing Development Certificatesの小項目には承認と非承認の方法と証明書(拡張子.cerのファイル)のダウンロードとキーチェーンアクセス.appへのインストール方法が書かれています。

複数のコンピュータで開発していたり、何らかの理由でシステムを再インストールする場合に、個人鍵がないと開発ができなくなるのでCSRのファイルの管理は悩ましい問題です。Saving your Private Key and Transferring to other Systemsの小項目に複数のコンピュータでCSRファイルを共有する方法が書かれています。

iPhoneやiPod touchなどの装置の登録はTeam AgentかAdminが行います。登録にはUDID(Unique Device Identifier)と呼ばれる16進数で40桁の文字列が使用され、Program Portalに最大100まで登録できます。また、UDIDは後で生成するprovisioning profileにも含まれます。

UDIDは装置を接続してXcodeのバージョン3.1以降やiTunesのバージョン7.7以降で調べることができます。詳細はLocating a Unique Device ID with XcodeまたはLocating a Unique Device ID with iTunes 7.7の各小項目を参照してください。また、Program Portalへの登録、抹消、変更方法はAdding DevicesとRemoving Devices from your Development Team、Editing Devices on your Development Teamの各小項目を参照してください。

書いたコードをiPhoneやiPod touchなどの装置で動作検証するにはOS X iPhoneをインストールするそうです。インストールには色々と制限がありますが、詳細はInstalling OS X iPhoneを参照してください。

次にApp IDと言うものを生成します。Apple IDではありません(苦笑)装置に作ったアプリケーションをインストールするためにApp IDが必要だそうです。

作ったアプリケーションがキーチェインにアクセスすることをOS X iPhoneが承認するためにApp IDというものが必要だそうです。また、開発と配布のProvisioning ProfileにもApp IDが含まれているそうです。

App IDはAppleが生成した10文字の"Bundle Seed ID"プレフィックスと、Team Adminが定義した"Bundle Identifier"からなっています。ただ、複数のアプリケーションを開発配布する場合には問題があるようです。一時的な問題回避策として"Bundle Identifier"をアスタリスクにするように書いています。複数のアプリケーション開発に関しては別にPDFファイルがあります。これ以降はApp IDを生成する方法が書かれています。

次は今までにも出てきた開発用Provisioning Profileです。配布用は24ページから始まるDistributionの項目で説明されています。

開発用Provisioning Profileは動作検証のために各装置にインストールし、開発チームと装置を特定します。開発用Provisioning ProfileにはiPhone Development Certificate、Unique Device Identifier、App IDのセットが入っています。一つの装置に複数の開発用Provisioning Profileを入れることができるそうです。

'Creating a Development Provisioning Profile'にProgram Portal上での開発用Provisioning Profileの作り方が解説され、'Installing a Development Provisioning Profile'にProgram Portalから開発用Provision Profileをダウンロードし、Xcodeで装置にインストールする方法を紹介しています。また、iTunes 7.7でもインストールできると書いています。

この段階で以下のものがそろっているはずです。
 1.iPhone Development Certificate(承認されたもの)
 2.iPhoneまたはiPod touch(登録されたもの)
 3.開発用Provisioning Profile(正しくインストールされたもの)
もし、iPhone Development Certificateと開発用Provisioning Profileが一つだけであれば、Xcodeの初期設定のままでアプリケーションを走らせることができるはず・・・だそうです。'Running your Development Application on a Provisioned Device'にその手順が書かれています。

つづく・・・(笑)

2008年8月14日木曜日

iPhone Developer Programからメール

2008/08/13にiPhone Developer Programから"Support resources for the iPhone Developer Programと言うタイトルのメールを受け取りました。

作ったアプリケーションをダウンロードするためのサイトProgram Portalの説明書PDF[ファイル iPhone Developer Program Portal User Guide]ができたそうです。このPDFはiPhone Dev Centerのトップページから右上の[Program Portal]ボタンをクリックし、


次画面の右上にあるボタンをクリックすると入手できます。




また、iTunesのApp Storeでアプリケーションの販売状況などの管理サイトも紹介されています。始めてこのサイトにジャンプすると使用許諾書が表示され、同意すると管理サイトを見られます。使い方は[iTunes Connect Developer Guide]というPDFにまとめられています。このファイルはiTunes Connectのトップページにある[Manage Your Applications]をクリックして、


次の画面下に表示される[Download Detailed Instructions]をクリックすると入手できます。


次はAppleのエンジニアから受けられる技術サポートで、いままでのDTSから受けたサービスと似ています。ただ、メーリングリストによるサービスがWebアプリケーションのみである点が気になります。

興味深い機能として[Ad Hoc distribution]があります。100名限定でアプリケーションを配布する方法で、メールやWebサイト経由で配布できるとしています。動作検証用などに利用できるとしています。[Ad Hoc distribution]の方法は上記の解説PDFに書かれているそうです。