Bluetoothで画像ファイル共有

1,428 views
Skip to first unread message

pez

unread,
Oct 7, 2012, 6:36:24 PM10/7/12
to android-g...@googlegroups.com
Bluetoothで画像ファイルを共有できるようなアプリを作りたいと思っています。

↑といった解説サイトで文字列の受け渡しのできるアプリを
実装しました。

これから画像ファイルを共有できるようなものに拡張していきたいと思っているのですが、
↑のサイトでは、対応が難しい、とあります。

何かいいサンプルコードなどご存知でしたら、共有させていただけないでしょぅか?

ohisamallc

unread,
Oct 8, 2012, 2:01:24 AM10/8/12
to android-g...@googlegroups.com
山形のohisamaです。
山形は、秋晴れです。
がんばろう東北。

自分は、android1.6なので無いですが。
今時のandroidならintentで、bluetooth oppで
ファイルを飛ばせるはずです。
--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られて
います。
このディスカッションをウェブ上で閲覧するには、
https://groups.google.com/d/msg/android-group-japan/-/hNy8v-TlHc4J にアクセ
スしてください。
このグループに投稿するには、android-g...@googlegroups.com にメールを
送信してください。
このグループから退会するには、
android-group-j...@googlegroups.com にメールを送信してくださ
い。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja
らこのグループにアクセスしてください。

pez

unread,
Oct 12, 2012, 1:25:02 PM10/12/12
to android-g...@googlegroups.com
ohisamaさん

ご協力、ありがとうございます。

intentでBluetooth機能を呼び出して、共有、ということでしょうか。
できれば、Bluetoothで受信したデータ内容に応じてアクティビティの中で
振る舞いを変えたい、と思っていますので、
intent経由は避けたいと思っています。

具体的には、
↑のソースをベースにして、
-----------------------
ByteArrayOutputStream os = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.JPEG, 100, os);
byte[] bin = os.toByteArray();
-----------------------
としてBitmapをbyteへ変換して送信し、
受信側で
-----------------------
BitmapFactory.Options options = new BitmapFactory.Options();
Bitmap bitmap = BitmapFactory.decodeByteArray(bin, 0, bin.length, options);
-----------------------
として受信できないか、と思っていました。
しかし、実際にはInputStream.read(buffer)してくるときに
うまくデータがreadできていないようです。

デバッグしたところ。おそらくデータサイズが大きいため、
readに渡しているbufferが溢れているため、
一旦readから返ってきているようです。
while(true)でループを回して、再度取得しに行くようにしたのですが、
今度は何度かループを回った後、read(buffer)から返って来なくなってしまいました。

Bluetoothでのbyteデータ受信には、データ量の制限などがあるのでしょうか?

---------read部分--------------
byte[] buf = new byte[1024];
byte[] result = new byte[10 * 1024];
while(true){
try {
bytes = in.read(buf);
// byte連結
setBytes += bytes;
System.arraycopy(buf, 0, result, setBytes, buf.length);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
-----------------------
※何度かreadして、10Mbyteまでは受信できるようにしています。

2012年10月8日月曜日 15時03分19秒 UTC+9 ohisama:
このグループに投稿するには、android-group-ja...@googlegroups.com にメールを
送信してください。
このグループから退会するには、
android-group-japan+unsub...@googlegroups.com にメールを送信してくださ

pez

unread,
Oct 12, 2012, 4:02:23 PM10/12/12
to android-g...@googlegroups.com
ohisamaさん

その後、色々と調べてみると、
ohisamaさんがおっしゃっていたのは、
プロファイルをOPPにしてやってみるとよいのでは?
ということなのかと思いました。

今、プロファイルをOBEXとできないか煮詰まっています。
アドバイス等、ありましたらコメント下さい。

2012年10月13日土曜日 2時25分02秒 UTC+9 pez:

pez

unread,
Oct 12, 2012, 8:13:04 PM10/12/12
to android-g...@googlegroups.com
ohisamaさん

解決しました。

サーバー側とクライアント側で
同期が取れなかったようです。
waitを1secほど入れると、転送できました。

2012年10月13日土曜日 5時02分23秒 UTC+9 pez:

枡田和紘

unread,
Sep 24, 2014, 2:10:39 PM9/24/14
to android-g...@googlegroups.com
いきなりで申し訳ございません。
私も現在端末でとった画像をBluetothを用いてPCに送信するプログラムを開発しています。

いきなりで差し出がましいのですが、ソースなど共有していただけないでしょうか。
自分の中で考えても全く先に進むことができません。

よろしくお願いします。

2012年10月13日土曜日 9時13分05秒 UTC+9 pez:

ohisama

unread,
Sep 25, 2014, 6:56:03 PM9/25/14
to android-g...@googlegroups.com
山形のohisamaです。
名前があがったので、反応します。

案1
 ギャラリーに動画を登録する。
 ギャラリーから動画を長押し、共有-Bluetooth
 でPCにpushする。
案2
 プログラムしたい場合
 暗黙のIntent呼び出しで共有-Bluetoothの
 画面を呼び出す。
案3
 ソースを読みたい場合
 androidのbluetooth廻りのnative側はBluezです。
 Bluezはオープンソースなので読めます。
 読んで下さい。
案4
 一からスクラッチでプログラムしたい場合
 PCとは基本、シリアル通信なので、ファイル転送
 プロトコルXMODEMとかZMODEMを使う。
 自分なら、base64を使う。
案5
 どうしても、コピペしたい場合
 githubをobexで検索する。
 あなたの技量を測りかねますが、答えがあっても
 見過す、気がします。案1をお勧めします。

________________________________

From: android-g...@googlegroups.com
[mailto:android-g...@googlegroups.com] On Behalf Of 枡田和紘
Sent: Thursday, September 25, 2014 3:11 AM
To: android-g...@googlegroups.com
Subject: Re: [android-group-japan: 28211] Bluetoothで画像ファイル共有


いきなりで申し訳ございません。
私も現在端末でとった画像をBluetothを用いてPCに送信するプログラムを開発してい
ます。
<http://d.hatena.ne.jp/propella/20120403/p1>


http://techbooster.org/android/application/5191/
<http://techbooster.org/android/application/5191/>

↑といった解説サイトで文字列の受け渡しのでき
るアプリを

実装しました。


これから画像ファイルを共有できるようなものに
拡張していきたいと思っているので
すが、

http://d.hatena.ne.jp/toru10ru/20120204/1328337019
<http://d.hatena.ne.jp/toru10ru/20120204/1328337019>

↑のサイトでは、対応が難しい、とあります。


何かいいサンプルコードなどご存知でしたら、共
有させていただけないでしょぅか?
--
このメールは Google グループのグループ「日本
Androidの会」の登録者に送られて
います。
このディスカッションをウェブ上で閲覧するに
は、

https://groups.google.com/d/msg/android-group-japan/-/hNy8v-TlHc4J
<https://groups.google.com/d/msg/android-group-japan/-/hNy8v-TlHc4J> にアク

スしてください。
このグループに投稿するには、
android-g...@googlegroups.com にメールを
送信してください。
このグループから退会するには、

android-group-j...@googlegroups.com にメールを送信してくださ
い。
詳細については、
http://groups.google.com/group/android-group-japan?hl=ja
<http://groups.google.com/group/android-group-japan?hl=ja> か
らこのグループにアクセスしてください。



--
このメールは Google グループのグループ「日本Androidの会」に登録しているユー
ザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには
android-group-j...@googlegroups.com にメールを送信してくださ
い。
このグループに投稿するには android-g...@googlegroups.com にメールを送
信してください。
http://groups.google.com/group/android-group-japan からこのグループにアクセ
スしてください。
その他のオプションについては https://groups.google.com/d/optout にアクセスし
てください。


Reply all
Reply to author
Forward
0 new messages