その後のその後

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

iOS

iOS / OpenCV 3.0 で画像の特徴点を検出する(AKAZE, SIFT, SURF, ORB)

局所特徴量とは / SIFT, SURF 特徴量 このスライドが超わかりやすかったです。 画像認識の初歩、SIFT,SURF特徴量 from takaya imai で、SIFT (Scale-invariant feature transform)、SURF (Speed-Upped Robust Feature) というのは、拡大縮小・回転・照明変化…

WatchKit もろもろ実機検証

Apple Watch をたまたま発売日当日ゲットできたので、いろいろと WatchKit アプリ開発に携わってきた 中で、「実機でやってみないと確信が持てないな。。」と思っていた諸々について検証してみました。 Xcodeからの実機インストール Parent App をインストー…

【フリーランス制作実績まとめ その5】WatchKitアプリ、技術書出版、BLE関連、GitHub世界第7位

いま表参道ソフトバンクの Apple Watch 当日販売分の行列に並びつつこれを書いております。恒例の3ヶ月ごとの制作実績まとめです。今回は2015年2月〜4月分。 (バックナンバー) 独立してから第4四半期目の実績まとめ - その後のその後 独立してから第3四半…

iOSアプリ開発案件で中国出張に行ってきました

とある案件で、中国は深セン(深圳/Shenzhen)に行ってきました。 もともとその案件では基板/ファーム部分を中国の会社が担当していて(BLEを介してのiOS側を僕が担当)、 こちらから要件を送る (1〜3週間待つ) 「できた」とファーム焼き込み済みサンプ…

オープンソースになった ResearchKit の中身を見てみる

昨日、Apple が ResearchKit フレームワークのソースコードをまるっと GitHub で公開しました。 https://github.com/ResearchKit/ResearchKit ここで「おお ResearchKit!!・・・って何だっけ・・・?」ってなった方も実は多いのではないでしょうか。僕はす…

BLEと私

せっかく書籍を出すというありがたい機会にも恵まれたので、短いようで長い、BLEとの馴れ初めから書籍を出すまでの思い出を振り返ってみようと思います。 iOS×BLE Core Bluetoothプログラミングposted with amazlet at 15.03.23堤 修一 松村 礼央 ソシム 売…

『iOS×BLE Core Bluetoothプログラミング』という本を書きました

konashi 開発者の松村礼央さんと、iOS エンジニアの堤の共著で執筆させていただいた技術書「iOS × BLE Core Bluetooth プログラミング」がついに本日発売となりました! iOS×BLE Core Bluetoothプログラミング タイトルの通り、BLEを利用したiOSアプリ開発の…

WatchKitを実際にさわってみてわかったこと@iOSオールスターズ勉強会 #dotsios

本日開催された「iOSオールスターズ勉強会」という勉強会に登壇させていただいた際の資料です。 WatchKitを実際にさわってみてわかったこと ※Keynoteでつくってpdfで書きだしてアップしたので、残念ながら埋め込んでいた動画が見れなくなってます 概要 スラ…

iOSエンジニアが初めてAndroid開発をやってみた第1日目のメモ

当方フリーランスエンジニアですが、iOS専業でやっております。これまで幾度と無く「ちなみにAndroidの方は・・・?」「すいません、できないんです・・・」と肩身の狭い思いをしてきましたが、ついに今日第一歩目を踏み出しました。 ちなみに現在のスペック…

iOSと機械学習

ビッグデータとかの機械学習隆盛の背景にある文脈や、その拠り所となるコンピュータの処理性能から考えても「モバイルデバイス向けOSと機械学習を紐付けて考えようとする」ことはそもそもあまり筋がよろしくない・・・とは思うのですが、やはり長くiOSだけに…

アップルによるBluetoothアクセサリの設計ガイドラインに書かれていたこと

『Bluetooth Accessory Design Guideline for Apple Products』という、Appleによる公式ドキュメントがあります。Mac や iOS デバイス、iPod 等の Apple 製品の Bluetooth アクセサリの設計についてのガイドラインです。 本記事では、このドキュメントから i…

iBeacon と BLE

昨年末〜今年初めにかけて一世を風靡した iBeacon ですが、なんというか、本来期待されるべき方向ではない方向で期待され、「不当に」ガッカリされることが多いような印象を受けます。 「コンテンツを内部に保持して直接配信することはできない」 「双方向通…

ANCSでiOSの電話着信やメール受信の通知を外部デバイスから取得する

ANCS は「Apple Notification Center Service」の略で、電話着信やメール受信等、iOSで発生するさまざまな種類の通知に、BLEで繋がっている外部デバイスからアクセスするためのサービスです。 iOSアプリに携わるエンジニアとしてはリモート通知(プッシュ通…

Core Bluetooth トラブルシューティング

iOSでBLEを利用するアプリを開発していると、「スキャンで見つからない」「つながらない」といった場面はよく出てきますし、相手が新規開発デバイスだとそっちを疑いたくなることもあるわけですが、けっこうiOS側での「あるある」な実装ミスや勘違いというの…

新しい楽器をつくるハッカソン「Play-a-thon」に参加してきました

つい10日ほど前に TechCrunch ハッカソンに参加した件について書いたばかりですが、実は今月の6(木)、7(金)、21(金)、24(月)と何と4日間、しかも平日(!)*1 という日程で、「新しい楽器をつくる」というコンセプトのハッカソン、その名も「Play-a-…

【WatchKit】Apple Watch アプリのつくり方 & 全API解説

iOS

Apple Watch の SDK である『WatchKit』がリリースされてたので、さっそくさわってみました。 以下、サンプル実行方法、AppleWatchアプリの実装方法(所要時間1分、プログラミング不要!)、全クラス解説の順に書いていきます。 ※本記事は、Appleによる公開…

【UIScrollView × Autolayout 問題】Appleエンジニア直伝のファイナルアンサー

iPhone6,6Plus サポートとか LaunchScreen.xib とか Size Class とか考えると、もはや Autolayout は必須な感じになってきてます。 http://d.hatena.ne.jp/shu223/20141002/1412209257 で、Autolayout ✕ UIScrollView の例の問題(UIScrollView のサイズを s…

Xcode 6 時代のマルチデバイス対応 〜Size Classとベクター画像〜

とあるお仕事で、iPad をサポート(= Universal 化)してほしいという要望があり、せっかくなので iPhone 6 / 6 Plus (4.7 / 5.5 inch スクリーン)もサポートしようってことで、新しい Xcode 6 の新しい仕組みである Size Class を使って複数画面対応を行…

【勉強会資料】BLEとは何か/BLEの実例

昨日、都内のとある企業のクローズドな勉強会で、Bluetooth Low Energy (以降、BLE) 関連の話をしてきました。 僕に直接声がかかったわけではなく、知り合いのエンジニアが IoT について講義を任され、その方からBLEまわりについて話してくれないか、という…

iOS 8 の新機能のサンプルコード集『iOS8-Sampler』を公開しました

WWDCでのアップルの発表によると、iOS 8 では4000以上もの API が追加されたとのことですが、新しいAPIはどう使うのか、実際に何がどこまでできるのか、といった具体的なところが、英語のドキュメントや動画をながめているだけだと正直あまりよくわかりませ…

【Xcode 6】delegateをセットするところで「incompatible type 'id'」なるwarningが出る件

たとえば下記のように、delegate プロトコルと、それをプロパティに持つクラスを定義し、 @protocol HogeManagerDelegate <NSObject> @end @interface HogeManager : NSObject @property (nonatomic, weak) id<HogeManagerDelegate> delegate; @end HogeViewController で下記のように `setD</hogemanagerdelegate></nsobject>…

真鍋大度さんとの初仕事 "music for the deaf" 振り返り

昨日「ヨコハマ・パラトリエンナーレ2014」の特別イベントとして、 SOUL FAMILY × 真鍋大度 + 石橋素 + 照岡正樹 + 堤修一 名義で、『music for the deaf プレゼンテーション』を行いました。 先日書いた記事『音楽に合わせて電気を流すiOSアプリ - その後の…

音楽に合わせて電気を流すiOSアプリ

先日『2014年5月〜7月にやったお仕事のまとめ - その後のその後』でちらっと書いたのですが、最近のお仕事のひとつとして、音楽に合わせて電気を流すアプリを開発しています。 (開発中の風景 in 新幹線) 4ch の電極を持つ電気刺激デバイス(通称ピリピリデ…

2014年5月〜7月にやったお仕事のまとめ

4月末に書いた「独立して最初の3ヵ月間にやったお仕事のまとめ - その後のその後」という記事から3ヵ月が経ちました。(前にも似たようなこと書きましたが)フリーランスは定期的に自らアピールしていかないと本当に世の中から忘れられてしまうので、またこ…

自作iOSアプリで制御できるロボット、Romo のハッカソンに参加してきました

本日 HUB Tokyo にて開催された『iPhone x ロボットハッカソン 大人の夏休みの自由研究 〜Romoで絶対起きられる目覚まし時計を作ろう〜』と題されたハッカソンに参加してきました。 Romo とは? http://www.romotive.jp/ Romo(ロモ)はiPhoneなどで動く「体…

低レイテンシにシーク&再生可能なライブラリ:EZAudio

ニッチなケースだとは思うのですが、 デバイスA(マスター)に対して、デバイスBを同期再生させたい ダンスパフォーマンスなので遅延はNG デバイスBのアプリは、デバイスAの再生の途中で起動されるかもしれない つまり、同期タイミングが曲の頭だけでは不十…

【iOS8】App Extension の実装方法 その2:Custom Keyboard

「その1:Action」から1ヵ月以上経ってしまいましたが、「その2」として Custom Keyboard の App Extension 実装手順について書きたいと思います。 *1 。 キーボードは改善し続けてきた iOS の中でもわりと進化が止まっていた/むしろ使いづらくなるアップ…

TimeTicket で日曜の空き時間が 41,000 円で売れた話

「わたしの30分、売りはじめます。」という触れ込みでオープンした空き時間売買サービス「TimeTicket」、さっそく登録してみたところ、ちょうど空いてた昨日の日曜だけでなんと 41,000円 の売り上げがありました。 このサービス、気になってる方も多いんじゃ…

「2014年の目標」中間振り返り

ふとしたきっかけ *1 で年初に書いた「2014年の目標」という記事を見返したのですが、おもしろいぐらいに達成できてなくてびっくりしました。 ちょうど2014年も半分経過したところだし、状況もいろいろ変わってこのまま年末まで放置しても仕方ないので、ここ…

CIKernelを使ったカスタムフィルタのつくりかた

Core Image の CIFilter でいろいろなフィルタ処理(画像処理/画像加工)ができるのはみなさまよくご存知かと思いますが、iOS 8 では CIKernel というクラスが追加され、そのフィルタ(CIFilter)を自作できるようになりました。 本記事は、その作成手順に…