package com.mm.android.deviceaddmodule.p_init;
|
|
import android.os.Bundle;
|
import android.support.annotation.Nullable;
|
import android.text.Editable;
|
import android.text.TextWatcher;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.TextView;
|
|
import com.company.NetSDK.DEVICE_NET_INFO_EX;
|
import com.lechange.opensdk.media.DeviceInitInfo;
|
import com.mm.android.deviceaddmodule.R;
|
import com.mm.android.deviceaddmodule.base.BaseDevAddFragment;
|
import com.mm.android.deviceaddmodule.contract.InitContract;
|
import com.mm.android.deviceaddmodule.helper.DeviceAddHelper;
|
import com.mm.android.deviceaddmodule.helper.PageNavigationHelper;
|
import com.mm.android.deviceaddmodule.mobilecommon.AppConsume.ProviderManager;
|
import com.mm.android.deviceaddmodule.mobilecommon.common.LCConfiguration;
|
import com.mm.android.deviceaddmodule.mobilecommon.utils.StringUtils;
|
import com.mm.android.deviceaddmodule.mobilecommon.widget.ClearPasswordEditText;
|
import com.mm.android.deviceaddmodule.presenter.InitPresenter;
|
|
/**
|
* 设备初始化页面
|
*/
|
public class InitFragment extends BaseDevAddFragment implements InitContract.View, View.OnClickListener {
|
static String DEVICE_PARAM="device_param";
|
InitContract.Presenter mPresenter;
|
private ClearPasswordEditText mPasswordNewEdt;;
|
private TextView mInitTv;
|
long mEventStartTime; //统计开始时间
|
|
public static InitFragment newInstance(DeviceInitInfo device_net_info_ex) {
|
InitFragment fragment = new InitFragment();
|
Bundle args = new Bundle();
|
args.putSerializable(DEVICE_PARAM,device_net_info_ex);
|
fragment.setArguments(args);
|
return fragment;
|
}
|
|
private final TextWatcher mTextWatcher = new TextWatcher() {
|
|
@Override
|
public void onTextChanged(CharSequence s, int arg1, int arg2, int arg3) {
|
String pwd = StringUtils.strPsswordFilter(s.toString());
|
if (!pwd.equals(s.toString())) {
|
mPasswordNewEdt.setText(pwd);
|
mPasswordNewEdt.setSelection(pwd.length());
|
}
|
mInitTv.setEnabled(pwd.length() >= 8);
|
}
|
|
@Override
|
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
|
}
|
|
@Override
|
public void afterTextChanged(Editable arg0) {
|
}
|
};
|
|
|
@Override
|
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
Bundle savedInstanceState) {
|
// Inflate the layout for this fragment
|
return inflater.inflate(R.layout.fragment_init, container, false);
|
}
|
|
@Override
|
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
|
super.onViewCreated(view, savedInstanceState);
|
DeviceAddHelper.updateTile(DeviceAddHelper.TitleMode.MORE);
|
mEventStartTime = System.currentTimeMillis();
|
}
|
|
protected void initView(View view) {
|
setProgressDialogCancelable(false);
|
mPasswordNewEdt = view.findViewById(R.id.et_pwd_new);
|
mPasswordNewEdt.openEyeMode(ProviderManager.getAppProvider().getAppType()!= LCConfiguration.APP_LECHANGE_OVERSEA);
|
mInitTv = view.findViewById(R.id.tv_init);
|
mInitTv.setEnabled(false);
|
mInitTv.setOnClickListener(this);
|
mPasswordNewEdt.addTextChangedListener(mTextWatcher);
|
}
|
|
protected void initData() {
|
mPresenter = new InitPresenter(this);
|
if(getArguments()!=null){
|
DeviceInitInfo device_net_info_ex=(DeviceInitInfo) getArguments().getSerializable(DEVICE_PARAM);
|
mPresenter.setDeviceEX(device_net_info_ex);
|
mPresenter.checkDevice();
|
}
|
mPresenter.playTipSound();
|
}
|
|
@Override
|
public void onDestroyView() {
|
super.onDestroyView();
|
mPresenter.recyle();
|
}
|
|
@Override
|
public void onClick(View v) {
|
int id = v.getId();
|
if (id == R.id.tv_init) {
|
if(mPresenter.isPwdValid()) {
|
mPresenter.startDevInitByIp();
|
}
|
}
|
}
|
|
@Override
|
public int getMusicRes() {
|
return R.raw.voiceprompt_lc_device_psw;
|
}
|
|
@Override
|
public String getInitPwd() {
|
return mPasswordNewEdt.getText().toString();
|
}
|
|
@Override
|
public void goSoftAPWifiListPage() {
|
PageNavigationHelper.gotoSoftApWifiListPage(this);
|
}
|
|
@Override
|
public void goConnectCloudPage() {
|
PageNavigationHelper.gotoCloudConnectPage(this);
|
}
|
|
@Override
|
public void goErrorTipPage() {
|
//toast(R.string.add_device_init_failed_tip);
|
PageNavigationHelper.gotoErrorTipPage(this,DeviceAddHelper.ErrorCode.INIT_ERROR_INIT_FAILED);
|
}
|
}
|