0.18.0 iOS + Android
Common changes
0.18.x
and greater to work properly.
Android Changes
ActivationStatus
object has now convenience methodgetRemainingAttempts()
to get remaining authentication attempts.PowerAuthSDK
has new gettergetActivationIdentifier()
returning activation identifier or null, if there's no activation.- Updated networking model classes to
io.getlime.security:powerauth-restful-model:0.18.0
.
IOS Changes
⚠️ [ IMPORTANT ] PowerAuth SDK is now distributed as framework with dynamic library (check #81, #91 for reasons why we changed that). To migrate your existing codes, you have following options:- Recommended solution: You have to properly
import PowerAuth2
in your swift sources, to make library available for your code. After this change, the bridging header is no longer required. - Not recommended, but quick fix: If you're still using bridging header, then change PowerAuth SDK import to
#import <PowerAuth2/PowerAuth2.h>
- Recommended solution: You have to properly
⚠️ [ IMPORTANT ] You can now instantiatePowerAuthSDK
with providedPA2KeychainConfiguration
&PA2ClientConfiguration
configurations and each SDK instance has its own copy of configurations, which are immutable. This change has following implications:- Changing config's
.sharedInstace()
no longer affects previously constructedPowerAuthSDK
objects. If your code depending on shared configs, you have to configure those before you instantiatePowerAuthSDK
object. - Interfaces added to
PowerAuthSDK
:- new properties
keychainConfiguration
&clientConfiguration
contains configurations used during the SDK object creation - new constructor:
PowerAuthSDK(configuration:, keychainConfiguration:, clientConfiguration:)
- new shared instance initialization:
PowerAuthSDK.initSharedInstance(, keychainConfiguration:, clientConfiguration:)
- new properties
- Changing config's
- 🔺Now it's possible to debug PowerAuth2 library when it's integrated as cocoa pod.
- Several previously public interfaces are now private. This change is mostly about SDK's internal networking, but in case of problems, please check issue #24 for details.
- All public methods, constants or properties with
Touch ID
in naming are now deprecated:- Use
PA2Keychain.canUseBiometricAuthentication
instead ofPA2Keychain.canUseTouchId()
- Use
PowerAuthAuthentication.biometryPrompt
instead ofPowerAuthAuthentication.touchIdPrompt
- Use
PA2ErrorCodeBiometryNotAvailable
as a replacement forPA2ErrorCodeTouchIDNotAvailable
- Use
PA2ErrorCodeBiometryCancel
as a replacement forPA2ErrorCodeTouchIDCancel
- There's new
PA2Keychain.supportedBiometricAuthentication
property to determine supported biometry type. - All public and private
PA2Keychain
methods with "useTouchId" in prototype are now renamed to "useBiometry"
- Use
PA2ActivationStatus
object has now convenience propertyremainingAttempts
to get remaining authentication attempts.PowerAuthSDK
has new propertyactivationIdentifier
, returning activation identifier or nil, if there's no activation.pod PowerAuth2-Debug
is now deprecated and0.18.0
is the last released version.
watchOS Changes
We're releasing pod PowerAuth2ForWatch
together with its IOS counterpart and therefore the library version has been also increased. This SDK release has no functional changes to previous version.