だいぶ乗り遅れましたが、『第3回 potatotips』の資料を一通り拝見しました。
どのTipsも勉強になったのですが、とくにメモっておきたいと思ったことをメモっておきます。
Provisioning Profileファイルを活用してみる!Tips
- Provisioning Profileは、暗号化されたプロパティリスト
- application-identifierとか、ProvisionedDevicesといったプロパティが入ってる
- コマンドラインで復号できる
$security cms -D -i [PROVISIONING_PROFILE]
iOS 7 なMessage Appの作り方
「もにょもにょ動く」というのが最初よくわからなかったのですが、iOS7のメッセージアプリを改めて見てみると、確かにもにょもにょしてました。
で、UIDynamicAnimator がもともと UICollectionView のレイアウトをどうのこうのできるようにつくられていて、それを使って実現できるようです。
詳細な実装方法については、参考ページとして挙げられている、 "UICollectionView + UIKit Dynamics" が詳しくてわかりやすそうです。
# これ、知らずに実装するとなると、いろいろ自前でやることになって大変そうなので、知っておいてよかったです。
やはりお前らのiOS7対応は間違っている
「NavigationBarへself.viewがもぐりこむ」問題、ネット上にはいろんな玉石混淆の話が上がりすぎてて、いつしか情報を追わなくなってしまいました。
一方このスライドは諸々整理して解説されているので、本質的解決になりそう。今度この問題にあたったらこれを見ることにします。
死んだオブジェクトの生まれ故郷を探す
- "Malloc Stack" と "Enable Zombie Objects" にチェック *1
- -> malloc/freeのログが残るようになる
- ログを見るコマンド
$ malloc_history [PID]
- Instruments の "Zombies" 使えばコマンドたたかなくても同じことができる
*1:これ読んでふと気付いたけど、最近あまりZombieオブジェクトとか意識することがなくなった(もうずっとEnable Zombie Objectsにチェック入れてない)。メモリ管理が楽になったからか、デバッグの勘が以前より働くようになったからか。。今度EXC_BAD_ACCESS出たら自分がどういう風にデバッグしてるのか意識してみる。