diff --git a/qpython/src/main/java/org/qpython/qpy/main/fragment/SettingFragment.java b/qpython/src/main/java/org/qpython/qpy/main/fragment/SettingFragment.java index 6e36f3d7c9f0feb2278544ed6277b64c384bf518..9d113cd3ba20ebd61ac0ff36574e499295419fc9 100644 --- a/qpython/src/main/java/org/qpython/qpy/main/fragment/SettingFragment.java +++ b/qpython/src/main/java/org/qpython/qpy/main/fragment/SettingFragment.java @@ -73,7 +73,7 @@ public class SettingFragment extends PreferenceFragment { private SharedPreferences settings; private Resources resources; - private Preference mPassWordPref, username_pref, portnum_pref, chroot_pref, lastlog; + private Preference mPassWordPref, username_pref, portnum_pref, chroot_pref, lastlog, ipaddress; private CheckBoxPreference sl4a, running_state, root, display_pwd, notebook_run, keepAliveBox; private PreferenceScreen py_inter, notebook_page; @@ -85,16 +85,21 @@ public class SettingFragment extends PreferenceFragment { @Override public void onReceive(Context context, Intent intent) { Log.v(TAG, "FTPServerService action received: " + intent.getAction()); - if (intent.getAction().equals(FTPServerService.ACTION_STARTED)) { - running_state.setChecked(true); - // Fill in the FTP server address - setFtpAddress(); - } else if (intent.getAction().equals(FTPServerService.ACTION_STOPPED)) { - running_state.setChecked(false); - running_state.setSummary(org.swiftp.R.string.running_summary_stopped); - } else if (intent.getAction().equals(FTPServerService.ACTION_FAILEDTOSTART)) { - running_state.setChecked(false); - running_state.setSummary(org.swiftp.R.string.running_summary_failed); + switch (intent.getAction()) { + case FTPServerService.ACTION_STARTED: + running_state.setChecked(true); + // Fill in the FTP server address + setFtpAddress(); + break; + case FTPServerService.ACTION_STOPPED: + running_state.setChecked(false); + running_state.setSummary(org.swiftp.R.string.running_summary_stopped); + break; + case FTPServerService.ACTION_FAILEDTOSTART: + running_state.setChecked(false); + running_state.setSummary(org.swiftp.R.string.running_summary_failed); + Toast.makeText(getActivity(), R.string.ip_address_need_wifi_or_ap, Toast.LENGTH_LONG).show(); + break; } } }; @@ -134,20 +139,27 @@ public class SettingFragment extends PreferenceFragment { super.onResume(); } - private void initSettings() { - Preference ipaddress = findPreference("ipaddress"); + private boolean showIpAddress(){ InetAddress ip; try { - ip = FTPServerService.getWifiIp(); + ip = FTPServerService.getWifiAndApIp(); } catch (NullPointerException e) { ip = null; } - if (ip != null) { + if (ip!=null) { ipaddress.setSummary(ip.getHostAddress()); + return true; } else { - ipaddress.setSummary(R.string.ip_address_need_wifi); + ipaddress.setSummary(R.string.ip_address_need_wifi_or_ap); + return false; } + } + + private void initSettings() { + ipaddress = findPreference("ipaddress"); + showIpAddress(); + lastlog = (Preference) findPreference("lastlog"); py_inter = (PreferenceScreen) findPreference(getString(R.string.key_py_inter)); notebook_page = (PreferenceScreen) findPreference(getString(R.string.key_notebook_page)); @@ -232,10 +244,11 @@ public class SettingFragment extends PreferenceFragment { } private void setFtpAddress() { - InetAddress address = FTPServerService.getWifiIp(); + InetAddress address = FTPServerService.getWifiAndApIp(); if (address == null) { Log.v(TAG, "Unable to retreive wifi ip address"); running_state.setSummary(org.swiftp.R.string.cant_get_url); + Toast.makeText(getActivity(),"FTP: "+getString(R.string.ip_address_need_wifi_or_ap),Toast.LENGTH_LONG).show(); } else { String iptext = "ftp://" + address.getHostAddress() + ":" + FTPServerService.getPort() + "/"; @@ -264,6 +277,8 @@ public class SettingFragment extends PreferenceFragment { return false; }); + ipaddress.setOnPreferenceClickListener(preference -> showIpAddress()); + if (!NAction.isQPy3(getActivity())) { notebook_run.setSummary(getString(R.string.notebook_py3_support)); notebook_run.setEnabled(false); diff --git a/qpython/src/main/res/values-zh-rCN/strings.xml b/qpython/src/main/res/values-zh-rCN/strings.xml index 7ff2e653ec5f1587e0f2d8a7882f22f5133d1fde..5cd733d25b0c48dec9fb987924aead4b59369085 100644 --- a/qpython/src/main/res/values-zh-rCN/strings.xml +++ b/qpython/src/main/res/values-zh-rCN/strings.xml @@ -490,5 +490,6 @@ 欢迎使用QPython 这需要些时间,请检查通知栏进度条 关闭进度条后,方可按返回键退出 + 请连接你的WiFi或开启WiFi热点 diff --git a/qpython/src/main/res/values/strings.xml b/qpython/src/main/res/values/strings.xml index dbd97d8a70dfb32c679d7f98e2cdaf976bbf16d8..2521cf6c95e8a5fc6ac2427c49bd1bea236c67d2 100644 --- a/qpython/src/main/res/values/strings.xml +++ b/qpython/src/main/res/values/strings.xml @@ -746,7 +746,6 @@ Shell Terminal My IP Adress - Please connect your wifi Do you want to override? @@ -758,5 +757,6 @@ Privacy Policy Service Agreement Press the back key to exit after close the progress bar + Please connect your WiFi or turn on WiFi hotspot