iPhoneとMac OS Xのアプリケーションで作業しています。これにより、近接してMacをロックしたりロック解除したりすることができます。信号の強さが決められたしきい値を下回っている場合、または接続が失われた場合は、Macをロックします。CoreBluetooth - backgrundモードでのiPhone広告
iPhoneをペリフェラル、Macをセントラルとして使用して、Apple CoreBluetoothフレームワークのBTLEを使用しています。ここまでは順調ですね。それも非常に良いwokrsしかし、私はiPhoneの背景にアプリを送信すると、広告が変化するようだ。 iPhoneはまだアドバタイズしているが、私がアプリで使っているサービスプロファイルや特性はない。 iPhoneがまだMacの範囲内にあるときは、まだ接続されていて特性が中央で使用されていないため、これは問題ではありませんが、iPhoneを範囲外に移動した後に問題になります。 Macがロックして、iPhoneの再接続が検出され、成功した場合はロックが解除されます。
しかし、この発見では、指定したサービスプロファイルと特性を使用して、アプリケーションを実行しているデバイスを取得し、ロックを解除するデバイスを特定するだけです。
サービスプロファイルなしで発見し、このiPhoneをロックとロック解除に使用したときに保存したUUIDで正しいデバイスを特定することで回避策を試しました。この回避策は小さな範囲でも機能します。なぜなら、iPhoneのBluetoothをオフにして再びオンにすると、別のUUIDが取得されるからです。それは私が暮らすことができる制約だが、数時間後にUUIDも変わってロック解除がうまくいかない。
誰かが既にそのようなアプリで作業していて、そのような問題を解決する方法を知っているのでしょうか?または、デバイスを識別するために使用できる静的な値を知っていますか?