mirror of
				https://github.com/ImranR98/Obtainium.git
				synced 2025-11-03 23:03:29 +01:00 
			
		
		
		
	@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Želite li ukloniti aplikaciju?",
 | 
					        "one": "Želite li ukloniti aplikaciju?",
 | 
				
			||||||
        "other": "Želite li ukloniti aplikacije?"
 | 
					        "other": "Želite li ukloniti aplikacije?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Správce",
 | 
					    "root": "Správce",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku neběží",
 | 
					    "shizukuBinderNotFound": "Shizuku neběží",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Odstranit Apku?",
 | 
					        "one": "Odstranit Apku?",
 | 
				
			||||||
        "other": "Odstranit Apky?"
 | 
					        "other": "Odstranit Apky?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku läuft nicht",
 | 
					    "shizukuBinderNotFound": "Shizuku läuft nicht",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "App entfernen?",
 | 
					        "one": "App entfernen?",
 | 
				
			||||||
        "other": "Apps entfernen?"
 | 
					        "other": "Apps entfernen?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -289,6 +289,7 @@
 | 
				
			|||||||
    "shizukuBinderNotFound": "Сompatible Shizuku service wasn't found",
 | 
					    "shizukuBinderNotFound": "Сompatible Shizuku service wasn't found",
 | 
				
			||||||
    "useSystemFont": "Use the system font",
 | 
					    "useSystemFont": "Use the system font",
 | 
				
			||||||
    "systemFontError": "Error loading the system font: {}",
 | 
					    "systemFontError": "Error loading the system font: {}",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Remove App?",
 | 
					        "one": "Remove App?",
 | 
				
			||||||
        "other": "Remove Apps?"
 | 
					        "other": "Remove Apps?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku no está operativo",
 | 
					    "shizukuBinderNotFound": "Shizuku no está operativo",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "¿Eliminar Aplicación?",
 | 
					        "one": "¿Eliminar Aplicación?",
 | 
				
			||||||
        "other": "¿Eliminar Aplicaciones?"
 | 
					        "other": "¿Eliminar Aplicaciones?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "برنامه حذف شود؟",
 | 
					        "one": "برنامه حذف شود؟",
 | 
				
			||||||
        "other": "برنامه ها حذف شوند؟"
 | 
					        "other": "برنامه ها حذف شوند؟"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Supprimer l'application ?",
 | 
					        "one": "Supprimer l'application ?",
 | 
				
			||||||
        "other": "Supprimer les applications ?"
 | 
					        "other": "Supprimer les applications ?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Eltávolítja az alkalmazást?",
 | 
					        "one": "Eltávolítja az alkalmazást?",
 | 
				
			||||||
        "other": "Eltávolítja az alkalmazást?"
 | 
					        "other": "Eltávolítja az alkalmazást?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku non è in esecuzione",
 | 
					    "shizukuBinderNotFound": "Shizuku non è in esecuzione",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Rimuovere l'app?",
 | 
					        "one": "Rimuovere l'app?",
 | 
				
			||||||
        "other": "Rimuovere le app?"
 | 
					        "other": "Rimuovere le app?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizukuが起動していません",
 | 
					    "shizukuBinderNotFound": "Shizukuが起動していません",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "アプリを削除しますか?",
 | 
					        "one": "アプリを削除しますか?",
 | 
				
			||||||
        "other": "アプリを削除しますか?"
 | 
					        "other": "アプリを削除しますか?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "App verwijderen?",
 | 
					        "one": "App verwijderen?",
 | 
				
			||||||
        "other": "Apps verwijderen?"
 | 
					        "other": "Apps verwijderen?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Usunąć aplikację?",
 | 
					        "one": "Usunąć aplikację?",
 | 
				
			||||||
        "few": "Usunąć aplikacje?",
 | 
					        "few": "Usunąć aplikacje?",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku não está rodando",
 | 
					    "shizukuBinderNotFound": "Shizuku não está rodando",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Remover aplicativo?",
 | 
					        "one": "Remover aplicativo?",
 | 
				
			||||||
        "other": "Remover aplicativos?"
 | 
					        "other": "Remover aplicativos?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -289,6 +289,7 @@
 | 
				
			|||||||
    "shizukuBinderNotFound": "Совместимый сервис Shizuku не найден",
 | 
					    "shizukuBinderNotFound": "Совместимый сервис Shizuku не найден",
 | 
				
			||||||
    "useSystemFont": "Использовать системный шрифт",
 | 
					    "useSystemFont": "Использовать системный шрифт",
 | 
				
			||||||
    "systemFontError": "Ошибка загрузки системного шрифта: {}",
 | 
					    "systemFontError": "Ошибка загрузки системного шрифта: {}",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Удалить приложение?",
 | 
					        "one": "Удалить приложение?",
 | 
				
			||||||
        "other": "Удалить приложения?"
 | 
					        "other": "Удалить приложения?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -273,6 +273,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Ta Bort App?",
 | 
					        "one": "Ta Bort App?",
 | 
				
			||||||
        "other": "Ta Bort Appar?"
 | 
					        "other": "Ta Bort Appar?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -287,6 +287,7 @@
 | 
				
			|||||||
    "shizuku": "Shizuku",
 | 
					    "shizuku": "Shizuku",
 | 
				
			||||||
    "root": "Root",
 | 
					    "root": "Root",
 | 
				
			||||||
    "shizukuBinderNotFound": "Shizuku is not running",
 | 
					    "shizukuBinderNotFound": "Shizuku is not running",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "Uygulamayı Kaldır?",
 | 
					        "one": "Uygulamayı Kaldır?",
 | 
				
			||||||
        "other": "Uygulamaları Kaldır?"
 | 
					        "other": "Uygulamaları Kaldır?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -289,6 +289,7 @@
 | 
				
			|||||||
    "shizukuBinderNotFound": "未发现兼容的 Shizuku 服务",
 | 
					    "shizukuBinderNotFound": "未发现兼容的 Shizuku 服务",
 | 
				
			||||||
    "useSystemFont": "使用系统字体",
 | 
					    "useSystemFont": "使用系统字体",
 | 
				
			||||||
    "systemFontError": "加载系统字体出错:{}",
 | 
					    "systemFontError": "加载系统字体出错:{}",
 | 
				
			||||||
 | 
					    "requestHeader": "Request header",
 | 
				
			||||||
    "removeAppQuestion": {
 | 
					    "removeAppQuestion": {
 | 
				
			||||||
        "one": "是否删除应用?",
 | 
					        "one": "是否删除应用?",
 | 
				
			||||||
        "other": "是否删除应用?"
 | 
					        "other": "是否删除应用?"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -141,7 +141,37 @@ class HTML extends AppSource {
 | 
				
			|||||||
      ],
 | 
					      ],
 | 
				
			||||||
      finalStepFormitems[0],
 | 
					      finalStepFormitems[0],
 | 
				
			||||||
      ...commonFormItems,
 | 
					      ...commonFormItems,
 | 
				
			||||||
      ...finalStepFormitems.sublist(1)
 | 
					      ...finalStepFormitems.sublist(1),
 | 
				
			||||||
 | 
					      [
 | 
				
			||||||
 | 
					        GeneratedFormSubForm(
 | 
				
			||||||
 | 
					            'requestHeader',
 | 
				
			||||||
 | 
					            [
 | 
				
			||||||
 | 
					              [
 | 
				
			||||||
 | 
					                GeneratedFormTextField('requestHeader',
 | 
				
			||||||
 | 
					                    label: tr('requestHeader'),
 | 
				
			||||||
 | 
					                    additionalValidators: [
 | 
				
			||||||
 | 
					                      (value) {
 | 
				
			||||||
 | 
					                        if ((value ?? 'empty:valid')
 | 
				
			||||||
 | 
					                                .split(':')
 | 
				
			||||||
 | 
					                                .map((e) => e.trim())
 | 
				
			||||||
 | 
					                                .where((e) => e.isNotEmpty)
 | 
				
			||||||
 | 
					                                .length <
 | 
				
			||||||
 | 
					                            2) {
 | 
				
			||||||
 | 
					                          return tr('invalidInput');
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                        return null;
 | 
				
			||||||
 | 
					                      }
 | 
				
			||||||
 | 
					                    ])
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            ],
 | 
				
			||||||
 | 
					            label: tr('requestHeader'),
 | 
				
			||||||
 | 
					            defaultValue: [
 | 
				
			||||||
 | 
					              {
 | 
				
			||||||
 | 
					                'requestHeader':
 | 
				
			||||||
 | 
					                    'User-Agent: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Mobile Safari/537.36'
 | 
				
			||||||
 | 
					              }
 | 
				
			||||||
 | 
					            ])
 | 
				
			||||||
 | 
					      ]
 | 
				
			||||||
    ];
 | 
					    ];
 | 
				
			||||||
    overrideVersionDetectionFormDefault('noVersionDetection',
 | 
					    overrideVersionDetectionFormDefault('noVersionDetection',
 | 
				
			||||||
        disableStandard: false, disableRelDate: true);
 | 
					        disableStandard: false, disableRelDate: true);
 | 
				
			||||||
@@ -151,10 +181,23 @@ class HTML extends AppSource {
 | 
				
			|||||||
  Future<Map<String, String>?> getRequestHeaders(
 | 
					  Future<Map<String, String>?> getRequestHeaders(
 | 
				
			||||||
      {Map<String, dynamic> additionalSettings = const <String, dynamic>{},
 | 
					      {Map<String, dynamic> additionalSettings = const <String, dynamic>{},
 | 
				
			||||||
      bool forAPKDownload = false}) async {
 | 
					      bool forAPKDownload = false}) async {
 | 
				
			||||||
    return {
 | 
					    if (additionalSettings.isNotEmpty) {
 | 
				
			||||||
      "User-Agent":
 | 
					      if (additionalSettings['requestHeader']?.isNotEmpty != true) {
 | 
				
			||||||
          "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Mobile Safari/537.36"
 | 
					        additionalSettings['requestHeader'] = [];
 | 
				
			||||||
    };
 | 
					      }
 | 
				
			||||||
 | 
					      additionalSettings['requestHeader'] = additionalSettings['requestHeader']
 | 
				
			||||||
 | 
					          .where((l) => l['requestHeader'].isNotEmpty == true)
 | 
				
			||||||
 | 
					          .toList();
 | 
				
			||||||
 | 
					      Map<String, String> requestHeaders = {};
 | 
				
			||||||
 | 
					      for (int i = 0; i < (additionalSettings['requestHeader'].length); i++) {
 | 
				
			||||||
 | 
					        var temp =
 | 
				
			||||||
 | 
					            (additionalSettings['requestHeader'][i]['requestHeader'] as String)
 | 
				
			||||||
 | 
					                .split(':');
 | 
				
			||||||
 | 
					        requestHeaders[temp[0].trim()] = temp.sublist(1).join(':').trim();
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					      return requestHeaders;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return null;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  @override
 | 
					  @override
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,7 +1,6 @@
 | 
				
			|||||||
import 'package:easy_localization/easy_localization.dart';
 | 
					import 'package:easy_localization/easy_localization.dart';
 | 
				
			||||||
import 'package:html/parser.dart';
 | 
					import 'package:html/parser.dart';
 | 
				
			||||||
import 'package:http/http.dart';
 | 
					import 'package:http/http.dart';
 | 
				
			||||||
import 'package:obtainium/app_sources/html.dart';
 | 
					 | 
				
			||||||
import 'package:obtainium/custom_errors.dart';
 | 
					import 'package:obtainium/custom_errors.dart';
 | 
				
			||||||
import 'package:obtainium/providers/source_provider.dart';
 | 
					import 'package:obtainium/providers/source_provider.dart';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -14,10 +13,12 @@ class VLC extends AppSource {
 | 
				
			|||||||
  @override
 | 
					  @override
 | 
				
			||||||
  Future<Map<String, String>?> getRequestHeaders(
 | 
					  Future<Map<String, String>?> getRequestHeaders(
 | 
				
			||||||
      {Map<String, dynamic> additionalSettings = const <String, dynamic>{},
 | 
					      {Map<String, dynamic> additionalSettings = const <String, dynamic>{},
 | 
				
			||||||
          bool forAPKDownload = false}) =>
 | 
					      bool forAPKDownload = false}) async {
 | 
				
			||||||
      HTML().getRequestHeaders(
 | 
					    return {
 | 
				
			||||||
          additionalSettings: additionalSettings,
 | 
					      "User-Agent":
 | 
				
			||||||
          forAPKDownload: forAPKDownload);
 | 
					          "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Mobile Safari/537.36"
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  @override
 | 
					  @override
 | 
				
			||||||
  String sourceSpecificStandardizeURL(String url) {
 | 
					  String sourceSpecificStandardizeURL(String url) {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user