package com.baidu.ocr.sdk; import android.annotation.SuppressLint; import android.content.Context; import android.content.SharedPreferences; import android.util.Base64; import asmack.org.xbill.DNS.SimpleResolver; import com.baidu.ocr.sdk.exception.OCRError; import com.baidu.ocr.sdk.exception.SDKError; import com.baidu.ocr.sdk.jni.JniInterface; import com.baidu.ocr.sdk.model.AccessToken; import com.baidu.ocr.sdk.model.BankCardParams; import com.baidu.ocr.sdk.model.BankCardResult; import com.baidu.ocr.sdk.model.GeneralBasicParams; import com.baidu.ocr.sdk.model.GeneralParams; import com.baidu.ocr.sdk.model.GeneralResult; import com.baidu.ocr.sdk.model.IDCardParams; import com.baidu.ocr.sdk.model.IDCardResult; import com.baidu.ocr.sdk.model.OcrRequestParams; import com.baidu.ocr.sdk.model.OcrResponseResult; import com.baidu.ocr.sdk.utils.AccessTokenParser; import com.baidu.ocr.sdk.utils.BankCardResultParser; import com.baidu.ocr.sdk.utils.CrashReporterHandler; import com.baidu.ocr.sdk.utils.DeviceUtil; import com.baidu.ocr.sdk.utils.GeneralResultParser; import com.baidu.ocr.sdk.utils.GeneralSimpleResultParser; import com.baidu.ocr.sdk.utils.HttpUtil; import com.baidu.ocr.sdk.utils.IDCardResultParser; import com.baidu.ocr.sdk.utils.ImageUtil; import com.baidu.ocr.sdk.utils.OcrResultParser; import com.baidu.ocr.sdk.utils.Util; import java.io.File; public class OCR { private static final int AUTHWITH_AKSK = 2; private static final int AUTHWITH_LICENSE = 1; private static final int AUTHWITH_NOTYET = 0; private static final int AUTHWITH_TOKEN = 3; private static final String BANK_CARD_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/bankcard?"; private static final String ID_CARD_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/idcard?"; private static final int IMAGE_MAX_HEIGHT = 1280; private static final int IMAGE_MAX_WIDTH = 1280; public static final String OCR_SDK_VERSION = "1_4_4"; private static final String PREFRENCE_AUTH_TYPE = "token_auth_type"; private static final String PREFRENCE_EXPIRETIME_KEY = "token_expire_time"; private static final String PREFRENCE_FILE_KEY = "com.baidu.ocr.sdk"; private static final String PREFRENCE_TOKENJSON_KEY = "token_json"; private static final String QUERY_TOKEN = "https://verify.baidubce.com/verify/1.0/token/sk?sdkVersion=1_4_4"; private static final String QUERY_TOKEN_BIN = "https://verify.baidubce.com/verify/1.0/token/bin?sdkVersion=1_4_4"; private static final String RECOGNIZE_ACCURATE_BASIC_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic?"; private static final String RECOGNIZE_ACCURATE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate?"; private static final String RECOGNIZE_BUSINESS_CARD_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/business_card?"; private static final String RECOGNIZE_BUSINESS_LICENSE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/business_license?"; private static final String RECOGNIZE_CUSTOM = "https://aip.baidubce.com/rest/2.0/solution/v1/iocr/recognise?"; private static final String RECOGNIZE_DRIVING_LICENSE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/driving_license?"; private static final String RECOGNIZE_GENERAL_BASIC_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?"; private static final String RECOGNIZE_GENERAL_ENHANCE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_enhanced?"; private static final String RECOGNIZE_GENERAL_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/general?"; private static final String RECOGNIZE_GENERAL_WEBIMAGE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/webimage?"; private static final String RECOGNIZE_HANDWRITING_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/handwriting?"; private static final String RECOGNIZE_LICENSE_PLATE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/license_plate?"; private static final String RECOGNIZE_LOTTERY_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/lottery?"; private static final String RECOGNIZE_NUMBERS_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/numbers?"; private static final String RECOGNIZE_PASSPORT_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/passport?"; private static final String RECOGNIZE_QRCODE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/qrcode?"; private static final String RECOGNIZE_RECEIPT_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/receipt?"; private static final String RECOGNIZE_VAT_INVOICE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/vat_invoice?"; private static final String RECOGNIZE_VEHICLE_LICENSE_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/vehicle_license?"; private static volatile OCR instance; private AccessToken accessToken = null; private String ak = null; private int authStatus = 0; @SuppressLint({"StaticFieldLeak"}) private Context context; private CrashReporterHandler crInst; private boolean isAutoCacheToken = false; private String license = null; private String sk = null; private OCR(Context context2) { if (context2 != null) { this.context = context2; } } private AccessToken getByCache() { if (!this.isAutoCacheToken) { return null; } SharedPreferences sharedPreferences = this.context.getSharedPreferences("com.baidu.ocr.sdk", 0); String string = sharedPreferences.getString(PREFRENCE_TOKENJSON_KEY, ""); int i = sharedPreferences.getInt(PREFRENCE_AUTH_TYPE, 0); if (i != this.authStatus) { SharedPreferences.Editor edit = sharedPreferences.edit(); edit.clear(); edit.commit(); return null; } try { AccessToken parse = new AccessTokenParser().parse(string); parse.setExpireTime(sharedPreferences.getLong(PREFRENCE_EXPIRETIME_KEY, 0)); this.authStatus = i; return parse; } catch (SDKError unused) { return null; } } public static OCR getInstance(Context context2) { if (instance == null) { synchronized (OCR.class) { if (instance == null) { instance = new OCR(context2); } } } return instance; } private void getToken(final OnResultListener onResultListener) { if (isTokenInvalid()) { if (this.authStatus == 2) { initAccessTokenWithAkSk(new OnResultListener<AccessToken>() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass6 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { onResultListener.onError(oCRError); } public void onResult(AccessToken accessToken) { OCR.this.setAccessToken(accessToken); onResultListener.onResult(accessToken); } }, this.context, this.ak, this.sk); } if (this.authStatus == 1) { initAccessToken(new OnResultListener<AccessToken>() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass7 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { onResultListener.onError(oCRError); } public void onResult(AccessToken accessToken) { OCR.this.setAccessToken(accessToken); onResultListener.onResult(accessToken); } }, this.context); return; } return; } onResultListener.onResult(this.accessToken); } private void initAccessTokenImpl(OnResultListener<AccessToken> onResultListener, String str, Context context2) { byte[] bArr; this.authStatus = 1; init(context2); Throwable loadLibraryError = JniInterface.getLoadLibraryError(); if (loadLibraryError != null) { onResultListener.onError(new SDKError(SDKError.ErrorCode.LOAD_JNI_LIBRARY_ERROR, "Load jni so library error", loadLibraryError)); return; } JniInterface jniInterface = new JniInterface(); if (str == null) { try { bArr = jniInterface.initWithBin(context2, DeviceUtil.getDeviceInfo(context2)); } catch (OCRError e2) { onResultListener.onError(e2); return; } } else { bArr = jniInterface.initWithBinLic(context2, DeviceUtil.getDeviceInfo(context2), str); } String encodeToString = Base64.encodeToString(bArr, 2); AccessToken byCache = getByCache(); if (byCache != null) { this.accessToken = byCache; onResultListener.onResult(byCache); return; } HttpUtil.getInstance().getAccessToken(onResultListener, QUERY_TOKEN_BIN, encodeToString); } private synchronized boolean isTokenInvalid() { return this.accessToken == null || this.accessToken.hasExpired(); } private void recognizeLocation(final GeneralParams generalParams, final OnResultListener<GeneralResult> onResultListener, final String str) { File imageFile = generalParams.getImageFile(); final File file = new File(this.context.getCacheDir(), String.valueOf(System.currentTimeMillis())); ImageUtil.resize(imageFile.getAbsolutePath(), file.getAbsolutePath(), SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE, SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE); generalParams.setImageFile(file); final GeneralResultParser generalResultParser = new GeneralResultParser(); getToken(new OnResultListener() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass1 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { onResultListener.onError(oCRError); } @Override // com.baidu.ocr.sdk.OnResultListener public void onResult(Object obj) { HttpUtil.getInstance().post(OCR.this.urlAppendCommonParams(str), generalParams, generalResultParser, new OnResultListener<GeneralResult>() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass1.AnonymousClass1 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onError(oCRError); } } public void onResult(GeneralResult generalResult) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onResult(generalResult); } } }); } }); } private void recognizeNoLocation(final GeneralBasicParams generalBasicParams, final OnResultListener<GeneralResult> onResultListener, final String str) { File imageFile = generalBasicParams.getImageFile(); final File file = new File(this.context.getCacheDir(), String.valueOf(System.currentTimeMillis())); ImageUtil.resize(imageFile.getAbsolutePath(), file.getAbsolutePath(), SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE, SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE); generalBasicParams.setImageFile(file); final GeneralSimpleResultParser generalSimpleResultParser = new GeneralSimpleResultParser(); getToken(new OnResultListener() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass2 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { onResultListener.onError(oCRError); } @Override // com.baidu.ocr.sdk.OnResultListener public void onResult(Object obj) { HttpUtil.getInstance().post(OCR.this.urlAppendCommonParams(str), generalBasicParams, generalSimpleResultParser, new OnResultListener<GeneralResult>() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass2.AnonymousClass1 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onError(oCRError); } } public void onResult(GeneralResult generalResult) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onResult(generalResult); } } }); } }); } /* access modifiers changed from: private */ /* access modifiers changed from: public */ private String urlAppendCommonParams(String str) { return str + "access_token=" + getAccessToken().getAccessToken() + "&aipSdk=Android" + "&aipSdkVersion=" + OCR_SDK_VERSION + "&aipDevid=" + DeviceUtil.getDeviceId(this.context); } public synchronized AccessToken getAccessToken() { return this.accessToken; } public String getLicense() { String str; JniInterface jniInterface = new JniInterface(); int i = this.authStatus; if (i == 1) { return jniInterface.getToken(this.context); } if (i == 2 && (str = this.license) != null) { try { byte[] decode = Base64.decode(str, 0); return jniInterface.getTokenFromLicense(this.context, decode, decode.length); } catch (Throwable unused) { } } return null; } public void init(Context context2) { this.context = context2; this.crInst = CrashReporterHandler.init(context2).addSourceClass(OCR.class); try { this.crInst.addSourceClass(Class.forName("com.baidu.ocr.ui.camera.CameraActivity")); } catch (Throwable unused) { } HttpUtil.getInstance().init(); } public void initAccessToken(OnResultListener<AccessToken> onResultListener, Context context2) { initAccessTokenImpl(onResultListener, null, context2); } public void initAccessToken(OnResultListener<AccessToken> onResultListener, String str, Context context2) { initAccessTokenImpl(onResultListener, str, context2); } public void initAccessTokenWithAkSk(OnResultListener<AccessToken> onResultListener, Context context2, String str, String str2) { this.authStatus = 2; this.ak = str; this.sk = str2; init(context2); AccessToken byCache = getByCache(); if (byCache != null) { this.accessToken = byCache; onResultListener.onResult(byCache); setLicense(byCache.getLic()); return; } Throwable loadLibraryError = JniInterface.getLoadLibraryError(); if (loadLibraryError != null) { onResultListener.onError(new SDKError(SDKError.ErrorCode.LOAD_JNI_LIBRARY_ERROR, "Load jni so library error", loadLibraryError)); return; } JniInterface jniInterface = new JniInterface(); String md5 = Util.md5(str2); byte[] init = jniInterface.init(context2, DeviceUtil.getDeviceInfo(context2)); HttpUtil.getInstance().getAccessToken(onResultListener, QUERY_TOKEN, str + ";" + md5 + Base64.encodeToString(init, 2)); } @Deprecated public void initWithToken(Context context2, AccessToken accessToken2) { init(context2); setAccessToken(accessToken2); } public boolean isAutoCacheToken() { return this.isAutoCacheToken; } public void recognizeAccurate(GeneralParams generalParams, OnResultListener<GeneralResult> onResultListener) { recognizeLocation(generalParams, onResultListener, RECOGNIZE_ACCURATE_URL); } public void recognizeAccurateBasic(GeneralBasicParams generalBasicParams, OnResultListener<GeneralResult> onResultListener) { recognizeNoLocation(generalBasicParams, onResultListener, RECOGNIZE_ACCURATE_BASIC_URL); } public void recognizeBankCard(final BankCardParams bankCardParams, final OnResultListener<BankCardResult> onResultListener) { File imageFile = bankCardParams.getImageFile(); final File file = new File(this.context.getCacheDir(), String.valueOf(System.currentTimeMillis())); ImageUtil.resize(imageFile.getAbsolutePath(), file.getAbsolutePath(), SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE, SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE); bankCardParams.setImageFile(file); final BankCardResultParser bankCardResultParser = new BankCardResultParser(); getToken(new OnResultListener() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass4 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { onResultListener.onError(oCRError); } @Override // com.baidu.ocr.sdk.OnResultListener public void onResult(Object obj) { HttpUtil.getInstance().post(OCR.this.urlAppendCommonParams(OCR.BANK_CARD_URL), bankCardParams, bankCardResultParser, new OnResultListener<BankCardResult>() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass4.AnonymousClass1 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onError(oCRError); } } public void onResult(BankCardResult bankCardResult) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onResult(bankCardResult); } } }); } }); } public void recognizeBusinessCard(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_BUSINESS_CARD_URL); } public void recognizeBusinessLicense(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_BUSINESS_LICENSE_URL); } public void recognizeCommon(final OcrRequestParams ocrRequestParams, final OnResultListener<OcrResponseResult> onResultListener, final String str) { File imageFile = ocrRequestParams.getImageFile(); final File file = new File(this.context.getCacheDir(), String.valueOf(System.currentTimeMillis())); ImageUtil.resize(imageFile.getAbsolutePath(), file.getAbsolutePath(), SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE, SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE); ocrRequestParams.setImageFile(file); final OcrResultParser ocrResultParser = new OcrResultParser(); getToken(new OnResultListener() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass5 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { onResultListener.onError(oCRError); } @Override // com.baidu.ocr.sdk.OnResultListener public void onResult(Object obj) { HttpUtil.getInstance().post(OCR.this.urlAppendCommonParams(str), ocrRequestParams, ocrResultParser, new OnResultListener<OcrResponseResult>() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass5.AnonymousClass1 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onError(oCRError); } } public void onResult(OcrResponseResult ocrResponseResult) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onResult(ocrResponseResult); } } }); } }); } public void recognizeCustom(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_CUSTOM); } public void recognizeDrivingLicense(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_DRIVING_LICENSE_URL); } public void recognizeGeneral(GeneralParams generalParams, OnResultListener<GeneralResult> onResultListener) { recognizeLocation(generalParams, onResultListener, RECOGNIZE_GENERAL_URL); } public void recognizeGeneralBasic(GeneralBasicParams generalBasicParams, OnResultListener<GeneralResult> onResultListener) { recognizeNoLocation(generalBasicParams, onResultListener, RECOGNIZE_GENERAL_BASIC_URL); } public void recognizeGeneralEnhanced(GeneralBasicParams generalBasicParams, OnResultListener<GeneralResult> onResultListener) { recognizeNoLocation(generalBasicParams, onResultListener, RECOGNIZE_GENERAL_ENHANCE_URL); } public void recognizeHandwriting(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_HANDWRITING_URL); } public void recognizeIDCard(final IDCardParams iDCardParams, final OnResultListener<IDCardResult> onResultListener) { File imageFile = iDCardParams.getImageFile(); final File file = new File(this.context.getCacheDir(), String.valueOf(System.currentTimeMillis())); ImageUtil.resize(imageFile.getAbsolutePath(), file.getAbsolutePath(), SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE, SimpleResolver.DEFAULT_EDNS_PAYLOADSIZE, iDCardParams.getImageQuality()); iDCardParams.setImageFile(file); final IDCardResultParser iDCardResultParser = new IDCardResultParser(iDCardParams.getIdCardSide()); getToken(new OnResultListener() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass3 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { onResultListener.onError(oCRError); } @Override // com.baidu.ocr.sdk.OnResultListener public void onResult(Object obj) { HttpUtil.getInstance().post(OCR.this.urlAppendCommonParams(OCR.ID_CARD_URL), iDCardParams, iDCardResultParser, new OnResultListener<IDCardResult>() { /* class com.baidu.ocr.sdk.OCR.AnonymousClass3.AnonymousClass1 */ @Override // com.baidu.ocr.sdk.OnResultListener public void onError(OCRError oCRError) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onError(oCRError); } } public void onResult(IDCardResult iDCardResult) { file.delete(); OnResultListener onResultListener = onResultListener; if (onResultListener != null) { onResultListener.onResult(iDCardResult); } } }); } }); } public void recognizeLicensePlate(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_LICENSE_PLATE_URL); } public void recognizeLottery(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_LOTTERY_URL); } public void recognizeNumbers(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_NUMBERS_URL); } public void recognizePassport(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_PASSPORT_URL); } public void recognizeQrcode(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_QRCODE_URL); } public void recognizeReceipt(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_RECEIPT_URL); } public void recognizeVatInvoice(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_VAT_INVOICE_URL); } public void recognizeVehicleLicense(OcrRequestParams ocrRequestParams, OnResultListener<OcrResponseResult> onResultListener) { recognizeCommon(ocrRequestParams, onResultListener, RECOGNIZE_VEHICLE_LICENSE_URL); } public void recognizeWebimage(GeneralBasicParams generalBasicParams, OnResultListener<GeneralResult> onResultListener) { recognizeNoLocation(generalBasicParams, onResultListener, RECOGNIZE_GENERAL_WEBIMAGE_URL); } public void release() { HttpUtil.getInstance().release(); this.crInst.release(); this.crInst = null; this.context = null; if (instance != null) { instance = null; } } public synchronized void setAccessToken(AccessToken accessToken2) { if (accessToken2.getTokenJson() != null) { SharedPreferences.Editor edit = this.context.getSharedPreferences("com.baidu.ocr.sdk", 0).edit(); edit.putString(PREFRENCE_TOKENJSON_KEY, accessToken2.getTokenJson()); edit.putLong(PREFRENCE_EXPIRETIME_KEY, accessToken2.getExpiresTime()); edit.putInt(PREFRENCE_AUTH_TYPE, this.authStatus); edit.apply(); } this.accessToken = accessToken2; } public void setAutoCacheToken(boolean z) { this.isAutoCacheToken = z; } public void setLicense(String str) { this.license = str; } }