pull/419/head
okjack 2 years ago
parent 86d122030d
commit e702be7c0e
  1. 3
      app/src/main/res/values-zh-rCN/strings.xml
  2. 3
      app/src/main/res/values-zh-rTW/strings.xml
  3. 1
      app/src/main/res/values/strings.xml
  4. 23
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/SettingCustomFragment.java
  5. 24
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/SettingFragment.java
  6. 65
      app/src/mobile/res/layout/fragment_setting.xml
  7. 46
      app/src/mobile/res/layout/fragment_setting_custom.xml

@ -87,7 +87,7 @@
<string name="setting_home_site_lock">首页源锁定</string>
<string name="setting_incognito">无痕模式</string>
<string name="setting_small_window_back_key">小窗返回键</string>
<string name="setting_home_display_name">首页显示站源</string>
<string name="setting_home_display_name">首页显示站源</string>
<string name="setting_home_ui">首页UI</string>
<string name="setting_home_buttons">首页按钮</string>
<string name="setting_doh">DoH</string>
@ -96,6 +96,7 @@
<string name="setting_backup">备份</string>
<string name="setting_backup_auto">自动</string>
<string name="setting_version">版本</string>
<string name="setting_about">关于</string>
<string name="setting_storage">权限</string>
<string name="setting_off">关闭</string>
<string name="setting_on">开启</string>

@ -87,7 +87,7 @@
<string name="setting_home_site_lock">首頁源鎖定</string>
<string name="setting_incognito">無痕模式</string>
<string name="setting_small_window_back_key">小窗返回鍵</string>
<string name="setting_home_display_name">首頁显示站源</string>
<string name="setting_home_display_name">首頁显示站源</string>
<string name="setting_home_ui">首頁UI</string>
<string name="setting_home_buttons">首頁按鈕</string>
<string name="setting_doh">DoH</string>
@ -96,6 +96,7 @@
<string name="setting_backup">備份</string>
<string name="setting_backup_auto">自動</string>
<string name="setting_version">版本</string>
<string name="setting_about">關於</string>
<string name="setting_storage">權限</string>
<string name="setting_off">關閉</string>
<string name="setting_on">開啟</string>

@ -96,6 +96,7 @@
<string name="setting_backup">Backup</string>
<string name="setting_backup_auto">Auto</string>
<string name="setting_version">Version</string>
<string name="setting_about">About</string>
<string name="setting_storage">Permission</string>
<string name="setting_off">Off</string>
<string name="setting_on">On</string>

@ -8,6 +8,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import com.fongmi.android.tv.App;
import com.fongmi.android.tv.R;
import com.fongmi.android.tv.Setting;
import com.fongmi.android.tv.databinding.FragmentSettingCustomBinding;
@ -15,6 +16,7 @@ import com.fongmi.android.tv.event.RefreshEvent;
import com.fongmi.android.tv.ui.base.BaseFragment;
import com.fongmi.android.tv.utils.ResUtil;
import com.fongmi.android.tv.utils.Util;
import com.github.catvod.utils.Shell;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import java.util.Locale;
@ -23,8 +25,8 @@ public class SettingCustomFragment extends BaseFragment {
private FragmentSettingCustomBinding mBinding;
private String[] size;
private String[] lang;
private String[] configCache;
public static SettingCustomFragment newInstance() {
return new SettingCustomFragment();
@ -48,6 +50,7 @@ public class SettingCustomFragment extends BaseFragment {
mBinding.aggregatedSearchText.setText(getSwitch(Setting.isAggregatedSearch()));
mBinding.homeDisplayNameText.setText(getSwitch(Setting.isHomeDisplayName()));
mBinding.languageText.setText((lang = ResUtil.getStringArray(R.array.select_language))[Setting.getLanguage()]);
mBinding.configCacheText.setText((configCache = ResUtil.getStringArray(R.array.select_config_cache))[Setting.getConfigCache()]);
}
@Override
@ -61,6 +64,8 @@ public class SettingCustomFragment extends BaseFragment {
mBinding.aggregatedSearch.setOnClickListener(this::setAggregatedSearch);
mBinding.homeDisplayName.setOnClickListener(this::setHomeDisplayName);
mBinding.language.setOnClickListener(this::setLanguage);
mBinding.configCache.setOnClickListener(this::setConfigCache);
mBinding.reset.setOnClickListener(this::onReset);
}
@ -126,4 +131,20 @@ public class SettingCustomFragment extends BaseFragment {
}).show();
}
private void setConfigCache(View view) {
int index = Setting.getConfigCache();
Setting.putConfigCache(index = index == configCache.length - 1 ? 0 : ++index);
mBinding.configCacheText.setText(configCache[index]);
}
private void onReset(View view) {
new MaterialAlertDialogBuilder(getActivity()).setTitle(R.string.dialog_reset_app).setMessage(R.string.dialog_reset_app_data).setNegativeButton(R.string.dialog_negative, null).setPositiveButton(R.string.dialog_positive, (dialog, which) -> reset()).show();
}
private void reset() {
new Thread(() -> {
Shell.exec("pm clear " + App.get().getPackageName());
}).start();
}
}

@ -11,7 +11,6 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import com.fongmi.android.tv.App;
import com.fongmi.android.tv.BuildConfig;
import com.fongmi.android.tv.R;
import com.fongmi.android.tv.Setting;
@ -41,12 +40,10 @@ import com.fongmi.android.tv.ui.dialog.SiteDialog;
import com.fongmi.android.tv.utils.FileChooser;
import com.fongmi.android.tv.utils.FileUtil;
import com.fongmi.android.tv.utils.Notify;
import com.fongmi.android.tv.utils.ResUtil;
import com.fongmi.android.tv.utils.UrlUtil;
import com.github.catvod.bean.Doh;
import com.github.catvod.net.OkHttp;
import com.github.catvod.utils.Path;
import com.github.catvod.utils.Shell;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.permissionx.guolindev.PermissionX;
@ -57,7 +54,6 @@ public class SettingFragment extends BaseFragment implements ConfigCallback, Sit
private FragmentSettingBinding mBinding;
private int type;
private String[] configCache;
public static SettingFragment newInstance() {
return new SettingFragment();
@ -90,8 +86,8 @@ public class SettingFragment extends BaseFragment implements ConfigCallback, Sit
mBinding.backupText.setText(AppDatabase.getDate());
mBinding.dohText.setText(getDohList()[getDohIndex()]);
mBinding.versionText.setText(BuildConfig.VERSION_NAME);
mBinding.aboutText.setText(BuildConfig.FLAVOR_mode + "-" + BuildConfig.FLAVOR_api + "-" + BuildConfig.FLAVOR_abi);
mBinding.proxyText.setText(UrlUtil.scheme(Setting.getProxy()));
mBinding.configCacheText.setText((configCache = ResUtil.getStringArray(R.array.select_config_cache))[Setting.getConfigCache()]);
setCacheText();
}
@ -128,8 +124,6 @@ public class SettingFragment extends BaseFragment implements ConfigCallback, Sit
mBinding.wallRefresh.setOnClickListener(this::setWallRefresh);
mBinding.doh.setOnClickListener(this::setDoh);
mBinding.custom.setOnClickListener(this::onCustom);
mBinding.configCache.setOnClickListener(this::setConfigCache);
mBinding.reset.setOnClickListener(this::onReset);
}
@Override
@ -267,22 +261,6 @@ public class SettingFragment extends BaseFragment implements ConfigCallback, Sit
getRoot().change(3);
}
private void setConfigCache(View view) {
int index = Setting.getConfigCache();
Setting.putConfigCache(index = index == configCache.length - 1 ? 0 : ++index);
mBinding.configCacheText.setText(configCache[index]);
}
private void onReset(View view) {
new MaterialAlertDialogBuilder(getActivity()).setTitle(R.string.dialog_reset_app).setMessage(R.string.dialog_reset_app_data).setNegativeButton(R.string.dialog_negative, null).setPositiveButton(R.string.dialog_positive, (dialog, which) -> reset()).show();
}
private void reset() {
new Thread(() -> {
Shell.exec("pm clear " + App.get().getPackageName());
}).start();
}
private void onVersion(View view) {
Updater.get().force().release().start(getActivity());
}

@ -248,7 +248,7 @@
</LinearLayout>
<LinearLayout
android:id="@+id/configCache"
android:id="@+id/doh"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
@ -259,40 +259,23 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:text="@string/setting_config_cache"
android:text="@string/setting_doh"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/configCacheText"
android:id="@+id/dohText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="關閉" />
</LinearLayout>
<LinearLayout
android:id="@+id/reset"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:background="@drawable/shape_item"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/setting_reset"
android:textColor="@color/white"
android:textSize="16sp" />
tools:text="Google" />
</LinearLayout>
<LinearLayout
android:id="@+id/doh"
android:id="@+id/proxy"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
@ -303,23 +286,23 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:text="@string/setting_doh"
android:text="@string/setting_proxy"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/dohText"
android:id="@+id/proxyText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="Google" />
tools:text="http" />
</LinearLayout>
<LinearLayout
android:id="@+id/proxy"
android:id="@+id/cache"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
@ -330,23 +313,23 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:text="@string/setting_proxy"
android:text="@string/setting_cache"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/proxyText"
android:id="@+id/cacheText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="http" />
tools:text="1.0 MB" />
</LinearLayout>
<LinearLayout
android:id="@+id/cache"
android:id="@+id/backup"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
@ -357,23 +340,23 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:text="@string/setting_cache"
android:text="@string/setting_backup"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/cacheText"
android:id="@+id/backupText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="1.0 MB" />
tools:text="20231103" />
</LinearLayout>
<LinearLayout
android:id="@+id/backup"
android:id="@+id/version"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
@ -384,23 +367,23 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:text="@string/setting_backup"
android:text="@string/setting_version"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/backupText"
android:id="@+id/versionText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="20231103" />
tools:text="1.2.1" />
</LinearLayout>
<LinearLayout
android:id="@+id/version"
android:id="@+id/about"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
@ -411,18 +394,18 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:text="@string/setting_version"
android:text="@string/setting_about"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/versionText"
android:id="@+id/aboutText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="1.2.1" />
tools:text="about" />
</LinearLayout>
</LinearLayout>

@ -231,6 +231,52 @@
tools:text="中文" />
</LinearLayout>
<LinearLayout
android:id="@+id/configCache"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:background="@drawable/shape_item"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:text="@string/setting_config_cache"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/configCacheText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:textColor="@color/white"
android:textSize="16sp"
tools:text="關閉" />
</LinearLayout>
<LinearLayout
android:id="@+id/reset"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:background="@drawable/shape_item"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/setting_reset"
android:textColor="@color/white"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
Loading…
Cancel
Save