fix: 웹앱 새로고침 후 버전 정보 유지 및 BuildInfoPlugin 오류 수정

This commit is contained in:
hansoo
2025-03-23 22:17:42 +09:00
parent 200f08860f
commit f5e3b39c73
3 changed files with 163 additions and 34 deletions

View File

@@ -22,10 +22,10 @@ android {
applicationId "com.lovable.zellyfinance"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode versionCode
versionName versionName
versionCode = versionCode
versionName = versionName
// 빌드 번호 추가 - BuildConfig 필드로 정의
buildConfigField "int", "BUILD_NUMBER", buildNumber.toString()
buildConfigField("int", "BUILD_NUMBER", String.valueOf(buildNumber))
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
aaptOptions {
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.

View File

@@ -66,10 +66,21 @@ public class BuildInfoPlugin extends Plugin {
} catch (Exception e) {
// 오류 로깅 강화
Log.e(TAG, "빌드 정보 가져오기 오류", e);
JSObject errorObj = new JSObject();
errorObj.put("message", e.getMessage());
errorObj.put("stack", Log.getStackTraceString(e));
call.reject("빌드 정보 가져오기 실패", errorObj);
// 오류 발생 시에도 기본 정보 반환하여 앱 중단 방지
JSObject fallbackResult = new JSObject();
fallbackResult.put("versionName", "1.1.1.2"); // 버전명 기본값
fallbackResult.put("versionCode", 6); // 버전 코드 기본값
fallbackResult.put("buildNumber", 6); // 빌드 번호 기본값
fallbackResult.put("packageName", getContext().getPackageName());
fallbackResult.put("androidVersion", Build.VERSION.RELEASE);
fallbackResult.put("androidSDK", Build.VERSION.SDK_INT);
fallbackResult.put("platform", "android-fallback");
fallbackResult.put("error", e.getMessage());
fallbackResult.put("timestamp", System.currentTimeMillis());
Log.d(TAG, "오류 발생으로 기본값 반환: " + fallbackResult.toString());
call.resolve(fallbackResult); // reject 대신 기본값으로 resolve
}
}
}