その後のその後

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

BLE

イスラエルとパレスチナでiOSとBLEについて講演してきた話

7月24日〜30日、「中東のシリコンバレー」と呼ばれスタートアップがめちゃめちゃ盛り上がっているイスラエルのテルアビブ、IT産業が伸びているというパレスチナのラマッラ、そしてあの聖地エルサレムにて、iOS×BLEについて話してきました。 (在イスラエル日…

BLEを利用した汎用ロボットコアユニット「bCore」を触ってみる

バガボンド・ワークスさんが制作・販売されている「bCore」というハックしがいのある楽しいデバイスを紹介させていただきます。 サイトには「汎用多目的超小型リモコンロボットコアユニット」とあります。少し噛み砕くと、スマホからBLEでモーターとサーボを…

ベルリンとロンドンのiOSカンファレンスで登壇した話 #UIKonf #iOSCon

先週、ベルリンで開催された UIKonf と、ロンドンで開催された iOSCon の両カンファレンスにスピーカーとして参加してきました。 UIKonfの会場(登壇してるのはDaniel氏) まだロンドンにいまして、興奮冷めやらぬうちに記事に書いておきたいと思います。 UI…

海外のカンファレンスに登壇する - 応募編 #potatotips

本日、potatotips #28(iOS/Androidの開発Tips共有会)にて標題の発表をさせていただきました。 iOSのカンファレンスに自分で応募して、採択されるまでの話です。 以下、スライド内容の抜粋。 はじめに iOSのカンファレンス、UIKonf 2016(ベルリン), iOSCo…

Googleリポジトリのコントリビュータになりたくて19日間粘った話

「Google リポジトリのコントリビュータです」って言えたらかっこいいなぁというミーハー精神からプルリクを送り、却下されそうになりつつも粘ってマージしてもらって CONTRIBUTORS に名前も入れてもらえた(まだ世界で9人しかいない!)、という経緯につい…

Classic Bluetooth について iOS アプリ開発者ができること

Bluetooth Low Energy については Core Bluetooth で色々と制御できますが、Classic Bluetooth(以降クラシックBT)については基本的に開発者は制御できません。 *1 そう、確かにアプリ内からクラシックBTデバイスと接続したり、データを送るとか送らないと…

RSSI と TxPower からビーコンとの距離および近接度(Proximity)を推定する

先日、Eddystone の使いどころについて書いた記事で、iBeaconと比較した場合の利点のうちのひとつは「カスタマイズ性」(=自前実装が可能)であると書きました。 *1 http://d.hatena.ne.jp/shu223/20151201/1448937136 この場合、Core Bluetooth を使って、…

Eddystone と iOS - その2: 実装編

その1 では iOS アプリ開発者から見た、Eddystone を採用するメリット・デメリットについて書きました。本記事は実装編として、Core Bluetooth を用いた Eddystone 検出機能の実装方法 をポイントをかいつまんで紹介したいと思います。 なお、本記事では Cor…

Eddystone と iOS - その1: iBeacon と比較したメリット・デメリット

2015年7月にGoogleから発表されたビーコン規格、Eddystone。「Eddystoneとは?」という概要については既に多く出ている他の解説記事にお任せして、iOS アプリ開発者から見た、Eddystone を採用するメリット・デメリット や、仕様をパッと見ただけではわから…

【制作実績】ウェアラブルトランシーバー「BONX」のiOSアプリ開発をお手伝いしました

年初からずーーっと水面下で開発を手伝ってきたプロダクトがついに本日発表になりました!スポーツシーンで複数の仲間とコミュニケーションを取るためのデバイス&アプリ、 『BONX』 です!本日より「GREEN FUNDING Labl」にてクラウドファンディング開始し…

殺しても死なないアプリ 〜Core Bluetooth の「状態の保存と復元」機能〜 #potatotips

昨日、第17回 potatotips という iOS / Android の開発Tips共有会(勉強会)で標題の発表をしてきました。 殺しても死なないアプリ 〜Core Bluetooth の「状態の保存と復元」機能〜 from Shuichi Tsutsumi 概要 Core Bluetooth のバックグラウンド実行モード…

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アプリ開発の…

アップルによる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側での「あるある」な実装ミスや勘違いというの…

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

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

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

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

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

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

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

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