Example #1
0
        private void FabOnClick(object sender, EventArgs eventArgs)
        {
            try
            {
                if (!(GetSystemService(UsbService) is UsbManager usbManager))
                {
                    throw new Exception("UsbManager is null");
                }

                var loggerFactory = LoggerFactory.Create((builder) => builder.AddDebug().SetMinimumLevel(LogLevel.Trace));

                var deviceManager = TrezorExample.UsbDeviceDefinitions
                                    .CreateAndroidUsbDeviceFactory(usbManager, base.ApplicationContext, loggerFactory: loggerFactory);

                _TrezorExample = new TrezorExample(deviceManager, loggerFactory);

                _TrezorExample.TrezorDisconnected += TrezorExample_TrezorDisconnected;
                _TrezorExample.TrezorInitialized  += TrezorExample_TrezorInitialized;
                _TrezorExample.StartListening();

                DisplayMessage("Waiting for device...");
            }
            catch (Exception ex)
            {
                DisplayMessage("Failed to start listener..." + ex.Message);
            }
        }
Example #2
0
        public MainPage()
        {
            InitializeComponent();

            var loggerFactory = LoggerFactory.Create((builder) => builder.AddDebug().SetMinimumLevel(LogLevel.Trace));

            _DeviceManager = new List <IDeviceFactory>
            {
                //Register the factory for creating Usb devices. This only needs to be done once.
                TrezorExample.HidDeviceDefinitions.CreateUwpHidDeviceFactory(loggerFactory),
                //Register the factory for creating Hid devices. This only needs to be done once.
                TrezorExample.UsbDeviceDefinitions.CreateUwpUsbDeviceFactory(loggerFactory)
            }.Aggregate(loggerFactory);

            _DeviceConnectionExample = new TrezorExample(_DeviceManager, loggerFactory);

            _DeviceConnectionExample.TrezorInitialized  += DeviceConnectionExample_TrezorInitialized;
            _DeviceConnectionExample.TrezorDisconnected += DeviceConnectionExample_TrezorDisconnected;

            //Create the example
            _DeviceConnectionExample = new TrezorExample(_DeviceManager, loggerFactory);
        }
Example #3
0
        private static async Task Main()
        {
            //Register the factories for creating Usb devices. This only needs to be done once.
#if LIBUSB
            _trezorFactories = new List <IDeviceFactory>
            {
                TrezorExample.UsbDeviceDefinitions.CreateLibUsbDeviceFactory(_loggerFactory)
            }.Aggregate(_loggerFactory);
#else
            _trezorFactories = new List <IDeviceFactory>
            {
                TrezorExample.UsbDeviceDefinitions.CreateWindowsUsbDeviceFactory(_loggerFactory),
                TrezorExample.HidDeviceDefinitions.CreateWindowsHidDeviceFactory(_loggerFactory),
            }.Aggregate(_loggerFactory);
#endif

            _DeviceConnectionExample = new TrezorExample(_trezorFactories, _loggerFactory);
            _DeviceConnectionExample.TrezorInitialized  += DeviceConnectionExample_TrezorInitialized;
            _DeviceConnectionExample.TrezorDisconnected += DeviceConnectionExample_TrezorDisconnected;

            await GoAsync().ConfigureAwait(false);
        }