diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 643a0538..6c509b2d 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -9,6 +9,24 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. are responsible for testing your translated layout in case you are using custom translations. [More on language localisation](README.md#4-localisation) +## [13.0.0] - 2022-09-07 + +### Added + +- Public: Add onfidoSecondaryButtonTextColor for secondary button title and border color customisation +- UI: Face alignment additional feedback for accessibility +- Public: Improve NFC instructions screen + +### Changed + +- Public: Allow enterprise features and mediacallback in orchesteratrion workflow builder +- Public: Removed unused strings with translations + +### Fixed + +- UI: Fix submitting proof of address uploading issue +- Public: Disable image quality validations before submission on the backside of Romanian National Identity Cards (fixing issues with blank backsides) + ## [12.3.1] - 2022-08-18 ### Fixed @@ -25,6 +43,7 @@ translations. [More on language localisation](README.md#4-localisation) ### Changed +- Public: Combined country and document type selection in one single screen (country first, document type second) - Public: Updated supported documents (Zambia NIC added, Albania Residence Permits removed, others) - Public: Introduced a new analytics event listener and deprecated the legacy UserEventHandler - Public: Disabled some functionalities that require Google Play Service when Google Play Service is unavailable diff --git a/MIGRATION.md b/MIGRATION.md index 2aa04bfe..6dca3f0e 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -1,5 +1,71 @@ # Onfido Android SDK Migration Guide +## `12.3.1` -> `13.0.0` + +### String Changes + +#### Added + +- `onfido_avc_face_alignment_feedback_move_left_accessibility` +- `onfido_avc_face_alignment_feedback_move_right_accessibility` +- `onfido_avc_face_alignment_feedback_move_up_accessibility` +- `onfido_avc_face_alignment_feedback_move_down_accessibility` + +#### Removed + +- `onfido_permission_recovery_button_secondary_cam` +- `onfido_permission_recovery_button_secondary_mic` +- `onfido_permission_recovery_button_secondary_both` +- `onfido_welcome_list_item_doc` +- `onfido_permission_recovery_subtitle_video` +- `onfido_permission_recovery_extra_instructions_cam` +- `onfido_permission_recovery_extra_instructions_mic` +- `onfido_permission_recovery_extra_instructions_both` +- `onfido_permission_recovery_body_mic` +- `onfido_permission_recovery_body_cam` +- `onfido_permission_recovery_body_both` +- `onfido_app_title_user_consent` +- `onfido_country_select_error_no_country_body` +- `onfido_welcome_list_item_video` +- `onfido_doc_confirmation_body_visa` +- `onfido_welcome_list_item_selfie` +- `onfido_welcome_list_header_photo` +- `onfido_welcome_list_header_record` +- `onfido_welcome_list_header_doc_video` +- `onfido_app_title_doc_video_confirmation` +- `onfido_doc_capture_header_license_front_auto` +- `onfido_doc_capture_header_visa_back` +- `onfido_doc_capture_header_passport_auto` +- `onfido_doc_capture_header_license_back_auto` +- `onfido_doc_capture_frame_accessibility_pp_cover_manual` +- `onfido_doc_capture_frame_accessibility_pp_manual` +- `onfido_welcome_list_item_face_generic` +- `onfido_doc_capture_alert_no_face_title` +- `onfido_doc_capture_alert_no_face_detail` +- `onfido_doc_capture_header_live_guidance_distance_ok` +- `onfido_doc_capture_header_live_guidance_distance_ok_accessibility` +- `onfido_nfc_intro_sheet_scanning_subtitle` +- `onfido_avc_connection_error_button_primary_reload` +- `onfido_doc_select_button_bill_detail` +- `onfido_poa_country_not_found` +- `onfido_doc_select_extra_no_mobile` +- `onfido_label_doc_type_driving_license_short` +- `onfido_label_doc_type_residence_permit_short` +- `onfido_face_tracking_timeout_button_retry` +- `onfido_allow` +- `onfido_permission_subtitle_video` +- `onfido_permission_body_video` +- `onfido_accessibility_liveness_confirmation_view` +- `onfido_nfc_sheet_ready_button_secondary` +- `onfido_nfc_intro_sheet_header_scan_retry` +- `onfido_nfc_sheet_scanning_instruction_retry` +- `onfido_nfc_intro_sheet_header_fail_passport` +- `onfido_nfc_intro_sheet_header_fail_card` +- `onfido_nfc_intro_sheet_header_ready_card` +- `onfido_nfc_intro_sheet_header_ready_passport` +- `onfido_poa_document_submission_empty` +- `onfido_flow_user_exit_message_user_cancelled` + ## `12.2.3` -> `12.3.0` ### Added Strings diff --git a/README.md b/README.md index f4d15786..23364445 100755 --- a/README.md +++ b/README.md @@ -125,8 +125,8 @@ Average size (with Proguard enabled): | ABI | Size | | ----------- | :-----: | -| armeabi-v7a | 6.79 Mb | -| arm64-v8a | 7.67 Mb | +| armeabi-v7a | 7.02 Mb | +| arm64-v8a | 7.91 Mb | #### 2.2 `onfido-capture-sdk-core` @@ -146,7 +146,7 @@ Average size (with Proguard enabled): | ABI | Size | | ----------- | :-----: | -| universal | 4.25 Mb | +| universal | 4.49 Mb | **Note**: The average sizes were measured by building the minimum possible wrappers around our SDK, @@ -360,11 +360,11 @@ For more information about this step, and how to collect user consent, please vi #### Document capture step -In this step, a user can pick the type of document and its issuing country before capturing it with their phone camera. +In this step, a user can select the issuing country and document type before taking the photo. This selection screen is optional, and will only be shown to the end user if a specific country and document type is not configured for the SDK. By default, the country will be pre-selected based on the end-user’s region settings on their device, but the end-user can select another country from the list. -Document type selection and country selection are both optional screens. These screens will only show to the end user if specific options are not configured to the SDK. +Country and document type selection are optional. This screen will only show to the end user if specific options are not configured to the SDK. -You can configure the document step to capture single document types with specific properties using the `DocumentCaptureStepBuilder` class's functions for the corresponding document types. +You can configure the document step to capture single document types with specific properties, as well as customize the screen to display only a limited list of document types using the `DocumentCaptureStepBuilder` class's functions for the corresponding document types. | Document Type | Configuration function | Configurable Properties | | ----------------------- | ----------------------- | ---------------------------- | @@ -380,13 +380,13 @@ You can configure the document step to capture single document types with specif - **Document type** -The list of document types visible for the user to select can be shown or hidden using this option. If only one document type is specified, users will not see the document selection screen or country selection screen and will be taken directly to the capture screen. +The list of document types visible for the user to select can be shown or hidden using this option. If only one document type is specified, users will not see the selection screen and will be taken directly to the capture screen. Please see a more detailed guide [here](https://documentation.onfido.com/sdk/android/#document-capture-step). Each document type has its own configuration class. ##### Customizing the document type selection screen -You can also customize the document type selection screen to display a specific list of documents for a user to select from. Use the configuration function to specify the document types to show on the document type selection screen. +You can also customize the screen to display only a limited list of document types, using the configuration function to specify the ones you want to show. ⚠️ Currently you can only include PASSPORT, NATIONAL_IDENTITY_CARD, DRIVING_LICENCE, RESIDENCE_PERMIT in the list. @@ -417,7 +417,7 @@ onfidoConfigBuilder.withAllowedDocumentTypes(documentTypes) - **Document country** -The configuration function allows you to specify the document's country of origin. If a document country is specified for a document type, the country selection screen is not displayed. +The configuration function allows you to specify the document's country of origin. If a document country is specified for a document type, the selection screen is displayed with preselected country. **Note**: You can specify country for all document types except `Passport`. This is because passports have the same format worldwide so the SDK does not require this additional information. @@ -587,6 +587,8 @@ the color of the text on the secondary action buttons (e.g. retake picture/video * `onfidoPrimaryButtonTextColor`: Defines the color of the text inside the primary action buttons +* `onfidoSecondaryButtonTextColor`: Defines the color of the text inside and border color of secondary action buttons + **Widgets** You can customize the appearance of some widgets in your `dimens.xml` file by overriding: @@ -844,8 +846,8 @@ For a full list of events see [TRACKED_EVENTS.md](TRACKED_EVENTS.md). | property | description | | ---- | ----- | -|`type` | **OnfidoAnalyticsEventType**
Indicates the type of event. Potential values (enum instances) are `FLOW`, `SCREEN`, `ACTION`, `ERROR`.| -| `properties` | **Map**
Contains details of an event. For example, you can get the name of the visited screen using the `SCREEN_NAME` property. The current potential property keys are: `SCREEN_NAME`, `SCREEN_MODE`, `DOCUMENT_TYPE`, `COUNTRY_CODE`, `VIDEO_CHALLENGE_TYPE`, `IS_AUTOCAPTURE`.| +|`type` | **OnfidoAnalyticsEventType**
Indicates the type of event. Potential values (enum instances) are `FLOW`, `SCREEN`, `ACTION`, `ERROR`.| +| `properties` | **Map**
Contains details of an event. For example, you can get the name of the visited screen using the `SCREEN_NAME` property. The current potential property keys are: `SCREEN_NAME`, `SCREEN_MODE`, `DOCUMENT_TYPE`, `COUNTRY_CODE`, `VIDEO_CHALLENGE_TYPE`, `IS_AUTOCAPTURE`.| ### Properties diff --git a/sample-app/app/build.gradle b/sample-app/app/build.gradle index b4c53b2f..6941c320 100644 --- a/sample-app/app/build.gradle +++ b/sample-app/app/build.gradle @@ -1,14 +1,14 @@ apply plugin: 'com.android.application' -def sdkVersion = '12.3.1' -def versionCodeNumber = 1230 +def sdkVersion = '13.0.0-rc.1' +def versionCodeNumber = 1300 android { - compileSdkVersion 30 + compileSdkVersion 31 defaultConfig { applicationId "com.onfido.sampleapp" minSdkVersion 21 - targetSdkVersion 29 + targetSdkVersion 31 versionCode versionCodeNumber versionName "$versionCode-sdk:$sdkVersion" multiDexEnabled true diff --git a/sample-app/app/src/main/AndroidManifest.xml b/sample-app/app/src/main/AndroidManifest.xml index 286d383e..71222ede 100644 --- a/sample-app/app/src/main/AndroidManifest.xml +++ b/sample-app/app/src/main/AndroidManifest.xml @@ -14,7 +14,8 @@ + android:theme="@style/AppTheme.NoActionBar" + android:exported="true"> @@ -22,4 +23,4 @@ - \ No newline at end of file + diff --git a/screenshots.jpg b/screenshots.jpg index 73852d9d..457ed5ba 100644 Binary files a/screenshots.jpg and b/screenshots.jpg differ diff --git a/strings.xml b/strings.xml index 689e8648..94508bb0 100644 --- a/strings.xml +++ b/strings.xml @@ -23,9 +23,6 @@ That\’s all we need to start verifying your identity Continue Record video - Cancel - Cancel - Cancel Loading @@ -34,11 +31,9 @@ Passport Visa Driver’s license - license National Identity Card Residence permit Work permit - permit Photo page @@ -51,7 +46,6 @@ Verify your identity Verify your identity It should take a few minutes - your identity document Take a selfie Take a selfie Select issuing country @@ -62,7 +56,6 @@ We’ll compare this with your document Keep your face within the oval Retry - Retry There is no camera available in this device Camera is unavailable. There might be another application using it at the same time. Make sure your entire face is visible @@ -121,31 +114,24 @@ Blurry photo detected Barcode not detected Stay in a well-lit spot and bring the card closer to the camera - Allow Enable in settings Allow camera access When prompted, you must enable camera access to continue - Enable your camera to take a video We cannot verify you without using your camera - If you deny camera access, you won’t be able to take a video and complete the verification process Enable camera We can’t verify you without your camera Go to app settings and enable camera access for this app You can recover camera access through your device settings Camera access denied - Recover camera access to take a video and complete the verification process - Go to your device settings to recover %1$s camera access Allow microphone access When prompted, you must enable microphone access to continue Enable microphone Microphone access denied - Go to your device settings to recover %1$s microphone access - Tap on “Permissions” to grant access to the microphone We can’t verify you without using your microphone You can recover microphone access through your device settings Go to app settings and enable microphone access for this app @@ -155,9 +141,6 @@ Allow camera and microphone access When prompted, you must enable access for both to continue Camera and microphone access denied - Go to your device settings to recover %1$s camera and microphone access - Tap on “Permissions” to grant access to the camera - Tap on “Permissions” to grant access to the camera and microphone Wrong side Reload instructions Connection timeout @@ -174,7 +157,6 @@ View from camera Photo of your face Photo of your document - Your video Your video has been recorded Preview of your recorded video You should hear yourself saying: %1$s @@ -198,7 +180,6 @@ If you do not accept Onfido’s privacy statements and terms of service, we will not be able to verify your identity and you will exit this step. Yes, don’t verify me Review again - Verify your identity We’ll turn on your device flash during the video recording @@ -228,11 +209,8 @@ then face forward Ready to scan - Cancel Cancel Scanning... - Retrying... - Move your phone slightly Keep your phone still Scan successful Turn on NFC @@ -241,13 +219,11 @@ Open settings Submit photo - We’re working on adding more countries to the list. In the meantime, try using an alternative document. Face forward and make sure your eyes are clearly visible Submit photo Submit photo Submit photo Make sure everything is clear - a video of yourself Make sure all of the document is in the photo Retake photo Retake photo @@ -255,7 +231,6 @@ Take selfie You have %1$d seconds to finish - Make sure your details are clear and unobstructed Submit photo Submit photo Submit photo @@ -267,7 +242,6 @@ - your face Remove your glasses, if necessary Align document, then press button It must be an official photo ID @@ -283,25 +257,20 @@ Retake photo Record a video Choose another document - Turn your head left Turn your head right Keep your face within the oval to start recording - Use your device to photograph: - Use your device to photograph or record: Verify your identity Verify your identity Verify your identity Verify your identity Verify your identity Verify your identity - Verify your identity Choose document Start - Use your device to record: Face detected. Recording has started. Head turn detected @@ -313,7 +282,6 @@ Position the outer pages of your document in the frame Position the front of your document in the frame - Position the front of your document in the frame Position the back of your document in the frame Position the front of your document in the frame Position the back of your document in the frame @@ -322,12 +290,9 @@ Position the front of your document in the frame Position the back of your document in the frame Position the visa page of your document in the frame - Position the visa page of your document in the frame Position the front of your document in the frame Position the back of your document in the frame Position the photo page of your document in the frame - Position the photo page of your document in the frame - Position the back of your document in the frame View from camera. Position the photo page of your document in the frame. Your device will vibrate when the image is captured View from camera. Position the front of your document in the frame, then tap the shutter button View from camera. Position the back of your document in the frame, then tap the shutter button @@ -345,9 +310,7 @@ View from camera. Position the outer pages of your document in the frame, then tap the shutter button View from camera. Position the photo side of your document in the frame, then tap the shutter button View from camera. Position the outer pages of your document in the frame, then tap the shutter button - View from camera. Position the cover of your document in the frame, then tap the shutter button Position the photo side of your document in the frame - View from camera. Position your passport photo page within the frame, then tap the shutter button Restart the recording To clear this step, you must keep your face within view throughout the recording. Restart @@ -358,12 +321,8 @@ Scan your identity document Take a photo of your face Record a video of your face - Scan your face - - Face not detected - Make sure your face is visible - Bottom three lines not visible + Bottom three lines not visible Retry scanning Retry scanning @@ -379,18 +338,15 @@ Start scanning Don’t move your phone or passport while scanning You can also try the inside of the back page - Lay your passport on a flat surface - Place your phone near the top of your passport - Remove your passport cover + Lay your passport on a flat surface + Place your phone over the passport + Remove your passport cover + Slowly slide your phone down Scan your NFC card Scan your ePassport - We couldn’t scan your passport - We couldn’t scan your NFC card Place your phone on the card and keep it near the top of your phone Follow these instructions Start scanning - Place your phone on the card - Place your phone on your closed passport We’ve successfully scanned your passport We’ve successfully scanned your card @@ -414,9 +370,7 @@ Document too close to camera Document too far Document too far away from camera - Keep this distance - Keep this distance from your document - Move left + Move left Move your device to the left Move right Move your device to the right @@ -438,8 +392,7 @@ Hold still Place your phone near the top of your passport - Scanning... - Place your phone on the card + Place your phone on the card Keep your phone still Lost contact with card Lost contact with passport @@ -455,9 +408,9 @@ Move closer Move back Face not detected - Turn your head slowly to both sides - Recording complete - Sorry, we have to restart the recording + Turn your head slowly to both sides + Recording complete + Sorry, we have to restart the recording You have up to 15 seconds to complete the recording Retry You turned your head too fast @@ -474,24 +427,29 @@ Upload recording Connection error Check that your connection is stable, then try again - Reload instructions - Face not centered - Retry upload + Face not centered + Retry upload Restart recording - Record a video of your face - Example video of someone turning their head to both sides until completion - View from selfie camera - Left side complete - Right side complete - Turn your head slowly to both sides. When a side is completed you will hear a confirmation and feel a vibration - Recording has started - Position your face in front of your device - Face not detected. Position your face in front of your device - Face aligned - Move your device closer - Move your device back + Record a video of your face + Example video of someone turning their head to both sides until completion + Keep turning your head + Turn your head to the other side + View from selfie camera + Left side complete + Right side complete + Turn your head slowly to both sides. When a side is completed you will hear a confirmation and feel a vibration + Recording has started + Position your face in front of your device + Face not detected. Position your face in front of your device + Face aligned + Move your device closer + Move your device back + Move your device to the left + Move your device to the right + Move your device up + Move your device down Start verification @@ -507,8 +465,7 @@ Bank statement e-statements accepted Utility Bill - Gas, electricity, water, landline, or broadband - Council Tax Letter + Council Tax Letter Benefits Letter Government authorised household benefits eg. Jobseeker allowance, Housing benefit, Tax credits Must have been issued in the <b>last 3 months</b> @@ -532,12 +489,10 @@ Close Front of address document - - Invalid File + Invalid File Please choose a different file. OK - Sorry about that. We are working on supporting more countries. - Take a photo of a document with your address + Take a photo of a document with your address We’re working on adding more countries to the list. Sorry, no mobile phone bills Gas, electricity, water, landline, or broadband. Sorry, no mobile phone bills @@ -549,4 +504,5 @@ Entire page Photo page Front and back - Select issuing country + Select issuing country +