CBPeripheralManager.State все время неизвестен - PullRequest
0 голосов
/ 13 апреля 2019

Я хочу создать свой собственный сервер gatt в моем iPhone SE, но что-то пошло не так.

Я использую CBPeripheralManager для создания менеджера, и когда я проверял состояние при отладке, это было Unknown. Я кодировал его с помощью Xamarin, но позже попробовал и с Xcode, он дал тот же результат, как на моем iPhone SE, так и на симуляторе

public class RemoteXServerForIos
    {
        private CBPeripheralManager cBPeripheralManager;
        private CBMutableService remoteService;
        private CBMutableCharacteristic keyboardCharacteristic;
        public RemoteXServerForIos()
        {
            CBUUID[] cBUUIDs = new CBUUID[1];
            CBUUID cBUUID = CBUUID.FromString("AD86E9A5-AB95-4D75-A4BC-2A969F26E028");
            CBUUID characteristicUUID = CBUUID.FromString("3E628CA1-6357-4452-BD7D-04DA25E3CE8E");
            keyboardCharacteristic = new CBMutableCharacteristic(characteristicUUID, CBCharacteristicProperties.Broadcast, null, CBAttributePermissions.Readable);
            cBPeripheralManager = new CBPeripheralManager();
            remoteService = new CBMutableService(cBUUID, true);
            cBPeripheralManager.AddService(remoteService);
            cBUUIDs.Append(cBUUID);
            CBCharacteristic[] abc = { keyboardCharacteristic};
            remoteService.Characteristics = abc;
            var advertisingOption = new StartAdvertisingOptions
            {
                LocalName = "RemoteX Controller"
            };
            advertisingOption.ServicesUUID = cBUUIDs;

            cBPeripheralManager.StartAdvertising(advertisingOption);
            var abcd = cBPeripheralManager.State;
            CBCentralManager cBCentralManager = new CBCentralManager();
            var abcde = cBCentralManager.State;
        }
    }

Я хочу создать обнаруживаемую службу ГАТТ.

...