core-android/src/main/java/com/uber/sdk/android/core/utils/Utility.java
public static boolean logAndShowBlockingDebugUIAlert(@NonNull Activity activity,
            final @NonNull String logMessage,
            final @NonNull String alertTitle,
            final @NonNull String alertMessage,
            final @NonNull RuntimeException exception) {
        Log.e(UberSdk.UBER_SDK_LOG_TAG, logMessage, exception);

        if(Utility.isDebugable(activity)) {
            new AlertDialog.Builder(activity)
                    .setTitle(alertTitle)
                    .setMessage(alertMessage)
                    .setNeutralButton(R.string.ub__alert_dialog_ok, new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                        }
                    }).show();
            return true;
        }
        return false;
    }
public static boolean logAndShowBlockingDebugUIAlert(@NonNull Activity activity,
            final @NonNull String logMessage,
            final @NonNull String alertTitle,
            final @NonNull String alertMessage,
            final @NonNull RuntimeException exception) {
        Log.e(UberSdk.UBER_SDK_LOG_TAG, logMessage, exception);

        if(Utility.isDebugable(activity)) {
            new AlertDialog.Builder(activity)
                    .setTitle(alertTitle)
                    .setMessage(alertMessage)
                    .setNeutralButton(R.string.ub__alert_dialog_ok, new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                        }
                    }).show();
            return true;
        }
        return false;
    }
Logs error and when debug is enabled, shows Alert Dialog with debug instructions.

@param activity
@param logMessage
@param alertTitle
@param alertMessage
@return true if developer error is shown, false otherwise.