Objective-C

Fabricに取り込まれたCrashlyticsを使ってみる

iOSアプリの開発をしているとクラッシュレポートが欲しいときがある. 「バグあるんだけど」と言われてもシミュレータでも自分の端末でも再現できないし,それどころか報告者の端末でも再現性が低かったりすることがある. というか,報告してくれるだけマシ…

RNCryptorをswiftで使う

自分でiOSアプリを作り,バックグラウンドのサーバーも自分で実装していたりすると,通信時に暗号化した文字列を送りたかったりする場合が多々あります. もちろんSSL通信にしたりすることも重要なんですが,iPhoneの通信ログ自体はPCにつなぐと割りと簡単に…

UITableViewCellをカスタマイズしたときのheight計算

iOSでオリジナルのUITableViewCellを使っていると,やがてセルごとに高さを変えたくなる事案が発生します. UITableViewControllerにはheightForRowAtIndexというメソッドが用意されており,これをオーバーライドすることでセルごとの高さを調節できます. …

iOS8のUILocalNotificationに関して修正

以前iOS8でのUILocalNotificationに関する記事を書いたかと思いますが,この記事に修正点があったので再度話題にします.iOS8でUILocalNotificationの通知を受け取る - PartyIX iOS8でUILocalNotificationの通知を受け取る - PartyIX iOS8から,LocalNotific…

NSUserDefaultsのためにNSDictionaryの中身を綺麗にしたい

iOSのアプリを作っていると,アプリのデータを保存するときにNSUserDefaultsを使うことがあると思う.ローカルに保存するし,DBを導入するほどではないときに非常に便利に使わせてもらっている. しかし,NSUserDefaultsには少し制限があって,たとえば保存…

【swift】非同期処理後のクロージャの処理が遅いとき

ObjectiveCで用意されていた関数や,ObjectiveC関連の情報をあさっていると,頻繁にクロージャに出くわす. [hogeSuccess:^{ hogehoge; }]; よく,クロージャとかブロック構文とか呼ばれるヤツだ. ^自体はブロックと呼ばれるもので,これを関数の引数に渡し…

UserDefinedでDebugとReleseによる環境変数使い分け

VisualStudioだと,よくdebugモードとreleaseモードの使い分けというのをやっていた. なにしろライブラリによっては,debugとreleaseでインクルードするヘッダファイルが違う,なんて酔狂なものまであったりするので,その辺の設定には嫌でも慣れてくる.だ…

cocoapodsの素晴らしさに感動した

最近iPhoneアプリが作りたいと思ってしまったので,うっかりXcodeでObjective-Cをカタカタ書いたりするのが楽しくなってしまった. むかーし,専攻科の実験でXcodeを使った開発をちょっとやったことはあったのだけれど. その頃はまだVisualStudio一辺倒で,…