From 54380b63d19ed6d69cb3cabde0deb2b12c1e15d2 Mon Sep 17 00:00:00 2001 From: pppscn <35696959@qq.com> Date: Wed, 10 Mar 2021 18:03:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E5=B8=83=E5=B1=80=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 5 +- app/src/main/AndroidManifest.xml | 21 +- .../idormy/sms/forwarder/AboutActivity.java | 178 +++++++++++ .../idormy/sms/forwarder/MainActivity.java | 11 +- .../idormy/sms/forwarder/ReFlashListView.java | 2 +- .../idormy/sms/forwarder/RuleActivity.java | 6 +- .../idormy/sms/forwarder/SenderActivity.java | 14 +- .../idormy/sms/forwarder/SettingActivity.java | 213 +++++-------- .../idormy/sms/forwarder/utils/Define.java | 6 + .../sms/forwarder/utils/SettingUtil.java | 47 ++- app/src/main/res/layout/activity_about.xml | 203 ++++++++++++ app/src/main/res/layout/activity_setting.xml | 301 +++++++----------- ...bark.xml => alert_dialog_setview_bark.xml} | 2 +- ....xml => alert_dialog_setview_dingding.xml} | 2 +- ...ail.xml => alert_dialog_setview_email.xml} | 2 +- ...p.xml => alert_dialog_setview_qywxapp.xml} | 0 ...> alert_dialog_setview_qywxgrouprobot.xml} | 2 +- ...rule.xml => alert_dialog_setview_rule.xml} | 2 +- ...xml => alert_dialog_setview_rule_test.xml} | 0 ...xml => alert_dialog_setview_webnotify.xml} | 2 +- app/src/main/res/layout/dialog_feedback.xml | 28 -- .../layout/{header_layout.xml => header.xml} | 0 .../layout/{tlog_item.xml => item_log.xml} | 0 .../layout/{rule_item.xml => item_rule.xml} | 0 .../{sender_item.xml => item_sender.xml} | 0 app/src/main/res/menu/menu_main.xml | 5 + app/src/main/res/values/strings.xml | 1 + app/version.gradle | 4 + 28 files changed, 684 insertions(+), 373 deletions(-) create mode 100644 app/src/main/java/com/idormy/sms/forwarder/AboutActivity.java create mode 100644 app/src/main/res/layout/activity_about.xml rename app/src/main/res/layout/{activity_alter_dialog_setview_bark.xml => alert_dialog_setview_bark.xml} (97%) rename app/src/main/res/layout/{activity_alter_dialog_setview_dingding.xml => alert_dialog_setview_dingding.xml} (98%) rename app/src/main/res/layout/{activity_alter_dialog_setview_email.xml => alert_dialog_setview_email.xml} (98%) rename app/src/main/res/layout/{activity_alter_dialog_setview_qywxapp.xml => alert_dialog_setview_qywxapp.xml} (100%) rename app/src/main/res/layout/{activity_alter_dialog_setview_qywxgrouprobot.xml => alert_dialog_setview_qywxgrouprobot.xml} (97%) rename app/src/main/res/layout/{activity_alter_dialog_setview_rule.xml => alert_dialog_setview_rule.xml} (99%) rename app/src/main/res/layout/{activity_alter_dialog_setview_rule_test.xml => alert_dialog_setview_rule_test.xml} (100%) rename app/src/main/res/layout/{activity_alter_dialog_setview_webnotify.xml => alert_dialog_setview_webnotify.xml} (98%) delete mode 100644 app/src/main/res/layout/dialog_feedback.xml rename app/src/main/res/layout/{header_layout.xml => header.xml} (100%) rename app/src/main/res/layout/{tlog_item.xml => item_log.xml} (100%) rename app/src/main/res/layout/{rule_item.xml => item_rule.xml} (100%) rename app/src/main/res/layout/{sender_item.xml => item_sender.xml} (100%) create mode 100644 app/version.gradle diff --git a/app/build.gradle b/app/build.gradle index 4acf1ee8..cec1ae15 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,6 +1,7 @@ apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' +apply from: 'version.gradle' android { buildToolsVersion '29.0.3' @@ -13,8 +14,8 @@ android { applicationId "com.idormy.sms.forwarder" minSdkVersion 23 targetSdkVersion 29 - versionCode 14 - versionName "1.5.1" + versionCode appVersionCode + versionName appVersionName testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' } lintOptions { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 2dbf2a84..a829422b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -3,7 +3,7 @@ package="com.idormy.sms.forwarder"> - + @@ -31,22 +31,27 @@ - + + - + @@ -54,7 +59,7 @@ - + diff --git a/app/src/main/java/com/idormy/sms/forwarder/AboutActivity.java b/app/src/main/java/com/idormy/sms/forwarder/AboutActivity.java new file mode 100644 index 00000000..c9b6c416 --- /dev/null +++ b/app/src/main/java/com/idormy/sms/forwarder/AboutActivity.java @@ -0,0 +1,178 @@ +package com.idormy.sms.forwarder; + +import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; +import android.content.SharedPreferences; +import android.content.pm.PackageManager; +import android.net.Uri; +import android.os.Bundle; +import android.util.Log; +import android.view.View; +import android.widget.Button; +import android.widget.CompoundButton; +import android.widget.Switch; +import android.widget.TextView; +import android.widget.Toast; + +import androidx.appcompat.app.AppCompatActivity; + +import com.idormy.sms.forwarder.BroadCastReceiver.RebootBroadcastReceiver; +import com.idormy.sms.forwarder.utils.CacheUtil; +import com.idormy.sms.forwarder.utils.Define; +import com.idormy.sms.forwarder.utils.aUtil; +import com.xuexiang.xupdate.easy.EasyUpdate; +import com.xuexiang.xupdate.proxy.impl.DefaultUpdateChecker; + + +public class AboutActivity extends AppCompatActivity { + private String TAG = "com.idormy.sms.forwarder.AboutActivity"; + private Context context; + + @Override + public void onCreate(Bundle savedInstanceState) { + Log.d(TAG, "oncreate"); + super.onCreate(savedInstanceState); + + context = AboutActivity.this; + + setContentView(R.layout.activity_about); + Log.d(TAG, "onCreate: " + RebootBroadcastReceiver.class.getName()); + + Switch check_with_reboot = (Switch) findViewById(R.id.switch_with_reboot); + checkWithReboot(check_with_reboot); + + Switch switch_help_tip = (Switch) findViewById(R.id.switch_help_tip); + SwitchHelpTip(switch_help_tip); + + final TextView version_now = (TextView) findViewById(R.id.version_now); + Button check_version_now = (Button) findViewById(R.id.check_version_now); + try { + version_now.setText(aUtil.getVersionName(AboutActivity.this)); + } catch (Exception e) { + e.printStackTrace(); + } + + check_version_now.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + //checkNewVersion(); + try { + String updateUrl = "https://xupdate.bms.ink/update/checkVersion?appKey=com.idormy.sms.forwarder&versionCode="; + updateUrl += aUtil.getVersionCode(AboutActivity.this); + + EasyUpdate.create(AboutActivity.this, updateUrl) + .updateChecker(new DefaultUpdateChecker() { + @Override + public void onBeforeCheck() { + super.onBeforeCheck(); + Toast.makeText(AboutActivity.this, "查询中...", Toast.LENGTH_LONG).show(); + } + + @Override + public void onAfterCheck() { + super.onAfterCheck(); + } + + @Override + public void noNewVersion(Throwable throwable) { + super.noNewVersion(throwable); + // 没有最新版本的处理 + Toast.makeText(AboutActivity.this, "已是最新版本!", Toast.LENGTH_LONG).show(); + } + }) + .update(); + } catch (Exception e) { + e.printStackTrace(); + } + } + }); + + final TextView cache_size = (TextView) findViewById(R.id.cache_size); + try { + cache_size.setText(CacheUtil.getTotalCacheSize(AboutActivity.this)); + } catch (Exception e) { + e.printStackTrace(); + } + Button clear_all_cache = (Button) findViewById(R.id.clear_all_cache); + clear_all_cache.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + CacheUtil.clearAllCache(AboutActivity.this); + try { + cache_size.setText(CacheUtil.getTotalCacheSize(AboutActivity.this)); + } catch (Exception e) { + e.printStackTrace(); + } + Toast.makeText(AboutActivity.this, "缓存清理完成", Toast.LENGTH_LONG).show(); + } + }); + + Button join_qq_group = (Button) findViewById(R.id.join_qq_group); + join_qq_group.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + String key = "HvroJRfvK7GGfnQgaIQ4Rh1un9O83N7M"; + joinQQGroup(key); + } + }); + + } + + //检查重启广播接受器状态并设置 + private void checkWithReboot(Switch withrebootSwitch) { + //获取组件 + final ComponentName cm = new ComponentName(this.getPackageName(), RebootBroadcastReceiver.class.getName()); + + final PackageManager pm = getPackageManager(); + int state = pm.getComponentEnabledSetting(cm); + if (state != PackageManager.COMPONENT_ENABLED_STATE_DISABLED + && state != PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER) { + withrebootSwitch.setChecked(true); + } else { + withrebootSwitch.setChecked(false); + } + withrebootSwitch.setOnCheckedChangeListener(new Switch.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + int newState = (Boolean) isChecked ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED + : PackageManager.COMPONENT_ENABLED_STATE_DISABLED; + pm.setComponentEnabledSetting(cm, newState, PackageManager.DONT_KILL_APP); + Log.d(TAG, "onCheckedChanged:" + isChecked); + } + }); + } + + //页面帮助提示 + private void SwitchHelpTip(Switch switchHelpTip) { + switchHelpTip.setChecked(MyApplication.showHelpTip); + + switchHelpTip.setOnCheckedChangeListener(new Switch.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + MyApplication.showHelpTip = isChecked; + SharedPreferences sp = context.getSharedPreferences(Define.SP_CONFIG, Context.MODE_PRIVATE); + sp.edit().putBoolean(Define.SP_CONFIG_SWITCH_HELP_TIP, isChecked).apply(); + Log.d(TAG, "onCheckedChanged:" + isChecked); + } + }); + } + + //发起添加群流程 + public boolean joinQQGroup(String key) { + Intent intent = new Intent(); + intent.setData(Uri.parse("mqqopensdkapi://bizAgent/qm/qr?url=http%3A%2F%2Fqm.qq.com%2Fcgi-bin%2Fqm%2Fqr%3Ffrom%3Dapp%26p%3Dandroid%26jump_from%3Dwebapi%26k%3D" + key)); + // 此Flag可根据具体产品需要自定义,如设置,则在加群界面按返回,返回手Q主界面,不设置,按返回会返回到呼起产品界面 + //intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + try { + startActivity(intent); + return true; + } catch (Exception e) { + // 未安装手Q或安装的版本不支持 + Toast.makeText(AboutActivity.this, "未安装手Q或安装的版本不支持!", Toast.LENGTH_LONG).show(); + return false; + } + } + + +} diff --git a/app/src/main/java/com/idormy/sms/forwarder/MainActivity.java b/app/src/main/java/com/idormy/sms/forwarder/MainActivity.java index d6e58c14..b8f829e2 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/MainActivity.java +++ b/app/src/main/java/com/idormy/sms/forwarder/MainActivity.java @@ -143,7 +143,7 @@ public class MainActivity extends AppCompatActivity implements ReFlashListView.I // 将适配器上的数据传递给listView listView = findViewById(R.id.list_view_log); listView.setInterface(this); - adapter = new LogAdapter(MainActivity.this, R.layout.tlog_item, logVosN); + adapter = new LogAdapter(MainActivity.this, R.layout.item_log, logVosN); listView.setAdapter(adapter); } else { @@ -194,6 +194,11 @@ public class MainActivity extends AppCompatActivity implements ReFlashListView.I startActivity(intent); } + public void toAbout() { + Intent intent = new Intent(this, AboutActivity.class); + startActivity(intent); + } + public void toRuleSetting(View view) { Intent intent = new Intent(this, RuleActivity.class); startActivity(intent); @@ -219,7 +224,6 @@ public class MainActivity extends AppCompatActivity implements ReFlashListView.I } }); builder.show(); - } //按返回键不退出回到桌面 @@ -271,6 +275,9 @@ public class MainActivity extends AppCompatActivity implements ReFlashListView.I case R.id.to_setting: toSetting(); return true; + case R.id.to_about: + toAbout(); + return true; default: return super.onOptionsItemSelected(item); } diff --git a/app/src/main/java/com/idormy/sms/forwarder/ReFlashListView.java b/app/src/main/java/com/idormy/sms/forwarder/ReFlashListView.java index ea15a998..4c570dff 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/ReFlashListView.java +++ b/app/src/main/java/com/idormy/sms/forwarder/ReFlashListView.java @@ -60,7 +60,7 @@ public class ReFlashListView extends ListView implements AbsListView.OnScrollLis */ private void initView(Context context) { LayoutInflater inflater = LayoutInflater.from(context); - header = inflater.inflate(R.layout.header_layout, null); + header = inflater.inflate(R.layout.header, null); measureView(header); headerHeight = header.getMeasuredHeight(); Log.i("tag", "headerHeight = " + headerHeight); diff --git a/app/src/main/java/com/idormy/sms/forwarder/RuleActivity.java b/app/src/main/java/com/idormy/sms/forwarder/RuleActivity.java index 5c001654..8f8e3e1b 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/RuleActivity.java +++ b/app/src/main/java/com/idormy/sms/forwarder/RuleActivity.java @@ -75,7 +75,7 @@ public class RuleActivity extends AppCompatActivity { // 先拿到数据并放在适配器上 initRules(); //初始化数据 - adapter = new RuleAdapter(RuleActivity.this, R.layout.rule_item, ruleModels); + adapter = new RuleAdapter(RuleActivity.this, R.layout.item_rule, ruleModels); // 将适配器上的数据传递给listView ListView listView = findViewById(R.id.list_view_rule); @@ -137,7 +137,7 @@ public class RuleActivity extends AppCompatActivity { private void setRule(final RuleModel ruleModel) { final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(RuleActivity.this); - final View view1 = View.inflate(RuleActivity.this, R.layout.activity_alter_dialog_setview_rule, null); + final View view1 = View.inflate(RuleActivity.this, R.layout.alert_dialog_setview_rule, null); final RadioGroup radioGroupRuleFiled = (RadioGroup) view1.findViewById(R.id.radioGroupRuleFiled); if (ruleModel != null) radioGroupRuleFiled.check(ruleModel.getRuleFiledCheckId()); @@ -326,7 +326,7 @@ public class RuleActivity extends AppCompatActivity { } public void testRule(final RuleModel ruleModel, final Long senderId) { - final View view = View.inflate(RuleActivity.this, R.layout.activity_alter_dialog_setview_rule_test, null); + final View view = View.inflate(RuleActivity.this, R.layout.alert_dialog_setview_rule_test, null); final EditText editTextTestPhone = (EditText) view.findViewById(R.id.editTextTestPhone); final EditText editTextTestMsgContent = (EditText) view.findViewById(R.id.editTextTestMsgContent); Button buttonruletest = view.findViewById(R.id.buttonruletest); diff --git a/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java b/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java index db5a3ddc..a009827c 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java +++ b/app/src/main/java/com/idormy/sms/forwarder/SenderActivity.java @@ -88,7 +88,7 @@ public class SenderActivity extends AppCompatActivity { // 先拿到数据并放在适配器上 initSenders(); //初始化数据 - adapter = new SenderAdapter(SenderActivity.this, R.layout.sender_item, senderModels); + adapter = new SenderAdapter(SenderActivity.this, R.layout.item_sender, senderModels); // 将适配器上的数据传递给listView ListView listView = findViewById(R.id.list_view_sender); @@ -219,7 +219,7 @@ public class SenderActivity extends AppCompatActivity { } } final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(SenderActivity.this); - View view1 = View.inflate(SenderActivity.this, R.layout.activity_alter_dialog_setview_dingding, null); + View view1 = View.inflate(SenderActivity.this, R.layout.alert_dialog_setview_dingding, null); final EditText editTextDingdingName = view1.findViewById(R.id.editTextDingdingName); if (senderModel != null) @@ -332,7 +332,7 @@ public class SenderActivity extends AppCompatActivity { } final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(SenderActivity.this); - View view1 = View.inflate(SenderActivity.this, R.layout.activity_alter_dialog_setview_email, null); + View view1 = View.inflate(SenderActivity.this, R.layout.alert_dialog_setview_email, null); final EditText editTextEmailName = view1.findViewById(R.id.editTextEmailName); if (senderModel != null) editTextEmailName.setText(senderModel.getName()); @@ -449,7 +449,7 @@ public class SenderActivity extends AppCompatActivity { } final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(SenderActivity.this); - View view1 = View.inflate(SenderActivity.this, R.layout.activity_alter_dialog_setview_bark, null); + View view1 = View.inflate(SenderActivity.this, R.layout.alert_dialog_setview_bark, null); final EditText editTextBarkName = view1.findViewById(R.id.editTextBarkName); if (senderModel != null) editTextBarkName.setText(senderModel.getName()); @@ -539,7 +539,7 @@ public class SenderActivity extends AppCompatActivity { } final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(SenderActivity.this); - View view1 = View.inflate(SenderActivity.this, R.layout.activity_alter_dialog_setview_webnotify, null); + View view1 = View.inflate(SenderActivity.this, R.layout.alert_dialog_setview_webnotify, null); final EditText editTextWebNotifyName = view1.findViewById(R.id.editTextWebNotifyName); if (senderModel != null) editTextWebNotifyName.setText(senderModel.getName()); @@ -636,7 +636,7 @@ public class SenderActivity extends AppCompatActivity { } final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(SenderActivity.this); - View view1 = View.inflate(SenderActivity.this, R.layout.activity_alter_dialog_setview_qywxgrouprobot, null); + View view1 = View.inflate(SenderActivity.this, R.layout.alert_dialog_setview_qywxgrouprobot, null); final EditText editTextQYWXGroupRobotName = view1.findViewById(R.id.editTextQYWXGroupRobotName); if (senderModel != null) editTextQYWXGroupRobotName.setText(senderModel.getName()); @@ -727,7 +727,7 @@ public class SenderActivity extends AppCompatActivity { } } final AlertDialog.Builder alertDialog71 = new AlertDialog.Builder(SenderActivity.this); - View view1 = View.inflate(SenderActivity.this, R.layout.activity_alter_dialog_setview_qywxapp, null); + View view1 = View.inflate(SenderActivity.this, R.layout.alert_dialog_setview_qywxapp, null); final EditText editTextQYWXAppName = view1.findViewById(R.id.editTextQYWXAppName); if (senderModel != null) diff --git a/app/src/main/java/com/idormy/sms/forwarder/SettingActivity.java b/app/src/main/java/com/idormy/sms/forwarder/SettingActivity.java index fabe7135..523429a2 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/SettingActivity.java +++ b/app/src/main/java/com/idormy/sms/forwarder/SettingActivity.java @@ -1,177 +1,120 @@ package com.idormy.sms.forwarder; -import android.content.ComponentName; -import android.content.Context; -import android.content.Intent; -import android.content.SharedPreferences; -import android.content.pm.PackageManager; -import android.net.Uri; import android.os.Bundle; +import android.text.Editable; +import android.text.TextWatcher; import android.util.Log; -import android.view.View; -import android.widget.Button; import android.widget.CompoundButton; +import android.widget.EditText; import android.widget.Switch; -import android.widget.TextView; -import android.widget.Toast; import androidx.appcompat.app.AppCompatActivity; -import com.idormy.sms.forwarder.BroadCastReceiver.RebootBroadcastReceiver; -import com.idormy.sms.forwarder.utils.CacheUtil; -import com.idormy.sms.forwarder.utils.Define; -import com.idormy.sms.forwarder.utils.aUtil; -import com.xuexiang.xupdate.easy.EasyUpdate; -import com.xuexiang.xupdate.proxy.impl.DefaultUpdateChecker; +import com.idormy.sms.forwarder.utils.SettingUtil; public class SettingActivity extends AppCompatActivity { private String TAG = "SettingActivity"; - private Context context; @Override public void onCreate(Bundle savedInstanceState) { Log.d(TAG, "oncreate"); super.onCreate(savedInstanceState); - - context = SettingActivity.this; - setContentView(R.layout.activity_setting); - Log.d(TAG, "onCreate: " + RebootBroadcastReceiver.class.getName()); - Switch check_with_reboot = (Switch) findViewById(R.id.switch_with_reboot); - checkWithReboot(check_with_reboot); + Switch switch_add_extra = (Switch) findViewById(R.id.switch_add_extra); + switchAddExtra(switch_add_extra); - Switch switch_help_tip = (Switch) findViewById(R.id.switch_help_tip); - SwitchHelpTip(switch_help_tip); + EditText et_add_extra_device_mark = (EditText) findViewById(R.id.et_add_extra_device_mark); + editAddExtraDeviceMark(et_add_extra_device_mark); - final TextView version_now = (TextView) findViewById(R.id.version_now); - Button check_version_now = (Button) findViewById(R.id.check_version_now); - try { - version_now.setText(aUtil.getVersionName(SettingActivity.this)); - } catch (Exception e) { - e.printStackTrace(); - } - - check_version_now.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - //checkNewVersion(); - try { - String updateUrl = "https://xupdate.bms.ink/update/checkVersion?appKey=com.idormy.sms.forwarder&versionCode="; - updateUrl += aUtil.getVersionCode(SettingActivity.this); - - EasyUpdate.create(SettingActivity.this, updateUrl) - .updateChecker(new DefaultUpdateChecker() { - @Override - public void onBeforeCheck() { - super.onBeforeCheck(); - Toast.makeText(SettingActivity.this, "查询中...", Toast.LENGTH_LONG).show(); - } - - @Override - public void onAfterCheck() { - super.onAfterCheck(); - } - - @Override - public void noNewVersion(Throwable throwable) { - super.noNewVersion(throwable); - // 没有最新版本的处理 - Toast.makeText(SettingActivity.this, "已是最新版本!", Toast.LENGTH_LONG).show(); - } - }) - .update(); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - - final TextView cache_size = (TextView) findViewById(R.id.cache_size); - try { - cache_size.setText(CacheUtil.getTotalCacheSize(SettingActivity.this)); - } catch (Exception e) { - e.printStackTrace(); - } - Button clear_all_cache = (Button) findViewById(R.id.clear_all_cache); - clear_all_cache.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - CacheUtil.clearAllCache(SettingActivity.this); - try { - cache_size.setText(CacheUtil.getTotalCacheSize(SettingActivity.this)); - } catch (Exception e) { - e.printStackTrace(); - } - Toast.makeText(SettingActivity.this, "缓存清理完成", Toast.LENGTH_LONG).show(); - } - }); - - Button join_qq_group = (Button) findViewById(R.id.join_qq_group); - join_qq_group.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - String key = "HvroJRfvK7GGfnQgaIQ4Rh1un9O83N7M"; - joinQQGroup(key); - } - }); + EditText et_add_extra_sim1 = (EditText) findViewById(R.id.et_add_extra_sim1); + editAddExtraSim1(et_add_extra_sim1); + EditText et_add_extra_sim2 = (EditText) findViewById(R.id.et_add_extra_sim2); + editAddExtraSim2(et_add_extra_sim2); } - //检查重启广播接受器状态并设置 - private void checkWithReboot(Switch withrebootSwitch) { - //获取组件 - final ComponentName cm = new ComponentName(this.getPackageName(), RebootBroadcastReceiver.class.getName()); + //设置转发附加信息 + private void switchAddExtra(Switch switch_add_extra) { + switch_add_extra.setChecked(SettingUtil.getSwitchAddExtra()); - final PackageManager pm = getPackageManager(); - int state = pm.getComponentEnabledSetting(cm); - if (state != PackageManager.COMPONENT_ENABLED_STATE_DISABLED - && state != PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER) { - withrebootSwitch.setChecked(true); - } else { - withrebootSwitch.setChecked(false); - } - withrebootSwitch.setOnCheckedChangeListener(new Switch.OnCheckedChangeListener() { + switch_add_extra.setOnCheckedChangeListener(new Switch.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - int newState = (Boolean) isChecked ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED - : PackageManager.COMPONENT_ENABLED_STATE_DISABLED; - pm.setComponentEnabledSetting(cm, newState, PackageManager.DONT_KILL_APP); + SettingUtil.switchAddExtra(isChecked); Log.d(TAG, "onCheckedChanged:" + isChecked); } }); } - //页面帮助提示 - private void SwitchHelpTip(Switch switchHelpTip) { - switchHelpTip.setChecked(MyApplication.showHelpTip); + //设置转发附加信息devicemark + private void editAddExtraDeviceMark(final EditText et_add_extra_device_mark) { + et_add_extra_device_mark.setText(SettingUtil.getAddExtraDeviceMark()); - switchHelpTip.setOnCheckedChangeListener(new Switch.OnCheckedChangeListener() { + et_add_extra_device_mark.addTextChangedListener(new TextWatcher() { @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - MyApplication.showHelpTip = isChecked; - SharedPreferences sp = context.getSharedPreferences(Define.SP_CONFIG, Context.MODE_PRIVATE); - sp.edit().putBoolean(Define.SP_CONFIG_SWITCH_HELP_TIP, isChecked).apply(); - Log.d(TAG, "onCheckedChanged:" + isChecked); + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + + } + + @Override + public void afterTextChanged(Editable s) { + SettingUtil.setAddExtraDeviceMark(et_add_extra_device_mark.getText().toString()); + } }); } - //发起添加群流程 - public boolean joinQQGroup(String key) { - Intent intent = new Intent(); - intent.setData(Uri.parse("mqqopensdkapi://bizAgent/qm/qr?url=http%3A%2F%2Fqm.qq.com%2Fcgi-bin%2Fqm%2Fqr%3Ffrom%3Dapp%26p%3Dandroid%26jump_from%3Dwebapi%26k%3D" + key)); - // 此Flag可根据具体产品需要自定义,如设置,则在加群界面按返回,返回手Q主界面,不设置,按返回会返回到呼起产品界面 - //intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - try { - startActivity(intent); - return true; - } catch (Exception e) { - // 未安装手Q或安装的版本不支持 - Toast.makeText(SettingActivity.this, "未安装手Q或安装的版本不支持!", Toast.LENGTH_LONG).show(); - return false; - } + //设置转发附加信息devicemark + private void editAddExtraSim1(final EditText et_add_extra_sim1) { + et_add_extra_sim1.setText(SettingUtil.getAddExtraSim1()); + + et_add_extra_sim1.addTextChangedListener(new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + + } + + @Override + public void afterTextChanged(Editable s) { + SettingUtil.setAddExtraSim1(et_add_extra_sim1.getText().toString()); + + } + }); + } + + //设置转发附加信息devicemark + private void editAddExtraSim2(final EditText et_add_extra_sim2) { + et_add_extra_sim2.setText(SettingUtil.getAddExtraSim2()); + + et_add_extra_sim2.addTextChangedListener(new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + + } + + @Override + public void afterTextChanged(Editable s) { + SettingUtil.setAddExtraSim2(et_add_extra_sim2.getText().toString()); + + } + }); } diff --git a/app/src/main/java/com/idormy/sms/forwarder/utils/Define.java b/app/src/main/java/com/idormy/sms/forwarder/utils/Define.java index dbf02fdf..b4552c6d 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/utils/Define.java +++ b/app/src/main/java/com/idormy/sms/forwarder/utils/Define.java @@ -4,6 +4,12 @@ public class Define { public static String SP_CONFIG = "forwarder_config"; public static String SP_CONFIG_SWITCH_HELP_TIP = "forwarder_config_switch_help_tip"; public static String SP_CONFIG_SIM_INFO = "forwarder_config_sim_info"; + + public static String SP_MSG_KEY_SWITCH_ADD_EXTRA = "tsms_msg_key_switch_add_extra"; + public static String SP_MSG_KEY_STRING_ADD_EXTRA_DEVICE_MARK = "tsms_msg_key_string_add_extra_device_mark"; + public static String SP_MSG_KEY_STRING_ADD_EXTRA_SIM1 = "tsms_msg_key_string_add_extra_sim1"; + public static String SP_MSG_KEY_STRING_ADD_EXTRA_SIM2 = "tsms_msg_key_string_add_extra_sim2"; + public static String SP_MSG = "forwarder_msg"; public static String SP_MSG_SET_KEY = "forwarder_msg_set_key"; public static String SP_MSG_SEND_UTIL_EMAIL_HOST_KEY = "forwarder_msg_send_util_email_host_key"; diff --git a/app/src/main/java/com/idormy/sms/forwarder/utils/SettingUtil.java b/app/src/main/java/com/idormy/sms/forwarder/utils/SettingUtil.java index f854eea1..83c7d192 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/utils/SettingUtil.java +++ b/app/src/main/java/com/idormy/sms/forwarder/utils/SettingUtil.java @@ -18,10 +18,53 @@ public class SettingUtil { context = context1; Log.d(TAG, "init "); sp_setting = PreferenceManager.getDefaultSharedPreferences(context1); - } } + public static void switchAddExtra(Boolean switchAddExtra) { + Log.d(TAG, "switchAddExtra :" + switchAddExtra); + sp_setting.edit() + .putBoolean(Define.SP_MSG_KEY_SWITCH_ADD_EXTRA, switchAddExtra) + .apply(); + } + + public static boolean getSwitchAddExtra() { + return sp_setting.getBoolean(Define.SP_MSG_KEY_SWITCH_ADD_EXTRA, false); + } + + public static String getAddExtraDeviceMark() { + return sp_setting.getString(Define.SP_MSG_KEY_STRING_ADD_EXTRA_DEVICE_MARK, ""); + } + + public static void setAddExtraDeviceMark(String addExtraDeviceMark) { + Log.d(TAG, "addExtraDeviceMark :" + addExtraDeviceMark); + sp_setting.edit() + .putString(Define.SP_MSG_KEY_STRING_ADD_EXTRA_DEVICE_MARK, addExtraDeviceMark) + .apply(); + } + + public static String getAddExtraSim1() { + return sp_setting.getString(Define.SP_MSG_KEY_STRING_ADD_EXTRA_SIM1, ""); + } + + public static void setAddExtraSim1(String sim1) { + Log.d(TAG, "sim1 :" + sim1); + sp_setting.edit() + .putString(Define.SP_MSG_KEY_STRING_ADD_EXTRA_SIM1, sim1) + .apply(); + } + + public static String getAddExtraSim2() { + return sp_setting.getString(Define.SP_MSG_KEY_STRING_ADD_EXTRA_SIM2, ""); + } + + public static void setAddExtraSim2(String sim2) { + Log.d(TAG, "sim2 :" + sim2); + sp_setting.edit() + .putString(Define.SP_MSG_KEY_STRING_ADD_EXTRA_SIM2, sim2) + .apply(); + } + public static boolean option_withreboot() { return sp_setting.getBoolean("option_withreboot", false); } @@ -58,7 +101,7 @@ public class SettingUtil { } public static String get_send_util_email(String key) { - Log.d(TAG, "get_send_util_email key" + key); + Log.d(TAG, "get_send_util_email key" + key); String defaultstt = ""; if (key.equals(Define.SP_MSG_SEND_UTIL_EMAIL_HOST_KEY)) defaultstt = "smtp服务器"; if (key.equals(Define.SP_MSG_SEND_UTIL_EMAIL_PORT_KEY)) defaultstt = "端口"; diff --git a/app/src/main/res/layout/activity_about.xml b/app/src/main/res/layout/activity_about.xml new file mode 100644 index 00000000..dcfc1c1b --- /dev/null +++ b/app/src/main/res/layout/activity_about.xml @@ -0,0 +1,203 @@ + + + + + + + + + + + + + + +