package com.basic.security.fragment;
|
|
import android.media.MediaPlayer;
|
import android.view.View;
|
import android.widget.AdapterView;
|
import android.widget.ArrayAdapter;
|
import android.widget.EditText;
|
import android.widget.Spinner;
|
|
import com.basic.security.R;
|
import com.basic.security.base.BaseFragment;
|
import com.basic.security.fragment.helper.HomePlayAlarmSound;
|
import com.basic.security.manager.SettingManager;
|
import com.basic.security.utils.AudioPlayer;
|
import com.basic.security.utils.SocketClient;
|
import com.basic.security.utils.ToastUtil;
|
import com.basic.security.widget.SuccessDialog;
|
|
import org.androidannotations.annotations.AfterViews;
|
import org.androidannotations.annotations.Background;
|
import org.androidannotations.annotations.Click;
|
import org.androidannotations.annotations.EFragment;
|
import org.androidannotations.annotations.UiThread;
|
import org.androidannotations.annotations.ViewById;
|
|
@EFragment(R.layout.fragment_setting)
|
public class SettingFragment extends BaseFragment {
|
|
@ViewById
|
public EditText password;
|
@ViewById
|
public EditText ip;
|
@ViewById
|
public EditText port;
|
@ViewById
|
public Spinner second;
|
@ViewById
|
public Spinner alarmAudio;
|
|
public String[] secondArray = new String[]{"5", "10", "20", "30", "40", "50", "60"};
|
public static String[] alarmAudioArray = new String[]{"1", "2", "3", "4", "5"};
|
|
public MediaPlayer mp;
|
|
@Background
|
public void show() {
|
initData(SettingManager.getIpStr(), SettingManager.getSecondStr(), SettingManager.getAlarmAudioStr(), SettingManager.getPortStr());
|
}
|
|
@UiThread
|
public void initData(String ipStr, String secondStr, String alarmAudioStr, String portStr) {
|
if (second != null) {
|
second.setSelection(getSelectedIndex(secondArray, secondStr));
|
}
|
if (alarmAudio != null) {
|
alarmAudio.setSelection(getSelectedIndex(alarmAudioArray, alarmAudioStr));
|
}
|
if (ipStr != null) {
|
ip.setText(ipStr);
|
}
|
if (portStr != null) {
|
port.setText(portStr);
|
}
|
password.setText("");
|
}
|
|
public int getSelectedIndex(String[] array, String value) {
|
int index = 0;
|
for (int i = 0; i < array.length; i++) {
|
String arrayValue = array[i];
|
if (arrayValue.equals(value)) {
|
index = i;
|
}
|
}
|
return index;
|
}
|
|
public static int getAudioRawIndex(String audioAlarmStr) {
|
if (audioAlarmStr != null) {
|
for (int i = 0; i < SettingFragment.alarmAudioArray.length; i++) {
|
if (SettingFragment.alarmAudioArray[i].equals(audioAlarmStr)) {
|
if (i == 0) {
|
return R.raw.a1;
|
}
|
if (i == 1) {
|
return R.raw.a2;
|
}
|
if (i == 2) {
|
return R.raw.a3;
|
}
|
if (i == 3) {
|
return R.raw.a4;
|
}
|
if (i == 4) {
|
return R.raw.a5;
|
}
|
}
|
}
|
}
|
return R.raw.a1;
|
}
|
|
@AfterViews
|
public void afterViews() {
|
second.setAdapter(new ArrayAdapter<>(getContext(), R.layout.spinner_item_small_text, secondArray));
|
second.setPopupBackgroundResource(R.drawable.round_border);
|
|
alarmAudio.setAdapter(new ArrayAdapter<>(getContext(), R.layout.spinner_item_small_text, alarmAudioArray));
|
alarmAudio.setPopupBackgroundResource(R.drawable.round_border);
|
alarmAudio.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
|
@Override
|
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
|
final int position1 = position;
|
new Thread(){
|
@Override
|
public void run() {
|
//AudioPlayer.stop(mp);
|
mp = AudioPlayer.play(mp, alarmAudioArray[position1], false);
|
}
|
}.start();
|
}
|
|
@Override
|
public void onNothingSelected(AdapterView<?> parent) {
|
|
}
|
});
|
}
|
|
@Click
|
public void save() {
|
String secondStr = second.getSelectedItem().toString();
|
String alarmAudioStr = alarmAudio.getSelectedItem().toString();
|
String ipStr = ip.getText().toString().trim();
|
String portStr = port.getText().toString().trim();
|
String passwordStr = password.getText().toString().trim();
|
if (passwordStr.length() == 0) {
|
ToastUtil.show("密码不能为空");
|
return;
|
}
|
if(!"basic".equals(passwordStr)) {
|
ToastUtil.show("密码不正确");
|
return;
|
}
|
if (ipStr.length() == 0) {
|
ToastUtil.show("IP不能为空");
|
return;
|
}
|
if (portStr.length() == 0) {
|
ToastUtil.show("端口不能为空");
|
return;
|
}
|
if (SettingManager.saveSetting(secondStr, ipStr, alarmAudioStr,portStr)) {
|
mainActivity().fragment_home.setRootUrl();
|
SuccessDialog successDialog = new SuccessDialog(mainActivity());
|
successDialog.show();
|
AudioPlayer.stopInNewThread(mp);
|
mp = null;
|
HomePlayAlarmSound.shouldRestartSound = true;
|
SocketClient.needRestart = true;
|
}
|
}
|
|
@Click
|
public void goto_home() {
|
mainActivity().fragment_home.stopAllVideoPlays(null);
|
mainActivity().goto_home();
|
}
|
|
}
|