package com.hdl.photovoltaic.ui.me; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.Color; import android.os.Bundle; import android.view.View; import com.hdl.linkpm.sdk.core.exception.HDLException; import com.hdl.linkpm.sdk.user.bean.NewVersionBean; import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.base.CustomBaseActivity; import com.hdl.photovoltaic.config.AppConfigManage; import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.databinding.ActivityAsRegardsBinding; import com.hdl.photovoltaic.enums.ShowErrorMode; import com.hdl.photovoltaic.listener.CloudCallBeak; import com.hdl.photovoltaic.other.HdlAppUpdateLogic; import com.hdl.photovoltaic.other.HdlCommonLogic; import com.hdl.photovoltaic.other.HdlThreadLogic; import com.hdl.photovoltaic.widget.apkwgtupload.ApkDownLoadService; import com.hdl.photovoltaic.widget.ConfirmationCancelDialog; import com.hdl.photovoltaic.widget.UpdateConfirmationCancelDialog; /** * 关于界面(app更新) */ public class AsRegardsActivity extends CustomBaseActivity { /** * 版本更新对象 */ private NewVersionBean mNewVersionBean = null; public ActivityAsRegardsBinding viewBinding; @Override public Object getContentView() { viewBinding = ActivityAsRegardsBinding.inflate(getLayoutInflater()); return viewBinding.getRoot(); } @Override public void onBindView(Bundle savedInstanceState) { setNotificationBarBackgroundColor(CustomColor.white); setStatusBarTextColor(); //初始化 initView(); //初始化界面监听器 initEvent(); //读取数据 readData(); } private void readData() { HdlAppUpdateLogic.getInstance().checkAppVersion(AppConfigManage.getVersionName(), new CloudCallBeak() { @Override public void onSuccess(NewVersionBean newVersionBean) { //初始化对象 mNewVersionBean = newVersionBean; if (newVersionBean != null) { //todo 发现新版本,改变UI样式 viewBinding.asRegardsRlRightContentTv.setText(R.string.app_discover_new_version); viewBinding.asRegardsRlRightContentTv.setTextColor(getResources().getColor(R.color.text_245EC3, null)); } } @Override public void onFailure(HDLException e) { } }); //正式环境 String content = "https://developer.hdlcontrol.com/AppDownload/HDLPhotovoltaicDownload.html"; if (!AppConfigManage.getOnlineServer()) { //测试环境 content = "https://developer.hdlcontrol.com/AppDownload/HDLDebugerDownload.html"; } Bitmap bitmap = HdlCommonLogic.getInstance().createQRCodeBitmap(content, 168, 168, "UTF-8", "H", "1", Color.BLACK, Color.WHITE); viewBinding.asRegardsQrCodeIv.setImageBitmap(bitmap); } private void initEvent() { viewBinding.toolbarTopFragmentHouseListRl.topBackLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }); viewBinding.asRegardsVersionUpdatingRl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { updateTipDialog(); } }); viewBinding.serviceAgreementRl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.putExtra("type", WebActivity.ServiceAgreement); intent.setClass(_mActivity, WebActivity.class); startActivity(intent); } }); viewBinding.privacyPolicyRl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.putExtra("type", WebActivity.PrivacyAgreement); intent.setClass(_mActivity, WebActivity.class); startActivity(intent); } }); viewBinding.contactUsRl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.setClass(_mActivity, ContactUsActivity.class); startActivity(intent); } }); } private void initView() { viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setText(R.string.me_regard); viewBinding.toolbarTopFragmentHouseListRl.topTitleTv.setTextColor(getResources().getColor(R.color.text_030D1C, null)); viewBinding.toolbarTopFragmentHouseListRl.topBackLl.setVisibility(View.VISIBLE); viewBinding.toolbarTopFragmentHouseListRl.topLeftIv.setImageResource(R.drawable.back_c); viewBinding.toolbarTopFragmentHouseListRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF, null)); String versionsStr = _mActivity.getResources().getString(R.string.app_version_number) + " " + AppConfigManage.getVersionName(); viewBinding.asRegardsIconVersionsTv.setText(versionsStr); } /** * App新版本提示框 */ private void updateTipDialog() { HdlThreadLogic.runMainThread(new Runnable() { @Override public void run() { if (mNewVersionBean == null) { HdlThreadLogic.toast(_mActivity, R.string.app_new_version); return; } String app_version = getString(R.string.app_version) + ":" + mNewVersionBean.getVersion(); int kb = (int) (mNewVersionBean.getSize() / 1024); String mb = (kb / 1024) + "." + ((kb % 1024) + "").charAt(0) + "MB";//mb保留一位 String app_package_size = getString(R.string.app_package_size) + ":" + mb; String content1 = app_version + "\n" + app_package_size; String content2 = mNewVersionBean.getRemark(); UpdateConfirmationCancelDialog updateConfirmationCancelDialog = new UpdateConfirmationCancelDialog(_mActivity); updateConfirmationCancelDialog.setContent1(content1); updateConfirmationCancelDialog.setContent2(content2); updateConfirmationCancelDialog.show(); updateConfirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() { @Override public void Confirm() { Intent intent = new Intent(_mActivity, ApkDownLoadService.class); intent.putExtra("updateUrl", mNewVersionBean.getPackageUrl()); intent.putExtra("downLoadName", HdlAppUpdateLogic.getInstance().getApkFileName()); intent.putExtra("downLoadType", "0"); _mActivity.startService(intent); updateConfirmationCancelDialog.dismiss(); } }); updateConfirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() { @Override public void Cancel() { updateConfirmationCancelDialog.dismiss(); } }); } }, this, ShowErrorMode.YES); } }