コピー2018.04.13DerivedDataというものを知っているだろうか?派生データと訳すもので、XcodeでBuildした時に作られる中間データなのだが、これがよく分からないエラーを発生させる。キャッシュが残っていると大体悪さするので、Cleanしてデータをキレイにすれば大体が上手く挙動してくれるのだが、たまに原因不明のエラーが発生するときがある。とあるアプリをXcode7で開いたのち、Xcode8で開きアプリの挙動を確認すると画面遷移の段階で落ちてしまう。この段階で、「ッ!?」と頭がパニクるわけですが、原因探るために乗り出すわけです。なんもコード書き換えたりしてないじゃん!!)←自分の心が訴えてること。何かやったけっか?」となった。ググるが、「値がnilだから落ちる」ということだが、「そんなことは知っとるんじゃ!!」と心の中で怒るわけです。探っていくと、「ストーリーボードに紐付けが行われてない」なる記述を見て、紐付けが行われてないから値がnilになってるとのこと。「ああ、こういうことかー」と原因を見つけた自分は安心するわけだが、そう簡単に解決出来るわけなく、その後原因解決するまで半日使うことになるわけですが......。原因っぽいものを見つけた自分はひたすらストーリーボードの箇所を探ったりしてるわけですが、一向に見つからない。デバッグ張ったりして、アプリの動作を追いかけていくわけだが、全く関係ない場所で落ちている。デバッグした時にでる良くわからない文字の羅列の中身(いわゆるバイナリデータか?)を覗く方法もあるので、試してみたがよく分からずじまいであった。2〜3時間ほど消費した後、「もしかしてストーリーボードの紐付けが原因じゃないのか......?」と思うようになった。そもそも、アプリが昨日まで普通に動いてたのに何で今日になっていきなり落ちるわけなのかサッパリわからない。「サーバーから取得してる情報に関しても、別に問題はなさそうだし......。なんだろう、何が原因なんだろう......」うーん、うーんと心の中で葛藤しながらググってるととある情報に行き着いた。それが「DerivedData」というもの。overflow)だった。いえばXcode7で開いてXcode8で開いたのは今日だし......」そう思いながら、Xcodeの左上にあるメニューの「Preferences」を押し、設定画面を開く。そのまま「Locations」に移動して「DerivedData」の箇所にちっこい➝のマークがあるので、そこをクリック。すると、Finder画面が開き、「DerivedData」のフォルダー出してくれる。画面遷移するときに落ちてたが、何事も問題なかったかのように動いたじゃねーか、と安堵した。Xcode7でBuildするとその時に出来たキャッシュが悪さをするので、原因不明の時はこれを消せば上手くいくよーというお話ですが、中々こんなミスに出くわしたことがなかったので、その時はだいぶ焦りました^^;自分はXcodeごとにそんなデータが作られるとは知らなかったもので......。Xcode7はXcode7。Xcode8はXcode8で中間データが作られるとか本当にビックリしましたね......。原因探って、エラーないようであればDerivedDataが原因のときもあるので、消せば良い感じになるよという一例ですかね。「大体Cleanすればキャッシュも消えると思ってたのに、違ったのね......」というお話でもありますが。本当にXcode、まだまだ謎だらけです。公式、もっと読んでいかないとなー。オブジェクト(インスタンス)の比較として使用する。説明のない演算子に「===」と「!==」があります。これは参照型の値であるクラスのインスタンスの実体が同一のものかどうかを調べるためのものです。使ってみた全部の情報を取得した配列から、先頭5個だけ情報を抜き出して処理をする、みたいなことをしたかったがつまずいてしまったのでメモ。...iOSiPadminiを一台ダメにした話。その日は、いつも仕事で使ってるiPadの調子が悪かった。調子が悪かったというよりipaファイルを作成した後、アプリをDLしたら何故か出来なかった。Paddingにハマった件。UIButtonのデフォルト設定されてる余白をどうにか取り除かならなくて、やり方分からず数時間消えた。海外のサイトだがマジでわかりやすかった。Edge...iOSCarthageメモCarthage→カルタゴもしくはカッセージと読む。CocoaPodsと一緒?でiOSのライブラリ管理ツール。初回のセッティングがクソめんどくさいが、その後のビルドが早いらしい。CocoaPodsはセッティングは比較的簡単だが、ビルドする...iOSiosの強制アップデートの恐怖。仕事柄、iosでのアプリの開発をしているのですが、大人の事情でXcodeやiosのバージョンを上げるなと言われています。「まあ、単純にアップグレードしなけれ...Swift3奮闘記プログラミング能力を上達させる方法である「写経」について。ホームプログラミングiOSプロフィール(サイト管理人)自己紹介ただのヒツジです。31歳からプログラマーになりました。プログラミングスクール通った後、現在とある受託で草を生やしてます。iOS、Android開発、PHPer。雑記プログラミングiOSPHPAndroidライフハックアトピーメンタルホーム検索トップサイドバープロフィール(サイト管理人)自己紹介ただのヒツジです。31歳からプログラマーになりました。プログラミングスクール通った後、現在とある受託で草を生やしてます。iOS、Android開発、PHPer。sheepWebiOSスポンサーリンクタイトルとURLをコピーしました。