Skip to content

Commit bac5ccf

Browse files
committed
#using yoti scheme for launching EasyId app in partnership theme
#YM-23299
1 parent 5090c39 commit bac5ccf

File tree

1 file changed

+17
-5
lines changed
  • yoti-sdk/src/main/java/com/yoti/mobile/android/sdk

1 file changed

+17
-5
lines changed

yoti-sdk/src/main/java/com/yoti/mobile/android/sdk/YotiSDK.java

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
import java.util.HashMap;
2424

25+
import static com.yoti.mobile.android.sdk.ButtonTheme.THEME_PARTNERSHIP;
2526
import static com.yoti.mobile.android.sdk.ButtonTheme.THEME_YOTI;
2627
import static com.yoti.mobile.android.sdk.exceptions.AppNotInstalledErrorCode.EASY_ID_APP_NOT_INSTALLED;
2728
import static com.yoti.mobile.android.sdk.exceptions.AppNotInstalledErrorCode.PARTNERSHIP_APP_NOT_INSTALLED;
@@ -143,7 +144,7 @@ static void startScenario(final Context context, final String useCaseId,
143144
}
144145

145146
YotiSDKLogger.debug("Started scenario " + useCaseId);
146-
KernelSDKIntentService.startActionStartScenario(context, useCaseId, onYotiCalledResultReceiver, getLaunchingAppScheme(appPackageInfo));
147+
KernelSDKIntentService.startActionStartScenario(context, useCaseId, onYotiCalledResultReceiver, getLaunchingAppScheme(sdkButtonTheme, appPackageInfo));
147148
}
148149

149150
private static PackageInfo getAppPackageInfoBasedOnTheme(PackageManager packageManager, ButtonTheme buttonTheme) throws YotiSDKAppNotInstalledException {
@@ -154,8 +155,7 @@ private static PackageInfo getAppPackageInfoBasedOnTheme(PackageManager packageM
154155
case THEME_PARTNERSHIP:
155156
if (checkAppInstalled(packageManager, YotiAppDefs.YOTI_APP_PACKAGE)) {
156157
packageInfo = packageManager.getPackageInfo(YotiAppDefs.YOTI_APP_PACKAGE, 0);
157-
} else if (checkAppInstalled(packageManager, YotiAppDefs.EASY_ID_APP_PACKAGE)
158-
&& checkEasyAppWithSchemeAvailable(packageManager)) {
158+
} else if (checkAppInstalled(packageManager, YotiAppDefs.EASY_ID_APP_PACKAGE)) {
159159
packageInfo = packageManager.getPackageInfo(YotiAppDefs.EASY_ID_APP_PACKAGE, 0);
160160
} else {
161161
AppNotInstalledErrorCode errorCode = buttonTheme == THEME_YOTI ? YOTI_APP_NOT_INSTALLED : PARTNERSHIP_APP_NOT_INSTALLED;
@@ -193,9 +193,21 @@ private static boolean checkEasyAppWithSchemeAvailable(@NonNull PackageManager p
193193
return intent.resolveActivity(packageManager) != null;
194194
}
195195

196-
private static String getLaunchingAppScheme(PackageInfo packageInfo) {
196+
/**
197+
* For EasyId theme, we are supporting launching EasyId app from v3.30.0 so for Partnership
198+
* or Yoti theme we will use yoti:// scheme to launch EasyId app
199+
*
200+
* @param buttonTheme applied button theme
201+
* @param packageInfo installed app's package info
202+
* @return resolved scheme Ex. yoti:// or easyid://
203+
*/
204+
private static String getLaunchingAppScheme(ButtonTheme buttonTheme, PackageInfo packageInfo) {
197205
if(packageInfo != null && packageInfo.packageName.equals(YotiAppDefs.EASY_ID_APP_PACKAGE)) {
198-
return YotiAppDefs.EASY_ID_APP_SCHEME;
206+
if (buttonTheme == THEME_PARTNERSHIP || buttonTheme == THEME_YOTI) {
207+
return YotiAppDefs.YOTI_APP_SCHEME;
208+
} else {
209+
return YotiAppDefs.EASY_ID_APP_SCHEME;
210+
}
199211
}
200212
else {
201213
return YotiAppDefs.YOTI_APP_SCHEME;

0 commit comments

Comments
 (0)