Android
Android Marketに『Bluetooth OPP PUT』を公開しました。
その名は『Bluetooth OPP PUT』というアプリケーションです。
BluetoothのOPP(Object Push Profile)に対応した機器に対して、指定されたファイルを送信することができます。
例えば、ポラロイド PoGo™に対して、画像ファイル(JPEG)を送ると、印刷してくれます。

■アプリの使い方
STEP1 ファイルを送信する機器のBluetoothアドレス登録およびペアリングを行う。
本アプリを起動すると、Bluetooth機器の検索が始まります。

検索が完了すると、機器の一覧が表示されるので、ファイルを送信したい機器を選択します。
(この時に、ペアリングが必要な場合はペアリング処理を行ってください。)

完了すれば、送信先が登録されます。
これで、送信準備OKです。
STEP2 ファイルの送信要求
アプリの共有機能を使って、本アプリへ送信したいファイルの指示を行います。
ここでは、標準で搭載されている『ギャラりー』を使った場合の手順です。
送りたい画像を選択すると、こんな画面になるかと思います。

すると、上記の部分に『共有』というのが出ていると思いますので、選択します。

すると、共有可能なアプリケーションの一覧が表示されるので、『Bluetooth OPP PUT』を選択してください。

本アプリが起動され、STEP1で指定したBluetooth機器に接続を行い、ファイルの転送が行われます。
■ダウンロード方法
『Androidマーケット』→『ツール』→『Bluetooth OPP PUT for 1.6』 (Android 1.6端末の場合)
『Androidマーケット』→『ツール』→『Bluetooth OPP PUT for 2.x』 (Android 2.0/2.1端末の場合)
興味ありましたら、是非、お使いください。
この記事は役に立ちましたか? この記事の平均評価:




(7人)
| Copyright 2010,03,19, Friday 04:49pm オーナー | comments (20) | trackback (1) |
コメント
というか、画像の送信は実装できました。
ありがとうございました。
| kazu | EMAIL | URL | 2010/04/05 05:49 PM | F7H0FdmY |
| オーナー | EMAIL | URL | 2010/04/04 10:59 AM | drlaGhbI |
ファイルの送信に関して大体は実装することが出来ました。
ただ、受信側がどうしても60%ほどで受信が止まってしまうのですが、何かファイルのデータ送信以外に、ストリームに書き込む情報などがあるのでしょうか?
| kazu | EMAIL | URL | 2010/04/03 07:59 PM | P2JMTlcs |
必ずportとして1が返ってくるように作られているようです
| kazu | EMAIL | URL | 2010/04/01 09:40 AM | F7H0FdmY |
ほかには、サービスを指定するようなものはございません。
| kazu | EMAIL | URL | 2010/04/01 08:52 AM | F7H0FdmY |
この役割は、SDPプロファイルが行います。
ライブラリーで、サービス指定するパラメータありませんか?
| オーナー | EMAIL | URL | 2010/04/01 07:47 AM | J1n8SG.6 |
私はbackportライブラリを用いて現在開発を行っていますが、
単にsocketのconnectを行うだけでは、既存携帯との接続は行えないのでしょうか?
ちなみにこの例外は、connectを行ったときではなく、その後バイナリファイルをwriteするときに出てくる例外なのです。
| kazu | EMAIL | URL | 2010/04/01 06:59 AM | P2JMTlcs |
エラーの内容的には、相手に接続できませんでしたという意味でよろしいかと思います。
受信側の機器とペアリングが完了していないか or OPPを受信出来る状態になっていないことが原因です。
一般的な携帯だと、受信する携帯側で、データを受信するみたいな動作をさせないと受信できません。
受信する側の携帯のbluetoothメニューにデータ受信はありませんか?
| オーナー | EMAIL | URL | 2010/03/31 11:44 PM | drlaGhbI |
その節はありがとう御座いました。
ファイルの送信方法についてはかなり情報も集まり、恐らくは問題ない部分まで来ることが出来ました。ありがとうございます。
しかし、対処法の良く分からない例外などが出て困っています。
"Transport endpoint is not connected"
という例外をご存知でしょうか?
どうも接続が確立されていないと出てくるらしいのですが、
Android携帯をクライアントとして、既存携帯などと接続を試みるとどうもうまく接続が行われないようなのです。
kazuyukiさんはこのような現象などご存じないでしょうか?
よろしくお願いします。
| kazu | EMAIL | URL | 2010/03/31 09:33 PM | P2JMTlcs |
OPPはRFCOMMの上で動く、プロトコルですので、作ればできるということです。
これ以上解説してもどうか?と思うので、実際に挑戦してみてください。
| オーナー | EMAIL | URL | 2010/03/22 10:39 PM | drlaGhbI |
なんというか、ストリームで流すっていうのは、単純にHT-03A同士でしか成り立たないと考えていました。
なので、OPPを実装するには、何か特別な送信方法を用いる必要があるのかと思っていたのですが・・・そういうわけではないのですか?
| kazu | EMAIL | URL | 2010/03/22 08:02 PM | P2JMTlcs |
データとして、byte配列で送受信する形になります。
何を気にしているのか?わかりませんが、機種依存性はないと思いますけど・・・
反対に、あったら困りますけど・・・
| オーナー | EMAIL | URL | 2010/03/22 07:38 PM | drlaGhbI |
最後に一つ。
チャットだとメッセージをストリームで流すだけでしたが、
kazuyukiさんもおっしゃられているように、バイアンリとなると厄介かと思います。
このバイナリをバイト配列とかに変換してストリームで流すという方法なら思いついたのですが、これですとHT-03A同士でしか送受信できませんよね?
やはり既存携帯と送受信するには、また一工夫が必要と言うことでしょうか?
| kazu | EMAIL | URL | 2010/03/22 07:05 PM | P2JMTlcs |
ただ、OBEXは、命令がバイナリなので、そこが厄介かもしれませんが、仕様さえ入手できれば、結構スムーズにいくかもしれません。
頑張ってみてください。
| オーナー | EMAIL | URL | 2010/03/22 06:14 PM | drlaGhbI |
NDKを使用しなくてもHT-03AでOPPを実装することが可能なことが分かっただけでもとても助かりました。
ありがとうございます。
チャットアプリなら趣味でも作ったりはしたのですが、さすがにファイル送信となるとかなり違ってくるようですね。
| kazu | EMAIL | URL | 2010/03/22 05:45 PM | P2JMTlcs |
私自身、Android open source projectとかのソースを使っていませんし、OBEXってなんだろうか?と勉強しながら、実装しただけです。
私は、TCPソケットを用いて、各種プロトコルを実装したことあるから、作れたのかもしれません。
| オーナー | EMAIL | URL | 2010/03/22 05:08 PM | drlaGhbI |
OPPのソースコードを落としたり、NDKを利用したりなどして、実装できないかを考えていたのですが・・・
その辺は利用したりしたのでしょうか?
| kazu | EMAIL | URL | 2010/03/22 03:13 PM | P2JMTlcs |
気合がどの程度なのか分かりませんが・・・
頑張ります。
| kazu | EMAIL | URL | 2010/03/22 03:02 PM | P2JMTlcs |
Bluetooth OPPの実装方法ですが、私もかなり苦労したので、ヒントを差し上げます。
OPPはRFCOMM上で実装されているので、IrOBEXのサブセットを実装すればできます。
AndroidではRFCOMMのAPIが提供されているので、気合でなんとかなります。
ご参考までに
| オーナー | EMAIL | URL | 2010/03/22 12:22 PM | drlaGhbI |
早速DLして使わせてもらっています。なかなか使いやすくて非常にありがたいです。
私も今同じようなアプリを趣味で作ろうと考えているのですが、OPPの実装方法がどうにもよくわかりません。
もしよろしければどのように実装すればいいか教えていただけないでしょうか。
よろしくおねがいします。
| kazu | EMAIL | URL | 2010/03/21 07:43 PM | P2JMTlcs |
コメントする
トラックバックURL
http://eguchi.jp/blognplus/tb.php?412
トラックバック
Polaroid PoGo CZJ-10011B
| 俺の基地 (PukiWiki/TrackBack 0.3) | 2010/06/25 12:29 PM |