昨日IT業界やガジェット好きを賑わせたIIJmioのデータ通信容量増速。個人的にも大変なインパクトで、思わずお昼ご飯食べながらブログ更新するほどの勢いでした。 【追記あり】IIJmioが月額3000円以下で容量7GBのSIMサービス投入。月額1000円以下でも2GBの大盤振る舞い – カイ士伝 https://bloggingfrom.tv/wp/2014/09/18/13370 その後も、あまりに興味津々でいろいろ調べてたら、増量以外でも魅力的なポイントがいろいろと見えてきました。せっかくなのでこのタイミングでIIJmioのいいところまとめておきたいと思います。 月額972円で2GB、月額2,764.8円で7GB使える(2014年10月1日から) その間に月額1,641.6円で4GBというプランもありますがいずれもひたすら安い。NTTドコモの「Xiパケ・ホーダイ」が7GB上限のオプション
関数 第一級オブジェクト Swiftの関数は第一級オブジェクトとして扱う事ができます。つまり、関数を「一つのオブジェクト」として扱えるということです。そのため、関数を変数に格納したり引数で関数をやりとりするようなことが可能になります。 関数の定義 関数定義の文法 関数を定義するにはfuncキーワードを使います。Javaのメソッドと同じように引数が必要ない場合は引数を記述しません。また、Javaのメソッドで値を返さない場合は返り値の型をvoidとしていましたが、関数が値を返さない場合は「->返り値の型」を記述しません。 Swift Code var name = "Taro" // 最も単純な関数 func rename() { name = "Jiro" } // 関数を呼び出します rename() println(name) // Jiro 引数も返り値もない単純な関数を定義してみまし
[iOS 8] 新しいフォーマッタ NSEnergyFormatter / NSMassFormatter / NSLengthFormatter 新しいフォーマッタ NSFormatter はある値を文字列にフォーマットするときに使うクラスです。これまでは NSDateFormatter や NSNumberFormatter などがありましたが、iOS 8 から NSEnergyFormatter、NSMassFormatter、NSLengthFormatter が新しく追加されました。 NSEnergyFormatter NSEnergyFormatter はエネルギーの値を文字列に変換するためのフォーマッタです。カロリーやジュールなどの値を変換することができます。 let energyFormatter = NSEnergyFormatter() energyFormatter.
[iOS 8] NS_DESIGNATED_INITIALIZER, NS_PROTOCOL_REQUIRES_EXPLICIT_IMPLEMENTATIONマクロを使う 指定イニシャライザとプロトコル向けのマクロ iOS 8 では新たに次の2つのマクロもNSObjCRuntime.hに加わっています。 #ifndef NS_DESIGNATED_INITIALIZER #if __has_attribute(objc_designated_initializer) #define NS_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) #else #define NS_DESIGNATED_INITIALIZER #endif #endif #ifndef NS_PROTOCOL_REQUIRES_EX
Iterator Iteratorとは 英単語Iterateには以下のような意味があります。 繰り返す 反復する Iteratorは日本語で反復子などとも呼ばれます。 Iteratorパターンは、要素の集まりを保有するオブジェクトの各要素に順番にアクセスする方法を提供するためのパターンです。 クラス図 ポイント Aggregate, Iteratorクラスは共に抽象クラス 具象クラスはそれぞれConcreteAggregate, ConcreteIteratorクラス AggregateクラスがiteratorメソッドでIteratorクラスのインスタンスを生成する ※ Aggregate = 集合体 / 集団, Concrete = 具体化する / 実体のある サンプルコード Aggregate class Aggregate { func iterator() -> Iterator
バージョンの判定 iOS でバージョン判定するには今までですと [[UIDevice currentDevice] systemVersion] を使ったり NSFoundationVersionNumber を使ったりしていましたが、iOS 8 の Foundation フレームワークでは NSProcessInfo で簡単に判別できるメソッドが追加されました。次のように記述します。 let systemVersion = NSOperatingSystemVersion(majorVersion: 8, minorVersion: 1, patchVersion: 0) NSProcessInfo().isOperatingSystemAtLeastVersion(systemVersion) // 8.0.0 で実行している場合はfalse 便利なんですが、当然 iOS 7 以前では
歩数計機能 iOS 8 の Core Motion フレームワークに CMPedometer という歩数関連のデータを取得することができる API が追加されました。このクラスを使うと歩数/走行距離/昇り降りしたフロアの数などを計測できたり、過去に遡ってデータを参照できたりします。 なお、iOS 7 で追加された CMStepCounter がありますが、これの機能増強版と言えます。CMStepCounter は Deprecated になりました。短命でしたね。。 NS_CLASS_DEPRECATED_IOS(7_0,8_0,"Use CMPedometer instead") @interface CMStepCounter : NSObject この API は iPhone 5s に搭載されているモーション・コプロセッサー「M7」以降を利用して歩数を計測するので、電池消費量がかな
HealthKitを使う HealthKitを使ったアプリの実装方法について紹介します。 HealthKitではiOS 8ユーザーの健康に関する情報を、アプリ間を跨いだ共有の保存領域(HealthStore)で永続化することができます。 あらかじめHealthKitで指定された値を各々のアプリケーションから永続化することで、プリインストールされている「ヘルスケア」から一括して参照することが出来ます。 HealthKitを実機で使う準備 Xcodeで作成したプロジェクトのHealthKitを有効にする必要があります。有効化はCapabilitiesのタブから行えます。 [Project] → [TARGETS (AppID)] → [Capabilities] → [HealthKit] の順に選択して有効化して下さい。 HealthKitを使ったアプリをリリースする場合、iOS Dev C
はじめに 今回は、iOS 8の新機能の中でも注目度の高い「ヘルスケア」の紹介をさせていただきます。AppleのiOS 8のサイトには以下のように書かれています。 健康。あなたの健康&フィットネス情報の、全く新しい使い方。 あたらしい健康アプリケーションは、あなたの健康とフィットネスに関するデータを、ダッシュボードに読みやすく表示します。デベロッパのみなさんにはHealthKitという新しいツールを用意しました。これにより、すべての素晴らしい健康アプリケーションやフィットネスプリケーションが連携できるようになり、あなたをさらにしっかりサポートします。健康にあらたな革命が始まります。 ヘルスケアアプリの機能 ヘルスケアには以下の4つの機能が搭載されています ダッシュボード ダッシュボードでは、「健康データ」で記録されたデータの表示を行うことができます。以下の画面で、ダッシュボードに表示をONに
GCDとNSOperationのXNUカーネル優先度 iOSで並列処理を行う為の代表的なAPIとしてはGCD(GrandCentralDispatch)とNSOperationの2つがあります。 どちらのAPIも以下のような方法を通じてOSレベルでのスレッド優先度を決定できました。 GCD dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0); dispatch_async(queue, ^{ //タスク }); NSOperation @interface MYOperation : NSOperation @end @implementation MYOperation - (void)main { @try { @autoreleasepool { //タスク } } @
iPhone 5s や iPhone 6 などでも行いたい場合、画面構成を少し調整すれば同様に2画面表示にすることが可能です。 Split View Controller を2画面構成にする Split View Controller を2画面構成にするには、横表示(Landscape)で Regular と判定されれば良いわけです。iPhone 5s / iPhone 6 は Landscape の Width は Compact なので、ここを書き換える必要があります。そのため、Split View Controller の親の View Controller を作成し、その親クラスで setOverrideTraitCollection:forChildViewController: を呼んであげる必要があります。 このメソッドは子の View Controller の Trait
CloudKit とは CloudKit は OS X アプリや iOS アプリで利用できる BaaS *1 です。 ユーザーの AppleID を利用して、Apple のサーバー上にあるプライベートまたはパブリックなデータベースやストレージに、データやファイルを格納することができます。格納する処理は CloudKit の API を呼び出すだけで良いので、サーバーサイドのロジックを記述する必要はありません。どなたでも手軽に利用することができます。 利用可能な機能 認証 アセットストレージ データベース 検索 通知 利用可能な容量 1PBのアセット 10TBデータベース 1日5TBまでのアセット転送 1日50GBまでのデータベース転送 利用料金 CloudKit は無料で使いはじめることができます。詳細は発表されていませんが、制限はあるそうなので完全に無料ではなさそうです。 CloudKi
次に Local Notification を作成し、通知します。UILocalNotification を呼び出すときはこれまでと基本的に変わりません。UILocalNotification#category に先ほど登録した UIMutableUserNotificationCategory#identifier と同じ文字列をセットします。 var notification = UILocalNotification() notification.fireDate = NSDate() notification.timeZone = NSTimeZone.defaultTimeZone() notification.alertBody = "Notification"; notification.alertAction = "Open"; notification.applicati
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く