yidev#18 ちょっと煽り系のタイトルにしてあれでしたが、Xcode の Plugin を作っているよという内容です。 発表して作るモチベーションががあがったので、頑張ろうかなと思います。 みれないかた 反響が良かったのでとりあえず Xcode がクラッシュしない状態にして public beta でリリースしようかなと思います。 Xcode Plugin は難しいので、誰か相談にのってくださいw 運営の方々おつかれさまでした。
potatotips #1 で LT した内容が好評(?)だったのでもう少し紹介してみようかなと思います。 発表した内容は「Debugger の Tips」です。 当日のまとめは「クックパッドのLT会に参加してきたのでiOSのtipsをまとめる」がおすすめです。 さてさて LLDB がデフォルトの Debugger となり久しいですね。 しかし Xcode から LLDB を扱う情報をあまりみかけません。かなしいですね。 というわけで今回は LLDB にフォーカスをあてて少し紹介してみようと思います。 (決して GDB もあわせて書くのが面倒くさかったというわけではありませんw) 設定ファイル shell での .~rc ファイルみたいなものですね。 Xcode から起動した LLDB だと以下の2つのファイルのどちらかが読み込まれます。 ~/.lldbinit-Xcode ~/.lldb
はじめに いろいろと iOS アプリ開発を勉強中の諏訪です。 今回はデバッグ時に特定のブレークポイントを指定した場所で変数の値を変更する方法を調べたのでメモしておきます。 何かの処理中にここの値が変わったら、どう動くかという確認をしたいときに便利です。 デバッグ中に変数の値を変更する 今回は以下のコードで試したいと思います。Button をタップすると Label の text に value を代入するというシンプルなコードです。この value の値をデバッグ中に変更します。 - (IBAction)button:(id)sender { NSString *value = @"Button clicked."; _label.text = value; } 1.ブレークポイントを設定する ブレークポイントを設定するには行番号をクリックします。すると下図のように青色に変わります。 この
導入 iOS 開発者のみなさん、こんにちは。 このブログでは主にチュートリアルだったりフレームワークの紹介みたいなことを書いてきました。 そこで、たまには中級者向けのエントリを書いて「Xcode バリバリ使って、ビシバシ Objective-C 書いてますよ」アピールします。 iOS 開発をはじめて一通り Framework は理解したけど Xcode 使いこなせてる感が足りない方、夢にまで EXC_BAD_ACCESS が出てくる方に参考になる記事となればと思います。 といっても Xcode はマッシブな IDE なので、4つのデバッグツールに分けて「あれ、それ知らなかった!便利じゃん!」な方法を紹介します。 ブレークポイント デバッグには切っても切れない関係ですね。アプリを実行中に指定した行で処理を中断し、そこからステップ実行で細かいデバッグを可能にしてくれます。 ショートカットキー
たとえば、変数 var の値を2進数で表示したい場合は、次のように指定します。 (gdb) p/t var 一覧表示 whatis 変数の型を調べる。 info b 今設定しているブレークポイントの一覧を表示 セグメントフォルトをした後に利用すれば、どの関数で発生したか確認できます。 info stack 関数の呼び出しスタックの一覧を表示 info Thread 存在しているスレッドの一覧を表示 異なるアドレスにおける処理継続 以下のコマンドを使用することで、ユーザが選択したアドレスにおいて実行を継続させることができます jump linespec linespecで指定される行において、実行を再開 jump *address addressで指定されるアドレスにある命令から、実行を再開 アドレスが分かっている場合のメモリリーク出力 xはhexの意味です。 (gdb) p (char*)
xcodeでプログラムを書いていると、メモリ管理なぞ忘却のかなたなので、リークしていたり、解放済みのメモリにアクセスしていたりと、問題が多々ある。 xcodeでのデバッグコンソールは、基本的にgdbなので、VisualStudioで開発するようには簡単に問題箇所を見つけ出すことができない。 ポインタに対する不正なアクセスは、大体のところ プログラムはシグナルを受信しました:“EXC_BAD_ACCESS” というメッセージが出るだけで、「どこでそれが起こったのか」についての何の手がかりも与えられない。Breakすらしない。 さすがにこんな状況でデバッグしている人はいないだろうと、検索をかけてみると、 DebuggingAutorelease - CocoaDev NSZombieEnabled - CocoaDev あたりが役に立ちそうである。 とりあえず色々試行錯誤してみたが、NSZom
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く