[app] Add more checks for play publishing (#390)

* [app] Add more checks for play publishing

* [app] Fix shortcuts
This commit is contained in:
tehcneko 2021-03-21 18:33:56 +08:00 committed by GitHub
parent 5b9c8b6c5b
commit 408b93f093
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 36 additions and 21 deletions

View File

@ -25,7 +25,9 @@ import android.os.ParcelFileDescriptor;
import android.os.RemoteException;
import android.util.Log;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
@ -236,4 +238,9 @@ public class ConfigManager {
return false;
}
}
public static boolean isMagiskInstalled() {
return Arrays.stream(System.getenv("PATH").split(File.pathSeparator))
.anyMatch(str -> new File(str, "magisk").exists());
}
}

View File

@ -44,8 +44,6 @@ import org.lsposed.manager.util.ModuleUtil;
import org.lsposed.manager.util.NavUtil;
import org.lsposed.manager.util.chrome.LinkTransformationMethod;
import java.io.File;
import java.util.Arrays;
import java.util.Locale;
import name.mikanoshi.customiuizer.holidays.HolidayHelper;
@ -117,8 +115,7 @@ public class MainActivity extends BaseActivity {
}
} else {
cardBackgroundColor = ResourcesKt.resolveColor(getTheme(), R.attr.colorInstall);
boolean isMagiskInstalled = Arrays.stream(System.getenv("PATH").split(File.pathSeparator))
.anyMatch(str -> new File(str, "magisk").exists());
boolean isMagiskInstalled = ConfigManager.isMagiskInstalled();
binding.statusTitle.setText(isMagiskInstalled ? R.string.Install : R.string.NotInstall);
binding.statusSummary.setText(isMagiskInstalled ? R.string.InstallDetail : R.string.NotInstallDetail);
if (!isMagiskInstalled) {
@ -126,7 +123,7 @@ public class MainActivity extends BaseActivity {
binding.download.setVisibility(View.GONE);
}
binding.statusIcon.setImageResource(R.drawable.ic_error);
Snackbar.make(binding.snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_LONG).show();
Snackbar.make(binding.snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_INDEFINITE).show();
}
binding.status.setCardBackgroundColor(cardBackgroundColor);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {

View File

@ -20,6 +20,8 @@
package org.lsposed.manager.ui.activity;
import static android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
@ -57,11 +59,6 @@ import com.bumptech.glide.request.target.CustomTarget;
import com.bumptech.glide.request.transition.Transition;
import com.google.android.material.snackbar.Snackbar;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import org.lsposed.manager.ConfigManager;
import org.lsposed.manager.R;
import org.lsposed.manager.adapters.AppHelper;
@ -70,7 +67,10 @@ import org.lsposed.manager.ui.activity.base.ListActivity;
import org.lsposed.manager.util.GlideApp;
import org.lsposed.manager.util.ModuleUtil;
import static android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class ModulesActivity extends ListActivity implements ModuleUtil.ModuleListener {
@ -92,6 +92,10 @@ public class ModulesActivity extends ListActivity implements ModuleUtil.ModuleLi
pm = getPackageManager();
moduleUtil.addListener(this);
super.onCreate(savedInstanceState);
if (ConfigManager.getXposedVersionName() == null) {
Toast.makeText(this, R.string.lsposed_not_active, Toast.LENGTH_LONG).show();
finish();
}
}
@Override

View File

@ -31,6 +31,7 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.Filter;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@ -39,6 +40,12 @@ import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.snackbar.Snackbar;
import org.lsposed.manager.ConfigManager;
import org.lsposed.manager.R;
import org.lsposed.manager.repo.RepoLoader;
import org.lsposed.manager.repo.model.OnlineModule;
import org.lsposed.manager.ui.activity.base.ListActivity;
import java.time.Instant;
import java.util.ArrayList;
import java.util.Collection;
@ -47,10 +54,6 @@ import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
import org.lsposed.manager.R;
import org.lsposed.manager.repo.RepoLoader;
import org.lsposed.manager.repo.model.OnlineModule;
import org.lsposed.manager.ui.activity.base.ListActivity;
import rikka.core.util.LabelComparator;
public class RepoActivity extends ListActivity implements RepoLoader.Listener {
@ -61,6 +64,10 @@ public class RepoActivity extends ListActivity implements RepoLoader.Listener {
public void onCreate(@Nullable Bundle savedInstanceState) {
repoLoader.addListener(this);
super.onCreate(savedInstanceState);
if (!ConfigManager.isMagiskInstalled()) {
Toast.makeText(this, R.string.lsposed_not_active, Toast.LENGTH_LONG).show();
finish();
}
}
@Override

View File

@ -28,8 +28,8 @@
android:shortcutShortLabel="@string/Modules">
<intent
android:action="android.intent.action.MAIN"
android:targetClass="orrg.lsposed.manager.ui.activity.ModulesActivity"
android:targetPackage="orrg.lsposed.manager" />
android:targetClass="org.lsposed.manager.ui.activity.ModulesActivity"
android:targetPackage="org.lsposed.manager" />
</shortcut>
<shortcut
android:enabled="true"
@ -39,8 +39,8 @@
android:shortcutShortLabel="@string/Logs">
<intent
android:action="android.intent.action.MAIN"
android:targetClass="orrg.lsposed.manager.ui.activity.LogsActivity"
android:targetPackage="orrg.lsposed.manager" />
android:targetClass="org.lsposed.manager.ui.activity.LogsActivity"
android:targetPackage="org.lsposed.manager" />
</shortcut>
<shortcut
android:enabled="true"
@ -50,7 +50,7 @@
android:shortcutShortLabel="@string/module_repo">
<intent
android:action="android.intent.action.MAIN"
android:targetClass="orrg.lsposed.manager.ui.activity.RepoActivity"
android:targetPackage="orrg.lsposed.manager" />
android:targetClass="org.lsposed.manager.ui.activity.RepoActivity"
android:targetPackage="org.lsposed.manager" />
</shortcut>
</shortcuts>