[app] Update home design (#1080)
This commit is contained in:
parent
6ff8f50562
commit
b49aa00df5
|
|
@ -22,10 +22,8 @@ package org.lsposed.manager.ui.dialog;
|
|||
import android.content.Context;
|
||||
import android.os.Build;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.text.HtmlCompat;
|
||||
|
||||
import org.lsposed.manager.BuildConfig;
|
||||
import org.lsposed.manager.ConfigManager;
|
||||
|
|
@ -40,10 +38,16 @@ public class InfoDialogBuilder extends BlurBehindDialogBuilder {
|
|||
|
||||
public InfoDialogBuilder(@NonNull Context context) {
|
||||
super(context);
|
||||
setTitle(R.string.info);
|
||||
DialogInfoBinding binding = DialogInfoBinding.inflate(LayoutInflater.from(context), null, false);
|
||||
|
||||
binding.apiVersion.setText(String.valueOf(ConfigManager.getXposedApiVersion()));
|
||||
binding.frameworkVersion.setText(String.format(Locale.US, "%s (%s)", ConfigManager.getXposedVersionName(), ConfigManager.getXposedVersionCode()));
|
||||
if (ConfigManager.isBinderAlive()) {
|
||||
binding.apiVersion.setText(String.valueOf(ConfigManager.getXposedApiVersion()));
|
||||
binding.frameworkVersion.setText(String.format(Locale.US, "%s (%s)", ConfigManager.getXposedVersionName(), ConfigManager.getXposedVersionCode()));
|
||||
} else {
|
||||
binding.apiVersion.setText(R.string.not_installed);
|
||||
binding.frameworkVersion.setText(R.string.not_installed);
|
||||
}
|
||||
binding.managerVersion.setText(String.format(Locale.US, "%s (%s)", BuildConfig.VERSION_NAME, BuildConfig.VERSION_CODE));
|
||||
|
||||
if (Build.VERSION.PREVIEW_SDK_INT != 0) {
|
||||
|
|
@ -55,17 +59,6 @@ public class InfoDialogBuilder extends BlurBehindDialogBuilder {
|
|||
binding.device.setText(getDevice());
|
||||
binding.systemAbi.setText(Build.SUPPORTED_ABIS[0]);
|
||||
|
||||
if (!ConfigManager.isSepolicyLoaded()) {
|
||||
binding.note.setVisibility(View.VISIBLE);
|
||||
binding.note.setText(HtmlCompat.fromHtml(context.getString(R.string.selinux_policy_not_loaded), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
} else if (!ConfigManager.systemServerRequested()) {
|
||||
binding.note.setVisibility(View.VISIBLE);
|
||||
binding.note.setText(HtmlCompat.fromHtml(context.getString(R.string.system_inject_fail), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
} else if (!ConfigManager.dex2oatFlagsLoaded()) {
|
||||
binding.note.setVisibility(View.VISIBLE);
|
||||
binding.note.setText(HtmlCompat.fromHtml(context.getString(R.string.system_prop_incorrect), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
}
|
||||
|
||||
setView(binding.getRoot());
|
||||
|
||||
setPositiveButton(android.R.string.ok, null);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,71 @@
|
|||
/*
|
||||
* This file is part of LSPosed.
|
||||
*
|
||||
* LSPosed is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* LSPosed is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with LSPosed. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Copyright (C) 2021 LSPosed Contributors
|
||||
*/
|
||||
|
||||
package org.lsposed.manager.ui.dialog;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.text.method.LinkMovementMethod;
|
||||
import android.view.LayoutInflater;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.text.HtmlCompat;
|
||||
|
||||
import org.lsposed.manager.ConfigManager;
|
||||
import org.lsposed.manager.R;
|
||||
import org.lsposed.manager.databinding.DialogItemBinding;
|
||||
import org.lsposed.manager.databinding.DialogWarningBinding;
|
||||
import org.lsposed.manager.util.chrome.LinkTransformationMethod;
|
||||
|
||||
public class WarningDialogBuilder extends BlurBehindDialogBuilder {
|
||||
|
||||
public WarningDialogBuilder(@NonNull Context context) {
|
||||
super(context);
|
||||
Activity activity = (Activity) context;
|
||||
setTitle(R.string.partial_activated);
|
||||
|
||||
LayoutInflater inflater = LayoutInflater.from(context);
|
||||
DialogWarningBinding binding = DialogWarningBinding.inflate(inflater, null, false);
|
||||
|
||||
if (!ConfigManager.isSepolicyLoaded()) {
|
||||
DialogItemBinding item = DialogItemBinding.inflate(inflater, binding.container, true);
|
||||
item.title.setText(R.string.selinux_policy_not_loaded_summary);
|
||||
item.value.setText(HtmlCompat.fromHtml(activity.getString(R.string.selinux_policy_not_loaded), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
item.value.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
item.value.setTransformationMethod(new LinkTransformationMethod(activity));
|
||||
}
|
||||
if (!ConfigManager.systemServerRequested()) {
|
||||
DialogItemBinding item = DialogItemBinding.inflate(inflater, binding.container, true);
|
||||
item.title.setText(R.string.system_inject_fail_summary);
|
||||
item.value.setText(HtmlCompat.fromHtml(activity.getString(R.string.system_inject_fail), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
item.value.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
item.value.setTransformationMethod(new LinkTransformationMethod(activity));
|
||||
}
|
||||
if (!ConfigManager.dex2oatFlagsLoaded()) {
|
||||
DialogItemBinding item = DialogItemBinding.inflate(inflater, binding.container, true);
|
||||
item.title.setText(R.string.system_prop_incorrect_summary);
|
||||
item.value.setText(HtmlCompat.fromHtml(activity.getString(R.string.system_prop_incorrect), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
item.value.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
item.value.setTransformationMethod(new LinkTransformationMethod(activity));
|
||||
}
|
||||
|
||||
setView(binding.getRoot());
|
||||
setPositiveButton(android.R.string.ok, null);
|
||||
}
|
||||
}
|
||||
|
|
@ -19,10 +19,13 @@
|
|||
|
||||
package org.lsposed.manager.ui.fragment;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.text.SpannableStringBuilder;
|
||||
import android.text.method.LinkMovementMethod;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
|
|
@ -37,9 +40,9 @@ import org.lsposed.manager.ConfigManager;
|
|||
import org.lsposed.manager.R;
|
||||
import org.lsposed.manager.databinding.DialogAboutBinding;
|
||||
import org.lsposed.manager.databinding.FragmentHomeBinding;
|
||||
import org.lsposed.manager.ui.activity.base.BaseActivity;
|
||||
import org.lsposed.manager.ui.dialog.BlurBehindDialogBuilder;
|
||||
import org.lsposed.manager.ui.dialog.InfoDialogBuilder;
|
||||
import org.lsposed.manager.ui.dialog.WarningDialogBuilder;
|
||||
import org.lsposed.manager.util.ModuleUtil;
|
||||
import org.lsposed.manager.util.NavUtil;
|
||||
import org.lsposed.manager.util.chrome.LinkTransformationMethod;
|
||||
|
|
@ -56,22 +59,18 @@ public class HomeFragment extends BaseFragment {
|
|||
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||
binding = FragmentHomeBinding.inflate(inflater, container, false);
|
||||
|
||||
setupToolbar(binding.toolbar, R.string.app_name);
|
||||
setupToolbar(binding.toolbar, getString(R.string.app_name), R.menu.menu_home);
|
||||
binding.toolbar.setNavigationIcon(null);
|
||||
binding.nestedScrollView.getBorderViewDelegate().setBorderVisibilityChangedListener((top, oldTop, bottom, oldBottom) -> binding.appBar.setRaised(!top));
|
||||
return binding.getRoot();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
|
||||
BaseActivity activity = (BaseActivity) requireActivity();
|
||||
boolean isBinderAlive = ConfigManager.isBinderAlive();
|
||||
boolean needUpdate = App.needUpdate();
|
||||
Activity activity = requireActivity();
|
||||
binding.status.setOnClickListener(v -> {
|
||||
if (isBinderAlive && !needUpdate) {
|
||||
new InfoDialogBuilder(activity).setTitle(R.string.info).show();
|
||||
if (ConfigManager.isBinderAlive() && !App.needUpdate()) {
|
||||
if (!ConfigManager.isSepolicyLoaded() || !ConfigManager.systemServerRequested() || !ConfigManager.dex2oatFlagsLoaded()) {
|
||||
new WarningDialogBuilder(activity).show();
|
||||
} else {
|
||||
new InfoDialogBuilder(activity).setTitle(R.string.info).show();
|
||||
}
|
||||
} else {
|
||||
NavUtil.startURL(activity, getString(R.string.about_source));
|
||||
}
|
||||
|
|
@ -80,51 +79,74 @@ public class HomeFragment extends BaseFragment {
|
|||
binding.download.setOnClickListener(new StartFragmentListener(R.id.action_repo_fragment, false));
|
||||
binding.logs.setOnClickListener(new StartFragmentListener(R.id.action_logs_fragment, true));
|
||||
binding.settings.setOnClickListener(new StartFragmentListener(R.id.action_settings_fragment, false));
|
||||
binding.about.setOnClickListener(v -> {
|
||||
binding.issue.setOnClickListener(view -> NavUtil.startURL(activity, "https://github.com/LSPosed/LSPosed/issues"));
|
||||
|
||||
updateStates(requireActivity(), ConfigManager.isBinderAlive(), App.needUpdate());
|
||||
return binding.getRoot();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
||||
int itemId = item.getItemId();
|
||||
if (itemId == R.id.menu_refresh) {
|
||||
updateStates(requireActivity(), ConfigManager.isBinderAlive(), App.needUpdate());
|
||||
} else if (itemId == R.id.menu_info) {
|
||||
new InfoDialogBuilder(requireActivity()).setTitle(R.string.info).show();
|
||||
} else if (itemId == R.id.menu_about) {
|
||||
Activity activity = requireActivity();
|
||||
DialogAboutBinding binding = DialogAboutBinding.inflate(LayoutInflater.from(requireActivity()), null, false);
|
||||
binding.sourceCode.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
binding.sourceCode.setTransformationMethod(new LinkTransformationMethod(activity));
|
||||
binding.sourceCode.setText(HtmlCompat.fromHtml(getString(
|
||||
binding.designAboutTitle.setText(R.string.app_name);
|
||||
binding.designAboutInfo.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
binding.designAboutInfo.setTransformationMethod(new LinkTransformationMethod(activity));
|
||||
SpannableStringBuilder sb = new SpannableStringBuilder(HtmlCompat.fromHtml(getString(
|
||||
R.string.about_view_source_code,
|
||||
"<b><a href=\"https://github.com/LSPosed/LSPosed\">GitHub</a></b>",
|
||||
"<b><a href=\"https://t.me/LSPosed\">Telegram</a></b>"), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
binding.translators.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
binding.translators.setTransformationMethod(new LinkTransformationMethod(activity));
|
||||
binding.translators.setText(HtmlCompat.fromHtml(getString(R.string.about_translators, getString(R.string.translators)), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
binding.version.setText(String.format(Locale.US, "LSPosed %s (%s)", BuildConfig.VERSION_NAME, BuildConfig.VERSION_CODE));
|
||||
sb.append("\n\n");
|
||||
sb.append(HtmlCompat.fromHtml(getString(R.string.about_translators, getString(R.string.translators)), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
binding.designAboutInfo.setText(sb);
|
||||
binding.designAboutVersion.setText(String.format(Locale.US, "%s (%s)", BuildConfig.VERSION_NAME, BuildConfig.VERSION_CODE));
|
||||
new BlurBehindDialogBuilder(activity)
|
||||
.setView(binding.getRoot())
|
||||
.show();
|
||||
});
|
||||
}
|
||||
return super.onOptionsItemSelected(item);
|
||||
}
|
||||
|
||||
private void updateStates(Activity activity, boolean binderAlive, boolean needUpdate) {
|
||||
int cardBackgroundColor;
|
||||
if (isBinderAlive) {
|
||||
if (!ConfigManager.isSepolicyLoaded()) {
|
||||
binding.statusTitle.setText(R.string.partial_activated);
|
||||
cardBackgroundColor = ResourceUtils.resolveColor(activity.getTheme(), rikka.material.R.attr.colorWarning);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_warning);
|
||||
binding.statusSummary.setText(R.string.selinux_policy_not_loaded_summary);
|
||||
} else if (!ConfigManager.systemServerRequested()) {
|
||||
binding.statusTitle.setText(R.string.partial_activated);
|
||||
cardBackgroundColor = ResourceUtils.resolveColor(activity.getTheme(), rikka.material.R.attr.colorWarning);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_warning);
|
||||
binding.statusSummary.setText(R.string.system_inject_fail_summary);
|
||||
} else if (!ConfigManager.dex2oatFlagsLoaded()) {
|
||||
binding.statusTitle.setText(R.string.partial_activated);
|
||||
cardBackgroundColor = ResourceUtils.resolveColor(activity.getTheme(), rikka.material.R.attr.colorWarning);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_warning);
|
||||
binding.statusSummary.setText(R.string.system_prop_incorrect_summary);
|
||||
} else if (needUpdate) {
|
||||
if (binderAlive) {
|
||||
StringBuilder sb = new StringBuilder(String.format(Locale.US, "%s (%d)",
|
||||
ConfigManager.getXposedVersionName(), ConfigManager.getXposedVersionCode()));
|
||||
if (needUpdate) {
|
||||
cardBackgroundColor = ResourceUtils.resolveColor(activity.getTheme(), R.attr.colorInstall);
|
||||
binding.statusTitle.setText(R.string.need_update);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_round_update_24);
|
||||
sb.append("\n\n");
|
||||
sb.append(getString(R.string.please_update_summary));
|
||||
} else if (!ConfigManager.isSepolicyLoaded() || !ConfigManager.systemServerRequested() || !ConfigManager.dex2oatFlagsLoaded()) {
|
||||
cardBackgroundColor = ResourceUtils.resolveColor(activity.getTheme(), rikka.material.R.attr.colorWarning);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_warning);
|
||||
binding.statusSummary.setText(R.string.please_update_summary);
|
||||
binding.statusTitle.setText(R.string.partial_activated);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_round_warning_24);
|
||||
sb.append("\n");
|
||||
if (!ConfigManager.isSepolicyLoaded()) {
|
||||
sb.append("\n");
|
||||
sb.append(getString(R.string.selinux_policy_not_loaded_summary));
|
||||
}
|
||||
if (!ConfigManager.systemServerRequested()) {
|
||||
sb.append("\n");
|
||||
sb.append(getString(R.string.system_inject_fail_summary));
|
||||
}
|
||||
if (!ConfigManager.dex2oatFlagsLoaded()) {
|
||||
sb.append("\n");
|
||||
sb.append(getString(R.string.system_prop_incorrect_summary));
|
||||
}
|
||||
} else {
|
||||
binding.statusTitle.setText(R.string.activated);
|
||||
cardBackgroundColor = ResourceUtils.resolveColor(activity.getTheme(), R.attr.colorNormal);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_check_circle);
|
||||
binding.statusSummary.setText(String.format(Locale.ROOT, "%s (%d)",
|
||||
ConfigManager.getXposedVersionName(), ConfigManager.getXposedVersionCode()));
|
||||
binding.statusTitle.setText(R.string.activated);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_round_check_circle_24);
|
||||
}
|
||||
binding.statusSummary.setText(sb.toString());
|
||||
} else {
|
||||
cardBackgroundColor = ResourceUtils.resolveColor(activity.getTheme(), R.attr.colorInstall);
|
||||
boolean isMagiskInstalled = ConfigManager.isMagiskInstalled();
|
||||
|
|
@ -134,7 +156,7 @@ public class HomeFragment extends BaseFragment {
|
|||
binding.status.setOnClickListener(null);
|
||||
binding.download.setVisibility(View.GONE);
|
||||
}
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_error);
|
||||
binding.statusIcon.setImageResource(R.drawable.ic_round_error_outline_24);
|
||||
Snackbar.make(binding.snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_INDEFINITE).show();
|
||||
}
|
||||
binding.status.setCardBackgroundColor(cardBackgroundColor);
|
||||
|
|
|
|||
|
|
@ -1,30 +0,0 @@
|
|||
<!--
|
||||
~ This file is part of LSPosed.
|
||||
~
|
||||
~ LSPosed is free software: you can redistribute it and/or modify
|
||||
~ it under the terms of the GNU General Public License as published by
|
||||
~ the Free Software Foundation, either version 3 of the License, or
|
||||
~ (at your option) any later version.
|
||||
~
|
||||
~ LSPosed is distributed in the hope that it will be useful,
|
||||
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
~ GNU General Public License for more details.
|
||||
~
|
||||
~ You should have received a copy of the GNU General Public License
|
||||
~ along with LSPosed. If not, see <https://www.gnu.org/licenses/>.
|
||||
~
|
||||
~ Copyright (C) 2020 EdXposed Contributors
|
||||
~ Copyright (C) 2021 LSPosed Contributors
|
||||
-->
|
||||
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@color/material_blue_500"
|
||||
android:pathData="M7,15h7v2L7,17zM7,11h10v2L7,13zM7,7h10v2L7,9zM19,3h-4.18C14.4,1.84 13.3,1 12,1c-1.3,0 -2.4,0.84 -2.82,2L5,3c-0.14,0 -0.27,0.01 -0.4,0.04 -0.39,0.08 -0.74,0.28 -1.01,0.55 -0.18,0.18 -0.33,0.4 -0.43,0.64 -0.1,0.23 -0.16,0.49 -0.16,0.77v14c0,0.27 0.06,0.54 0.16,0.78s0.25,0.45 0.43,0.64c0.27,0.27 0.62,0.47 1.01,0.55 0.13,0.02 0.26,0.03 0.4,0.03h14c1.1,0 2,-0.9 2,-2L21,5c0,-1.1 -0.9,-2 -2,-2zM12,2.75c0.41,0 0.75,0.34 0.75,0.75s-0.34,0.75 -0.75,0.75 -0.75,-0.34 -0.75,-0.75 0.34,-0.75 0.75,-0.75zM19,19L5,19L5,5h14v14z" />
|
||||
</vector>
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:autoMirrored="true">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M19,3h-4.18C14.4,1.84 13.3,1 12,1s-2.4,0.84 -2.82,2L5,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2L21,5c0,-1.1 -0.9,-2 -2,-2zM12,3c0.55,0 1,0.45 1,1s-0.45,1 -1,1 -1,-0.45 -1,-1 0.45,-1 1,-1zM13,17L8,17c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h5c0.55,0 1,0.45 1,1s-0.45,1 -1,1zM16,13L8,13c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h8c0.55,0 1,0.45 1,1s-0.45,1 -1,1zM16,9L8,9c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h8c0.55,0 1,0.45 1,1s-0.45,1 -1,1z"/>
|
||||
</vector>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M19,8h-1.81c-0.45,-0.78 -1.07,-1.45 -1.82,-1.96l0.93,-0.93c0.39,-0.39 0.39,-1.02 0,-1.41 -0.39,-0.39 -1.02,-0.39 -1.41,0l-1.47,1.47C12.96,5.06 12.49,5 12,5s-0.96,0.06 -1.41,0.17L9.11,3.7c-0.39,-0.39 -1.02,-0.39 -1.41,0 -0.39,0.39 -0.39,1.02 0,1.41l0.92,0.93C7.88,6.55 7.26,7.22 6.81,8L5,8c-0.55,0 -1,0.45 -1,1s0.45,1 1,1h1.09c-0.05,0.33 -0.09,0.66 -0.09,1v1L5,12c-0.55,0 -1,0.45 -1,1s0.45,1 1,1h1v1c0,0.34 0.04,0.67 0.09,1L5,16c-0.55,0 -1,0.45 -1,1s0.45,1 1,1h1.81c1.04,1.79 2.97,3 5.19,3s4.15,-1.21 5.19,-3L19,18c0.55,0 1,-0.45 1,-1s-0.45,-1 -1,-1h-1.09c0.05,-0.33 0.09,-0.66 0.09,-1v-1h1c0.55,0 1,-0.45 1,-1s-0.45,-1 -1,-1h-1v-1c0,-0.34 -0.04,-0.67 -0.09,-1L19,10c0.55,0 1,-0.45 1,-1s-0.45,-1 -1,-1zM13,16h-2c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h2c0.55,0 1,0.45 1,1s-0.45,1 -1,1zM13,12h-2c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1h2c0.55,0 1,0.45 1,1s-0.45,1 -1,1z"/>
|
||||
</vector>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM9.29,16.29L5.7,12.7c-0.39,-0.39 -0.39,-1.02 0,-1.41 0.39,-0.39 1.02,-0.39 1.41,0L10,14.17l6.88,-6.88c0.39,-0.39 1.02,-0.39 1.41,0 0.39,0.39 0.39,1.02 0,1.41l-7.59,7.59c-0.38,0.39 -1.02,0.39 -1.41,0z"/>
|
||||
</vector>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M12,7c0.55,0 1,0.45 1,1v4c0,0.55 -0.45,1 -1,1s-1,-0.45 -1,-1L11,8c0,-0.55 0.45,-1 1,-1zM11.99,2C6.47,2 2,6.48 2,12s4.47,10 9.99,10C17.52,22 22,17.52 22,12S17.52,2 11.99,2zM12,20c-4.42,0 -8,-3.58 -8,-8s3.58,-8 8,-8 8,3.58 8,8 -3.58,8 -8,8zM13,17h-2v-2h2v2z"/>
|
||||
</vector>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M19.43,12.98c0.04,-0.32 0.07,-0.64 0.07,-0.98s-0.03,-0.66 -0.07,-0.98l2.11,-1.65c0.19,-0.15 0.24,-0.42 0.12,-0.64l-2,-3.46c-0.12,-0.22 -0.39,-0.3 -0.61,-0.22l-2.49,1c-0.52,-0.4 -1.08,-0.73 -1.69,-0.98l-0.38,-2.65C14.46,2.18 14.25,2 14,2h-4c-0.25,0 -0.46,0.18 -0.49,0.42l-0.38,2.65c-0.61,0.25 -1.17,0.59 -1.69,0.98l-2.49,-1c-0.23,-0.09 -0.49,0 -0.61,0.22l-2,3.46c-0.13,0.22 -0.07,0.49 0.12,0.64l2.11,1.65c-0.04,0.32 -0.07,0.65 -0.07,0.98s0.03,0.66 0.07,0.98l-2.11,1.65c-0.19,0.15 -0.24,0.42 -0.12,0.64l2,3.46c0.12,0.22 0.39,0.3 0.61,0.22l2.49,-1c0.52,0.4 1.08,0.73 1.69,0.98l0.38,2.65c0.03,0.24 0.24,0.42 0.49,0.42h4c0.25,0 0.46,-0.18 0.49,-0.42l0.38,-2.65c0.61,-0.25 1.17,-0.59 1.69,-0.98l2.49,1c0.23,0.09 0.49,0 0.61,-0.22l2,-3.46c0.12,-0.22 0.07,-0.49 -0.12,-0.64l-2.11,-1.65zM12,15.5c-1.93,0 -3.5,-1.57 -3.5,-3.5s1.57,-3.5 3.5,-3.5 3.5,1.57 3.5,3.5 -1.57,3.5 -3.5,3.5z"/>
|
||||
</vector>
|
||||
|
|
@ -14,17 +14,16 @@
|
|||
~ You should have received a copy of the GNU General Public License
|
||||
~ along with LSPosed. If not, see <https://www.gnu.org/licenses/>.
|
||||
~
|
||||
~ Copyright (C) 2020 EdXposed Contributors
|
||||
~ Copyright (C) 2021 LSPosed Contributors
|
||||
-->
|
||||
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM16.59,7.58L10,14.17l-2.59,-2.58L6,13l4,4 8,-8z" />
|
||||
android:pathData="M11,8.75v3.68c0,0.35 0.19,0.68 0.49,0.86l3.12,1.85c0.36,0.21 0.82,0.09 1.03,-0.26c0.21,-0.36 0.1,-0.82 -0.26,-1.03l-2.87,-1.71v-3.4C12.5,8.34 12.16,8 11.75,8S11,8.34 11,8.75zM21,9.5V4.21c0,-0.45 -0.54,-0.67 -0.85,-0.35l-1.78,1.78c-1.81,-1.81 -4.39,-2.85 -7.21,-2.6c-4.19,0.38 -7.64,3.75 -8.1,7.94C2.46,16.4 6.69,21 12,21c4.59,0 8.38,-3.44 8.93,-7.88c0.07,-0.6 -0.4,-1.12 -1,-1.12c-0.5,0 -0.92,0.37 -0.98,0.86c-0.43,3.49 -3.44,6.19 -7.05,6.14c-3.71,-0.05 -6.84,-3.18 -6.9,-6.9C4.94,8.2 8.11,5 12,5c1.93,0 3.68,0.79 4.95,2.05l-2.09,2.09C14.54,9.46 14.76,10 15.21,10h5.29C20.78,10 21,9.78 21,9.5z" />
|
||||
</vector>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M4.47,21h15.06c1.54,0 2.5,-1.67 1.73,-3L13.73,4.99c-0.77,-1.33 -2.69,-1.33 -3.46,0L2.74,18c-0.77,1.33 0.19,3 1.73,3zM12,14c-0.55,0 -1,-0.45 -1,-1v-2c0,-0.55 0.45,-1 1,-1s1,0.45 1,1v2c0,0.55 -0.45,1 -1,1zM13,18h-2v-2h2v2z"/>
|
||||
</vector>
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
<foreground>
|
||||
<!-- 44dp icon scaled to 52dp in 72dp, padding = (1-52/44*24/72)/2 -->
|
||||
<inset
|
||||
android:drawable="@drawable/ic_assignment"
|
||||
android:drawable="@drawable/ic_round_assignment_24"
|
||||
android:inset="30.303%" />
|
||||
</foreground>
|
||||
</adaptive-icon>
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@
|
|||
android:layout_height="128dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:layout_margin="8dp"
|
||||
app:srcCompat="@drawable/ic_warning"
|
||||
app:srcCompat="@drawable/ic_round_warning_24"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TextView
|
||||
|
|
|
|||
|
|
@ -17,38 +17,46 @@
|
|||
~ Copyright (C) 2020 EdXposed Contributors
|
||||
~ Copyright (C) 2021 LSPosed Contributors
|
||||
-->
|
||||
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="?android:dialogPreferredPadding"
|
||||
android:paddingVertical="?android:dialogPreferredPadding">
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:orientation="horizontal"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:padding="24dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/version"
|
||||
<ImageView
|
||||
android:id="@+id/design_about_icon"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
app:srcCompat="@drawable/ic_launcher" />
|
||||
|
||||
<LinearLayout
|
||||
android:orientation="vertical"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="14sp"
|
||||
tools:text="@tools:sample/lorem" />
|
||||
android:layout_marginStart="16dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/source_code"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:textColor="?android:textColorSecondary"
|
||||
android:textSize="14sp"
|
||||
tools:text="@string/about_view_source_code" />
|
||||
<TextView
|
||||
android:id="@+id/design_about_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="18sp"
|
||||
android:textAppearance="@android:style/TextAppearance.Material.Body1" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/translators"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:textColor="?android:textColorSecondary"
|
||||
android:textSize="14sp"
|
||||
tools:text="@string/about_translators" />
|
||||
<TextView
|
||||
android:id="@+id/design_about_version"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/design_about_info"
|
||||
android:layout_marginTop="24dp"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="14sp"
|
||||
android:textColor="?android:textColorSecondary" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
|
|
|||
|
|
@ -104,12 +104,5 @@
|
|||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/note"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@style/TextAppearance.AppCompat.Subhead"
|
||||
android:visibility="gone" />
|
||||
|
||||
</LinearLayout>
|
||||
</rikka.widget.borderview.BorderNestedScrollView>
|
||||
|
|
|
|||
|
|
@ -14,17 +14,23 @@
|
|||
~ You should have received a copy of the GNU General Public License
|
||||
~ along with LSPosed. If not, see <https://www.gnu.org/licenses/>.
|
||||
~
|
||||
~ Copyright (C) 2020 EdXposed Contributors
|
||||
~ Copyright (C) 2021 LSPosed Contributors
|
||||
-->
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z" />
|
||||
</vector>
|
||||
<TextView
|
||||
style="@style/DeviceInfoDialogLabel"
|
||||
android:id="@+id/title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<TextView
|
||||
style="@style/DeviceInfoDialogValue"
|
||||
android:id="@+id/value"
|
||||
android:gravity="center_vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
</LinearLayout>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
<!--
|
||||
<?xml version="1.0" encoding="utf-8"?><!--
|
||||
~ This file is part of LSPosed.
|
||||
~
|
||||
~ LSPosed is free software: you can redistribute it and/or modify
|
||||
|
|
@ -14,17 +14,20 @@
|
|||
~ You should have received a copy of the GNU General Public License
|
||||
~ along with LSPosed. If not, see <https://www.gnu.org/licenses/>.
|
||||
~
|
||||
~ Copyright (C) 2020 EdXposed Contributors
|
||||
~ Copyright (C) 2021 LSPosed Contributors
|
||||
-->
|
||||
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M11,7h2v2h-2zM11,11h2v6h-2zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8z" />
|
||||
</vector>
|
||||
<rikka.widget.borderview.BorderNestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="match_parent">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="?dialogPreferredPadding"
|
||||
android:paddingTop="?dialogPreferredPadding">
|
||||
|
||||
</LinearLayout>
|
||||
</rikka.widget.borderview.BorderNestedScrollView>
|
||||
|
|
@ -90,7 +90,7 @@
|
|||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:layout_centerVertical="true"
|
||||
app:srcCompat="@drawable/ic_check_circle"
|
||||
app:srcCompat="@drawable/ic_round_check_circle_24"
|
||||
app:tint="?android:attr/textColorPrimaryInverse" />
|
||||
|
||||
<TextView
|
||||
|
|
@ -204,7 +204,7 @@
|
|||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:contentDescription="@string/Logs"
|
||||
app:srcCompat="@drawable/ic_assignment" />
|
||||
app:srcCompat="@drawable/ic_round_assignment_24" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
|
|
@ -225,7 +225,7 @@
|
|||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:contentDescription="@string/Settings"
|
||||
app:srcCompat="@drawable/ic_settings" />
|
||||
app:srcCompat="@drawable/ic_round_settings_24" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
|
|
@ -236,7 +236,7 @@
|
|||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/about"
|
||||
android:id="@+id/issue"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/HomeItem.Tertiary">
|
||||
|
|
@ -244,14 +244,14 @@
|
|||
<ImageView
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:contentDescription="@string/About"
|
||||
app:srcCompat="@drawable/ic_info" />
|
||||
android:contentDescription="@string/report_issue"
|
||||
app:srcCompat="@drawable/ic_round_bug_report_24" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="24dp"
|
||||
android:text="@string/About"
|
||||
android:text="@string/report_issue"
|
||||
android:textSize="16sp"
|
||||
android:textAppearance="?android:attr/textAppearanceListItem" />
|
||||
</LinearLayout>
|
||||
|
|
|
|||
|
|
@ -1,36 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?><!--
|
||||
~ This file is part of LSPosed.
|
||||
~
|
||||
~ LSPosed is free software: you can redistribute it and/or modify
|
||||
~ it under the terms of the GNU General Public License as published by
|
||||
~ the Free Software Foundation, either version 3 of the License, or
|
||||
~ (at your option) any later version.
|
||||
~
|
||||
~ LSPosed is distributed in the hope that it will be useful,
|
||||
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
~ GNU General Public License for more details.
|
||||
~
|
||||
~ You should have received a copy of the GNU General Public License
|
||||
~ along with LSPosed. If not, see <https://www.gnu.org/licenses/>.
|
||||
~
|
||||
~ Copyright (C) 2021 LSPosed Contributors
|
||||
-->
|
||||
|
||||
<!-- Adding the same root's ID for view binding as other layout configurations -->
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
app:consumeSystemWindowsInsets="start|end"
|
||||
app:edgeToEdge="true"
|
||||
app:fitsSystemWindowsInsets="start|end">
|
||||
|
||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
android:id="@+id/snackbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<include layout="@layout/fragment_home" />
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
<!--
|
||||
<?xml version="1.0" encoding="utf-8"?><!--
|
||||
~ This file is part of LSPosed.
|
||||
~
|
||||
~ LSPosed is free software: you can redistribute it and/or modify
|
||||
|
|
@ -18,13 +18,16 @@
|
|||
~ Copyright (C) 2021 LSPosed Contributors
|
||||
-->
|
||||
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:tint="?attr/colorControlNormal"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M1,21h22L12,2 1,21zM13,18h-2v-2h2v2zM13,14h-2v-4h2v4z" />
|
||||
</vector>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<item
|
||||
android:id="@+id/menu_refresh"
|
||||
android:title="@string/refresh" />
|
||||
<item
|
||||
android:id="@+id/menu_info"
|
||||
android:title="@string/info" />
|
||||
<item
|
||||
android:id="@+id/menu_about"
|
||||
android:title="@string/About" />
|
||||
|
||||
</menu>
|
||||
|
|
@ -38,7 +38,7 @@
|
|||
<string name="activated">Activado</string>
|
||||
<string name="partial_activated">Parcialmente activado</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy no está cargado correctamente</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>WARNING:</b> SEPolicy no está cargado correctamente. Los módulos de hooks del framework del sistema no funcionarán.<br>Por favor, reporta esto al desarrollador <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a>.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy no está cargado correctamente. Los módulos de hooks del framework del sistema no funcionarán.<br>Por favor, reporta esto al desarrollador <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a>.]]></string>
|
||||
<string name="lsposed_not_active">LSPosed no está instalado o activado actualmente.</string>
|
||||
<string name="info_api_version">Versión de la API</string>
|
||||
<string name="info_framework_version">Versión del framework</string>
|
||||
|
|
|
|||
|
|
@ -38,9 +38,9 @@
|
|||
<string name="selinux_policy_not_loaded_summary">SEPolicy n\’est pas chargé correctement</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>AVERTISSEMENT:<\/b> SEPolicy n\’est pas chargé correctement, les modules qui modifient le sous-système ne fonctionneront pas.]]></string>
|
||||
<string name="system_inject_fail_summary">Échec de l\’injection du sous système</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>AVERTISSEMENT:</b> Échec de l\’injection du sous système.<br/>Ceci est rare et peut être causé par <b>Magisk</b> ou certains modules Magisk de basse qualité.<br/>Éssayez de désactiver les modules Magisk autres que Riru et LSPosed ou envoyez le journal complet aux développeurs.]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[Échec de l\’injection du sous système.<br/>Ceci est rare et peut être causé par <b>Magisk</b> ou certains modules Magisk de basse qualité.<br/>Éssayez de désactiver les modules Magisk autres que Riru et LSPosed ou envoyez le journal complet aux développeurs.]]></string>
|
||||
<string name="system_prop_incorrect_summary">Propriétés système incorrectes</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>AVERTISSEMENT:</b> Propriétés système incorrectes.<br/>Certaines propriétés nécessaires au système ont été supprimées ou modifiées.<br/>Les modules peuvent s\'invalider occasionnellement.]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[Propriétés système incorrectes.<br/>Certaines propriétés nécessaires au système ont été supprimées ou modifiées.<br/>Les modules peuvent s\'invalider occasionnellement.]]></string>
|
||||
<string name="need_update">Mise à jour nécessaire</string>
|
||||
<string name="please_update_summary">Merci d\’installer la dernière version de LSPosed</string>
|
||||
<string name="lsposed_not_active">LSPosed n\’est actuellement pas installé ou activé.</string>
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@
|
|||
<string name="activated">הופעל</string>
|
||||
<string name="partial_activated">הופעל חלקית</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy לא נטען כמו שצריך</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>אזהרה:<\/b> SEPolicy לא טעון כמו שצריך, מודולים שמתחברים ל-System Framework לא יעבדו.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy לא טעון כמו שצריך, מודולים שמתחברים ל-System Framework לא יעבדו.]]></string>
|
||||
<string name="lsposed_not_active">LSPosed כרגע לא מותקן או מופעל.</string>
|
||||
<string name="info_api_version">גרסת API</string>
|
||||
<string name="info_framework_version">גרסת Framework</string>
|
||||
|
|
|
|||
|
|
@ -37,11 +37,11 @@
|
|||
<string name="activated">有効化済</string>
|
||||
<string name="partial_activated">部分的に有効化済</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy が正しく読み込まれていません</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>警告:</b> SEPolicy が正しく読み込まれておらず、システムフレームワークをフックするためのモジュールが動作しません。<br/>本障害について<a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> 開発者に報告して下さい。]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy が正しく読み込まれておらず、システムフレームワークをフックするためのモジュールが動作しません。<br/>本障害について<a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> 開発者に報告して下さい。]]></string>
|
||||
<string name="system_inject_fail_summary">システムフレームワークへのパッチに失敗しました</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>警告:</b> システムフレームワークへのパッチに失敗しました。<br/>本現象はごく稀に発生し、<b>Magisk</b> もしくは低品質な Magisk モジュールが起因で発生します。<br/>Riru, LSPosed 以外の Magiskモジュールの一時無効化の試行 または 開発者へフルログを提出して下さい。]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[システムフレームワークへのパッチに失敗しました。<br/>本現象はごく稀に発生し、<b>Magisk</b> もしくは低品質な Magisk モジュールが起因で発生します。<br/>Riru, LSPosed 以外の Magiskモジュールの一時無効化の試行 または 開発者へフルログを提出して下さい。]]></string>
|
||||
<string name="system_prop_incorrect_summary">誤ったシステム設定</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>警告:</b> システム設定に誤りがあります。<br/>幾つかの必須システム設定が削除もしくは変更されています。<br/>モジュールが無効化される場合があります。]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[システム設定に誤りがあります。<br/>幾つかの必須システム設定が削除もしくは変更されています。<br/>モジュールが無効化される場合があります。]]></string>
|
||||
<string name="need_update">アップデート要</string>
|
||||
<string name="please_update_summary">最新バージョンの LSPosed をインストールして下さい</string>
|
||||
<string name="lsposed_not_active">LSPosed が未インストールもしくは有効化されていません。</string>
|
||||
|
|
|
|||
|
|
@ -36,9 +36,9 @@
|
|||
<string name="activated">활성화됨</string>
|
||||
<string name="partial_activated">부분적으로 활성화됨</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy가 제대로 로드되지 않았습니다.</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>주의:</b> SEPolicy가 제대로 로드되지 않아 시스템 프레임워크를 후크하는 모듈이 작동하지 않습니다.<br><a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> 개발자에게 보고하십시오.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy가 제대로 로드되지 않아 시스템 프레임워크를 후크하는 모듈이 작동하지 않습니다.<br><a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> 개발자에게 보고하십시오.]]></string>
|
||||
<string name="system_inject_fail_summary">System Framework 주입 실패</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>주의:</b> System Framework 주입 실패.<br/>이는 드물게 발생하며, Magisk 또는 일부 저품질 <b>Magisk</b> 모듈 때문일 수 있습니다.<br/>Riru 및 LSPosed 이외의 Magisk 모듈을 비활성화하거나 전체 로그를 개발자에게 제출하십시오.]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[System Framework 주입 실패.<br/>이는 드물게 발생하며, Magisk 또는 일부 저품질 <b>Magisk</b> 모듈 때문일 수 있습니다.<br/>Riru 및 LSPosed 이외의 Magisk 모듈을 비활성화하거나 전체 로그를 개발자에게 제출하십시오.]]></string>
|
||||
<string name="lsposed_not_active">LSPosed가 현재 설치되어 있지 않거나 활성화되어 있지 않습니다.</string>
|
||||
<string name="info_api_version">API 버전</string>
|
||||
<string name="info_framework_version">Framework 버전</string>
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
<string name="selinux_policy_not_loaded_summary">SEPolicy is niet correct geladen</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>WAARSCHUWING:<\/b> SEPolicy is niet correct geladen, modules die System Framework haken zullen niet werken.]]></string>
|
||||
<string name="system_inject_fail_summary">Systeem Framework injectie is mislukt</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>WAARSCHUWING:</b> Systeem Framework injectie mislukt.<br/>Dit is zeldzaam en kan worden veroorzaakt door <b>Magisk</b> of sommige Magisk-modules van lage kwaliteit.<br/>Probeer andere Magisk-modules dan Riru en LSPosed uit te schakelen of stuur een volledig logboek naar de ontwikkelaars.]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[Systeem Framework injectie mislukt.<br/>Dit is zeldzaam en kan worden veroorzaakt door <b>Magisk</b> of sommige Magisk-modules van lage kwaliteit.<br/>Probeer andere Magisk-modules dan Riru en LSPosed uit te schakelen of stuur een volledig logboek naar de ontwikkelaars.]]></string>
|
||||
<string name="lsposed_not_active">LSPosed is momenteel niet geïnstalleerd of actief.</string>
|
||||
<string name="info_api_version">API versie</string>
|
||||
<string name="info_framework_version">Framework versie</string>
|
||||
|
|
|
|||
|
|
@ -37,11 +37,11 @@
|
|||
<string name="activated">Ativado</string>
|
||||
<string name="partial_activated">Parcialmente ativado</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy não está carregado corretamente</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>AVISO:</b> SEPolicy não está carregado corretamente, módulos que aplicam hooks do Framework do Sistema não funcionarão.<br/>Por favor, relate isso para o desenvolvedor do <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a>.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy não está carregado corretamente, módulos que aplicam hooks do Framework do Sistema não funcionarão.<br/>Por favor, relate isso para o desenvolvedor do <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a>.]]></string>
|
||||
<string name="system_inject_fail_summary">A injeção do Framework do Sistema falhou</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>AVISO:</b> Falha na injeção do Framework do Sistema<br/>Isso é raro e pode ter sido causado pelo <b>Magisk</b> ou por algum módulo do Magisk de baixa qualidade.<br/>Por favor, tente desabilitar os módulos do Magisk que não sejam o Riru e o LSPosed ou envie o log completo para os desenvolvedores.]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[Falha na injeção do Framework do Sistema<br/>Isso é raro e pode ter sido causado pelo <b>Magisk</b> ou por algum módulo do Magisk de baixa qualidade.<br/>Por favor, tente desabilitar os módulos do Magisk que não sejam o Riru e o LSPosed ou envie o log completo para os desenvolvedores.]]></string>
|
||||
<string name="system_prop_incorrect_summary">Propriedade do sistema incorreta</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>AVISO:</b> Propriedade do sistema incorreta.<br/>Algumas propriedades do sistema necessárias foram excluídas ou modificadas.<br/>Algum módulo pode ser invalidado ocasionalmente.]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[Propriedade do sistema incorreta.<br/>Algumas propriedades do sistema necessárias foram excluídas ou modificadas.<br/>Algum módulo pode ser invalidado ocasionalmente.]]></string>
|
||||
<string name="need_update">Necessário atualizar</string>
|
||||
<string name="please_update_summary">Por favor, instale a versão mais recente do LSPosed</string>
|
||||
<string name="lsposed_not_active">O módulo do LSPosed não está instalado ou está desativado.</string>
|
||||
|
|
|
|||
|
|
@ -40,11 +40,11 @@
|
|||
<string name="activated">Активирован</string>
|
||||
<string name="partial_activated">Частично активирован</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy не загружен должным образом</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>ВНИМАНИЕ:</b> SEPolicy не загружается должным образом, модули которым нужен системный фреймворк, не будут работать.<br/>Пожалуйста, сообщите об этом сюда <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> разработчик.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy не загружается должным образом, модули которым нужен системный фреймворк, не будут работать.<br/>Пожалуйста, сообщите об этом сюда <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> разработчик.]]></string>
|
||||
<string name="system_inject_fail_summary">Ошибка внедрения системного фреймворка</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>ВНИМАНИЕ:</b> Ошибка внедрения системного фреймворка.<br/>Это редкость и может быть вызвано <b>Magisk</b> или несовместимыми модулями Magisk.<br/>Пожалуйста, попрорбуйте отключить модули Magisk кроме Riru и LSPosed или пришлите полные логи разработчику.]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[Ошибка внедрения системного фреймворка.<br/>Это редкость и может быть вызвано <b>Magisk</b> или несовместимыми модулями Magisk.<br/>Пожалуйста, попрорбуйте отключить модули Magisk кроме Riru и LSPosed или пришлите полные логи разработчику.]]></string>
|
||||
<string name="system_prop_incorrect_summary">Не правильные системные настройки</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>ВНИМАНИЕ:</b> Не правильные системные настройки.<br/>Некоторые системные настройки нужные для работы удалены или изменены.<br/>Модули могут не работать должным образом.]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[Не правильные системные настройки.<br/>Некоторые системные настройки нужные для работы удалены или изменены.<br/>Модули могут не работать должным образом.]]></string>
|
||||
<string name="need_update">Требуется обновление</string>
|
||||
<string name="please_update_summary">Установите последнюю версию LSPosed!</string>
|
||||
<string name="lsposed_not_active">LSPosed не установлен или не активирован!</string>
|
||||
|
|
|
|||
|
|
@ -38,11 +38,11 @@
|
|||
<string name="activated">Aktif edildi</string>
|
||||
<string name="partial_activated">Kısmen etkinleştirildi</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy düzgün yüklenmemiş</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>WARNING:</b> SEPolicy düzgün yüklenmemiş, System Framework\'u bağlayan modüller çalışmayacaktır.<br/>Lütfen bunu rapor edin <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> developer.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy düzgün yüklenmemiş, System Framework\'u bağlayan modüller çalışmayacaktır.<br/>Lütfen bunu rapor edin <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> developer.]]></string>
|
||||
<string name="system_inject_fail_summary">Sistem Çerçevesi enjeksiyonu başarısız oldu</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>WARNING:</b> Sistem Çerçevesi enjekte başarısız oldu.<br/>Bu nadirdir ve neden olabilir <b>Magisk</b> Bazı düşük kaliteli magisk modülleri <br/>Lütfen Riru ve Lsposed dışındaki Magisk modüllerini devre dışı bırakmayı deneyin veya geliştiricilere tam günlüğü gönderin.]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[Sistem Çerçevesi enjekte başarısız oldu.<br/>Bu nadirdir ve neden olabilir <b>Magisk</b> Bazı düşük kaliteli magisk modülleri <br/>Lütfen Riru ve Lsposed dışındaki Magisk modüllerini devre dışı bırakmayı deneyin veya geliştiricilere tam günlüğü gönderin.]]></string>
|
||||
<string name="system_prop_incorrect_summary">Sistem desteği yanlış</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>WARNING:</b> Sistem desteği yanlış.<br/>Bazı gerekli sistem özellikleri silindi veya değiştirildi.<br/>Modüller zaman geçersiz olabilir.]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[Sistem desteği yanlış.<br/>Bazı gerekli sistem özellikleri silindi veya değiştirildi.<br/>Modüller zaman geçersiz olabilir.]]></string>
|
||||
<string name="need_update">güncelleme gerekiyor</string>
|
||||
<string name="please_update_summary">Lütfen Lsposed\'in en son sürümünü yükleyin</string>
|
||||
<string name="lsposed_not_active">Lsposed şu anda yüklü veya etkin değil.</string>
|
||||
|
|
|
|||
|
|
@ -43,11 +43,11 @@
|
|||
<string name="activated">已激活</string>
|
||||
<string name="partial_activated">部分激活</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy 未被正确加载</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>警告:</b>SEPolicy 未被正确加载,作用于系统框架的模块将不起作用。<br/>请将此报告给 <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> 开发者。]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[作用于系统框架的模块将不起作用。<br/>请将此报告给 <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> 开发者。]]></string>
|
||||
<string name="system_inject_fail_summary">系统框架注入失败</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>警告:</b>系统注入失败。<br/>这是极罕见的情况,可能是由 <b>Magisk</b> 或低质 Magisk 模块导致。<br/>请尝试禁用除 Riru 和 LSPosed 外的 Magisk 模块,或向开发者提供完整日志。]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[这是极罕见的情况,可能是由 <b>Magisk</b> 或低质 Magisk 模块导致。<br/>请尝试禁用除 Riru 和 LSPosed 外的 Magisk 模块,或向开发者提供完整日志。]]></string>
|
||||
<string name="system_prop_incorrect_summary">系统属性异常</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>警告:</b>系统属性异常。<br/>一些必须的系统属性被删除或被修改。<br/>模块可能会随机失效。]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[一些必须的系统属性被删除或被修改。<br/>模块可能会随机失效。]]></string>
|
||||
<string name="need_update">需要更新</string>
|
||||
<string name="please_update_summary">请安装新版 LSPosed</string>
|
||||
<string name="lsposed_not_active">LSPosed 未安装或未激活</string>
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
<string name="activated">Activated</string>
|
||||
<string name="partial_activated">Partially activated</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy is not loaded properly</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>WARNING:</b> SEPolicy is not loaded properly, modules that hook System Framework will not work.<br>Please report this to <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> developer.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy is not loaded properly, modules that hook System Framework will not work.<br>Please report this to <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> developer.]]></string>
|
||||
<string name="lsposed_not_active">LSPosed 未安裝或未啟動</string>
|
||||
<string name="info_api_version">API version</string>
|
||||
<string name="info_framework_version">Framework version</string>
|
||||
|
|
|
|||
|
|
@ -40,11 +40,11 @@
|
|||
<string name="activated">已啟用</string>
|
||||
<string name="partial_activated">部分啟用</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy 未被正確讀取</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>警告:</b>SEPolicy 沒有被正確讀取,掛鉤系統框架的模組將無法運作。<br/>請回報這類問題給<a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a>開發者]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[SEPolicy 沒有被正確讀取,掛鉤系統框架的模組將無法運作。<br/>請回報這類問題給<a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a>開發者]]></string>
|
||||
<string name="system_inject_fail_summary">系統框架注入失敗</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>警告:</b>系統注入失敗。<br/>這是極罕見的情況,可能是由 <b>Magisk</b> 或低品質 Magisk 模組導致。<br/>請嘗試禁用除 Riru 和 LSPosed 以外的 Magisk 模組,或向開發者提供完整日誌。]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[或低品質 Magisk 模組導致。<br/>請嘗試禁用除 Riru 和 LSPosed 以外的 Magisk 模組,或向開發者提供完整日誌。]]></string>
|
||||
<string name="system_prop_incorrect_summary">系統屬性異常</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>警告:</b>系統屬性異常。<br/>一些必須的系統屬性被刪除或被修改。<br/>模組可能會隨機失效。]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[系統屬性異常。<br/>一些必須的系統屬性被刪除或被修改。<br/>模組可能會隨機失效。]]></string>
|
||||
<string name="need_update">需要更新</string>
|
||||
<string name="please_update_summary">請安裝新版 LSPosed</string>
|
||||
<string name="lsposed_not_active">LSPosed 未正確安裝或啟用。</string>
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
<string name="Logs">Logs</string>
|
||||
<string name="Settings">Settings</string>
|
||||
<string name="About">About</string>
|
||||
<string name="report_issue">Report issue</string>
|
||||
<string name="module_repo">Repository</string>
|
||||
<string name="module_repo_summary">Module repository (Beta)</string>
|
||||
<string name="about_view_source_code"><![CDATA[View source code at %1$s<br/>Join our %2$s channel]]></string>
|
||||
|
|
@ -42,11 +43,11 @@
|
|||
<string name="activated">Activated</string>
|
||||
<string name="partial_activated">Partially activated</string>
|
||||
<string name="selinux_policy_not_loaded_summary">SEPolicy is not loaded properly</string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[<b>WARNING:</b> SEPolicy is not loaded properly, modules that hook System Framework will not work.<br/>Please report this to <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> developer.]]></string>
|
||||
<string name="selinux_policy_not_loaded"><![CDATA[Modules that hook System Framework will not work.<br/>Please report this to <a href="https://github.com/topjohnwu/Magisk/issues"><b>Magisk</b></a> developer.]]></string>
|
||||
<string name="system_inject_fail_summary">System Framework injection failed</string>
|
||||
<string name="system_inject_fail"><![CDATA[<b>WARNING:</b> System Framework inject failed.<br/>This is rare and may be caused by <b>Magisk</b> or some low-quality Magisk modules.<br/>Please try to disable Magisk modules other than Riru and LSPosed or submit full log to developers.]]></string>
|
||||
<string name="system_inject_fail"><![CDATA[This is rare and may be caused by <b>Magisk</b> or some low-quality Magisk modules.<br/>Please try to disable Magisk modules other than Riru and LSPosed or submit full log to developers.]]></string>
|
||||
<string name="system_prop_incorrect_summary">System prop incorrect</string>
|
||||
<string name="system_prop_incorrect"><![CDATA[<b>WARNING:</b> System prop incorrect.<br/>Some necessary system properties deleted or modified.<br/>Modules may invalidate occasionally.]]></string>
|
||||
<string name="system_prop_incorrect"><![CDATA[Some necessary system properties deleted or modified.<br/>Modules may invalidate occasionally.]]></string>
|
||||
<string name="need_update">Need to update</string>
|
||||
<string name="please_update_summary">Please install the latest version of LSPosed</string>
|
||||
<string name="lsposed_not_active">LSPosed is not currently installed or active.</string>
|
||||
|
|
|
|||
Loading…
Reference in New Issue