質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Bluetooth

Bluetoothとは短距離の間でデータを交換するための無線通信規格である。固定・モバイル両方のデバイスから、短波の電波送信を行うことで、高いセキュリティをもつパーソナルエリアネットワーク(PAN)を構築する。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

解決済

1回答

9038閲覧

【Androidアプリ開発】複数端末を同時にBluetoothで接続(通信)可能か?

haradami

総合スコア7

Bluetooth

Bluetoothとは短距離の間でデータを交換するための無線通信規格である。固定・モバイル両方のデバイスから、短波の電波送信を行うことで、高いセキュリティをもつパーソナルエリアネットワーク(PAN)を構築する。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2016/05/11 07:02

###前提・実現したいこと
複数端末をBluetoothで送受信(非同期)するAndroidアプリの作成

BluetoothにてA端末(センサー)⇒B端末(Android)にて受信したデータを、さらにBluetooth接続にて、C端末(PC)に送信

A→Bには、一定間隔でデータが送られており、受信できている状態。
(※ペアリングは行っていない)
そのデータを同様に一定間隔でB→CにBluetooth送信を行いたい。
(※こちらは、ペアリング実施予定)

###発生している問題・エラーメッセージ
B端末からC端末にBluetoothでデータを送りたいが、Aからの受信を続けたまま、
別のC端末とのBluetooth接続は可能か?

###該当のソースコード
※A→Bについては、センサー会社から提供されたソースを使用しているため、開示不可

###試したこと
実現可能か確認中の為、未実施。

###補足情報(言語/FW/ツール等のバージョンなど)
Java
JDK8、Android 5.1(Lollipop)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

可能ですが、いろいろな条件があります。

  • A-B

Bが受信側なのでBが頻繁に入力待機状態になる

  • B-C

Cが受信側なので頻繁に入力待機状態になる
A-B間通信で使用したUUIDは利用できない
機器CがBluetooth対応である必要がある
Bが受信したデータを送信アプリに送れる(センサー会社から提供されたソースを弄れる)
説明

入力待機状態ではスレッドが停止するので、入力と出力でスレッドかプロセスを分ける必要がある場合があります。入力内容をそのまま受け流すだけなら必要ないです。

また、CはPC本体とOSがBluetooth対応である必要があります。
OSはwin7以降なら自分も経験があるので大丈夫なはず。linuxは知りませんが、調べる限りではサンプルコードが出てきます。
自分はコンパイラBorland C++、OSはwindows10、MicrosoftSDKs(windows標準)とかいうのを使いました。(javaを使いたかったのですが非対応だったので)あくまで参考までに。

UUIDはサービスの識別を行うIDです。A-B通信で指定してあると思いますが、それを流用しようとコピペすると危ないです。UUIDは、11111111-2222-3333-4444-444444444444のような形式のものです。16進数で0~fまで使えるのでA-B間通信のUUIDの末尾を+1するのが簡単でしょう。BとCで同一ものもを利用する必要があります。

他にも関連することがあるかもしれませんが、自分が知る限りではこれくらいです。

投稿2016/07/04 15:24

intelf___

総合スコア868

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問