2011-11-15 10 views
0

私は、Bluetoothを介してデバイスを接続し、メッセージを交換するアプリケーションを開発しています。ペアになっているデバイスでうまく動作しますが、ペアになっていないデバイスを自動的にペアリングすることも欲しいと思います。たとえば、リクエストをペアリングするために同じPINを保存して使用することができますが、私のアプリケーションでこのリクエストをプログラム的に管理する方法、ペアリング要求を受け取ったときにPINを自動的に設定して送信する方法、あらかじめ定義されたPINコードでアンドロイドの2つのBluetoothデバイスの自動/プログラムによるペアリングの方法はありますか?

スニペットや考えは高く評価されます。 :)

編集: 私はその危険を知っています、私は緊急事態のためにこのアプリケーションを開発しています。また、デバイスに接続しなくても早い段階でペアリングする方法がありますか?同様に、それらのデバイスのMACアドレスのリストがあり、デバイスでペアになっているようにそれらのデバイスとの結合を生成するためにそれらを使用することができますか?

+1

[ここではラウンドアバウトです] [1]これは反射を通してこれを行う方法です。 [1]:http://stackoverflow.com/questions/4464426/specifying-a-link-key-in-android-without-pairing/5858799#5858799 –

+0

おかげで、どのようなAPIのバージョンがということですので、利用可能ですか? – Miky

+0

@DennisMathews私はペアリング要求を聞くために放送受信機を作って、PINを設定するためにリフレクションを使用しましたが、今は私が非結合デバイスに接続しているときにペア設定ダイアログが両方のデバイスに同時に表示されます。しかし、コンソールがエラーを表示しなくても、デバイスは結合されていないように見えます。何か案は? – Miky

答えて

1

setPinメソッドを反映させると、ピンを自動的に他のデバイスに送信することができました。ペアリング要求を聞いている放送受信機に実装しなければなりませんでした。私は対話を取り除くことはできませんが、画面上にはまってしまいます。このダイアログはブロックメソッドであるconnect()の内側から呼び出されているため、接続を終了する方法はわかりません。私はまだそれをあきらめるつもりはありません:)

+0

私はそれがずっと前だと知っていますが、あなたはピンプロンプトを取り除くことができましたか? – mol

+1

残念ながら私は残念ながら私は覚えていませんでした:( 私はWiFiアドホック接続でもっと多くのことをすることができました。 – Miky

1

これはできません。あなたがしたいことをすることは、巨大なセキュリティリスクを作り出します。それについて考えて、私のデバイスはあなたのブルートゥースレンジのどこにでも来て、あなたが知らないうちに私が望むものをあなたに送ることができますか?あなたは本当にこれを行うことはできませんし、それを覆そうとしないことを強くお勧めします。

+1

これは自分がコントロールしているデバイス(つまりソフトウェアを実行しているデバイス)に限定されている可能性が高いため、言及しているリスクは関係しないと思います。また、私はそれが可能であると確信しています...すべてがあります。 – Fosco

+1

@Foscoはい、あなたはおそらく正しいでしょう。おそらくこれを行う方法があります。しかし、これまでのところ、それは破壊的である可能性が高いです。そして、彼は彼のアプリでのみこれを行う場合、はい、彼はまだセキュリティリスクに自分自身を開いています。彼のアプリは本質的にブルートゥースの装甲全体に傷をつけます。どのように自分のアプリを破壊するかを知っている人なら、それを実行しているデバイスをハックすることができます。 –

+0

ありがとう、私はちょっとしたものを整えるために質問を更新して、新しいものを手に入れました:) – Miky

関連する問題