mirror of
https://github.com/bitwarden/android.git
synced 2024-12-25 02:18:27 +03:00
clearup yubikey reading on ios
This commit is contained in:
parent
d3003efe72
commit
d3646e10a5
4 changed files with 24 additions and 8 deletions
9
src/App/Resources/AppResources.Designer.cs
generated
9
src/App/Resources/AppResources.Designer.cs
generated
|
@ -1590,6 +1590,15 @@ namespace Bit.App.Resources {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized string similar to Hold your Yubikey near the top of the device..
|
||||||
|
/// </summary>
|
||||||
|
public static string HoldYubikeyNearTop {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("HoldYubikeyNearTop", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized string similar to Host.
|
/// Looks up a localized string similar to Host.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -1293,4 +1293,7 @@
|
||||||
<value>Organization</value>
|
<value>Organization</value>
|
||||||
<comment>An entity of multiple related people (ex. a team or business organization).</comment>
|
<comment>An entity of multiple related people (ex. a team or business organization).</comment>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="HoldYubikeyNearTop" xml:space="preserve">
|
||||||
|
<value>Hold your Yubikey near the top of the device.</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -21,6 +21,7 @@ using FFImageLoading.Forms.Touch;
|
||||||
using SimpleInjector;
|
using SimpleInjector;
|
||||||
using XLabs.Ioc.SimpleInjectorContainer;
|
using XLabs.Ioc.SimpleInjectorContainer;
|
||||||
using CoreNFC;
|
using CoreNFC;
|
||||||
|
using Bit.App.Resources;
|
||||||
|
|
||||||
namespace Bit.iOS
|
namespace Bit.iOS
|
||||||
{
|
{
|
||||||
|
@ -120,21 +121,26 @@ namespace Bit.iOS
|
||||||
|
|
||||||
if(listen)
|
if(listen)
|
||||||
{
|
{
|
||||||
var del = new NFCReaderDelegate((success, message) =>
|
_nfcSession?.InvalidateSession();
|
||||||
|
_nfcSession?.Dispose();
|
||||||
|
_nfcSession = null;
|
||||||
|
_nfcSession = new NFCNdefReaderSession(new NFCReaderDelegate((success, message) =>
|
||||||
{
|
{
|
||||||
Debug.WriteLine((success ? "SUCCESS! " : "ERROR! ") + message);
|
|
||||||
if(success)
|
if(success)
|
||||||
|
{
|
||||||
|
Device.BeginInvokeOnMainThread(() =>
|
||||||
{
|
{
|
||||||
MessagingCenter.Send(Xamarin.Forms.Application.Current, "GotYubiKeyOTP", message);
|
MessagingCenter.Send(Xamarin.Forms.Application.Current, "GotYubiKeyOTP", message);
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
}
|
||||||
_nfcSession = new NFCNdefReaderSession(del, null, true);
|
}), null, true);
|
||||||
|
_nfcSession.AlertMessage = AppResources.HoldYubikeyNearTop;
|
||||||
_nfcSession.BeginSession();
|
_nfcSession.BeginSession();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_nfcSession?.InvalidateSession();
|
_nfcSession?.InvalidateSession();
|
||||||
|
_nfcSession?.Dispose();
|
||||||
_nfcSession = null;
|
_nfcSession = null;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -34,12 +34,10 @@ namespace Bit.iOS
|
||||||
|
|
||||||
foreach(var result in results)
|
foreach(var result in results)
|
||||||
{
|
{
|
||||||
Debug.WriteLine("READ TAG: " + result);
|
|
||||||
var matches = _otpPattern.Matches(result);
|
var matches = _otpPattern.Matches(result);
|
||||||
if(matches.Count > 0 && matches[0].Groups.Count > 1)
|
if(matches.Count > 0 && matches[0].Groups.Count > 1)
|
||||||
{
|
{
|
||||||
var otp = matches[0].Groups[1].ToString();
|
var otp = matches[0].Groups[1].ToString();
|
||||||
Debug.WriteLine("TAG IS MATCH: " + otp);
|
|
||||||
_callback.Invoke(true, otp);
|
_callback.Invoke(true, otp);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue