mirror of
https://github.com/revanced/revanced-manager.git
synced 2025-05-04 15:54:25 +02:00
fix: Do not hardcode any predefined packages
This commit is contained in:
parent
15b8613d3c
commit
2e8e3b0d1e
@ -159,10 +159,6 @@
|
|||||||
"exportApkButtonTooltip": "Export patched APK",
|
"exportApkButtonTooltip": "Export patched APK",
|
||||||
"exportLogButtonTooltip": "Export log",
|
"exportLogButtonTooltip": "Export log",
|
||||||
|
|
||||||
"installErrorDialogTitle": "Error",
|
|
||||||
"installErrorDialogText1": "Root install is not possible with the current patches selection.\nRepatch your app or choose non-root install.",
|
|
||||||
"installErrorDialogText2": "Non-root install is not possible with the current patches selection.\nRepatch your app or choose root install if you have your device rooted.",
|
|
||||||
"installErrorDialogText3": "Root install is not possible as the original APK was selected from storage.\nSelect an installed app or choose non-root install.",
|
|
||||||
"noExit": "Installer is still running, cannot exit..."
|
"noExit": "Installer is still running, cannot exit..."
|
||||||
},
|
},
|
||||||
"settingsView": {
|
"settingsView": {
|
||||||
|
@ -21,17 +21,6 @@ class GithubAPI {
|
|||||||
priority: CachePriority.high,
|
priority: CachePriority.high,
|
||||||
);
|
);
|
||||||
|
|
||||||
final Map<String, String> repoAppPath = {
|
|
||||||
'com.google.android.youtube': 'youtube',
|
|
||||||
'com.google.android.apps.youtube.music': 'music',
|
|
||||||
'com.twitter.android': 'twitter',
|
|
||||||
'com.reddit.frontpage': 'reddit',
|
|
||||||
'com.zhiliaoapp.musically': 'tiktok',
|
|
||||||
'de.dwd.warnapp': 'warnwetter',
|
|
||||||
'com.garzotto.pflotsh.ecmwf_a': 'ecmwf',
|
|
||||||
'com.spotify.music': 'spotify',
|
|
||||||
};
|
|
||||||
|
|
||||||
Future<void> initialize(String repoUrl) async {
|
Future<void> initialize(String repoUrl) async {
|
||||||
try {
|
try {
|
||||||
_dio = Dio(
|
_dio = Dio(
|
||||||
|
@ -270,34 +270,6 @@ class InstallerViewModel extends BaseViewModel {
|
|||||||
Future<void> installResult(BuildContext context, bool installAsRoot) async {
|
Future<void> installResult(BuildContext context, bool installAsRoot) async {
|
||||||
try {
|
try {
|
||||||
_app.isRooted = installAsRoot;
|
_app.isRooted = installAsRoot;
|
||||||
final bool hasMicroG =
|
|
||||||
_patches.any((p) => p.name.endsWith('MicroG support'));
|
|
||||||
final bool rootMicroG = installAsRoot && hasMicroG;
|
|
||||||
final bool rootFromStorage = installAsRoot && _app.isFromStorage;
|
|
||||||
final bool ytWithoutRootMicroG =
|
|
||||||
!installAsRoot && !hasMicroG && _app.packageName.contains('youtube');
|
|
||||||
if (rootMicroG || rootFromStorage || ytWithoutRootMicroG) {
|
|
||||||
return showDialog(
|
|
||||||
context: context,
|
|
||||||
builder: (context) => AlertDialog(
|
|
||||||
title: I18nText('installerView.installErrorDialogTitle'),
|
|
||||||
backgroundColor: Theme.of(context).colorScheme.secondaryContainer,
|
|
||||||
content: I18nText(
|
|
||||||
rootMicroG
|
|
||||||
? 'installerView.installErrorDialogText1'
|
|
||||||
: rootFromStorage
|
|
||||||
? 'installerView.installErrorDialogText3'
|
|
||||||
: 'installerView.installErrorDialogText2',
|
|
||||||
),
|
|
||||||
actions: <Widget>[
|
|
||||||
CustomMaterialButton(
|
|
||||||
label: I18nText('okButton'),
|
|
||||||
onPressed: () => Navigator.of(context).pop(),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
update(
|
update(
|
||||||
1.0,
|
1.0,
|
||||||
'Installing...',
|
'Installing...',
|
||||||
@ -311,16 +283,17 @@ class InstallerViewModel extends BaseViewModel {
|
|||||||
_app.isFromStorage = false;
|
_app.isFromStorage = false;
|
||||||
_app.patchDate = DateTime.now();
|
_app.patchDate = DateTime.now();
|
||||||
_app.appliedPatches = _patches.map((p) => p.name).toList();
|
_app.appliedPatches = _patches.map((p) => p.name).toList();
|
||||||
if (hasMicroG) {
|
|
||||||
_app.name += ' ReVanced';
|
// In case a patch changed the app name or package name,
|
||||||
_app.packageName = _app.packageName.replaceFirst(
|
// update the app info.
|
||||||
'com.google.',
|
final app = await DeviceApps.getAppFromStorage(_app.apkFilePath);
|
||||||
'app.revanced.',
|
if (app != null) {
|
||||||
);
|
_app.name = app.appName;
|
||||||
|
_app.packageName = app.packageName;
|
||||||
}
|
}
|
||||||
|
|
||||||
await _managerAPI.savePatchedApp(_app);
|
await _managerAPI.savePatchedApp(_app);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
} on Exception catch (e) {
|
} on Exception catch (e) {
|
||||||
if (kDebugMode) {
|
if (kDebugMode) {
|
||||||
print(e);
|
print(e);
|
||||||
|
@ -147,17 +147,7 @@ class AppInfoViewModel extends BaseViewModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
String getAppliedPatchesString(List<String> appliedPatches) {
|
String getAppliedPatchesString(List<String> appliedPatches) {
|
||||||
final List<String> names = appliedPatches
|
return '\u2022 ${appliedPatches.join('\n\u2022 ')}';
|
||||||
.map(
|
|
||||||
(p) => p
|
|
||||||
.replaceAll('-', ' ')
|
|
||||||
.split('-')
|
|
||||||
.join(' ')
|
|
||||||
.toTitleCase()
|
|
||||||
.replaceFirst('Microg', 'MicroG'),
|
|
||||||
)
|
|
||||||
.toList();
|
|
||||||
return '\u2022 ${names.join('\n\u2022 ')}';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void openApp(PatchedApplication app) {
|
void openApp(PatchedApplication app) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user