151 Commits

Author SHA1 Message Date
Joel Arvidsson
181636c628 Update example to React Native 0.57.1 2018-09-30 14:31:59 +02:00
Jürno Ader
b2c07b9f77 Add hasInternetCredentials (#150)
This checks if the username/password combination for server is available in the secure storage.
Resolves to `true` if an entry exists or `false` if it doesn't.
2018-09-30 14:12:57 +02:00
Vojtech Novak
1abc167b70
extract a function, add null checks (#146)
* extract a function, add null checks

* rename function
2018-09-04 13:55:37 +02:00
Danish
575cd8c06a Update obsolete compile to implemenation (#141)
Hi, as React native 0.56.0 is released with MAJOR android changes such as:

-Gradle 3.5.1
-Compile using Android SDK 26
-Google Maven repo
-etc

more about Change log, specially of Android Here, https://github.com/react-native-community/react-native-releases/blob/master/CHANGELOG.md#android-projects-are-now-compiled-using-the-android-26-sdk
and https://github.com/react-native-community/react-native-releases/blob/master/CHANGELOG.md#android-specific-changes

Aslo as Per Google new "Google Play's target API level requirement", mentioned here  https://developer.android.com/distribute/best-practices/develop/target-sdk

"Google Play will require that new apps target at least Android 8.0 (API level 26) from August 1, 2018, and that app updates target Android 8.0 from November 1, 2018."

It's clear that Android would be moving to new Gradle and new SDK changes, Thus creating a new type of error that is:

"Configuration 'compile' is obsolete and has been replaced with 'implementation' or 'Api'" 

more about the Old and new configuration please see this https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration?utm_source=android-studio#new_configurations 
at the heading of "Use the new dependency configurations"

Therefore, all old "compile" should be now "implementation" or "provided" should be "compileOnly"

I have tested the with "compile" and "implementation" in my current release ready product and also by "renaming" "compile" to "implementation".
Also tested with higher andorid SDK configs such as of below:

```
ext {
    buildToolsVersion = "27.0.3"
    minSdkVersion = 19
    compileSdkVersion = 27
    targetSdkVersion = 27
    supportLibVersion = "27.1.1"
}
```

so SDK 27 was also compiled successully. test on Android phone with ADK 23 all looks good. Thus, `react-native-keychain` was working just fine as intended. thank you so much for this package btw.

Therefore, Please would it be possible to merge as i am sure many new projects and old one are going to update specially Gradle and SDK as of Google new requirements. 

related mention of Upgrading issue mention here https://github.com/facebook/react-native/issues/20273#issuecomment-405959030


Moreover, if someone still have any issue after upgrading everything successfully, then he should use following in build.gradle under `andorid/build.gradle`

```

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion '27.0.3'
                supportLibVersion = "27.1.1"
            }
        }
    }
}
```
2018-08-30 22:52:03 +02:00
Johannes Kronmüller
e98c057da2 android: use getReactApplicationContext instead of getCurrentActivity (#143) 2018-07-23 12:09:23 +02:00
Joel Arvidsson
554701f5be
Release 3.0.0 2018-07-20 10:09:21 +02:00
maxkomarychev
fca9c8ad2f Catch uncaught exceptions to prevent crash (#134)
`NullPointerException` thrown on some Huawei devices is crashing entire app.
Handle all exceptions and rethrow them as caught exceptions.

This is an attempt to prevent issue described in https://github.com/oblador/react-native-keychain/issues/115.
2018-07-20 10:07:07 +02:00
Tom Aranda
e311144745 Support React Native 0.56 (#139) 2018-07-20 10:04:17 +02:00
Joel Arvidsson
fbe8b2596e Rotate travis npm token 2018-07-19 23:13:33 +02:00
Jean-Philippe Monette
5a6e5b6ba8 Update typings for new constants (#122)
Add:
- SecAccessControl
- SecAccessible
- LAPolicy
- `accessible` for Options
2018-05-31 22:03:46 +02:00
Joel Arvidsson
937840ae68 Update package in Example project. Fixes #130 2018-05-31 22:00:14 +02:00
Timothy Mwirabua
f657bf8bc9 Clear form to demonstrate loading easily (#118) 2018-03-29 13:26:00 +02:00
Vojtech Novak
ee959ba42e
improve consistency and docs (#114)
* Update KeychainModule.java

* Update README.md
2018-03-13 16:24:58 +01:00
Johannes Filter
43b1f870f0 add missing await in readme (#113) 2018-03-08 00:21:39 +01:00
Joel Arvidsson
3c54d65441
3.0.0 Release Candidate 3 v3.0.0-rc.3 2018-02-28 14:15:10 +01:00
shofman
61b6626f34 Update DeviceAvailability to work with Android < 6 (#109)
Validate that the build version supports FingerprintManager before using it. Return false when not supported
2018-02-28 14:14:36 +01:00
Joel Arvidsson
009f7566a8 3.0.0 Release Candidate 2 v3.0.0-rc.2 2018-02-27 16:25:31 +01:00
Joel Arvidsson
c3990b0c09 Add Android support for getSupportedBiometryType 2018-02-27 16:20:37 +01:00
Joel Arvidsson
3247375911 3.0.0 Release Candidate 1 v3.0.0-rc.1 3.0.0-rc.1 2018-02-27 14:00:10 +01:00
Joel Arvidsson
ad8061e83d Update documentation in README 2018-02-27 13:58:37 +01:00
Joel Arvidsson
c2cc3285b7 Resolve with false instead of throwing for platforms that can't imply authentication 2018-02-27 11:51:13 +01:00
Joel Arvidsson
add90c5769 Remove *PasswordWithAuthentication and replace with accessControl option 2018-02-26 12:31:06 +01:00
Joel Arvidsson
37ea15ae5e Add APPLICATION_PASSWORD to accessControl options 2018-02-26 11:15:14 +01:00
Joel Arvidsson
f113f32e05 Document options in README 2018-02-26 00:38:31 +01:00
Joel Arvidsson
618acc7789 Rename TOUCH_ID_* enums to BIOMETRY_* 2018-02-26 00:14:48 +01:00
Joel Arvidsson
abed674800 Refactor iOS code and add accessGroup to *PasswordWithAuthentication 2018-02-25 23:53:42 +01:00
Joel Arvidsson
bb2adaedad Add human friendly error for errSecMissingEntitlement 2018-02-25 23:42:53 +01:00
Joel Arvidsson
9c734ac9f9 Rename customPrompt to authenticationPrompt 2018-02-25 23:42:15 +01:00
Vojtech Novak
7efae775e1
Update README.md 2018-02-25 22:18:26 +01:00
Joel Arvidsson
f596fa68bd Upgrade example to RN 0.53 and add tvOS target 2018-02-25 20:21:47 +01:00
Joel Arvidsson
9455bac5e9 Fix tvOS support 2018-02-25 20:21:01 +01:00
Joel Arvidsson
8a30ba0341 Update example app with biometric features 2018-02-25 19:24:35 +01:00
Joel Arvidsson
0b1b1d3395 Return null instead of throwing for getSupportedBiometryType on android 2018-02-25 19:23:36 +01:00
Joel Arvidsson
d6544520f2 Rename *SecurePassword to *PasswordWithAuthentication and unify arguments 2018-02-25 19:20:49 +01:00
Joel Arvidsson
ecaa3f0041 Fix resetGenericPassword to also clear those with authentication 2018-02-25 19:16:07 +01:00
Joel Arvidsson
d6a00596c4 Export enum options 2018-02-25 17:48:43 +01:00
Joel Arvidsson
b9fad8768e Fix formatting of iOS code 2018-02-25 17:21:12 +01:00
Joel Arvidsson
b227c59406 Don't throw in canImplyAuthentication 2018-02-25 17:07:18 +01:00
Joel Arvidsson
aac2d3d8c4 Add getSupportedBiometryType 2018-02-25 17:05:33 +01:00
Joel Arvidsson
1497383434 Throw on methods not yet supported on android 2018-02-25 16:29:33 +01:00
Joel Arvidsson
126c69266e Fix android related bugs in example app 2018-02-25 16:16:22 +01:00
Joel Arvidsson
a751670b92 Format with prettier and add .prettierrc 2018-02-25 16:14:17 +01:00
Steff
172368f2fd Protect the data stored in keychain by TouchId or Passcode (#65)
* First draft of implementing secured storage support (TouchId or Passcode)

* minor improvements

* improving the implementation; Support for AppDelegate-notification

* minor changes and improvements

* provding requested constant as usability feature; added documentation to canImplyAuthentication

* updating .d.ts-file

* when fetching stored items using the traditional modality (not TouchId or Passcode protected) ignore any items that need authentication.
2018-02-25 15:55:17 +01:00
Joel Arvidsson
55681fa8e8
Add logo to README 2018-02-25 15:12:36 +01:00
Joel Arvidsson
06e0ea8678 Release 2.0.0 v2.0.0 2018-01-08 22:23:24 +01:00
Joel Arvidsson
0619004744
Add travis config and release to npm automatically (#97) 2018-01-08 20:25:20 +01:00
Joel Arvidsson
c84f9517ca Bump RN version in KeychainExample 2018-01-08 20:15:36 +01:00
Kevin Barrett
0c9d6d6ab8 Update README to include proguard note (#88)
Add note on proguard exception rule to fix conceal error.
2017-11-19 13:54:38 +01:00
Vojtech Novak
610ad80134 do not specify RN version in gradle
previously this would cause gradle to fetch old rn version even though it wasn't needed
2017-09-06 15:34:50 +02:00
Julien K
712679ff89 Add react-native-keychain on tvOS (#78)
* [tvOS] Update podspec

* [tvOS] Add target

* [SecRequestSharedWebCredential] is only available on iOS and not tvOS

* [Security] Move into the same folder Framework

* [RNKeychainManager.m] Change indentation
2017-08-24 23:21:36 +02:00