きりかノート 3冊め

おあそびプログラミング

第55回 Cocoa勉強会に行ってきた(10/13)

会場は今回も新宿伊藤ビルの貸し会議室。ココがホームになりつつあるような。

以下発表など。

ActionScriptでのネイティブとの連携について (iOS)

Flashマルチプラットフォームアプリの開発ツール・環境へ移行しつつある。

たとえば、iOSでマナーモード対応するために使ったりした。

手順は次のとおり。

  1. Adobe Air SDKをダウンロード
  2. 4つの関数が必須。initializer/finalizerなど。
  3. Xcodeコンパイルして.aアーカイブを生成→flash開発環境に持ってく
  4. ActionScript側で呼び出しのコードを記述
  5. .swcを含めパッケージ形式にまとめる
  6. .aneをシェルスクリプトから生成(adtコマンドを使用)

シミュレータ上では動かないのでデバッグは実機で。

その他にStage3DとStage VideoをiPhone 4S上でシューティングゲームでのデモ。ちゃんとした応答速度で動いてたと思います。

ViewControllerのコンテナ機能 (iOS)

自前でビューを制御する方法とその試行結果。ビューコントローラの機能について。

  • ナビゲーションコントローラとビューコントローラの対比
  • iOSMacのレスポンダチェーンの比較
    • iOSはビューコントローラがチェーンに含まれる

EventKitでリマインダーの中身を探る (Mac, iOS)

Mountain Lionで導入されたリマインダー(Reminders.app)のデータへのEventKitフレームワークを利用してのアクセスについて。

  • リマインダのエントリはカレンダー(EKCalendarItem)のサブクラス
  • 時刻が必須なのは使いづらいのではないか?
    • プログラム的には「終日」 で作成できる
  • 優先度がAPIにない
    • 内部的にはpriorityNumberというプロパティがある。
    • 高=1, 中=5, 低=9

質疑応答など。

  • [Q]メモ(Notes.app)は?
  • [A]元はメール.appの一部でiCalではないのでEventKitではアクセスできない。IMAPでアクセスできるので、そちらからのアプローチがよいのでは。
  • [Q]EventKitで作成したエントリはiCould対応?
  • [A]作成後はリマインダー上で作成したものと変わりないので勝手に対応となる。

MacRetina Display対応 (Mac)

MacアプリでRetina対応する場合のリソースについて。

  • 1024x1024のアプリケーションアイコン、ドキュメントファイルアイコン
  • 高解像度の画像リソース @2x

作成するアイコンのサイズパターン。

  • 最小限 - 1024のみ
  • 16, 32, 128, 256, 512 + 1024の6パターン。OmniGroupはこれを採用してる。
  • 最大 - 10パターン。Appleのはさすがに用意してる。

アプリケーションIcon Composerがなくなってしまったが、コマンドiconutilが使える。

   $ iconutil -c icns <iconset filename>

確認にはFinderのCover Flowがサイズ別にちゃんと表示できるか見られるので便利。

PDFでリソースを作った場合、ボタンの種類によってサイズの処理が異なる現象に遭遇した。

その他の話題

  • 専門学校での授業内容や受講者の傾向について
  • 古いMac OS X(10.1とか)をサポートするアプリ
    • 実機で確認!
  • リマインダー/ToDo管理になに使ってる?
  • Mac/iOSの各バージョンのシェアの経緯
    • NetApplications社の調査結果を継続的に観測
    • 今はMacは10.6と10.7が3割強で同じくらい。もう少ししたら10.8も含めみつどもえになりそう。
    • iOS内のバージョン別、モバイルでバイスのシェア
      • 資料はSafariのバージョンなのでこれをiOSのバージョンに変換する
      • 旧OSのサポート停止やAndroid非対応の説得材料に便利?

次回の予定

11月下旬に千葉県の松戸で開催の予定です。