統計情報(30日間)


最新情報をツイート


人気の投稿

iOS5 の顔検出を使ってメガネをかける

このエントリーをはてなブックマークに追加

CIDetector を使ってカメラから取り込んだ画像にメガネを合成する。こんな感じ。


面白い。


Mobile Safari でコンパスを使う

このエントリーをはてなブックマークに追加

コンパスの値をリアルタイムで取得する機能を使って、iPhone/iPadの方角に合わせた画像を表示する「パノラマビュー」アプリを作る記事。HTML/JavaScriptで記述し JQuery Mobileも使う。最後は PhoneGapでアプリ化する。
Read more: http://ascii.jp/elem/000/000/662/662804/#ixzz1jy04BZVJ


QA1176 - Remote Virtual Interface を使ったパケットトレース

このエントリーをはてなブックマークに追加


「QA1176 Getting a Packet Trace」が更新されていた。追加内容は iOS 5 から利用可能になった Remote Virtual Interface (RVI) を使ったパケットのトレース方法。RVIを使うとiPhoneの通信を Mac OS X 上のツール(tcpdumpなど)でパケットキャプチャすることができる。

手順:
1. iOS機器を Macに接続
2. Mac上で iOSのネットワークを示す仮想ネットワークインターフェイスを作成する(RVI)
3. パケットキャプチャツールで 2のインターフェイスを監視する

RVI設定の為に rvictlというコマンドが Xcode 4.2 から付属している。
以下、引用
$ # First get the current list of interfaces.
$ ifconfig -l
lo0 gif0 stf0 en0 en1 p2p0 fw0 ppp0 utun0
$ # Then run the tool with the UDID of the device.
$ rvictl -s 74bd53c647548234ddcef0ee3abee616005051ed ← RVI作成

Starting device 74bd53c647548234ddcef0ee3abee616005051ed [SUCCEEDED]

$ # Get the list of interfaces again, and you can see the new virtual
$ # network interface, rvi0, added by the previous command.
$ ifconfig -l
lo0 gif0 stf0 en0 en1 p2p0 fw0 ppp0 utun0 rvi0

$ sudo tcpdump -i rvi0 -n ← キャプチャ開始
tcpdump: WARNING: rvi0: That device doesn't support promiscuous mode
(BIOCPROMISC: Operation not supported on socket)
tcpdump: WARNING: rvi0: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on rvi0, link-type RAW (Raw IP), capture size 65535 bytes

$ rvictl -x 74bd53c647548234ddcef0ee3abee616005051ed ← 停止

Stopping device 74bd53c647548234ddcef0ee3abee616005051ed [SUCCEEDED]

QA1176 は RVIの他、Mac OS X で利用可能なキャプチャツールの紹介やネットワークデバッグの Tipsなど様々な情報が紹介されている。

プロジェクトを ARCに対応させるには?

このエントリーをはてなブックマークに追加

ARC への移行方法に着目した記事。マイグレーションの具体的な手順、適用される変更、プリチェックのエラー例とその対処方法などが図入りでわかりやすく解説されている。参考になる。


[本] 詳解 iOS 5 プログラミング

このエントリーをはてなブックマークに追加

ARC, Blocks, GCD はもちろん、Storyboard, iCloud, Core Image, GLKit, ゲーム対戦まで iOS5の話題をすべて網羅。現段階で日本語で手に入る最も新しくて詳しい iOS5 プログラミングの本。


目次(抜粋)
第1章 iOS 5 ガイダンス
1-1 iOS 5 で進化した iOS
1-2 ユーザ向け新機能のハイライト
1-3 開発者向け新機能のハイライト

第2章 iOS 5 時代の Objective-C
2-1 数値型とデータ型
2-2 コレクションクラス
2-3 文字列の処理
2-4 ファイルパスと URL の操作
2-5 日付・時刻の操作
2-6 高速列挙
2-7 Predicate プログラミング
2-8 Blocks 記法とブロック
2-9 GCD によるマルチコア対応
2-10 ARC によるメモリ管理

第3章 iOS 5 の開発環境
3-1 Xcode 4 ガイド
3-2 iOS シミュレータの新機能
3-3 Instruments の新機能

第4章 ユーザインタフェースの開発
4-1 はじめに
4-2 Storyboard によるインタフェース開発
4-3 アピアランスによる見た目のカスタマイズ
4-4 UIPageViewController によるページめくりのサポート
4-5 アラートビューによるテキスト入力のサポート
4-6 静的なテーブルビュー
4-7 UIImage の使い方
4-8 UIReferenceLibraryViewController による辞書検索
4-9 NSLinguisticTagger によるトークン分解
4-10 テーブルビューのセルを対象としたメニュー表示
4-11 UIKit のクラス階層について
4-12 スクリーンの明るさ調整

第5章 iCloud 対応のアプリケーション開発
5-1 iCloud と iOS のファイル管理
5-2 iCloud ストレージの仕組みと API
5-3 Xcode プロジェクトで iCloud 対応の設定を行う
5-4 iCloud が利用可能であることを確認する
5-5 ファイルとディレクトリを iCloud で管理する
5-6 ドキュメント・ベースのアプリで iCloud に対応する
5-7 iCloud の Key-Value ストレージの利用

第6章 iOS 5 のグラフィックス・プログラミング
6-1 OpenGL ES 2.0 プログラミング
6-2 Core Image プログラミング
6-3 Core Animation のパーティクル・サポート
6-4 AirPlay と外部ディスプレイのサポート
6-5 ゲーム対戦のサポート

第7章 iOS 5 におけるネットワークとデバイスのサポート



ぜひ手に入れたい。

- - -
表紙が出ていた。

UIViewController のコンテナを使ったサンプル

このエントリーをはてなブックマークに追加




サンプルを実行すると path2のようなオーバーラップしたビューが表示される。

UIViewController のコンテナ API利用の参考になる。

iOS 5 から UIViewController は子UIViewController を持つコンテナになれる

このエントリーをはてなブックマークに追加

これはいい。




付属のサンプルプログラムより。
左右の Viewがそれぞれ画面全体のUIViewControllerとは別々の UIViewController に紐づいていて、さらに他の UIViewController へトランジション効果をかけながら遷移することができる。

UIViewController のりファンレスを見ると確かにコンテンナ向けの API が追加されている。
UIViewController Class Reference
の "Implementing a Container View Controller" のところ。追加 API は:
addChildViewController:
removeFromParentViewController
transitionFromViewController:toViewController:duration:options:animations:completion:
willMoveToParentViewController:
didMoveToParentViewController:

これらを使うとカスタムなナビゲーションやタブビューが作り易くなる。特に、UIViewControllerの仕組みがそのまま使えるとビューのload/unloadをフレームワーク任せにできるのでメモリ効率の良い実装が楽にできるのがうれしい。今作ってるアプリでは自前で似た機能を作っていたので複雑な気持ちもあるが。。

関連情報

iOS 5 でUIActivityIndicatorView の任意サイズの指定方法が変わった

このエントリーをはてなブックマークに追加

こんな感じスケーリングする必要があるらしい。

[indicator.layer setValue:[NSNumber numberWithFloat:1.39f]
     forKeyPath:@"transform.scale"]; 

UINavigationBar の背景画像のカスタマイズ(iOS 4 と 5の違い)

このエントリーをはてなブックマークに追加

UINavigationBar の背景画像のカスタマイズについて iOS 4 と 5のそれぞれの方法についての解説。iOS 5 では -[UINavigationBar setBackroundImage:forBarMetrics] が使える。


上記記事では iOS 4 では drawRect: をオーバーライドしているが他にも方法がある。
UINavigationBar の背景を画像にする « runLoop run];
UIImageViewを作りそれを UINavigationBarへ insertSubview:atIndex: で追加する。

(追記)こちらにも 4 と 5 の設定方法が解説されていた。

ARC の振る舞い

このエントリーをはてなブックマークに追加

ARCによる dealloc 呼び出しのタイミングや、例外発生時の挙動など。


具体的な動作はブログ内のリンク(gist)先に載っている。

Storyboard チュートリアルをいくつか

このエントリーをはてなブックマークに追加

カスタムタブバーの実装に Storyboard を使う。




こんな感じで配線できる。





CoreBluetooth API を使って体温計に接続するサンプル / iOS5でも Bluetooth 4.0 Low energy devices に対応

このエントリーをはてなブックマークに追加

Mac OS X Developer Library のサンプルに Core Bluetooth API を使ったサンプルが出ていた。Bluetooh 4.0 からサポートされた Low energy に対応した体温計に接続する。


ビルドすると体温計の画像が出てきて Bluetooth に対応している体温計を探し始める(手元に無いので実際の動作は試せない〜見つからない旨表示される)

"Bluetooth Helth Thermometer" で画像検索すると結構ヒットする。

こんなニュースもちらほら。
Bluetooth v4.0 搭載の体温計と心拍計がまもなく登場 - インターネットコム






上記サイトより転載
Appleは、iOSデバイスの普及率は爆発的な勢いであるものの、MFI Program取得製品の伸びが鈍化しているとし、AirPlay/Bluetooth/Wi-Fiなどのワイヤレス接続を利用する新しい認証チップを提供する予定であると説明した模様です。

iPhone 4SのBluetooth 4.0+HSについては、Low energyでバッテリーライフが伸びることや、ヘルスケア、
ゲームなど幅広い分野で利用が見込まれると説明

Bluetooth 4.0 / Low Energey の話題。




で、iOS では Bluetooth の対応状況はどうか?
 ↓
iOS 5から Bluetooth 4.0 low energy devices に対応済



iOS デバイスの方が Macよりも常時使われることを考えると今後は iPhone/iPadとの連携の方が進むと思われる。楽しみ。

AURemoteIO を使ったサンプル

このエントリーをはてなブックマークに追加

AURemoteIO を使った音声入力をグラフ化するサンプルが iOS Developer Library に出ていた。

立ち上げるとオシロスコープ(のようなもの)が現れる。音がするとグラフが反応する。これはシミュレータでもちゃんと動く。


FFT(高速フーリエ変換)による周波数解析。

snogram(音響スペクトログラム?)


iOS5 からテーブルセルのデフォルト背景色が変わった

このエントリーをはてなブックマークに追加


以下、引用。
UITableViewCellをinitWithStyle:で作成すると、iOS 4までは背景が白(R:1.0, G:1.0, B:1.0)のセルが作成されていました。 ところが! iOS 5では、なんと真っ白ではないのです。背景色は(R:0.97, G:0.97, B:0.97)となっていました。びっくり。
うーむ。気をつけねば。

[本] iOS/OS Xのメモリ管理とマルチスレッド

このエントリーをはてなブックマークに追加

@splhack さん執筆の本の自身による紹介。


iOSプログラミング 三種の神器こと「ARC」「Blocks」「GCD」について実装まで踏み込んで詳しく解説されている。

電子書籍版も用意されている。



Amazonでの販売。

- - - - -
機会が無くてまだ手にいれていない。
今週買いに行きたい。