Monthly Archives: 12月 2014

iOSアプリの初回申請手順(2014年12月版)

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

※アップデート申請はこちらを参照ください。
※開発準備、申請まわりの情報をお探しの方はiOSアプリの開発準備と申請の手順まとめを参照ください。

ここではまだ一度も申請していないアプリの初回申請(iOS8/iPhone6/6Plus対応版)を例に新しいiTunesConnectでの申請フローを書き留めておきます。また、これは2014/12/21現在の方法であり、予告なしに変わる可能性がありますので、変わっている部分は最新情報を提供している他の方の記事を御覧になるか、変更点を読み替えるなどして対応してください。

<前提条件>

・2014/12/21現在の内容
・一度も申請していないアプリ(iOS8/iPhone6/iPhone6Plus対応版)の初回申請
・ローカライズなし(日本語のみ)
・Xcode Version 6.1 (6A1052d)

 

(1) iTunesConnect(iTC)にサインインする

 

(2) 「マイApp」アイコンを押下する

 

(3) 新規アプリを登録する

画面左上の「+」ボタンを選択し、「新規 iOS App」を押下します。
※ ここでは見やすいようにリスト形式に表示変更させています

 

(4) 新規アプリの情報を設定する

必要な情報を入力して、「作成」ボタンを押下します。

アプリ情報の設定画面が表示されました。

 

これ以降は基本的にこちらの記事の(4)以降とほぼ同様ですので、そちらを参照ください。

この記事を読んでもよくわからない方、ご自身でやるのがどうしても不安な方、経験豊富な株式会社プライムセオリーがアプリ申請代行もしくは申請サポートを承ります。お気軽にお問い合わせください。


Xcodeでファイルの横に?マーク(question mark)が付いてしまった場合の対処

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

それは、何らかの理由でgitの管理対象から外れてしまった(ている)ファイルです。
Terminalからコマンドで紐付けても良いですが、ここではXcode上で対処する方法を載せます。

当該ファイルを選択した状態でInspectorの[Source Control]->[Current Branch Master]のStatus欄を見ると、Unversionedになっていると思いますので、直ぐ横にあるAddボタンを押下して管理対象に追加します。

StatusがAddedに変わり、ファイルの横にAが表示されればOKです。


‘*****’ has been modified since the precompiled header ‘*****’ was built

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

Xcode6で今まで問題なくビルドが通っていたプロジェクトファイルが、突然以下のエラーを吐き出すことがあります。特にCocoaPodsを組み込んでいるプロジェクトファイルで頻出する気がします。

File ‘/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h’ has been modified since the precompiled header ‘**********/Pods-DWTagList-prefix.pch.pch’ was built

上記の例だと「UIApplication.hが変更されました」と。いやースイマセン、変更していなんですがね…ということで何度か遭遇しているのですが、未だ原因がよくわからず、解決できた方法も毎回ビミョーに違います。ですので、「必ずこれで一発OK!」というものがなく困りますが、今まで試した中で比較的すんなりいった方法を記述しておきます。

■環境
Xcode Version 6.1 (6A1052d)

■手順
(1) XcodeにてDeep Clean(cmd+opt+↑+k)を実行

(2) Xcodeの[Window]->[Organizer]->[Projects]で当該プロジェクトを選択し、Derived DataのDeleteボタンを押下

(3) 当該プロジェクトを閉じる(Xcode終了)

(4) TerminalからModuleCacheディレクトリをまるごと削除

 
$ cd ~/Library/Developer/Xcode/DerivedData
$ ls -la
・・・
drwx------@ 52 ****  staff  1768 12  8 16:03 ModuleCache
・・・
$ rm -fr ModuleCache/

(5) 当該プロジェクトを開く(Xcode起動)

(6) Build実行

多くの場合これでうまくいくはずですが、くれぐれも自己責任でお願いします。これでもダメな場合はPodsの(当該プロジェクトに対しての)再インストール、Mac再起動でうまくいっていた気がします。

どなたか、はっきりとした原因と正しい?解決方法をご教示くださいませ(切実)。


Xcode6にてConstraintの値を0に設定してもマージン16pxが取られてしまう場合の対処

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

Xcode6にてStoryBoardかつAuto LayoutでConstraintsの値を0に設定してもマージンが取られてしまい、

 

このように空白が空いてしまうことがあります(ここではWebViewで説明)。マージンに対してConstraintsが設定できるようになったのが原因です。通常は不要かと思いますので無効にします。

上記はStoryboardでのConstraints設定時にマージン制約を無効にする方法です。Constrain to marginsのチェックを外せば無効になります。

このマージンは

Relative to marginのチェックを外すことによっても削除できます。

 

チェックを外した状態です。

このようにConstraints設定時にマージン制約を無効するか、Relative to marginのチェック有無で制御を行いますが、動的にConstraintsの値で調整することも可能です。

 


NSStringからNSDateへ、NSDateからNSStringへ、相互変換する

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

何度やってもすぐに忘れるので備忘録。

NSDateからNSStringへ変換

NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

NSStringからNSDateへ変換

NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];