|
@@ -105,8 +105,6 @@ public class QueryVersionInfoFragment extends Fragment {
|
|
|
|
|
|
public final int INFO_TYPE_MODEL_NAME = INFO_TYPE_VERSION_BASE + 210;
|
|
|
|
|
|
- //jglee 터치 펌웨어 버전 추가
|
|
|
- public final int INFO_TOUCH_IC_FW_VER = INFO_TYPE_VERSION_BASE + 212;
|
|
|
|
|
|
private Activity mActivity;
|
|
|
private MainDatabaseManager mMainDatabaseManager;
|
|
@@ -120,6 +118,23 @@ public class QueryVersionInfoFragment extends Fragment {
|
|
|
private IGW200dAPI iGW200dAPI = null;
|
|
|
private WallPadAPI m_wpapi = null;
|
|
|
|
|
|
+ private String mstrBSPVersion = "";
|
|
|
+
|
|
|
+ //jglee 터치 펌웨어 버전 상세하게 나눔(major)
|
|
|
+ public final int INFO_TOUCH_IC_FW_MAJOR = INFO_TYPE_VERSION_BASE + 216;
|
|
|
+ //jglee 터치 펌웨어 버전 상세하게 나눔(minor)
|
|
|
+ public final int INFO_TOUCH_IC_FW_MINOR = INFO_TYPE_VERSION_BASE + 217;
|
|
|
+ //jglee 터치 펌웨어 버전 상세하게 나눔(release)
|
|
|
+ public final int INFO_TOUCH_IC_FW_RELEASE = INFO_TYPE_VERSION_BASE + 218;
|
|
|
+
|
|
|
+ //jglee 터치 펌웨어 버전 타입(1 : zinitix, 2 : gt9xx , 0 : sunix
|
|
|
+ public final int INFO_TOUCH_IC_FW_TYPE = INFO_TYPE_VERSION_BASE + 219;
|
|
|
+
|
|
|
+ public final int INFO_TOUCH_IC_DWID_VER = INFO_TYPE_VERSION_BASE + 212;
|
|
|
+
|
|
|
+ //jglee 터치 펌웨어 버전 구딕스 버전 정보(gt9xx)
|
|
|
+ public final int INFO_TOUCH_IC_FW_Gt9xx_VERSION = INFO_TYPE_VERSION_BASE + 220;
|
|
|
+
|
|
|
// constructor
|
|
|
public QueryVersionInfoFragment() {
|
|
|
}
|
|
@@ -261,7 +276,74 @@ public class QueryVersionInfoFragment extends Fragment {
|
|
|
showVersionInfo(INFO_TYPE_NEWS_VER);
|
|
|
|
|
|
//jglee - 터치 펌웨어 버전 추가
|
|
|
- showVersionInfo(INFO_TOUCH_IC_FW_VER);
|
|
|
+ //showVersionInfo(INFO_TOUCH_IC_FW_VER);
|
|
|
+
|
|
|
+ //jglee - 2022.11.14 해당 버전은 모델명 대내 또는 대외 BSP 버전이 2022년 11월 이상일 경우만 사용 가능
|
|
|
+ //jglee - 2022.11.14 BSP 버전 확인(터치 펌웨어 버전 조회 할 수 있는 버전인지 확인이 필요함
|
|
|
+ boolean isCheckTouchFWVersio = false;
|
|
|
+ if(mstrBSPVersion!=null && mstrBSPVersion.contains("."))
|
|
|
+ {
|
|
|
+ //2022.11.29 jglee - split 오류 수정
|
|
|
+// String[] BSPVersion_Split = mstrBSPVersion.split("\\.");
|
|
|
+// if(BSPVersion_Split!=null && BSPVersion_Split.length == 4)
|
|
|
+// {
|
|
|
+// try{
|
|
|
+// int BSP_year =Integer.parseInt(BSPVersion_Split[0].trim());
|
|
|
+// if(BSP_year == 2022)
|
|
|
+// {
|
|
|
+// int BSP_month =Integer.parseInt(BSPVersion_Split[1].trim());
|
|
|
+// if(BSP_month >= 11) isCheckTouchFWVersio = true;
|
|
|
+// }
|
|
|
+// else if(BSP_year >= 2022) isCheckTouchFWVersio = true;
|
|
|
+// }
|
|
|
+// catch (Exception e)
|
|
|
+// {
|
|
|
+//
|
|
|
+// }
|
|
|
+// }
|
|
|
+
|
|
|
+ isCheckTouchFWVersio = isCheckBSPVersion(mstrBSPVersion, 2022, 11);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ //jglee - 2023.06.22 터치 펌웨어 버전 조회 가능한 BSP 확인(2023.07월부터 가능)
|
|
|
+ boolean isCheckTouchFWVersioandTouchType = false;
|
|
|
+ isCheckTouchFWVersioandTouchType = isCheckBSPVersion(mstrBSPVersion, 2023, 6);
|
|
|
+
|
|
|
+ //jglee - 2023.06.22 BSP 버전 2023.06월 이후인지 확인
|
|
|
+ if(isCheckTouchFWVersioandTouchType)
|
|
|
+ {
|
|
|
+ //jglee - 2023.06.22 해당되는 터치 타입 확인
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_TYPE);
|
|
|
+ int touchType = getTouchICFWType();
|
|
|
+ //zinitix이면 기존과 동일하게 표시
|
|
|
+ if(touchType== 1)
|
|
|
+ {
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_DWID_VER);
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_MAJOR);
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_MINOR);
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_RELEASE);
|
|
|
+ }
|
|
|
+ //gt9xx이면 버전 정보 표시
|
|
|
+ else if(touchType == 2)
|
|
|
+ {
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_Gt9xx_VERSION);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ //jglee - 2022.10.31 터치 펌웨어 버전 상세히 나눔
|
|
|
+ //jglee - 2022.11.15 1030은 제외
|
|
|
+ if((ModelType != Version.MODEL_TYPE.IHN_1030_I) && (ModelType == Version.MODEL_TYPE.IHN_D101 || ModelType == Version.MODEL_TYPE.IHN_D101_I || ModelType == Version.MODEL_TYPE.IHN_D101_I_OCF
|
|
|
+ || ModelType == Version.MODEL_TYPE.IHN_D101K || ModelType == Version.MODEL_TYPE.IHN_D101K_I || ModelType == Version.MODEL_TYPE.IHN_1010GL_I_6410 || ModelType == Version.MODEL_TYPE.IHN_1010GL_I_2443 || isCheckTouchFWVersio))
|
|
|
+ {
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_DWID_VER);
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_MAJOR);
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_MINOR);
|
|
|
+ showVersionInfo(INFO_TOUCH_IC_FW_RELEASE);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
if (ModelType == Version.MODEL_TYPE.IHN_1020GL)
|
|
|
{
|
|
@@ -286,6 +368,64 @@ public class QueryVersionInfoFragment extends Fragment {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ public int getTouchICFWType() {
|
|
|
+ int nVer = 0;
|
|
|
+ try {
|
|
|
+ // TO DO
|
|
|
+ if (Build.VERSION.SDK_INT > 23) {
|
|
|
+ V40IF mV40IF = new V40IF();
|
|
|
+ mV40IF.WpdInterfaceOpen();
|
|
|
+ nVer = mV40IF.WpdInterfaceControl(0xF205, 1);
|
|
|
+ mV40IF.WpdInterfaceClose();
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ nVer = -1;
|
|
|
+ }
|
|
|
+ } catch (RuntimeException re) {
|
|
|
+ Log.e(TAG, "[RuntimeException] getTouchICFWHWIDVersion()");
|
|
|
+ Log.e(TAG, re.toString());
|
|
|
+ nVer = -1;
|
|
|
+ } catch (Exception e) {
|
|
|
+ Log.e(TAG, "[Exception] getTouchICFWHWIDVersion()");
|
|
|
+ LogUtil.errorLogInfo("", TAG, e);
|
|
|
+ nVer = -1;
|
|
|
+ }
|
|
|
+
|
|
|
+ return nVer;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //jglee - 2023.06.22 1330 기준으로 zinitix 와 gt9xx 구분하기 위해 BSP 버전을 확인하는 함수 추가
|
|
|
+ private boolean isCheckBSPVersion(String BSPVersion, int CheckVersioYear, int CheckVersionMonth)
|
|
|
+ {
|
|
|
+ boolean isCheckTouchFWVersio = false;
|
|
|
+
|
|
|
+ if(BSPVersion!=null && BSPVersion.contains("."))
|
|
|
+ {
|
|
|
+ //2022.11.29 jglee - split 오류 수정
|
|
|
+ String[] BSPVersion_Split = BSPVersion.split("\\.");
|
|
|
+ if(BSPVersion_Split!=null && BSPVersion_Split.length == 4)
|
|
|
+ {
|
|
|
+ try{
|
|
|
+ int BSP_year =Integer.parseInt(BSPVersion_Split[0].trim());
|
|
|
+ if(BSP_year == CheckVersioYear)
|
|
|
+ {
|
|
|
+ int BSP_month =Integer.parseInt(BSPVersion_Split[1].trim());
|
|
|
+ if(BSP_month >= CheckVersionMonth) isCheckTouchFWVersio = true;
|
|
|
+ }
|
|
|
+ else if(BSP_year >= CheckVersioYear) isCheckTouchFWVersio = true;
|
|
|
+ }
|
|
|
+ catch (Exception e)
|
|
|
+ {
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ return isCheckTouchFWVersio;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
// show VersionInfo
|
|
|
private void showVersionInfo(int type) {
|
|
@@ -322,7 +462,8 @@ public class QueryVersionInfoFragment extends Fragment {
|
|
|
|
|
|
case INFO_TYPE_OS:
|
|
|
title += mActivity.getString(R.string.version_info_os_ver);
|
|
|
- result.append(title + getOSVersion());
|
|
|
+ mstrBSPVersion = getOSVersion();
|
|
|
+ result.append(title + mstrBSPVersion);
|
|
|
break;
|
|
|
|
|
|
case INFO_TYPE_APPS:
|
|
@@ -487,11 +628,88 @@ public class QueryVersionInfoFragment extends Fragment {
|
|
|
|
|
|
break;
|
|
|
|
|
|
- //jglee - 텀치 펌웨어 버전 표시
|
|
|
- case INFO_TOUCH_IC_FW_VER:
|
|
|
- title += mActivity.getString(R.string.version_info_touch_ic_fw_ver);
|
|
|
- result.append(title + getTouchICFWVersion());
|
|
|
+ //2023.06.22 jglee - 터치 타입
|
|
|
+ case INFO_TOUCH_IC_FW_TYPE:
|
|
|
+ title += mActivity.getString(R.string.version_info_touch_ic_type);
|
|
|
+ //여기서 한글로 표시
|
|
|
+ String versionName = "";
|
|
|
+ int touchType = getTouchICFWType();
|
|
|
+ //1이면 zinitix, 2이면 Gt9xx, 0이면 기본값 sunix
|
|
|
+ if(touchType== 1)
|
|
|
+ {
|
|
|
+ versionName = "zinitix";
|
|
|
+ }
|
|
|
+ else if(touchType == 2)
|
|
|
+ {
|
|
|
+ versionName = "gt9xx";
|
|
|
+ }
|
|
|
+ else if(touchType == 0)
|
|
|
+ {
|
|
|
+ versionName = "sunix";
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ versionName = "none(" +touchType + ")" ;
|
|
|
+ }
|
|
|
+ result.append(title + versionName);
|
|
|
+ break;
|
|
|
+
|
|
|
+
|
|
|
+ //2023.06.22 jglee - 구딕스 버전
|
|
|
+ case INFO_TOUCH_IC_FW_Gt9xx_VERSION:
|
|
|
+ title += mActivity.getString(R.string.version_info_touch_ic_gt9xx);
|
|
|
+ result.append(title + getTouchICFWgt9xxVersion());
|
|
|
+ break;
|
|
|
+
|
|
|
+
|
|
|
+ //2022.10.31 jglee - 터치 하드웨어 아이디
|
|
|
+ case INFO_TOUCH_IC_DWID_VER:
|
|
|
+ title += mActivity.getString(R.string.version_info_touch_ic_hwid_ver);
|
|
|
+ result.append(title + getTouchICFWHWIDVersion());
|
|
|
+ break;
|
|
|
+
|
|
|
+ //2022.10.31 jglee - 터치 하드웨어 펌웨어 버전 ex>메이저
|
|
|
+ case INFO_TOUCH_IC_FW_MAJOR:
|
|
|
+ title += mActivity.getString(R.string.version_info_touch_ic_fw_major_ver);
|
|
|
+ String convert_major = "-1";
|
|
|
+
|
|
|
+ int major = getTouchICFWMajorVersion();
|
|
|
+
|
|
|
+ if(major >= 0)
|
|
|
+ convert_major = String.format("0x%02X", major);
|
|
|
+
|
|
|
+ result.append(title + convert_major);
|
|
|
+ break;
|
|
|
+
|
|
|
+ //2022.10.31 jglee - 터치 하드웨어 펌웨어 버전 ex>마이너
|
|
|
+ case INFO_TOUCH_IC_FW_MINOR:
|
|
|
+ title += mActivity.getString(R.string.version_info_touch_ic_fw_minor_ver);
|
|
|
+ String convert_minor = "-1";
|
|
|
+
|
|
|
+ int minor = getTouchICFWMinorVersion();
|
|
|
+
|
|
|
+ if(minor >= 0)
|
|
|
+ convert_minor = String.format("0x%02X", minor);
|
|
|
+
|
|
|
+ result.append(title + convert_minor );
|
|
|
+ break;
|
|
|
+
|
|
|
+ //2022.10.31 jglee - 터치 하드웨어 펌웨어 버전 ex>릴리즈
|
|
|
+ case INFO_TOUCH_IC_FW_RELEASE:
|
|
|
+ title += mActivity.getString(R.string.version_info_touch_ic_fw_rlease_ver);
|
|
|
+ String convert_release = "-1";
|
|
|
+
|
|
|
+ int relase = getTouchICFWReleaseVersion();
|
|
|
+
|
|
|
+ //2022.11.11 BSP 버전이 최신이 아닐 경우, 이전 릴리즈 정보 가져오도록 수정
|
|
|
+ if(relase >= 0)
|
|
|
+ convert_release = String.format("0x%02X", relase);
|
|
|
+ else
|
|
|
+ convert_release = getTouchICFWVersion();
|
|
|
+
|
|
|
+ result.append(title + convert_release);
|
|
|
result.append("\n");
|
|
|
+ break;
|
|
|
|
|
|
|
|
|
default:
|
|
@@ -501,6 +719,181 @@ public class QueryVersionInfoFragment extends Fragment {
|
|
|
mTV_Result.append(result + "\n");
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ //jglee - 2022.10.31 터치 펌웨어 버전 새로운 표기 방식 적용
|
|
|
+ //HW ID
|
|
|
+ /**
|
|
|
+ * 터치펌웨어 하드웨어 아이디 알아오기
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public String getTouchICFWHWIDVersion() {
|
|
|
+ StringBuilder result = new StringBuilder();
|
|
|
+ try {
|
|
|
+ // TO DO
|
|
|
+ if (Build.VERSION.SDK_INT > 23) {
|
|
|
+ V40IF mV40IF = new V40IF();
|
|
|
+ mV40IF.WpdInterfaceOpen();
|
|
|
+ int nVer = 0;
|
|
|
+ nVer = mV40IF.WpdInterfaceControl(0xF201, 1);
|
|
|
+ mV40IF.WpdInterfaceClose();
|
|
|
+ if (nVer < 0) result.append("None(" + nVer + ")");
|
|
|
+ else result.append(nVer);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ result.append("Not support");
|
|
|
+ }
|
|
|
+ } catch (RuntimeException re) {
|
|
|
+ Log.e(TAG, "[RuntimeException] getTouchICFWHWIDVersion()");
|
|
|
+ Log.e(TAG, re.toString());
|
|
|
+ result.append("RuntimeException");
|
|
|
+ } catch (Exception e) {
|
|
|
+ Log.e(TAG, "[Exception] getTouchICFWHWIDVersion()");
|
|
|
+ LogUtil.errorLogInfo("", TAG, e);
|
|
|
+ result.append("Exception");
|
|
|
+ }
|
|
|
+
|
|
|
+ return result.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ //jglee - 2023.06.22 구딕스 버전 가져오기
|
|
|
+ /**
|
|
|
+ * 구딕스 버전 가져오기
|
|
|
+ * @return 구딕스 버전
|
|
|
+ */
|
|
|
+ public String getTouchICFWgt9xxVersion() {
|
|
|
+ StringBuilder result = new StringBuilder();
|
|
|
+ try {
|
|
|
+ // TO DO
|
|
|
+ if (Build.VERSION.SDK_INT > 23) {
|
|
|
+ V40IF mV40IF = new V40IF();
|
|
|
+ mV40IF.WpdInterfaceOpen();
|
|
|
+ int nVer = 0;
|
|
|
+ nVer = mV40IF.WpdInterfaceControl(0xF206, 1);
|
|
|
+ mV40IF.WpdInterfaceClose();
|
|
|
+ if (nVer < 0) result.append("None(" + nVer + ")");
|
|
|
+ else
|
|
|
+ {
|
|
|
+ //jglee - 2023.06.27 버전표시 변경 Hex(Decimal)
|
|
|
+ String hex = String.format("0x%02X", nVer);
|
|
|
+ result.append(hex + "(" + nVer + ")");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ result.append("Not support");
|
|
|
+ }
|
|
|
+ } catch (RuntimeException re) {
|
|
|
+ Log.e(TAG, "[RuntimeException] getTouchICFWHWIDVersion()");
|
|
|
+ Log.e(TAG, re.toString());
|
|
|
+ result.append("RuntimeException");
|
|
|
+ } catch (Exception e) {
|
|
|
+ Log.e(TAG, "[Exception] getTouchICFWHWIDVersion()");
|
|
|
+ LogUtil.errorLogInfo("", TAG, e);
|
|
|
+ result.append("Exception");
|
|
|
+ }
|
|
|
+
|
|
|
+ return result.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //jglee - 2022.10.31 터치 펌웨어 버전 새로운 표기 방식 적용
|
|
|
+ //HW ID + Major + Minor + Release
|
|
|
+ /**
|
|
|
+ * 터치 펌웨어 매이저버전
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public int getTouchICFWMajorVersion() {
|
|
|
+ int nVer = -1;
|
|
|
+ try {
|
|
|
+ // TO DO
|
|
|
+ if (Build.VERSION.SDK_INT > 23) {
|
|
|
+ V40IF mV40IF = new V40IF();
|
|
|
+ mV40IF.WpdInterfaceOpen();
|
|
|
+ nVer = mV40IF.WpdInterfaceControl(0xF202, 1);
|
|
|
+ mV40IF.WpdInterfaceClose();
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ nVer = -2;
|
|
|
+ }
|
|
|
+ } catch (RuntimeException re) {
|
|
|
+ Log.e(TAG, "[RuntimeException] getTouchICFWMajorVersion()");
|
|
|
+ Log.e(TAG, re.toString());
|
|
|
+ nVer = -3;
|
|
|
+ } catch (Exception e) {
|
|
|
+ Log.e(TAG, "[Exception] getTouchICFWMajorVersion()");
|
|
|
+ LogUtil.errorLogInfo("", TAG, e);
|
|
|
+ nVer = -4;
|
|
|
+ }
|
|
|
+
|
|
|
+ return nVer;
|
|
|
+ }
|
|
|
+
|
|
|
+ //jglee - 2022.10.31 터치 펌웨어 버전 새로운 표기 방식 적용
|
|
|
+ //HW ID + Major + Minor + Release
|
|
|
+ /**
|
|
|
+ * 터치 펌웨어 마이너버전
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public int getTouchICFWMinorVersion() {
|
|
|
+ int nVer = -1;
|
|
|
+ try {
|
|
|
+ // TO DO
|
|
|
+ if (Build.VERSION.SDK_INT > 23) {
|
|
|
+ V40IF mV40IF = new V40IF();
|
|
|
+ mV40IF.WpdInterfaceOpen();
|
|
|
+ nVer = mV40IF.WpdInterfaceControl(0xF203, 1);
|
|
|
+ mV40IF.WpdInterfaceClose();
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ nVer = -2;
|
|
|
+ }
|
|
|
+ } catch (RuntimeException re) {
|
|
|
+ Log.e(TAG, "[RuntimeException] getTouchICFWMinorVersion()");
|
|
|
+ Log.e(TAG, re.toString());
|
|
|
+ nVer = -3;
|
|
|
+ } catch (Exception e) {
|
|
|
+ Log.e(TAG, "[Exception] getTouchICFWMinorVersion()");
|
|
|
+ LogUtil.errorLogInfo("", TAG, e);
|
|
|
+ nVer = -4;
|
|
|
+ }
|
|
|
+
|
|
|
+ return nVer;
|
|
|
+ }
|
|
|
+
|
|
|
+ //jglee - 2022.10.31 터치 펌웨어 버전 새로운 표기 방식 적용
|
|
|
+ //HW ID + Major + Minor + Release
|
|
|
+ /**
|
|
|
+ * 터치펌웨어 릴리즈 버전
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public int getTouchICFWReleaseVersion() {
|
|
|
+ int nVer = -1;
|
|
|
+ try {
|
|
|
+ // TO DO
|
|
|
+ if (Build.VERSION.SDK_INT > 23) {
|
|
|
+ V40IF mV40IF = new V40IF();
|
|
|
+ mV40IF.WpdInterfaceOpen();
|
|
|
+ nVer = mV40IF.WpdInterfaceControl(0xF204, 1);
|
|
|
+ mV40IF.WpdInterfaceClose();
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ nVer = -2;
|
|
|
+ }
|
|
|
+ } catch (RuntimeException re) {
|
|
|
+ Log.e(TAG, "[RuntimeException] getTouchICFWReleaseVersion()");
|
|
|
+ Log.e(TAG, re.toString());
|
|
|
+ nVer = -3;
|
|
|
+ } catch (Exception e) {
|
|
|
+ Log.e(TAG, "[Exception] getTouchICFWReleaseVersion()");
|
|
|
+ LogUtil.errorLogInfo("", TAG, e);
|
|
|
+ nVer = -4;
|
|
|
+ }
|
|
|
+
|
|
|
+ return nVer;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
// get Touch IC FW Version
|
|
|
public String getTouchICFWVersion() {
|
|
|
StringBuilder result = new StringBuilder();
|