Apple WWDC 2011まとめ
日程:June 6-10(日本時間6/7~) 基調講演は例年どおりなら6/7 AM 2:00ごろ?ジョブス氏くるのかな。 今回のポイントは、 ・Mac OSX Lionの正式リリース? ・iPhone 5?iPhone 4S?とiOS5?の発表があるか? ・iTunesのストリーミング配信サービス開始?
日程:June 6-10(日本時間6/7~) 基調講演は例年どおりなら6/7 AM 2:00ごろ?ジョブス氏くるのかな。 今回のポイントは、 ・Mac OSX Lionの正式リリース? ・iPhone 5?iPhone 4S?とiOS5?の発表があるか? ・iTunesのストリーミング配信サービス開始?
Notificationとは Apple Push Notification(Push通知)とは、iOS上で非アクティブなアプリの状態をユーザに通知するための仕組み。アラート通知を通じてアプリはユーザにアプリの起動を促したり、バッジ(アプリアイコンに付与される数字)の表示、サウンド再生などを行う事ができる。 Notificationの種類 iOSで利用できる通知の仕組みは2種類。 (1)Push Notification(プッシュ通知、リモート通知):サーバからユーザのデバイスに通知を行える。プロバイダ(Provider)と呼ばれるサーバ側の仕組みをサービス提供者が構築し、AppleのApple Push Notification Service(APNs)と通信する必要がある。 providerとAPNsとの通信については別掲する。 (2)Local Notification(ローカル通知):当該アプリが動作しているデバイスに限って通知を行える。 必要iOSバージョン (1)Push Notification:iOS 3.0以降 (2)Local Notification:iOS 4.0以降 通知できるデータ (1)メッセージ (2)バッジ (3)サウンド:アプリに予め同梱されている必要があり、指定はファイル名で行う。 (4)その他カスタムデータ:プッシュ通知が届くことは保証されていないので、重要なデータをここに乗せるべきではない。 ただし、メッセージ、バッジ、サウンドはユーザ設定によってオフにできるので必ず通知されるわけではない。また、リモート通知で送信できるデータは256byte以内に制限されていることに注意。 その他 いずれも、通知を受けるためにアプリが起動している必要はない。アプリが起動しているときにも通知を受けたことを知る事は可能。通知を受けるときのパターンは以下の4パターン。それぞれ、内部的にコールされるメソッドとデータ、受取り方が異なるので注意。 ・アプリが非アクティブで、ローカル通知を受ける…
Xcode 4にアップデートしたときに、古いarm6用にビルドされたライブラリのリンクでエラーになる場合の解決方法。 “Undefined Symbols for architecture armv7” みたいな感じ。 詳しくはみてないけどどうもXcode 4のビルド設定のデフォルトが変わった模様。 これは、 ビルド設定のアーキテクチャにarmv6 と armv7のキーワードがあることが原因っぽい。 ⇒Target > Valid Architectures をダブルクリックして、armv7のエントリを削除 そうするとビルドに成功します。ただしiPhone 3GS以降はarmv7なので、当然armv7でビルドできるならそちらのほうが良いはず。
Info.plistの特定の項目の値を参照する場合は:
Event Kit Programming Guideからのメモ。 プログラムからEKEventを作成するときに設定できる項目は以下。 ・タイトル ・開始および終了日時 ・カレンダー:新規作成は不可で、既存のもののみ。 カレンダーはEKEventStore.calendarsでEKCalendarのNSArrayが取得できる。もしくはEKEventStoreインスタンスのdefaultCalendarForNewEnents。 ・繰り返し設定。EKRecurrenceRule。 ・アラーム:EKEventにaddAlarm:(EKAlarm *)alarmできる。 以上を設定した上で、EventStoreのsaveEvent:span:errorインスタンスメソッドを呼んであげる。
Xcode 4で既存のフレームワークを追加する方法です。 1.Project Navigatorを開く 2.ターゲットのアイコンを選択 そうするとSummary/Info/Build Settings/Buid Phases/Build Rulesというタブがエディタエリアに表示される。 3.”Build Phases”を選択 4.”Link Binary With Libraries”を選択 5.”+”を選択 6.ダイアログでフレームワークの一覧が表示される。ここから選択して”Add” 7.Project Navigatorにフレームワークが追加されます。 ちなみにAdd Files…でフレームワークのフォルダを直接指定しても追加されるみたい。