【備忘録】オリジナルの電卓アプリをAppStoreに申請してみる(Xcode) | たくやのブログ

たくやのブログ

今となってはだいぶ恥ずいポエム

 

世界一うけたいiPhoneアプリ開発の授業』を元に、

オリジナルの電卓アプリを製作して、Appleデベロッパプログラム?に12,000円ほど払って、アプリを申請してみた。

 

通れば自分のアプリがAppStoreで

世界中でダウンロードできるようになる。

 

その中で、参考書の間違いや更新点、

自分がつまづいたところを備忘録としてメモ。

 

とりあえず、

validateのことろで、iTunes store failedなるエラーが多発して進めなかったが、

3時間ほど調べて、サブ的に存在していたCalculatorUITestフォルダーなどを削除することで解決した。

 

おそらく、上記のテストフォルダー(ターゲット)が、

署名を自動にしていた(automatically~)ため、引っかかっていたよう。

 

署名を自動にしていると、

プロビジョニングファイルの作成とインポートが、何かうまくいかないよう。

 

参考URL

http://ghosthug.hatenablog.com/entry/2017/03/21/094336

 

https://stackoverflow.com/questions/39453669/itunes-connect-submission-code-signing-entitlements-error-xcode-8

 

 

 

 

その他メモ

 

まずEmbedded Content Contains Swift CodeをYES二する際、

Xcode8から、名称がAlways Embed Swift Standard Librariesに変わったよう。

要は、製品のコードにswiftが含まれていたら、それを読み込みますよ、的な意味らしい。

 

それと、Any iOS SDKもiOS Developer→iOS Destributerに変更した。

海外でそうした方がいいっぽい記事があった。

 

あと、bundle identifierのややこしさ。

 

App IDs=チームID.bundleID

 

という構成らしく、

 

最初、Xcode側のbundle identifierを=App IDで設定してしまって

(チームIDの分だけ余分)、

プロビジョニングファイルが2こ出来ちゃってごっちゃになった。

 

で、それを一回

Apple Developer Member?で削除して、

Xcode側のpreferenceでも削除して、作り直したりした。

 

iTunes Connect側でも、間違ったbundle IDを洗濯していたようで

それもエラーった。

 

あとは、プロジェクト名(アプリ名)が

すでにあるアプリ名だからエラーなのか?と思ったが、そうではなかったよう。

 

あくまで、逆ドメイン(名前が一意的に定るように、これを推奨してる)として作成したbundle ID(僕はcom.right-apps.rcalculatorとした)が被ってなければOKのよう。

 

 

 

エラー内容でapplication-identifier is not supported みたいなエラーがで続けたが、このapplication-identifierこそ、App IDのことで、

これにはチームIDが含まれて当然いいのであった。

 

 

なのに、

 

「あれ、bundle idは全部修正した(チームIDが入っていないものに変えた)のに、なんでまだチームIDを含むbundle idのままなの?」

 

と困惑していた。

 

 

うーん、難しい。

 

 

 

アプリのアイコンは話題の?Sketchがトライヤルできたから、それで作成。

 

最初テンプレ使おうと思ったけど、参考になる記事がなく、

逆に一から作成した。

 

illustlatorのお試し版を使ったときと同じように

少し理解すれば、あとはスイスイできた。

 

が、この時、ひとつだけアイコン画像を作成すれば

全iPhoneやiPad、iTunesのアイコンに対応するサイズを

自動作成してくれるMakeAppIconを使った

https://technical-creator.com/makeappicon/

 

しかし、これで生成したデータで、アップロード時にエラー。

調べるとAppleはアンダーバーを受け付けないようで、フォルダ名のアンダーバーを削除し(Icon_rcalからIconRcalに変更)たら、行けた。

 

このアンダーバー問題、Androidのアプリも併用して開発する場合、

AppleはアンダーバーNGで、ハイフンOK

AndroidはアンダーバーOKで、ハイフンNG

というややこしい決まりがあるらしい。

 

だから、フォルダ名やアプリ名、できればドメインやIDなんかも

アンダーバーやハイフンを入れず、大文字と小文字だけで構成するのが良さそうだ。

 

SampleAppやcom.mycompany.HelloWorldなど。

 

https://teratail.com/questions/68591

 

 

あと、Xcode側でアップロードして、

iTunes Connect側でビルドのよこに「+」が着くまでに5分くらいかかった。

(アイコンをiTunes側では設定していなかったので、待ち時間にアップロードしたのがよかったのかも)