1
마지막 프로젝트에서 나는 BLE 플러그인을 사용합니다.Xamarin.Forms - BLE 장치 연결이 끊어졌습니다.
하지만 지금은 그냥 장치를 찾고 당신이 목록에 직접 무엇을 발견 추가 해요
adapter.DeviceDiscovered += (s, a) =>
{
myDeviceList.Add(a.Device);
}
await adapter.StartScanningForDevicesAsync();
.
이 검색이 계속 작동하고 어떤 장치가 손실되면 자동으로 여기를 삭제할 수 있습니다.
BLE에는 StartScanningForDevicesAsync 클래스가 있지만 이것이 나에게 유용 할 지 모르겠다.
event EventHandler<DeviceErrorEventArgs> DeviceConnectionLost;
//
// Summary:
// Occurs when a device has been disconnected. This occurs on intendet disconnects
// after Plugin.BLE.Abstractions.Contracts.IAdapter.DisconnectDeviceAsync(Plugin.BLE.Abstractions.Contracts.IDevice).
이것이 가능합니까?
와 통신하기 위해 사용하는 기능을 유의하시기 바랍니다 - BLE 스캔이 매우 비싼 절차 배터리. 가이드 라인에서는 시간 간격을 최소화하여 기기를 검색하는 것을 권장합니다 (예 : 앱에서 15 초 사용). 타이머를 사용하여 기기를 검사하는 방법에 대한 조언을 드릴 수 있습니다. 예를 들어, 분당 10 초 (최소한이 값에서 시작하여 나중에 조정할 수 있습니다.) – Miamy
@Miamy 조언을 주셔서 감사합니다. 1 분 정도 스캔을 원한다면 어떤 종류의 코드를 사용해야합니까? 30 초마다 한 번씩 Scan 기능을 호출하려면 Task.Delay (30000)를 기다립니다. 명령을 사용했지만 이번에는 스캔 기능이 실행되지 않습니다. –