Xcode
本日はXcodeの小ネタです imageやcolorをソースコード上に表示する Xcode8によって追加された機能により、ソースコード上にimageやcolorを表示しながらセットすることができます。 この機能はImage LiteralやColor Literalを選択することで、下記のように使…
本日は初学者向けのXcodeの小ネタです♀️(ネタが、、) ファイル内のメソッド検索 ファイル内の特定のメソッドなどを検索する時は、⌘ + Fで Findナビゲーションを開いてもいいですが、ファイルナビゲーションからメソッドを簡単に探すこともできます。 ここ…
本日はXcodeの小ネタです Xcodeのドロップダウンメニューはフィルターできる Xcodeでよく見る下記のようなドロップダウンメニュー。実は文字を入力するとフィルターできるらしい(知らんかった)。 こんな感じで、結構便利。 てな感じで本日は以上となります…
皆さんこんにちは。最近ネタがなくて困っているYamatoです ということで、本日はXcodeを使いたての人に使って欲しい、ファイル内の文字列をリプレースする方法を紹介します。 やっていく 1.まずは、⌘Fでファインダーを開きます。 2.左上のメニューから、repl…
PlaygroundでSwiftPackage使えるようにしてみたので、手順を備忘録として残しておきます♀️ ちなみにXcode12以上が必要で、本記事はXcode12.4で作業を行っています。 やっていく まずは、File > New > Workspace...でワークスペースを作成します。 次に、ワ…
結論 XcodeのBuild Active Architecture Onlyを有効にすることで、開発時などに使う端末のアーキテクチャのバイナリのみを生成できるようになり、ビルド時間を削減することができるようになります。基本的には、デフォルトで有効になっています。(なぜかstag…
結論 REMOVE_GIT_FROM_RESOURCESをtrueに設定することで、バンドルリソースのコピー時に.gitディレクトリが除外されるようになります♀️ REMOVE_GIT_FROM_RESOURCES=true てな感じで本日も以上になります その他の記事 yamato8010.hatenablog.com yamato8010…
結論 Build Optionsで除外したいファイルのパターンリストをEXCLUDED_SOURCE_FILE_NAMESに設定することで、ビルド時に特定のファイルを除外することができるようになります。 例えば、Mockという名前がついているファイル群を本番環境で除きたい場合は下記の…
最近巷で聞く XCFramework がなんなのかをよく理解していなかったので、超簡単に概要を調べました✍️ XCFramework とは? Xcode11からバイナリフレークワークの配信のために新たにサポートされた方法で、下記のようにAppleプラットフォームの様々なターゲット…
今回もSwift コンパイラ周りの小ネタです♀️ Compilation Mode とは? Compilation Mode は、プロジェクト内のファイルを全てコンパイルするか、変更されたファイルのみをコンパイルするかをコンパイラに指示します。 Xcode では、下記のように Build Settin…
今回はSwiftコンパイラのOptimization Level (最適化レベル)について調べる機会があったので、それらを簡単にまとめてみます 結論 結論、Swiftコンパイラには下記のような最適化レベルがあります。 Level 内容 -Onone 開発時のデフォルトレベルで、最小限の…
最近 Clean Architecture の実装をしている時などに、新しいファイルを作るたびに Protocol と Class の設定をするのが面倒になってきたので、Xcode のテンプレート機能を使ってファイルの作成をちょっと楽にしてみたいと思います♂️ それではやっていく と…
先日に引き続き、Carthage を剥がして Swift Package Manager への移行作業をしている際に下記のようなエラーに遭遇しました。 具体的には、マルチモジュール化しているプロジェクトのメインターゲット以外にも、SwiftPM で導入したライブラリを Frameworks …
先日開発を行っているプロジェクトの Xcode バージョンを 12.0.1 から 12.4 に更新すると下記のようなエラーが発生していました 「シュミレーターのビルドでこけてるん?」と思い実機ビルドを試してみましたが、同じようなエラーが発生してビルドできません…
本日はタイトルの通りクラッシュログを解析する方法を自分用にメモしておきます(他にもっといいい方法あれば教えてください!!)。 それではやっていく みなさんご存知の通りアプリのクラッシュログは通常だと、16進数でレポートされるため一見しただけだと、…
久しぶりに Cocoa Pods で、インストールしているライブラリを更新し Xcode12.0.1 でビルドしたところ下記のような見慣れないエラーに遭遇しました。 Double-quoted include “pb.h” in framework header, expected angle-bracketed instead 色々ググって見る…
今日はタイトルの通り Fastlane で、Xcode プロジェクトの build number をインクリメントする方法を紹介したいと思います。 それではやっていきましょ 結論 まずは、build number をインクリメントするためのレーンを Fastfile に追記します。ensure_git_st…
Xcode12.1 + iOS14.1 の実機で、いつものごとく実機にアプリをインストールしようとすると何やら見覚えのあるエラーが、 〇〇 is not available. please reconnect the device Xcode11.xx 系では、iOS14 以降のペアリング暗号化の問題で、実機へのインストー…
今回は、Fastlane でアプリの Version や Build Number を取得したい時の Tips を紹介します Version の取得 PlistBuddy を使用することで、Info.plist の値を操作しやすくすることができます。CFBundleShortVersionString はアプリのバージョンを指してい…
今回は3秒で終わってしまう記事ですが、Xcode でソースコードの再インデントを行う方法を紹介します♀️ やっていく この汚いインデントを extension Array { public subscript (safe index: Index) -> Element? { return indices.contains(index) ? self[ind…
あるプロジェクトで、Xcode11.4.1 を使用していて iOS14.1 にバージョンアップした iPhone で実機インストールができないという問題が発生していました。 Failed to start remote service on device. Please check your connection to your device. 以前紹介…
みなさん、Xcode12 への移行は済みましたか?僕はライブラリの更新などにかなり苦しめられましたがなんとか、Xcode12 の住人になることができました♀️ また、Xcode の移行によって他のプロジェクトと Xcode のバージョンの差異があり、Xcode CLI を切り替え…
iOS アプリ開発をしていると、Xcode が対応していない iOS バージョンに端末の OS を上げてしまうことが多々あるかと思います。そんな時は、下記の手順で Xcode のサポートする iOS バージョンを追加します。 まずは、iOS のサポートファイルをまとめてくれ…
今回は、Xcode11.7 から Xcode12.0.1(GM) への移行中に発生した、タイトルのエラーで原因だったポイントと、改善方法を簡単にまとめます。なお、error: Illegal instruction: 4 は SwiftCompiler ではなく、OS によって出力されている Error のようですので…
Xcode で設定できる Compilation Mode はProject のビルド方法を、速度を最適化する必要があるか、それらの最適化をスキップする必要があるかを設定することができます。簡潔に言い換えると、変更されたファイルのみをコンパイルするか、全体をコンパイルす…
Xcode12(swift5.2.4 -> swift5.3) への以降に伴い、Carthage で build していたライブラリを swift5.3 で build 使用とすると失敗するようになってしまいました $ carthage build XCGLogger --no-use-binaries --platform iOS *** xcodebuild output can be …
今回は、iOS・WatchOS デバイス CPU の ISA(Instruction Set Architecture) について簡単にまとめてみようかと思います。 ISA とは? ソフトウェアとハードウェアのインターフェースで、あるマイクロプロセッサ(CPU/MPU) を動作させるための命令語の体系です…
今回は、Storyboard や xib などの Interface Builder を使ってレイアウトを設計する際などに知っておくと少し便利な、@IBDesignable・@IBInspectable について簡単にまとめていこうかと思います。 @IBDesignable とは? Storyboard や xib などの Interface…