SlideShare una empresa de Scribd logo
1 de 23
あげフォト開発ノート
 Takahiro Yoshimura (@alterakey)
             9.6.2012
自己紹介

こんな人

 埼玉で活動しているアーキテクトです。

 FlashゲームからWebアプリまで。

 Twitterやってます→@alterakey
あげフォトとは

画像を手軽に共有できるアルバムアプリ

第1回アンドロイド・マッシュ成果物
遅くなりました…

               @inda_re
                @jKaro
            @nekosukesan55
              @alterakey
こんな感じです

写真を撮る

ギャラリーから「共有」→アルバム化

欲しい人に転送だ!

 ビームでも可、QRコード経由でも可
基本構成



ギャラリー部分

通信部分
ギャラリー

大量の画像を表示する

Galleryクラスを使用
→少々お粗末な作りですがご容赦願います

現在選択されているアルバムを表示
アルバムとは?

画像の集まり

閲覧・共有の単位

収録方法
/sdcard/Android/data/c.t.t.a.e/<album>/picture-...
(i.e. 外部ストレージ)
ファイル名は?

記録しません。

 画像を広く受け入れたいため

 同一ファイル名を持つ画像でも扱いたい

 元ファイル名のコードを推定できない

 UTF-8のNFC/NFD問題
ファイル名は?


こうすることによって…

 ファイル名重複の心配がなくなる

 画像が取り扱いやすくなる
共有



NFC経由でアルバムを共有する

文字通り触れてビーム→転送開始!
共有…?
NFCで転送したいが…

  NFCは遅い(∼500kbps)
  しかも狭い(∼10cm)

ではBluetoothは?

  Bluetoothは範囲が広すぎる
  →誰と通信するつもりなのか?
共有……??

誰と通信を?を解決するための…

 ディスカバリ

 ペアリング

遅いし往々にして面倒
→Bluetoothは面倒くさい…
ここで


この辺、本当に必須ですか?

 接続先の選択・確認のため
 →そもそも近くにいるじゃないですか!
気楽にやろうぜ!


NFCでBluetoothアドレスを交換→直接接続

本来はソケットのUUIDも毎回生成しなおして交換すべきだが、今
回(0.0.1)は割愛
でもNFCは…

普及途上の「これから」の技術

でも接続先を交換するだけなので…

小さな情報量を近くに伝えられればOK!
→QRコードでも!モールス信号でも(ry
QRコードで?


接続先を特殊なURL(content://...)の形式でまとめておいて…

ACTION_VIEWを聞き取ります。

これでZXingなどからは起動可能に。
そして直接接続


Android 2.3.3 (API 10)から追加されたメソッドを使います。
BD.createInsecureRfcommSocketToServiceRecord
BA.listenUsingInsecureRfcommWithServiceRecord


パスキー交換なし!きれいさっぱり!
本当に大丈夫なの?

Insecure…

「暗号化はするものの署名はしません」
→MITM攻撃に脆弱になる。

Bluetooth 2.0以前では暗号化すらされなくなるので注意が必要と
いえば必要ですが…
既知の問題

閲覧時の反応が悪い

あまりに大量の画像を噛ませるとOOM

転送がまだ遅い!→Wi-Fiなどの利用

コードが汚い

コードが汚い
懸念


4.xから2.3/3.xに対してinsecureなBluetooth接続を張れない…とい
うバグ報告がある。
http://code.google.com/p/android/issues/detail?id=29039
公開は?

Google Playには近日公開予定

Your Registration to Google Play is still being processed... ヽ(`Д´)ノ


コードもbitbucketに置きます(GPL-3)ので、研究して下さい!

                       http://bitbucket.org/taky/ellene
お疲れさまでした!

個人的なことですが… いろいろgithubに置いています。(GPL-3)
自由に使ってどんどん研究して下さい!例えば…

 Text Viewer (dawne): 簡単なテキストビューア

 Scribbler (effy): タブレット落書き計画

 Lightboxdroid (lucene): タブレットライトボックス化計画…など。

                 http://github.com/taky
ご静聴ありがとうございました。

Más contenido relacionado

Similar a あげフォト開発ノート #antama_ws

これからはじめるIoTデバイス mbed入門編
これからはじめるIoTデバイス mbed入門編これからはじめるIoTデバイス mbed入門編
これからはじめるIoTデバイス mbed入門編Naoto Tanaka
 
NFC キャンドル
NFC キャンドルNFC キャンドル
NFC キャンドルtreby
 
Meshblu/Node-REDで楽しむIoT
Meshblu/Node-REDで楽しむIoTMeshblu/Node-REDで楽しむIoT
Meshblu/Node-REDで楽しむIoTTakashi Ariyama
 
Maker Faire Tokyo 2012 のご報告など
Maker Faire Tokyo 2012 のご報告などMaker Faire Tokyo 2012 のご報告など
Maker Faire Tokyo 2012 のご報告などBizan Nishimura
 
見える!「IoT」 NefryでJenkinsのXFD作ってみた
見える!「IoT」 NefryでJenkinsのXFD作ってみた 見える!「IoT」 NefryでJenkinsのXFD作ってみた
見える!「IoT」 NefryでJenkinsのXFD作ってみた Tone Blue
 
GUI何処行ったんDocker
GUI何処行ったんDockerGUI何処行ったんDocker
GUI何処行ったんDockerKazuhito Miura
 
コンピュータの知識を用いなくても 理解できるビットコイン ver.2
コンピュータの知識を用いなくても 理解できるビットコイン ver.2コンピュータの知識を用いなくても 理解できるビットコイン ver.2
コンピュータの知識を用いなくても 理解できるビットコイン ver.2Kenji Saito
 
見える!「IoT」NefryでJenkinsのXFD作ってみた
見える!「IoT」NefryでJenkinsのXFD作ってみた見える!「IoT」NefryでJenkinsのXFD作ってみた
見える!「IoT」NefryでJenkinsのXFD作ってみたTone Blue
 
Crashlyticsでクラッシュ撲滅作戦
Crashlyticsでクラッシュ撲滅作戦Crashlyticsでクラッシュ撲滅作戦
Crashlyticsでクラッシュ撲滅作戦Yoichiro Sakurai
 
Fandroid大垣支部「Arduinoでやってみたがや」
Fandroid大垣支部「Arduinoでやってみたがや」Fandroid大垣支部「Arduinoでやってみたがや」
Fandroid大垣支部「Arduinoでやってみたがや」Shinichi Ozaki
 
いろんなコミュニティに参加してみた
いろんなコミュニティに参加してみたいろんなコミュニティに参加してみた
いろんなコミュニティに参加してみたTone Blue
 
テレニコツイ
テレニコツイテレニコツイ
テレニコツイjz5 MATSUE
 
どたばたかいぎ成果発表
どたばたかいぎ成果発表どたばたかいぎ成果発表
どたばたかいぎ成果発表Eric Sartre
 
AozoraYomite @InfoTalk 2012/12/21
AozoraYomite @InfoTalk 2012/12/21AozoraYomite @InfoTalk 2012/12/21
AozoraYomite @InfoTalk 2012/12/21Yuki Higuchi
 

Similar a あげフォト開発ノート #antama_ws (16)

これからはじめるIoTデバイス mbed入門編
これからはじめるIoTデバイス mbed入門編これからはじめるIoTデバイス mbed入門編
これからはじめるIoTデバイス mbed入門編
 
NFC キャンドル
NFC キャンドルNFC キャンドル
NFC キャンドル
 
Meshblu/Node-REDで楽しむIoT
Meshblu/Node-REDで楽しむIoTMeshblu/Node-REDで楽しむIoT
Meshblu/Node-REDで楽しむIoT
 
Maker Faire Tokyo 2012 のご報告など
Maker Faire Tokyo 2012 のご報告などMaker Faire Tokyo 2012 のご報告など
Maker Faire Tokyo 2012 のご報告など
 
見える!「IoT」 NefryでJenkinsのXFD作ってみた
見える!「IoT」 NefryでJenkinsのXFD作ってみた 見える!「IoT」 NefryでJenkinsのXFD作ってみた
見える!「IoT」 NefryでJenkinsのXFD作ってみた
 
GUI何処行ったんDocker
GUI何処行ったんDockerGUI何処行ったんDocker
GUI何処行ったんDocker
 
コンピュータの知識を用いなくても 理解できるビットコイン ver.2
コンピュータの知識を用いなくても 理解できるビットコイン ver.2コンピュータの知識を用いなくても 理解できるビットコイン ver.2
コンピュータの知識を用いなくても 理解できるビットコイン ver.2
 
Zigbee Study
Zigbee StudyZigbee Study
Zigbee Study
 
見える!「IoT」NefryでJenkinsのXFD作ってみた
見える!「IoT」NefryでJenkinsのXFD作ってみた見える!「IoT」NefryでJenkinsのXFD作ってみた
見える!「IoT」NefryでJenkinsのXFD作ってみた
 
Crashlyticsでクラッシュ撲滅作戦
Crashlyticsでクラッシュ撲滅作戦Crashlyticsでクラッシュ撲滅作戦
Crashlyticsでクラッシュ撲滅作戦
 
Fandroid大垣支部「Arduinoでやってみたがや」
Fandroid大垣支部「Arduinoでやってみたがや」Fandroid大垣支部「Arduinoでやってみたがや」
Fandroid大垣支部「Arduinoでやってみたがや」
 
いろんなコミュニティに参加してみた
いろんなコミュニティに参加してみたいろんなコミュニティに参加してみた
いろんなコミュニティに参加してみた
 
テレニコツイ
テレニコツイテレニコツイ
テレニコツイ
 
どたばたかいぎ成果発表
どたばたかいぎ成果発表どたばたかいぎ成果発表
どたばたかいぎ成果発表
 
AozoraYomite @InfoTalk 2012/12/21
AozoraYomite @InfoTalk 2012/12/21AozoraYomite @InfoTalk 2012/12/21
AozoraYomite @InfoTalk 2012/12/21
 
チームラボMake部 Maker Faire Tokyo 2012出展物一覧
チームラボMake部 Maker Faire Tokyo 2012出展物一覧チームラボMake部 Maker Faire Tokyo 2012出展物一覧
チームラボMake部 Maker Faire Tokyo 2012出展物一覧
 

Más de Takahiro Yoshimura

Looking Back: CIS on Managed K8S
Looking Back: CIS on Managed K8SLooking Back: CIS on Managed K8S
Looking Back: CIS on Managed K8STakahiro Yoshimura
 
Drawing Dataflow On Dalvik Bytecodes
Drawing Dataflow On Dalvik Bytecodes Drawing Dataflow On Dalvik Bytecodes
Drawing Dataflow On Dalvik Bytecodes Takahiro Yoshimura
 
Trueseeing: Effective Dataflow Analysis over Dalvik Opcodes
Trueseeing: Effective Dataflow Analysis over Dalvik OpcodesTrueseeing: Effective Dataflow Analysis over Dalvik Opcodes
Trueseeing: Effective Dataflow Analysis over Dalvik OpcodesTakahiro Yoshimura
 
10 (about make 10 with 4 numbers challenge)
10 (about make 10 with 4 numbers challenge)10 (about make 10 with 4 numbers challenge)
10 (about make 10 with 4 numbers challenge)Takahiro Yoshimura
 
Go goes Mobile: Quick Exploration on Go 1.5 and Gomobile
Go goes Mobile: Quick Exploration on Go 1.5 and GomobileGo goes Mobile: Quick Exploration on Go 1.5 and Gomobile
Go goes Mobile: Quick Exploration on Go 1.5 and GomobileTakahiro Yoshimura
 
伝授の巻について #スクエアフリーセミナー #yochiand
伝授の巻について #スクエアフリーセミナー #yochiand伝授の巻について #スクエアフリーセミナー #yochiand
伝授の巻について #スクエアフリーセミナー #yochiandTakahiro Yoshimura
 

Más de Takahiro Yoshimura (20)

Looking Back 2023
Looking Back 2023Looking Back 2023
Looking Back 2023
 
Fill In The Blank
Fill In The BlankFill In The Blank
Fill In The Blank
 
Ticket To The Dark World
Ticket To The Dark WorldTicket To The Dark World
Ticket To The Dark World
 
Looking back 2022
Looking back 2022Looking back 2022
Looking back 2022
 
Hazy Datagrams
Hazy DatagramsHazy Datagrams
Hazy Datagrams
 
Wartime Pigeons
Wartime PigeonsWartime Pigeons
Wartime Pigeons
 
Securing Supply Chains
Securing Supply ChainsSecuring Supply Chains
Securing Supply Chains
 
Looking Back: CIS on Managed K8S
Looking Back: CIS on Managed K8SLooking Back: CIS on Managed K8S
Looking Back: CIS on Managed K8S
 
Beijing Report 2022
Beijing Report 2022Beijing Report 2022
Beijing Report 2022
 
Asynchronicity
AsynchronicityAsynchronicity
Asynchronicity
 
Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2
 
Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2Outsmarting Smartphone Apps 2
Outsmarting Smartphone Apps 2
 
Outsmarting Smartphone Apps
Outsmarting Smartphone AppsOutsmarting Smartphone Apps
Outsmarting Smartphone Apps
 
Drawing Dataflow On Dalvik Bytecodes
Drawing Dataflow On Dalvik Bytecodes Drawing Dataflow On Dalvik Bytecodes
Drawing Dataflow On Dalvik Bytecodes
 
Trueseeing: Effective Dataflow Analysis over Dalvik Opcodes
Trueseeing: Effective Dataflow Analysis over Dalvik OpcodesTrueseeing: Effective Dataflow Analysis over Dalvik Opcodes
Trueseeing: Effective Dataflow Analysis over Dalvik Opcodes
 
10 (about make 10 with 4 numbers challenge)
10 (about make 10 with 4 numbers challenge)10 (about make 10 with 4 numbers challenge)
10 (about make 10 with 4 numbers challenge)
 
Go goes Mobile: Quick Exploration on Go 1.5 and Gomobile
Go goes Mobile: Quick Exploration on Go 1.5 and GomobileGo goes Mobile: Quick Exploration on Go 1.5 and Gomobile
Go goes Mobile: Quick Exploration on Go 1.5 and Gomobile
 
Android Wear: Good Parts
Android Wear: Good PartsAndroid Wear: Good Parts
Android Wear: Good Parts
 
DEFCON21×S2 REPORT
DEFCON21×S2 REPORTDEFCON21×S2 REPORT
DEFCON21×S2 REPORT
 
伝授の巻について #スクエアフリーセミナー #yochiand
伝授の巻について #スクエアフリーセミナー #yochiand伝授の巻について #スクエアフリーセミナー #yochiand
伝授の巻について #スクエアフリーセミナー #yochiand
 

あげフォト開発ノート #antama_ws

Notas del editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n