その後のその後

iOSエンジニア 堤 修一のブログ github.com/shu223

iOS

【iOS8】いますぐ試せる HealthKit & HomeKit

iOS 8 の新機能の中でも個人的に気になったのが HomeKit と HealthKit。でも何ができるのか、実際どうやって使うのか、どこまでAPIが開発者に公開されてるのか、発表だけ聞いてもいまいちピンと来ません。 実際に自分で試してみるのが一番です。 そんなわけ…

【書評】中級者向けのUIKit解説本『UIKit徹底解説』

インプレスジャパン様より *1 献本いただきました。 UIKit徹底解説 iOSユーザーインターフェイスの開発posted with amazlet at 14.06.21西方 夏子 インプレスジャパン 売り上げランキング: 8,651Amazon.co.jpで詳細を見る 著者の西方夏子さんは、『上を目指…

WWDC2014の旅 15泊17日を振り返る

まだサンフランシスコにいるのですが、もう帰る以外の予定はないので、遅ればせながら「WWDC2014の旅」を振り返ってみます。 旅程 シリコンバレーを訪れるのは、昨年9月に すぐにまた戻るつもりで帰国 して以来、結局一度も戻らなかったので実に 9ヵ月ぶり。…

NDAについて、WWDCでAppleの中の人に聞いてみました

今年のWWDCでは例年に比べ Apple自身が公開してくれている情報 が多く、実質的にNDAが緩くなったといえます。 Appleが公開しているサンプルコードについてWWDCのラボで聞いてみた 際に、「今教えてくれたこと、ブログとかに書いていいんでしょうか?」と質問…

【iOS8】HealthKit の Apple 公式サンプルを実機で動作させようとすると出るエラーの対処方法

アップルが公開している HealthKit のサンプル をビルドして実機にインストールしようとすると、 The excutable was signed with invalid entitlements. というエラーが出てアプリが起動しません(2014年6月10日現在)。 この対処方法について、WWDCのラボで…

【iOS8】App Extension の実装方法 その1:Action

App Extension とは? App Extension (Extensions) は、iOS 8 から導入される、新しいアプリ間連携のしくみです。 iOS では、以下の 6種類の Extension point *1を利用することができます。 Today Share Action Photo Editing Storage Provider Custom keybo…

開発者向け公開情報から見る iOS 8 の細かい新機能8つ

今まさに開催中のWWDC2014のキーノートでは、Swift、HealthKit、HomeKit、Metal、Extensions と、iOS 8 の言語レベル、新規フレームワークレベルでの大きな新機能について発表されましたが、従来フレームワークにもいろいろと有用な機能が追加されています。…

BLEデバイスと連携するiOSアプリ開発での「落とし穴」についてWWDCラボで聞いてみました

Core Bluetooth / Bluetooth Low Energy で iOS アプリと連携する新規ハードウェアを開発したことのある人にとってはあるあるな話だと思うのですが、開発途中でペリフェラル側(外部デバイス)で GATT の内容を変更すると、iPhone の Settings から Bluetoot…

Objective-C で書いたアプリを Swift で書き換える5ステップ

iBookでSwiftの解説本出ましたが、言語自体にはそれほど興味がないので、実践的なところとして、手始めに「Objective-Cで書いた既存アプリをSwiftで書き換える」ところからやってみました。 アプリ全体、となると壮大なテーマになってしまうので、まずは App…

WWDC 2014 いまさら予習(と予想)

WWDC に参加するため、約1週間前からサンフランシスコに来ております。 (5/28、絶賛準備中の図) 初参加なのではりきって早めに現地入りしたわけですが、この1週間で気付いたこと。 WWDCで現地に来ると人に会う用事が多かったりネット的に不自由だったりで…

Core Bluetooth のラッパーライブラリ『LGBluetooth』の使い方

Core Bluetooth はそれほど規模の大きいフレームワークではないので、最初は全容を把握するためにライブラリに頼らずそのまま使ってみるのがおすすめなのですが、ペリフェラルのスキャンやコネクト時のタイムアウト処理等、結局毎回書く必要があって面倒だな…

Audio Unit 再入門

Core Audio においてもっとも低レベルに位置する Audio Unit。リアルタイムで高度なオーディオ波形処理を行いたい場合や複雑なルーティングによるオーディオ処理を実現したい場合、これを使用する必要が出てきます。 が、このフレームワーク、個人的には使用…

Facebook Paper のアニメーションエンジン「pop」のソースコードを読んでみる

先日公開されたFacebookのpop、アニメーションライブラリですよとリリース前から言われてたものの、popについて語られるときは大抵「Paperアプリのテクノロジーをオープンソース化」という枕詞がつくので、Paper風UIコンポーネント(ジェスチャーでヌルヌル…

Xcodeの「全機能」を網羅した全752ページの超大作『Xcode 5 徹底解説』書評

先日 yidev 恵比寿勉強会 に行った際、隣の席にいらっしゃった @es_kumagai さんより、すごいプレゼントをいただきました。 この本を手に取ってまず驚くのが、その 752ページ(!!!!) という超特大ボリュームです。世の中に「徹底解説」を謳う解説本は数あれ…

iOSエンジニア in ハードウェア・プロジェクト

本日開催された「yidev 恵比寿勉強会」にて、 ハードまわり(メカや電子回路)の知識やスキルを持たない iOS エンジニアが、ハードウェア関連プロジェクトにどのような立ち位置で関わるのか、という内容の発表をしました。 一般論ではなく、あくまで僕が入っ…

独立して最初の3ヵ月間にやったお仕事のまとめ

フリーランスのiOSエンジニアになって早3ヵ月経ちました。個人になると自らアピールしていかないと世の中的には何もしてないことになってしまうので、この3ヶ月間(2月〜4月)にやったお仕事について書いておこうと思います。 (※まだ4月の途中なので、追記…

【改訂版】BLE112 / 113 の開発環境を Mac に構築する

iOSデバイス同士とか、既製プロダクトと BLE で通信する場合は Core Bluetooth フレームワークが扱えれば問題ないのですが、新規でウェアラブルデバイスや、iOSと連携する何らかのガジェットとかを開発しようとすると、プロジェクト内の立場上は「iOS エンジ…

BLE112 / 113 の開発環境を Mac に構築する

【2014.4.21追記】本記事は、(記事内にもある通り)不要な手順や推奨できない手順が混じっているので、改めて下記URLに書き直しました。 【改訂版】BLE112 / 113 の開発環境を Mac に構築する 以下は、記録として残しておきますが、正しい手順としては上の…

iOSのカスタム画面遷移64種類を試せるサンプルコードを公開しました

リポジトリだけつくって、ずっと放置してた 「iOS のカスタム画面遷移ギャラリーアプリ」 にやっと手をつけて、64種類 を試せるようにして公開しました。 https://github.com/shu223/AnimatedTransitionGallery なぜつくったのか iOS 7 から UIViewControlle…

コネクタを挿すだけで電子工作!GROVEシステムのセンサ・アクチュエータのまとめ

konashi + GROVE拡張ボード、あるいは Arduino + ベースシールド を使うと、 コネクタを挿すだけ でセンサやアクチュエータを使用した回路を作成できるようになります。 ハンダ付けやブレッドボード上で回路を組む必要がないので、本格的なハードの開発はハ…

第5回、第6回 #potatotips で勉強になったことのまとめ

例のごとく、『第5回 #potatotips』『第6回 #potatotips』について @hirama2 さんの記事を読んでキャッチアップさせていただきました。 第5回 #potatotips で発表された12個のiOSのtipsをまとめる - Think Big Act Local 第6回はUIEvolution開催! #potatoti…

【iBeacon】Estimote iOS SDKがついに温度センサと加速度センサをサポート

iOS7リリース当初は「iBeacon といえば Estimote」ぐらいの存在感を発揮していたものの、 技適とってなくて日本国内で使えない 高い SDKのソースが隠蔽されている SDKはそもそも Core Location のラッパーぐらいの機能しかなくて使う理由がない 加速度センサ…

iBeacon+実店舗の初仕事がリリースされました(&独立のご報告)

人に会う度に「あれ、なんで日本にいるの?」「いつアメリカに戻るの?」とよく聞かれるのでまずご報告ですが、現在はフリーランスの iOS エンジニアとして日本国内で活動しております。 シリコンバレーから戻ってきたきっかけは、こちら や こちら の記事に…

複数のWiFi設定を保持しIRKitにセットできるユーティリティアプリをつくりました

IRKit は基本的に家に据え置きで使うことが想定されたプロダクト設計になってますが、自分の場合はいろいろと仕事で使う場面が多く、家とコワーキングスペース、その他別の作業場所など、使う場所がコロコロ変わります。 で、IRKitは軽くて小さいのでデバイ…

UISegmentedControlで複数セグメントを選択する

UISegmentedControl は複数のセグメントの中からどれか1つを選ぶための UI なので、セグメントごとにOn/Offをトグルさせる、といった使い方はできないわけですが、見た目的にそういう挙動を期待したくなることがあります。 たとえば、TableViewやCollectionV…

IB上でカスタムフォントを選択してプレビューできるXcodeプラグイン『MoarFonts』

iOSでカスタムフォントを使う場合、いままで(自分の場合)は UILabelやUIButtonのサブクラスを作成(内部でfontプロパティをカスタムフォントで差し替える) IB 上で UILabel オブジェクトを置いて、"Custom Class" に 1 で作成したクラスを指定 IB 上でフ…

Objective-Cのクラスの依存関係を「D3.js」でビジュアライズするライブラリ

Objc-dependency-visualizerというOSSツールを使うと、アプリ内で使用している Objective-C クラスの依存関係をビジュアライズしてくれます。 試しに "iOS7 Sampler" でやってみると、こんな感じのを生成してくれました。 実行するのはrubyスクリプトで、依…

【MFi取得済】kontakt.io のビーコンモジュールについての調査

ちょっと所用で、 kontakt.io について急造で調べてみました。調べた、といってもデバイスが手元にないので、主に公式サイトから。 kontakt.io の特長 kontakt.io ってもともとあんまり情報がなくて、 http://amyu.hatenadiary.com/entry/2014/01/25/173245 …

iBeacon関連の最近のニュースとか技術情報とか

最近 iBeacon まわりの情報をあまり追えてなかったので、ざざっとニュースとか技術情報に目を通してみました。 ニュース、導入事例など 「iBeacon」に対応したスタンプラリー『Sitekicker+ for スタンプラリー』を発売 | ニュース | DNP 大日本印刷 大日本印…

第3回 #potatotips で勉強になったことのまとめ

だいぶ乗り遅れましたが、『第3回 potatotips』の資料を一通り拝見しました。 第3回はヤフー開催! #potatotips で発表されたiOSのtipsまとめ - Think Big Act Local どのTipsも勉強になったのですが、とくにメモっておきたいと思ったことをメモっておきま…