LoginSignup
5
9

More than 3 years have passed since last update.

【Swift】チャットアプリで、iOSアプリ開発入門講座を考えてみた(※随時更新予定)

Last updated at Posted at 2019-07-01

はじめに

今では、多くのアプリで取り入れられているチャットアプリを用いて、初心者でもiOSアプリ開発ができるように紹介していこうと思います。

※記事全体を通して分からないところ・誤りがあるところあれば、なんでもコメントください。

流れ

  1. 【Swift】初心者でも絶対にできる"Hello World" iOS アプリを作成 ~iOS アプリ開発超入門~
  2. 【Swift】Firebase Realtime Database を用いてチャットアプリを爆速コーディングしてみた。
    ここで少しだけUIをアレンジしたい方はこちら↓↓↓
    【Swift】チャットアプリのUIをちょっとだけ良くしてみた
  3. 【Swift5.0】UserDefaultsでパラメータを保存する~iOSアプリ開発入門~
  4. 【Swift】UITableViewControllerを使って、チャットアプリにトークルームを追加する

ソースコードはこちらのGitHubからどうぞ

エラー一覧

実際に実施して発生したエラーを記載しておきます。

Case1. Could not build Objective-C module 'Firebase'

Screen Shot 2019-07-02 at 11.54.14 AM.png

解決方法

「.xcodeproj」ファイルではなく、「.xcworkspace」ファイルから、Xcodeを開き直してください。
Screen Shot 2019-07-02 at 12.03.16 PM.png

説明

  • xcodeproj
    → メインプロジェクトとサブプロジェクトを管理することができるファイル
  • xcworkspace
    → 複数の同階層のプロジェクトを管理することができるファイル
    ※cocoaPodsを使用して、ライブラリを導入した場合は、同階層にPodsプロジェクトが作成され、そこにライブラリがbuildされているため、「xcworkspace」で開く必要があります。

case2. xcode-select: error: tool ‘xcodebuild’ requires Xcode, but active developer directory ‘/Library/Developer/CommandLineTools’ is a command line tools instance

解決方法

Xcodeのpathに誤りがあります。正しいパスを指定し直してください。

$ sudo xcode-select -s <xcode_folder_path>

例:

$ sudo xcode-select -s /Applications/Xcode.app

tips

複数のXcodeバージョンをインストールしている場合も上記のコマンドで切り替えることができます。
選択されているXcodeをもとにライブラリがインストールされるため、インストール前に以下のコマンドでpathを確認することをおすすめします。

$ xcode-select -print-path

case3. Thread 1: signal SIGABRT

Screen Shot 2019-07-03 at 10.17.49 AM.png

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<AQI_Chat__.ViewController 0x7fd446813f80> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key textView2.'

解決方法

Main.storyboardファイルを開き、UIとコードの接続を確認します。
Screen Shot 2019-07-03 at 10.19.59 AM.png

Warningの箇所を削除して、必要に応じて、もう一度接続し直します。

tips

UIとコードの接続は、1対1である必要があります。
接続して、コードのみ削除すると、Storyboard上に接続関係だけが残ってしまい、エラーの原因になります。
また、接続させたコードの名前を変更すると関係性がなくなってしまい、こちらもエラーの原因になります。

Q&A

Question1. 「platform :ios, '10.0'」 は何?

iOS10以上を対象としてライブラリをインストールすることを意味します。

変数の名前の変更方法は?

変更したい変数を選択して、右クリックしてください。
以下の Refactor > Rename を選択します。
今回は試しに、textViewchatTextViewに変更します。

Screen Shot 2019-07-03 at 11.22.49 AM.png

Screen Shot 2019-07-03 at 11.24.06 AM.png

Screen Shot 2019-07-03 at 11.24.23 AM.png

5
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
9