Skip to content

Commit d9712a3

Browse files
committed
AppFilter: optimizations
1 parent f2343bd commit d9712a3

File tree

10 files changed

+34
-41
lines changed

10 files changed

+34
-41
lines changed

app/src/main/AndroidManifest.xml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@
2424
</intent-filter>
2525
</service>
2626
<service
27-
android:name=".service.DaedalusTileService"
28-
android:label="@string/app_name"
29-
android:icon="@drawable/ic_security"
30-
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
27+
android:name=".service.DaedalusTileService"
28+
android:label="@string/app_name"
29+
android:icon="@drawable/ic_security"
30+
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
3131
<intent-filter>
32-
<action android:name="android.service.quicksettings.action.QS_TILE" />
32+
<action android:name="android.service.quicksettings.action.QS_TILE"/>
3333
</intent-filter>
3434
</service>
3535

@@ -71,7 +71,11 @@
7171
android:configChanges="keyboard|keyboardHidden|screenLayout|uiMode|orientation|screenSize|smallestScreenSize"
7272
android:theme="@style/AppTheme.NoActionBar">
7373
</activity>
74-
<activity android:name=".activity.FilterAppProxyActivity" />
74+
<activity
75+
android:name=".activity.AppFilterActivity"
76+
android:label=""
77+
android:configChanges="keyboard|keyboardHidden|screenLayout|uiMode|orientation|screenSize|smallestScreenSize"
78+
android:theme="@style/AppTheme.NoActionBar"/>
7579
</application>
7680

77-
</manifest>
81+
</manifest>

app/src/main/java/org/itxtech/daedalus/activity/FilterAppProxyActivity.java renamed to app/src/main/java/org/itxtech/daedalus/activity/AppFilterActivity.java

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
* the Free Software Foundation, either version 3 of the License, or
4040
* (at your option) any later version.
4141
*/
42-
public class FilterAppProxyActivity extends AppCompatActivity {
42+
public class AppFilterActivity extends AppCompatActivity {
4343

4444
private RecyclerViewAdapter adapter;
4545

@@ -50,7 +50,7 @@ public void onCreate(@Nullable Bundle savedInstanceState) {
5050
}
5151
super.onCreate(savedInstanceState);
5252

53-
setContentView(R.layout.activity_filter_app);
53+
setContentView(R.layout.activity_app_filter);
5454
Toolbar toolbar = findViewById(R.id.toolbar_filter);
5555
Drawable drawable = ContextCompat.getDrawable(this, R.drawable.ic_clear);
5656
RecyclerView recyclerView = findViewById(R.id.recyclerView_app_filter_list);
@@ -60,19 +60,10 @@ public void onCreate(@Nullable Bundle savedInstanceState) {
6060
DrawableCompat.setTint(wrappedDrawable, Color.WHITE);
6161
toolbar.setNavigationIcon(drawable);
6262
toolbar.setNavigationOnClickListener(v -> onBackPressed());
63+
toolbar.setTitle(R.string.settings_app_filter);
6364
adapter = new RecyclerViewAdapter();
6465
recyclerView.setAdapter(adapter);
65-
new Thread(() -> {
66-
ArrayList<AppObject> appList = getAppList();
67-
adapter.updateList(appList);
68-
}).start();
69-
}
70-
71-
@Override
72-
public void onPostCreate(Bundle savedInstanceState) {
73-
super.onPostCreate(savedInstanceState);
74-
Toolbar toolbar = findViewById(R.id.toolbar_filter);
75-
toolbar.setTitle(R.string.settings_app_filter);
66+
new Thread(() -> adapter.updateList(getAppList())).start();
7667
}
7768

7869
@Override
@@ -122,7 +113,7 @@ void updateList(ArrayList<AppObject> appObjects) {
122113
appList = appObjects;
123114

124115
for (int i = 0; i < appObjects.size(); i++) {
125-
if (Daedalus.configurations.getFilterAppObjects().contains(appObjects.get(i).appPackageName)) {
116+
if (Daedalus.configurations.getAppObjects().contains(appObjects.get(i).appPackageName)) {
126117
checkStatus.put(i, true);
127118
}
128119
}
@@ -144,7 +135,7 @@ public void onBindViewHolder(@NonNull RecyclerViewHolder holder, int position) {
144135
holder.appIcon.setImageDrawable(appList.get(position).appIcon);
145136
holder.appPackageName = packageName;
146137
holder.appCheck.setOnCheckedChangeListener(null);
147-
if (Daedalus.configurations.getFilterAppObjects().contains(packageName)) {
138+
if (Daedalus.configurations.getAppObjects().contains(packageName)) {
148139
holder.appCheck.setChecked(true);
149140
}
150141
holder.appCheck.setOnCheckedChangeListener((buttonView, isChecked) -> {
@@ -186,10 +177,10 @@ private class RecyclerViewHolder extends RecyclerView.ViewHolder implements View
186177
public void onClick(View v) {
187178
if (appCheck.isChecked()) {
188179
appCheck.setChecked(false);
189-
Daedalus.configurations.getFilterAppObjects().remove(appPackageName);
180+
Daedalus.configurations.getAppObjects().remove(appPackageName);
190181
} else {
191182
appCheck.setChecked(true);
192-
Daedalus.configurations.getFilterAppObjects().add(appPackageName);
183+
Daedalus.configurations.getAppObjects().add(appPackageName);
193184
}
194185
}
195186
}

app/src/main/java/org/itxtech/daedalus/fragment/GlobalConfigFragment.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import android.preference.*;
66
import org.itxtech.daedalus.Daedalus;
77
import org.itxtech.daedalus.R;
8-
import org.itxtech.daedalus.activity.FilterAppProxyActivity;
8+
import org.itxtech.daedalus.activity.AppFilterActivity;
99
import org.itxtech.daedalus.activity.MainActivity;
1010
import org.itxtech.daedalus.util.server.DNSServerHelper;
1111

@@ -86,7 +86,7 @@ public void onCreate(Bundle savedInstanceState) {
8686
});
8787

8888
findPreference("settings_app_filter_list").setOnPreferenceClickListener(preference -> {
89-
startActivity(new Intent(getActivity(), FilterAppProxyActivity.class));
89+
startActivity(new Intent(getActivity(), AppFilterActivity.class));
9090
return false;
9191
});
9292

app/src/main/java/org/itxtech/daedalus/fragment/RuleConfigFragment.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,9 @@
4242
*/
4343
public class RuleConfigFragment extends ConfigFragment {
4444
private static final OkHttpClient HTTP_CLIENT = new OkHttpClient.Builder()
45-
.connectTimeout(5, TimeUnit.SECONDS)
46-
.readTimeout(10, TimeUnit.SECONDS)
47-
.writeTimeout(10, TimeUnit.SECONDS)
45+
.connectTimeout(30, TimeUnit.SECONDS)
46+
.readTimeout(30, TimeUnit.SECONDS)
47+
.writeTimeout(30, TimeUnit.SECONDS)
4848
.build();
4949

5050
private static final int READ_REQUEST_CODE = 1;

app/src/main/java/org/itxtech/daedalus/util/Configurations.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import com.google.gson.stream.JsonReader;
55
import org.itxtech.daedalus.Daedalus;
66
import org.itxtech.daedalus.util.server.CustomDNSServer;
7-
import org.itxtech.daedalus.util.server.DNSServer;
87

98
import java.io.File;
109
import java.io.FileReader;
@@ -28,9 +27,8 @@ public class Configurations {
2827

2928
private static File file;
3029

31-
private ArrayList<DNSServer> builtInDNSServers;
3230
private ArrayList<CustomDNSServer> customDNSServers;
33-
private ArrayList<String> filterAppObjects;
31+
private ArrayList<String> appObjects;
3432

3533
private ArrayList<Rule> hostsRules;
3634
private ArrayList<Rule> dnsmasqRules;
@@ -69,11 +67,11 @@ public ArrayList<CustomDNSServer> getCustomDNSServers() {
6967
return customDNSServers;
7068
}
7169

72-
public ArrayList<String> getFilterAppObjects() {
73-
if (filterAppObjects == null) {
74-
filterAppObjects = new ArrayList<>();
70+
public ArrayList<String> getAppObjects() {
71+
if (appObjects == null) {
72+
appObjects = new ArrayList<>();
7573
}
76-
return filterAppObjects;
74+
return appObjects;
7775
}
7876

7977
public ArrayList<Rule> getHostsRules() {

app/src/main/res/values-zh-rCN/strings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@
7474
<string name="settings_rule_sync">同步规则</string>
7575
<string name="settings_rule_filename">规则文件名</string>
7676
<string name="settings_rule_import">导入</string>
77-
<string name="settings_rule_import_build_in">内置</string>
77+
<string name="settings_rule_import_built_in">内置</string>
7878
<string name="settings_rule_import_external">外部</string>
7979

8080
<string name="settings_server_name">服务器名称</string>

app/src/main/res/values-zh-rTW/strings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373
<string name="settings_rule_sync">同步規則</string>
7474
<string name="settings_rule_filename">規則檔案名稱</string>
7575
<string name="settings_rule_import">匯入</string>
76-
<string name="settings_rule_import_build_in">内置</string>
76+
<string name="settings_rule_import_built_in">内置</string>
7777
<string name="settings_rule_import_external">外部</string>
7878
<string name="settings_dns_query_method">DNS 查询方式</string>
7979

app/src/main/res/values/strings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@
7979
<string name="settings_rule_sync">Sync Rule</string>
8080
<string name="settings_rule_filename">Rule Filename</string>
8181
<string name="settings_rule_import">Import</string>
82-
<string name="settings_rule_import_build_in">Build-in</string>
82+
<string name="settings_rule_import_built_in">Built-in</string>
8383
<string name="settings_rule_import_external">External</string>
8484

8585
<string name="settings_server_name">Server Name</string>

app/src/main/res/xml/perf_rule.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@
3232
android:title="@string/settings_rule_import">
3333
<ListPreference
3434
android:key="ruleImportBuildIn"
35-
android:title="@string/settings_rule_import_build_in"/>
35+
android:title="@string/settings_rule_import_built_in"/>
3636
<org.itxtech.daedalus.widget.ClickPreference
3737
android:key="ruleImportExternal"
3838
android:title="@string/settings_rule_import_external"/>
3939
</PreferenceCategory>
40-
</PreferenceScreen>
40+
</PreferenceScreen>

0 commit comments

Comments
 (0)