Skip to content

Commit af0efad

Browse files
committed
Add Real Time Shizuku Connection
1 parent 9b15efa commit af0efad

File tree

5 files changed

+49
-3
lines changed

5 files changed

+49
-3
lines changed

app/build.gradle

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,15 @@ android {
3131
sourceCompatibility JavaVersion.VERSION_17
3232
targetCompatibility JavaVersion.VERSION_17
3333
}
34+
35+
signingConfigs {
36+
release {
37+
storeFile file("pixelify.keystore")
38+
storePassword "pixelify"
39+
keyAlias "pixelify"
40+
keyPassword "pixelify"
41+
}
42+
}
3443

3544
buildFeatures {
3645
viewBinding true

app/pixelify.keystore

2.71 KB
Binary file not shown.

app/src/main/java/iiec/ditzdev/pixelify/activity/MainActivity.java

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.util.ArrayList;
2222
import java.util.List;
2323
import iiec.ditzdev.pixelify.models.ResolutionTemplate;
24+
import rikka.shizuku.Shizuku;
2425

2526
public class MainActivity extends AppCompatActivity {
2627

@@ -31,6 +32,7 @@ public class MainActivity extends AppCompatActivity {
3132
private SharedPreferences prefs;
3233
private static final String PREFS_USER = "userPrefs";
3334
private static final String PREFS_DANGEROUS = "prefs_dangerous";
35+
private static final int SHIZUKU_CODE = 0;
3436

3537
@Override
3638
protected void onCreate(Bundle savedInstanceState) {
@@ -43,6 +45,10 @@ protected void onCreate(Bundle savedInstanceState) {
4345
v -> {
4446
startActivity(new Intent(this, SettingsActivity.class));
4547
});
48+
if (!checkShizukuService()) {
49+
showShizukuWarningDialog();
50+
return;
51+
}
4652
try {
4753
wm = new WM(getContentResolver());
4854
utils = new NodeRESOUtils(wm);
@@ -201,6 +207,36 @@ private List<ResolutionTemplate> createResolutionTemplates() {
201207
templates.add(new ResolutionTemplate("iPhone 13 Pro max (2021)", 1284, 2778, 340, 3.0f, "6.68\""));
202208
return templates;
203209
}
210+
211+
private boolean checkShizukuService() {
212+
try {
213+
return Shizuku.pingBinder();
214+
} catch (Exception e) {
215+
return false;
216+
}
217+
}
218+
private void showShizukuWarningDialog() {
219+
new BottomSheetDialogBuilder(this)
220+
.setIcon(getDrawable(R.drawable.icon_warning))
221+
.setMessage(getString(R.string.shizuk_dialog_warning))
222+
.setButtonPositive(
223+
getString(R.string.action_string_ok),
224+
v -> {
225+
v.dismiss();
226+
finish();
227+
})
228+
.setCancelable(false)
229+
.show();
230+
}
231+
232+
@Override
233+
public void onResume() {
234+
super.onResume();
235+
if (!checkShizukuService()) {
236+
showShizukuWarningDialog();
237+
return;
238+
}
239+
}
204240

205241
@Override
206242
protected void onDestroy() {

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,8 @@
4848
<string name="string_template_title">Pilih template Resolusi</string>
4949
<string name="action_select">Pilih</string>
5050
<string name="question_reset">Apakah Anda yakin ingin me-reset resolusi layar yang sekarang? Tindakan ini tidak dapat di urungkan</string>
51-
51+
<string name="shizuk_dialog_warning">Layanan Shizuku tidak aktif. Harap aktifkan layanan Shizuku terlebih dahulu untuk menggunakan aplikasi ini.</string>
52+
5253
<!-- SETTINGS ACTIVITY -->
5354
<string name="string_theme">Tema UI</string>
5455
<string name="string_subtitle_theme">Atur tema Aplikasi.</string>

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@
4747
<string name="string_dialog_warning">The resolution you\'ve chosen is significantly different from your device\'s default.\n\nThis might cause system instability or UI issues.\n\nCurrent Default: %1$sx%2$s\nNew Resolution: %3$sx%4$s @ %5$sdpi\n\nAre you sure you want to proceed?</string>
4848
<string name="string_template_title">Select template Resolution</string>
4949
<string name="action_select">Select</string>
50-
<string name="question_reset">Apakah Anda yakin ingin me-reset resolusi layar yang sekarang? Tindakan ini tidak dapat di urungkan</string>
51-
50+
<string name="question_reset">Are you sure you want to reset the current screen resolution? This action cannot be undone.</string>
51+
<string name="shizuk_dialog_warning">Shizuku service is not active. Please activate Shizuku service first to use this application.</string>
5252
<!-- SETTINGS ACTIVITY -->
5353
<string name="string_theme">UI Theme</string>
5454
<string name="string_subtitle_theme">Set Application theme.</string>

0 commit comments

Comments
 (0)