mirror of
				https://github.com/ImranR98/Obtainium.git
				synced 2025-11-04 07:13:28 +01:00 
			
		
		
		
	Compare commits
	
		
			20 Commits
		
	
	
		
			v0.13.7-be
			...
			v0.13.10-b
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					049eb5914c | ||
| 
						 | 
					7577f3ac9b | ||
| 
						 | 
					5b05745b02 | ||
| 
						 | 
					4366b4e369 | ||
| 
						 | 
					9c60f10005 | ||
| 
						 | 
					a0d02043c4 | ||
| 
						 | 
					ff5152bf79 | ||
| 
						 | 
					995a826917 | ||
| 
						 | 
					2965e159cb | ||
| 
						 | 
					0dcd5163d4 | ||
| 
						 | 
					d31bbd9ea8 | ||
| 
						 | 
					423ba07fad | ||
| 
						 | 
					3697d74185 | ||
| 
						 | 
					038f089aac | ||
| 
						 | 
					ba3f512445 | ||
| 
						 | 
					0fc1cff0a8 | ||
| 
						 | 
					40bec4b732 | ||
| 
						 | 
					8ca1e09c86 | ||
| 
						 | 
					e0c4ec5028 | ||
| 
						 | 
					7fcba6c911 | 
@@ -232,7 +232,7 @@
 | 
			
		||||
    "about": "Rólunk",
 | 
			
		||||
    "requiresCredentialsInSettings": "Ehhez további hitelesítő adatokra van szükség (a Beállításokban)",
 | 
			
		||||
    "checkOnStart": "Egyszer az indításkor",
 | 
			
		||||
    "tryInferAppIdFromCode": "Try inferring App ID from source code",
 | 
			
		||||
    "tryInferAppIdFromCode": "Próbálja kikövetkeztetni az app azonosítót a forráskódból",
 | 
			
		||||
    "removeAppQuestion": {
 | 
			
		||||
        "one": "Eltávolítja az alkalmazást?",
 | 
			
		||||
        "other": "Eltávolítja az alkalmazást?"
 | 
			
		||||
 
 | 
			
		||||
@@ -1,25 +1,25 @@
 | 
			
		||||
{
 | 
			
		||||
    "invalidURLForSource": "URL dell'App da {} non valido",
 | 
			
		||||
    "invalidURLForSource": "URL dell'app {} non valido",
 | 
			
		||||
    "noReleaseFound": "Impossibile trovare una release adatta",
 | 
			
		||||
    "noVersionFound": "Impossibile determinare la versione della release",
 | 
			
		||||
    "urlMatchesNoSource": "L'URL non corrisponde ad alcuna fonte conosciuta",
 | 
			
		||||
    "cantInstallOlderVersion": "Impossibile installare una versione precedente di un'App",
 | 
			
		||||
    "appIdMismatch": "L'ID del pacchetto scaricato non corrisponde all'ID dell'App esistente",
 | 
			
		||||
    "cantInstallOlderVersion": "Impossibile installare una versione precedente di un'app",
 | 
			
		||||
    "appIdMismatch": "L'ID del pacchetto scaricato non corrisponde all'ID dell'app esistente",
 | 
			
		||||
    "functionNotImplemented": "Questa classe non ha implementato questa funzione",
 | 
			
		||||
    "placeholder": "Segnaposto",
 | 
			
		||||
    "someErrors": "Si sono verificati degli errori",
 | 
			
		||||
    "unexpectedError": "Errore imprevisto",
 | 
			
		||||
    "ok": "Va bene",
 | 
			
		||||
    "and": "e",
 | 
			
		||||
    "startedBgUpdateTask": "Avviata l'attività di controllo degli aggiornamenti in background",
 | 
			
		||||
    "bgUpdateIgnoreAfterIs": "Bg update ignoreAfter is {}",
 | 
			
		||||
    "startedActualBGUpdateCheck": "Avviato il controllo effettivo degli aggiornamenti in background",
 | 
			
		||||
    "bgUpdateTaskFinished": "Terminata l'attività di controllo degli aggiornamenti in background",
 | 
			
		||||
    "startedBgUpdateTask": "Avviata l'attività di controllo degli aggiornamenti in secondo piano",
 | 
			
		||||
    "bgUpdateIgnoreAfterIs": "Il parametro di agg. in secondo piano 'ignoreAfter' è {}",
 | 
			
		||||
    "startedActualBGUpdateCheck": "Avviato il controllo effettivo degli aggiornamenti in secondo piano",
 | 
			
		||||
    "bgUpdateTaskFinished": "Terminata l'attività di controllo degli aggiornamenti in secondo piano",
 | 
			
		||||
    "firstRun": "Questo è il primo avvio di sempre di Obtainium",
 | 
			
		||||
    "settingUpdateCheckIntervalTo": "Fissato intervallo di aggiornamento a {}",
 | 
			
		||||
    "githubPATLabel": "GitHub Personal Access Token (diminuisce limite di traffico)",
 | 
			
		||||
    "githubPATHint": "PAT deve seguire questo formato: username:token",
 | 
			
		||||
    "githubPATFormat": "username:token",
 | 
			
		||||
    "githubPATHint": "PAT deve seguire questo formato: nomeutente:token",
 | 
			
		||||
    "githubPATFormat": "nomeutente:token",
 | 
			
		||||
    "includePrereleases": "Includi prerelease",
 | 
			
		||||
    "fallbackToOlderReleases": "Ripiega su release precedenti",
 | 
			
		||||
    "filterReleaseTitlesByRegEx": "Filtra release con espressioni regolari",
 | 
			
		||||
@@ -31,19 +31,19 @@
 | 
			
		||||
    "dropdownNoOptsError": "ERRORE: LA TENDINA DEVE AVERE ALMENO UN'OPZIONE",
 | 
			
		||||
    "colour": "Colore",
 | 
			
		||||
    "githubStarredRepos": "repository stellati da GitHub",
 | 
			
		||||
    "uname": "Username",
 | 
			
		||||
    "uname": "Nome utente",
 | 
			
		||||
    "wrongArgNum": "Numero di argomenti forniti errato",
 | 
			
		||||
    "xIsTrackOnly": "{} è in modalità Solo-Monitoraggio",
 | 
			
		||||
    "source": "Fonte",
 | 
			
		||||
    "app": "App",
 | 
			
		||||
    "appsFromSourceAreTrackOnly": "Le App da questa fonte sono in modalità 'Solo-Monitoraggio'.",
 | 
			
		||||
    "appsFromSourceAreTrackOnly": "Le app da questa fonte sono in modalità 'Solo-Monitoraggio'.",
 | 
			
		||||
    "youPickedTrackOnly": "È stata selezionata l'opzione 'Solo-Monitoraggio'.",
 | 
			
		||||
    "trackOnlyAppDescription": "L'App sarà monitorata per gli aggiornamenti, ma Obtainium non sarà in grado di scaricarli o di installarli.",
 | 
			
		||||
    "trackOnlyAppDescription": "L'app sarà monitorata per gli aggiornamenti, ma Obtainium non sarà in grado di scaricarli o di installarli.",
 | 
			
		||||
    "cancelled": "Annullato",
 | 
			
		||||
    "appAlreadyAdded": "App già aggiunta",
 | 
			
		||||
    "alreadyUpToDateQuestion": "L'App è già aggiornata?",
 | 
			
		||||
    "addApp": "Aggiungi App",
 | 
			
		||||
    "appSourceURL": "URL della fonte dell'App",
 | 
			
		||||
    "alreadyUpToDateQuestion": "L'app è già aggiornata?",
 | 
			
		||||
    "addApp": "Aggiungi app",
 | 
			
		||||
    "appSourceURL": "URL della fonte dell'app",
 | 
			
		||||
    "error": "Errore",
 | 
			
		||||
    "add": "Aggiungi",
 | 
			
		||||
    "searchSomeSourcesLabel": "Cerca (solo per alcune fonti)",
 | 
			
		||||
@@ -53,10 +53,10 @@
 | 
			
		||||
    "trackOnlyInBrackets": "(Solo-Monitoraggio)",
 | 
			
		||||
    "searchableInBrackets": "(ricercabile)",
 | 
			
		||||
    "appsString": "App",
 | 
			
		||||
    "noApps": "Nessuna App",
 | 
			
		||||
    "noAppsForFilter": "Nessuna App per i filtri selezionati",
 | 
			
		||||
    "noApps": "Nessuna app",
 | 
			
		||||
    "noAppsForFilter": "Nessuna app per i filtri selezionati",
 | 
			
		||||
    "byX": "Di {}",
 | 
			
		||||
    "percentProgress": "Progresso: {}%",
 | 
			
		||||
    "percentProgress": "Avanzamento: {}%",
 | 
			
		||||
    "pleaseWait": "In attesa",
 | 
			
		||||
    "updateAvailable": "Aggiornamento disponibile",
 | 
			
		||||
    "estimateInBracketsShort": "(prev.)",
 | 
			
		||||
@@ -65,31 +65,31 @@
 | 
			
		||||
    "selectAll": "Seleziona tutto",
 | 
			
		||||
    "deselectN": "Deseleziona {}",
 | 
			
		||||
    "xWillBeRemovedButRemainInstalled": "Verà effettuata la rimozione di {}, ma non la disinstallazione.",
 | 
			
		||||
    "removeSelectedAppsQuestion": "Rimuovere le App selezionate?",
 | 
			
		||||
    "removeSelectedApps": "Rimuovi le App selezionate",
 | 
			
		||||
    "removeSelectedAppsQuestion": "Rimuovere le app selezionate?",
 | 
			
		||||
    "removeSelectedApps": "Rimuovi le app selezionate",
 | 
			
		||||
    "updateX": "Aggiorna {}",
 | 
			
		||||
    "installX": "Installa {}",
 | 
			
		||||
    "markXTrackOnlyAsUpdated": "Contrassegna {}\n(Solo-Monitoraggio)\ncome aggiornato",
 | 
			
		||||
    "changeX": "Modifica {}",
 | 
			
		||||
    "installUpdateApps": "Installa/Aggiorna App",
 | 
			
		||||
    "installUpdateSelectedApps": "Installa/Aggiorna le App selezionate",
 | 
			
		||||
    "markXSelectedAppsAsUpdated": "Contrassegnare le {} App selezionate come aggiornate?",
 | 
			
		||||
    "installUpdateApps": "Installa/Aggiorna app",
 | 
			
		||||
    "installUpdateSelectedApps": "Installa/Aggiorna le app selezionate",
 | 
			
		||||
    "markXSelectedAppsAsUpdated": "Contrassegnare le {} app selezionate come aggiornate?",
 | 
			
		||||
    "no": "No",
 | 
			
		||||
    "yes": "Sì",
 | 
			
		||||
    "markSelectedAppsUpdated": "Contrassegna le App selezionate come aggiornate",
 | 
			
		||||
    "markSelectedAppsUpdated": "Contrassegna le app selezionate come aggiornate",
 | 
			
		||||
    "pinToTop": "Fissa in alto",
 | 
			
		||||
    "unpinFromTop": "Rimuovi dall'alto",
 | 
			
		||||
    "resetInstallStatusForSelectedAppsQuestion": "Ripristinare lo stato d'installazione delle App selezionate?",
 | 
			
		||||
    "installStatusOfXWillBeResetExplanation": "Lo stato d'installazione di ogni App selezionata sarà ripristinato.\n\nCiò può essere d'aiuto nel caso in cui la versione mostrata dell'App in Obtainium non è corretta a causa di un aggiornamento fallito o di altri problemi.",
 | 
			
		||||
    "shareSelectedAppURLs": "Condividi gli URL delle App selezionate",
 | 
			
		||||
    "resetInstallStatusForSelectedAppsQuestion": "Ripristinare lo stato d'installazione delle app selezionate?",
 | 
			
		||||
    "installStatusOfXWillBeResetExplanation": "Lo stato d'installazione di ogni app selezionata sarà ripristinato.\n\nCiò può essere d'aiuto nel caso in cui la versione mostrata dell'app in Obtainium non sia corretta a causa di un aggiornamento fallito o di altri problemi.",
 | 
			
		||||
    "shareSelectedAppURLs": "Condividi gli URL delle app selezionate",
 | 
			
		||||
    "resetInstallStatus": "Ripristina lo stato d'installazione",
 | 
			
		||||
    "more": "Di più",
 | 
			
		||||
    "removeOutdatedFilter": "Rimuovi il filtro per le App non aggiornate",
 | 
			
		||||
    "showOutdatedOnly": "Mostra solo le App non aggiornate",
 | 
			
		||||
    "more": "Altro",
 | 
			
		||||
    "removeOutdatedFilter": "Rimuovi il filtro per le app non aggiornate",
 | 
			
		||||
    "showOutdatedOnly": "Mostra solo le app non aggiornate",
 | 
			
		||||
    "filter": "Filtri",
 | 
			
		||||
    "filterActive": "Filtri *",
 | 
			
		||||
    "filterApps": "Filtra App",
 | 
			
		||||
    "appName": "Nome dell'App",
 | 
			
		||||
    "filterApps": "Filtra app",
 | 
			
		||||
    "appName": "Nome dell'app",
 | 
			
		||||
    "author": "Autore",
 | 
			
		||||
    "upToDateApps": "App aggiornate",
 | 
			
		||||
    "nonInstalledApps": "App non installate",
 | 
			
		||||
@@ -102,14 +102,14 @@
 | 
			
		||||
    "obtainiumImport": "Importa in Obtainium",
 | 
			
		||||
    "importFromURLList": "Importa da lista di URL",
 | 
			
		||||
    "searchQuery": "Stringa di ricerca",
 | 
			
		||||
    "appURLList": "Lista di URL delle App",
 | 
			
		||||
    "appURLList": "Lista di URL delle app",
 | 
			
		||||
    "line": "Linea",
 | 
			
		||||
    "searchX": "Cerca su {}",
 | 
			
		||||
    "noResults": "Nessun risultato trovato",
 | 
			
		||||
    "importX": "Importa {}",
 | 
			
		||||
    "importedAppsIdDisclaimer": "Le App importate potrebbero essere visualizzate erroneamente come \"Non installate\".\nPer risolvere il problema, reinstallale con Obtainium.\nQuesto non dovrebbe influire sui dati delle App.\n\nRiguarda solo l'URL e i metodi di importazione di terze parti.",
 | 
			
		||||
    "importErrors": "Errori dell'importazione",
 | 
			
		||||
    "importedXOfYApps": "{} App di {} importate.",
 | 
			
		||||
    "importedAppsIdDisclaimer": "Le app importate potrebbero essere visualizzate erroneamente come \"Non installate\".\nPer risolvere il problema, reinstallale con Obtainium.\nCiò non dovrebbe influire sui dati delle app.\n\nRiguarda solo l'URL e i metodi di importazione di terze parti.",
 | 
			
		||||
    "importErrors": "Errori di importazione",
 | 
			
		||||
    "importedXOfYApps": "{} app di {} importate.",
 | 
			
		||||
    "followingURLsHadErrors": "I seguenti URL contengono errori:",
 | 
			
		||||
    "okay": "Va bene",
 | 
			
		||||
    "selectURL": "Seleziona l'URL",
 | 
			
		||||
@@ -118,27 +118,27 @@
 | 
			
		||||
    "theme": "Tema",
 | 
			
		||||
    "dark": "Scuro",
 | 
			
		||||
    "light": "Chiaro",
 | 
			
		||||
    "followSystem": "Segui sistema",
 | 
			
		||||
    "followSystem": "Segui il sistema",
 | 
			
		||||
    "obtainium": "Obtainium",
 | 
			
		||||
    "materialYou": "Material You",
 | 
			
		||||
    "useBlackTheme": "Use Pure Black Dark Theme",
 | 
			
		||||
    "useBlackTheme": "Usa il tema Nero puro",
 | 
			
		||||
    "appSortBy": "App ordinate per",
 | 
			
		||||
    "authorName": "Autore/Nome",
 | 
			
		||||
    "nameAuthor": "Nome/Autore",
 | 
			
		||||
    "asAdded": "Data di aggiunta",
 | 
			
		||||
    "appSortOrder": "Ordinamento",
 | 
			
		||||
    "appSortOrder": "Ordine",
 | 
			
		||||
    "ascending": "Ascendente",
 | 
			
		||||
    "descending": "Discendente",
 | 
			
		||||
    "bgUpdateCheckInterval": "Intervallo di controllo degli aggiornamenti in background",
 | 
			
		||||
    "bgUpdateCheckInterval": "Intervallo di controllo degli aggiornamenti in secondo piano",
 | 
			
		||||
    "neverManualOnly": "Mai - Solo manuale",
 | 
			
		||||
    "appearance": "Aspetto",
 | 
			
		||||
    "showWebInAppView": "Mostra pagina web dell'App se selezionata",
 | 
			
		||||
    "showWebInAppView": "Mostra pagina web dell'app se selezionata",
 | 
			
		||||
    "pinUpdates": "Fissa aggiornamenti disponibili in alto",
 | 
			
		||||
    "updates": "Aggiornamenti",
 | 
			
		||||
    "sourceSpecific": "Specifiche per la fonte",
 | 
			
		||||
    "appSource": "Sorgente dell'App",
 | 
			
		||||
    "appSource": "Sorgente dell'app",
 | 
			
		||||
    "noLogs": "Nessun log",
 | 
			
		||||
    "appLogs": "Log dell'App",
 | 
			
		||||
    "appLogs": "Log dell'app",
 | 
			
		||||
    "close": "Chiudi",
 | 
			
		||||
    "share": "Condividi",
 | 
			
		||||
    "appNotFound": "App non trovata",
 | 
			
		||||
@@ -148,28 +148,28 @@
 | 
			
		||||
    "deviceSupportsXArch": "Il dispositivo in uso supporta l'architettura {} della CPU.",
 | 
			
		||||
    "deviceSupportsFollowingArchs": "Il dispositivo in uso supporta le seguenti architetture della CPU:",
 | 
			
		||||
    "warning": "Attenzione",
 | 
			
		||||
    "sourceIsXButPackageFromYPrompt": "L'origine dell'App è '{}' ma il pacchetto della release proviene da '{}'. Continuare?",
 | 
			
		||||
    "sourceIsXButPackageFromYPrompt": "L'origine dell'app è '{}' ma il pacchetto della release proviene da '{}'. Continuare?",
 | 
			
		||||
    "updatesAvailable": "Aggiornamenti disponibili",
 | 
			
		||||
    "updatesAvailableNotifDescription": "Notifica all'utente che sono disponibili gli aggiornamenti di una o più App monitorate da Obtainium",
 | 
			
		||||
    "updatesAvailableNotifDescription": "Notifica all'utente che sono disponibili gli aggiornamenti di una o più app monitorate da Obtainium",
 | 
			
		||||
    "noNewUpdates": "Nessun nuovo aggiornamento.",
 | 
			
		||||
    "xHasAnUpdate": "Aggiornamento disponibile per {}",
 | 
			
		||||
    "appsUpdated": "App aggiornate",
 | 
			
		||||
    "appsUpdatedNotifDescription": "Notifica all'utente che una o più App sono state aggiornate in background",
 | 
			
		||||
    "xWasUpdatedToY": "{} è stato aggiornato a {}.",
 | 
			
		||||
    "appsUpdatedNotifDescription": "Notifica all'utente che una o più app sono state aggiornate in secondo piano",
 | 
			
		||||
    "xWasUpdatedToY": "{} è stato aggiornato alla {}.",
 | 
			
		||||
    "errorCheckingUpdates": "Controllo degli errori per gli aggiornamenti",
 | 
			
		||||
    "errorCheckingUpdatesNotifDescription": "Una notifica che mostra quando il controllo degli aggiornamenti in background fallisce",
 | 
			
		||||
    "errorCheckingUpdatesNotifDescription": "Una notifica che mostra quando il controllo degli aggiornamenti in secondo piano fallisce",
 | 
			
		||||
    "appsRemoved": "App rimosse",
 | 
			
		||||
    "appsRemovedNotifDescription": "Notifica all'utente che una o più App sono state rimosse a causa di errori durante il caricamento",
 | 
			
		||||
    "appsRemovedNotifDescription": "Notifica all'utente che una o più app sono state rimosse a causa di errori durante il caricamento",
 | 
			
		||||
    "xWasRemovedDueToErrorY": "{} è stata rimosso a causa di questo errore: {}",
 | 
			
		||||
    "completeAppInstallation": "Completa l'installazione dell'App",
 | 
			
		||||
    "obtainiumMustBeOpenToInstallApps": "Obtainium deve essere aperto per poter installare le App",
 | 
			
		||||
    "completeAppInstallationNotifDescription": "Chiede all'utente di riaprire Obtainium per terminare l'installazione di un App",
 | 
			
		||||
    "completeAppInstallation": "Completa l'installazione dell'app",
 | 
			
		||||
    "obtainiumMustBeOpenToInstallApps": "Obtainium deve essere aperto per poter installare le app",
 | 
			
		||||
    "completeAppInstallationNotifDescription": "Chiede all'utente di riaprire Obtainium per terminare l'installazione di un'app",
 | 
			
		||||
    "checkingForUpdates": "Controllo degli aggiornamenti in corso",
 | 
			
		||||
    "checkingForUpdatesNotifDescription": "Notifica transitoria che appare durante la verifica degli aggiornamenti",
 | 
			
		||||
    "pleaseAllowInstallPerm": "Per favore permetti a Obtainium di installare le App",
 | 
			
		||||
    "pleaseAllowInstallPerm": "Per favore permetti a Obtainium di installare le app",
 | 
			
		||||
    "trackOnly": "Solo-Monitoraggio",
 | 
			
		||||
    "errorWithHttpStatusCode": "Errore {}",
 | 
			
		||||
    "versionCorrectionDisabled": "Correzione della versione disabilitata (il plugin non pare funzionare)",
 | 
			
		||||
    "versionCorrectionDisabled": "Correzione della versione disattivata (il plugin sembra non funzionare)",
 | 
			
		||||
    "unknown": "Sconosciuto",
 | 
			
		||||
    "none": "Nessuno",
 | 
			
		||||
    "never": "Mai",
 | 
			
		||||
@@ -178,11 +178,11 @@
 | 
			
		||||
    "lastUpdateCheckX": "Ultimo controllo degli aggiornamenti: {}",
 | 
			
		||||
    "remove": "Rimuovi",
 | 
			
		||||
    "yesMarkUpdated": "Sì, contrassegna come aggiornato",
 | 
			
		||||
    "fdroid": "F-Droid Official",
 | 
			
		||||
    "appIdOrName": "ID o nome dell'App",
 | 
			
		||||
    "appId": "ID dell'App",
 | 
			
		||||
    "appWithIdOrNameNotFound": "Non è stata trovata alcuna App con quell'ID o nome",
 | 
			
		||||
    "reposHaveMultipleApps": "I repository possono contenere più App",
 | 
			
		||||
    "fdroid": "F-Droid ufficiale",
 | 
			
		||||
    "appIdOrName": "ID o nome dell'app",
 | 
			
		||||
    "appId": "ID dell'app",
 | 
			
		||||
    "appWithIdOrNameNotFound": "Non è stata trovata alcuna app con quell'ID o nome",
 | 
			
		||||
    "reposHaveMultipleApps": "I repository possono contenere più app",
 | 
			
		||||
    "fdroidThirdPartyRepo": "Repository F-Droid di terze parti",
 | 
			
		||||
    "steam": "Steam",
 | 
			
		||||
    "steamMobile": "Steam Mobile",
 | 
			
		||||
@@ -193,9 +193,9 @@
 | 
			
		||||
    "markUpdated": "Contrassegna come aggiornato",
 | 
			
		||||
    "additionalOptions": "Opzioni aggiuntive",
 | 
			
		||||
    "disableVersionDetection": "Disattiva il rilevamento della versione",
 | 
			
		||||
    "noVersionDetectionExplanation": "Questa opzione dovrebbe essere usata solo per le App la cui versione non viene rilevata correttamente.",
 | 
			
		||||
    "noVersionDetectionExplanation": "Questa opzione dovrebbe essere usata solo per le app la cui versione non viene rilevata correttamente.",
 | 
			
		||||
    "downloadingX": "Scaricamento di {} in corso",
 | 
			
		||||
    "downloadNotifDescription": "Notifica all'utente lo stato di avanzamento del download di un'App",
 | 
			
		||||
    "downloadNotifDescription": "Notifica all'utente lo stato di avanzamento del download di un'app",
 | 
			
		||||
    "noAPKFound": "Nessun APK trovato",
 | 
			
		||||
    "noVersionDetection": "Disattiva rilevamento di versione",
 | 
			
		||||
    "categorize": "Aggiungi a categoria",
 | 
			
		||||
@@ -204,19 +204,19 @@
 | 
			
		||||
    "noCategory": "Nessuna categoria",
 | 
			
		||||
    "noCategories": "Nessuna categoria",
 | 
			
		||||
    "deleteCategoriesQuestion": "Eliminare le categorie?",
 | 
			
		||||
    "categoryDeleteWarning": "Tutte le App nelle categorie eliminate saranno impostate come non categorizzate.",
 | 
			
		||||
    "categoryDeleteWarning": "Tutte le app nelle categorie eliminate saranno impostate come non categorizzate.",
 | 
			
		||||
    "addCategory": "Aggiungi categoria",
 | 
			
		||||
    "label": "Etichetta",
 | 
			
		||||
    "language": "Lingua",
 | 
			
		||||
    "copiedToClipboard": "Copiato negli appunti",
 | 
			
		||||
    "storagePermissionDenied": "Accesso ai file non autorizzato",
 | 
			
		||||
    "selectedCategorizeWarning": "Ciò sostituirà le impostazioni di categoria esistenti per le App selezionate.",
 | 
			
		||||
    "selectedCategorizeWarning": "Ciò sostituirà le impostazioni di categoria esistenti per le app selezionate.",
 | 
			
		||||
    "filterAPKsByRegEx": "Filtra file APK con espressioni regolari",
 | 
			
		||||
    "removeFromObtainium": "Rimuovi da Obtainium",
 | 
			
		||||
    "uninstallFromDevice": "Disinstalla dal dispositivo",
 | 
			
		||||
    "onlyWorksWithNonVersionDetectApps": "Funziona solo per le App con il rilevamento della versione disattivato.",
 | 
			
		||||
    "onlyWorksWithNonVersionDetectApps": "Funziona solo per le app con il rilevamento della versione disattivato.",
 | 
			
		||||
    "releaseDateAsVersion": "Usa data di rilascio come versione",
 | 
			
		||||
    "releaseDateAsVersionExplanation": "Questa opzione dovrebbe essere usata solo per le App in cui il rilevamento della versione non funziona correttamente, ma è disponibile una data di rilascio.",
 | 
			
		||||
    "releaseDateAsVersionExplanation": "Questa opzione dovrebbe essere usata solo per le app in cui il rilevamento della versione non funziona correttamente, ma è disponibile una data di rilascio.",
 | 
			
		||||
    "changes": "Novità",
 | 
			
		||||
    "releaseDate": "Data di rilascio",
 | 
			
		||||
    "importFromURLsInFile": "Importa da URL in file (come OPML)",
 | 
			
		||||
@@ -224,35 +224,35 @@
 | 
			
		||||
    "standardVersionDetection": "Rilevamento di versione standard",
 | 
			
		||||
    "groupByCategory": "Raggruppa per categoria",
 | 
			
		||||
    "autoApkFilterByArch": "Tenta di filtrare gli APK in base all'architettura della CPU, se possibile",
 | 
			
		||||
    "overrideSource": "Override Source",
 | 
			
		||||
    "dontShowAgain": "Don't show this again",
 | 
			
		||||
    "dontShowTrackOnlyWarnings": "Don't Show the 'Track-Only' Warning",
 | 
			
		||||
    "dontShowAPKOriginWarnings": "Don't Show APK Origin Warnings",
 | 
			
		||||
    "moveNonInstalledAppsToBottom": "Move Non-Installed Apps to Bottom of Apps View",
 | 
			
		||||
    "gitlabPATLabel": "GitLab Personal Access Token (Enables Search)",
 | 
			
		||||
    "about": "About",
 | 
			
		||||
    "requiresCredentialsInSettings": "This needs additional credentials (in Settings)",
 | 
			
		||||
    "checkOnStart": "Check Once on Start",
 | 
			
		||||
    "tryInferAppIdFromCode": "Try inferring App ID from source code",
 | 
			
		||||
    "overrideSource": "Sovrascrivi fonte",
 | 
			
		||||
    "dontShowAgain": "Non mostrarlo più",
 | 
			
		||||
    "dontShowTrackOnlyWarnings": "Non mostrare gli avvisi 'Solo-Monitoraggio'",
 | 
			
		||||
    "dontShowAPKOriginWarnings": "Non mostrare gli avvisi di origine dell'APK",
 | 
			
		||||
    "moveNonInstalledAppsToBottom": "Sposta le app non installate in fondo alla lista",
 | 
			
		||||
    "gitlabPATLabel": "GitLab Personal Access Token (attiva la ricerca)",
 | 
			
		||||
    "about": "Informazioni",
 | 
			
		||||
    "requiresCredentialsInSettings": "Servono credenziali aggiuntive (in Impostazioni)",
 | 
			
		||||
    "checkOnStart": "Controlla una volta all'avvio",
 | 
			
		||||
    "tryInferAppIdFromCode": "Prova a dedurre l'ID dell'app dal codice sorgente",
 | 
			
		||||
    "removeAppQuestion": {
 | 
			
		||||
        "one": "Rimuovere l'App?",
 | 
			
		||||
        "other": "Rimuovere le App?"
 | 
			
		||||
        "one": "Rimuovere l'app?",
 | 
			
		||||
        "other": "Rimuovere le app?"
 | 
			
		||||
    },
 | 
			
		||||
    "tooManyRequestsTryAgainInMinutes": {
 | 
			
		||||
        "one": "Troppe richieste (traffico limitato) - riprova tra {} minuto",
 | 
			
		||||
        "other": "Troppe richieste (traffico limitato) - riprova tra {} minuti"
 | 
			
		||||
    },
 | 
			
		||||
    "bgUpdateGotErrorRetryInMinutes": {
 | 
			
		||||
        "one": "Il controllo degli aggiornamenti in background ha incontrato un {}, nuovo tentativo tra {} minuto",
 | 
			
		||||
        "other": "Il controllo degli aggiornamenti in background ha incontrato un {}, nuovo tentativo tra {} minuti"
 | 
			
		||||
        "one": "Il controllo degli aggiornamenti in secondo piano ha riscontrato un {}, nuovo tentativo tra {} minuto",
 | 
			
		||||
        "other": "Il controllo degli aggiornamenti in secondo piano ha riscontrato un {}, nuovo tentativo tra {} minuti"
 | 
			
		||||
    },
 | 
			
		||||
    "bgCheckFoundUpdatesWillNotifyIfNeeded": {
 | 
			
		||||
        "one": "Il controllo degli aggiornamenti in background ha trovato {} aggiornamento - notificherà l'utente se necessario",
 | 
			
		||||
        "other": "Il controllo degli aggiornamenti in background ha trovato {} aggiornamenti - notificherà l'utente se necessario"
 | 
			
		||||
        "one": "Il controllo degli aggiornamenti in secondo piano ha trovato {} aggiornamento - notificherà l'utente se necessario",
 | 
			
		||||
        "other": "Il controllo degli aggiornamenti in secondo piano ha trovato {} aggiornamenti - notificherà l'utente se necessario"
 | 
			
		||||
    },
 | 
			
		||||
    "apps": {
 | 
			
		||||
        "one": "{} App",
 | 
			
		||||
        "other": "{} App"
 | 
			
		||||
        "one": "{} app",
 | 
			
		||||
        "other": "{} app"
 | 
			
		||||
    },
 | 
			
		||||
    "url": {
 | 
			
		||||
        "one": "{} URL",
 | 
			
		||||
@@ -271,15 +271,15 @@
 | 
			
		||||
        "other": "{} giorni"
 | 
			
		||||
    },
 | 
			
		||||
    "clearedNLogsBeforeXAfterY": {
 | 
			
		||||
        "one": "Pulito {n} log (prima = {before}, dopo = {after})",
 | 
			
		||||
        "other": "Puliti {n} log (prima = {before}, dopo = {after})"
 | 
			
		||||
        "one": "Rimosso {n} log (prima = {before}, dopo = {after})",
 | 
			
		||||
        "other": "Rimossi {n} log (prima = {before}, dopo = {after})"
 | 
			
		||||
    },
 | 
			
		||||
    "xAndNMoreUpdatesAvailable": {
 | 
			
		||||
        "one": "{} e un'altra App hanno aggiornamenti disponibili.",
 | 
			
		||||
        "other": "{} e altre {} App hanno aggiornamenti disponibili."
 | 
			
		||||
        "one": "{} e un'altra app hanno aggiornamenti disponibili.",
 | 
			
		||||
        "other": "{} e altre {} app hanno aggiornamenti disponibili."
 | 
			
		||||
    },
 | 
			
		||||
    "xAndNMoreUpdatesInstalled": {
 | 
			
		||||
        "one": "{} e un'altra App sono state aggiornate.",
 | 
			
		||||
        "other": "{} e altre {} App sono state aggiornate."
 | 
			
		||||
        "one": "{} e un'altra app sono state aggiornate.",
 | 
			
		||||
        "other": "{} e altre {} app sono state aggiornate."
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										285
									
								
								assets/translations/ru.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										285
									
								
								assets/translations/ru.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,285 @@
 | 
			
		||||
{
 | 
			
		||||
    "invalidURLForSource": "Неверный URL-адрес {} приложения",
 | 
			
		||||
    "noReleaseFound": "Не удалось найти подходящий релиз",
 | 
			
		||||
    "noVersionFound": "Не удалось определить версию релиза",
 | 
			
		||||
    "urlMatchesNoSource": "URL-адрес не соответствует известному источнику",
 | 
			
		||||
    "cantInstallOlderVersion": "Невозможно установить более старую версию приложения",
 | 
			
		||||
    "appIdMismatch": "ID загруженного пакета не совпадает с существующим ID приложения",
 | 
			
		||||
    "functionNotImplemented": "Этот класс не реализовал эту функцию",
 | 
			
		||||
    "placeholder": "Заполнитель",
 | 
			
		||||
    "someErrors": "Произошли некоторые ошибки",
 | 
			
		||||
    "unexpectedError": "Неожиданная ошибка",
 | 
			
		||||
    "ok": "Окей",
 | 
			
		||||
    "and": "и",
 | 
			
		||||
    "startedBgUpdateTask": "Запущена задача фоновой проверки обновлений",
 | 
			
		||||
    "bgUpdateIgnoreAfterIs": "Параметр игнорирования фоновых обновлений: {}",
 | 
			
		||||
    "startedActualBGUpdateCheck": "Запущена фактическая проверка фоновых обновлений",
 | 
			
		||||
    "bgUpdateTaskFinished": "Завершена задача фоновой проверки обновлений",
 | 
			
		||||
    "firstRun": "Это первый запуск Obtainium",
 | 
			
		||||
    "settingUpdateCheckIntervalTo": "Установка интервала проверки обновлений: {}",
 | 
			
		||||
    "githubPATLabel": "Персональный токен доступа GitHub (увеличивает лимит запросов)",
 | 
			
		||||
    "githubPATHint": "Токен доступа должен быть в формате: имя_пользователя:токен",
 | 
			
		||||
    "githubPATFormat": "имя_пользователя:токен",
 | 
			
		||||
    "includePrereleases": "Включить предварительные релизы",
 | 
			
		||||
    "fallbackToOlderReleases": "Откатиться к более старым версиям",
 | 
			
		||||
    "filterReleaseTitlesByRegEx": "Фильтровать заголовки релизов с помощью регулярного выражения",
 | 
			
		||||
    "invalidRegEx": "Неверное регулярное выражение",
 | 
			
		||||
    "noDescription": "Нет описания"
 | 
			
		||||
    "cancel": "Отмена",
 | 
			
		||||
    "continue": "Продолжить",
 | 
			
		||||
    "requiredInBrackets": "(Обязательно)",
 | 
			
		||||
    "dropdownNoOptsError": "Ошибка: Выпадающий список должен содержать хотя бы одну опцию",
 | 
			
		||||
    "colour": "Цвет",
 | 
			
		||||
    "githubStarredRepos": "Помеченные звездочкой репозитории на GitHub",
 | 
			
		||||
    "uname": "Имя пользователя",
 | 
			
		||||
    "wrongArgNum": "Неправильное количество предоставленных аргументов",
 | 
			
		||||
    "xIsTrackOnly": "{} является приложением только для отслеживания",
 | 
			
		||||
    "source": "Источник",
 | 
			
		||||
    "app": "Приложение",
 | 
			
		||||
    "appsFromSourceAreTrackOnly": "Приложения из этого источника являются 'только для отслеживания'.",
 | 
			
		||||
    "youPickedTrackOnly": "Вы выбрали опцию 'Только для отслеживания'.",
 | 
			
		||||
    "trackOnlyAppDescription": "Приложение будет отслеживаться на предмет обновлений, но Obtainium не сможет загрузить или установить его.",
 | 
			
		||||
    "cancelled": "Отменено",
 | 
			
		||||
    "appAlreadyAdded": "Приложение уже добавлено",
 | 
			
		||||
    "alreadyUpToDateQuestion": "Приложение уже обновлено?",
 | 
			
		||||
    "addApp": "Добавить приложение",
 | 
			
		||||
    "appSourceURL": "URL-источник приложения",
 | 
			
		||||
    "error": "Ошибка",
 | 
			
		||||
    "add": "Добавить",
 | 
			
		||||
    "searchSomeSourcesLabel": "Поиск (только в некоторых источниках)",
 | 
			
		||||
    "search": "Поиск",
 | 
			
		||||
    "additionalOptsFor": "Дополнительные опции для {}",
 | 
			
		||||
    "supportedSourcesBelow": "Поддерживаемые источники:",
 | 
			
		||||
    "trackOnlyInBrackets": "(Только для отслеживания)",
 | 
			
		||||
    "searchableInBrackets": "(Поиск)",
 | 
			
		||||
    "appsString": "Приложения",
 | 
			
		||||
    "noApps": "Нет приложений",
 | 
			
		||||
    "noAppsForFilter": "Нет приложений для фильтра",
 | 
			
		||||
    "byX": "От {}",
 | 
			
		||||
    "percentProgress": "Прогресс: {}%",
 | 
			
		||||
    "pleaseWait": "Пожалуйста, подождите",
 | 
			
		||||
    "updateAvailable": "Доступно обновление",
 | 
			
		||||
    "estimateInBracketsShort": "(Оценка)",
 | 
			
		||||
    "notInstalled": "Не установлено",
 | 
			
		||||
    "estimateInBrackets": "(Оценка)",
 | 
			
		||||
    "selectAll": "Выбрать все",
 | 
			
		||||
    "deselectN": "Отменить выбор {}",
 | 
			
		||||
    "xWillBeRemovedButRemainInstalled": "{} будет удалено из Obtainium, но останется установленным на устройстве.",
 | 
			
		||||
    "removeSelectedAppsQuestion": "Удалить выбранные приложения?",
 | 
			
		||||
    "removeSelectedApps": "Удалить выбранные приложения",
 | 
			
		||||
    "updateX": "Обновить {}",
 | 
			
		||||
    "installX": "Установить {}"
 | 
			
		||||
    "markXTrackOnlyAsUpdated": "Отметить {}\n(Только для отслеживания)\nкак обновленное",
 | 
			
		||||
    "changeX": "Изменить {}",
 | 
			
		||||
    "installUpdateApps": "Установить/Обновить приложения",
 | 
			
		||||
    "installUpdateSelectedApps": "Установить/Обновить выбранные приложения",
 | 
			
		||||
    "markXSelectedAppsAsUpdated": "Отметить {} выбранные приложения как обновленные?",
 | 
			
		||||
    "no": "Нет",
 | 
			
		||||
    "yes": "Да",
 | 
			
		||||
    "markSelectedAppsUpdated": "Отметить выбранные приложения как обновленные",
 | 
			
		||||
    "pinToTop": "Закрепить сверху",
 | 
			
		||||
    "unpinFromTop": "Открепить",
 | 
			
		||||
    "resetInstallStatusForSelectedAppsQuestion": "Сбросить статус установки для выбранных приложений?",
 | 
			
		||||
    "installStatusOfXWillBeResetExplanation": "Статус установки для выбранных приложений будет сброшен.\n\nЭто может помочь, если версия приложения, отображаемая в Obtainium, неправильная из-за неудачных обновлений или других проблем.",
 | 
			
		||||
    "shareSelectedAppURLs": "Поделиться выбранными URL-адресами приложений",
 | 
			
		||||
    "resetInstallStatus": "Сбросить статус установки",
 | 
			
		||||
    "more": "Еще",
 | 
			
		||||
    "removeOutdatedFilter": "Удалить фильтр для устаревших приложений",
 | 
			
		||||
    "showOutdatedOnly": "Показывать только устаревшие приложения",
 | 
			
		||||
    "filter": "Фильтр",
 | 
			
		||||
    "filterActive": "Фильтр *",
 | 
			
		||||
    "filterApps": "Фильтровать приложения",
 | 
			
		||||
    "appName": "Название приложения",
 | 
			
		||||
    "author": "Автор"
 | 
			
		||||
    "upToDateApps": "Приложения со свежими обновлениями",
 | 
			
		||||
    "nonInstalledApps": "Неустановленные приложения",
 | 
			
		||||
    "importExport": "Импорт/экспорт",
 | 
			
		||||
    "settings": "Настройки",
 | 
			
		||||
    "exportedTo": "Экспортировано в {}",
 | 
			
		||||
    "obtainiumExport": "Экспорт из Obtainium",
 | 
			
		||||
    "invalidInput": "Неверный ввод",
 | 
			
		||||
    "importedX": "Импортировано {}",
 | 
			
		||||
    "obtainiumImport": "Импорт в Obtainium",
 | 
			
		||||
    "importFromURLList": "Импорт из списка URL-адреса",
 | 
			
		||||
    "searchQuery": "Поисковый запрос",
 | 
			
		||||
    "appURLList": "Список URL приложений",
 | 
			
		||||
    "line": "Строка",
 | 
			
		||||
    "searchX": "Поиск {}",
 | 
			
		||||
    "noResults": "Результатов не найдено",
 | 
			
		||||
    "importX": "Импорт {}",
 | 
			
		||||
    "importedAppsIdDisclaimer": "Импортированные приложения могут неверно отображаться как 'Не установлены'.\nДля исправления этой проблемы повторно установите их через Obtainium.\nЭто не должно повлиять на данные приложения.\n\nПроблемы возникают только при импорте из URL-адреса и сторонних источников.",
 | 
			
		||||
    "importErrors": "Ошибка импорта",
 | 
			
		||||
    "importedXOfYApps": "Импортировано {} из {} приложений.",
 | 
			
		||||
    "followingURLsHadErrors": "При импорте следующие URL-адреса содержали ошибки:",
 | 
			
		||||
    "okay": "Окей",
 | 
			
		||||
    "selectURL": "Выбрать URL-адрес",
 | 
			
		||||
    "selectURLs": "Выбрать URL-адреса",
 | 
			
		||||
    "pick": "Выбрать",
 | 
			
		||||
    "theme": "Тема",
 | 
			
		||||
    "dark": "Темный",
 | 
			
		||||
    "light": "Светлый",
 | 
			
		||||
    "followSystem": "Следовать системе",
 | 
			
		||||
    "obtainium": "Obtainium",
 | 
			
		||||
    "materialYou": "Material You",
 | 
			
		||||
    "useBlackTheme": "Использовать темную тему",
 | 
			
		||||
    "appSortBy": "Сортировка приложений по",
 | 
			
		||||
    "authorName": "Автор/Название",
 | 
			
		||||
    "nameAuthor": "Название/Автор",
 | 
			
		||||
    "asAdded": "В порядке добавления",
 | 
			
		||||
    "appSortOrder": "Порядок сортировки приложений",
 | 
			
		||||
    "ascending": "По возрастанию",
 | 
			
		||||
    "descending": "По убыванию",
 | 
			
		||||
    "bgUpdateCheckInterval": "Интервал проверки обновлений в фоновом режиме",
 | 
			
		||||
    "neverManualOnly": "Никогда - Только вручную",
 | 
			
		||||
    "appearance": "Внешний вид",
 | 
			
		||||
    "showWebInAppView": "Показывать веб-страницу источника в представлении приложения",
 | 
			
		||||
    "pinUpdates": "Закрепить обновления сверху списка приложений",
 | 
			
		||||
    "updates": "Обновления",
 | 
			
		||||
    "sourceSpecific": "Специфика источника",
 | 
			
		||||
    "appSource": "Источник приложения",
 | 
			
		||||
    "noLogs": "Нет журналов",
 | 
			
		||||
    "appLogs": "Журналы приложений",
 | 
			
		||||
    "close": "Закрыть",
 | 
			
		||||
    "share": "Поделиться",
 | 
			
		||||
    "appNotFound": "Приложение не найдено",
 | 
			
		||||
    "obtainiumExportHyphenatedLowercase": "obtainium-export",
 | 
			
		||||
    "pickAnAPK": "Выберите APK-файл",
 | 
			
		||||
    "appHasMoreThanOnePackage": "{} имеет более одного пакета:",
 | 
			
		||||
    "deviceSupportsXArch": "Ваше устройство поддерживает архитектуру процессора {}.",
 | 
			
		||||
    "deviceSupportsFollowingArchs": "Ваше устройство поддерживает следующие архитектуры процессора:",
 | 
			
		||||
    "warning": "Предупреждение",
 | 
			
		||||
    "sourceIsXButPackageFromYPrompt": "Источник приложения - '{}', но пакет для установки получен из '{}'. Продолжить?",
 | 
			
		||||
    "updatesAvailable": "Доступны обновления",
 | 
			
		||||
    "updatesAvailableNotifDescription": "Уведомляет пользователя о наличии обновлений для одного или нескольких приложений, отслеживаемых Obtainium",
 | 
			
		||||
    "noNewUpdates": "Нет новых обновлений.",
 | 
			
		||||
    "xHasAnUpdate": "{} есть обновление.",
 | 
			
		||||
    "appsUpdated": "Приложения обновлены",
 | 
			
		||||
    "appsUpdatedNotifDescription": "Уведомляет пользователя о том, что обновления для одного или нескольких приложений были применены в фоновом режиме",
 | 
			
		||||
    "xWasUpdatedToY": "{} была обновлена до версии {}.",
 | 
			
		||||
    "errorCheckingUpdates": "Ошибка при проверке обновлений",
 | 
			
		||||
    "errorCheckingUpdatesNotifDescription": "Уведомление, которое появляется, когда проверка обновлений в фоновом режиме завершилась с ошибкой",
 | 
			
		||||
    "appsRemoved": "Приложение удалено",
 | 
			
		||||
    "appsRemovedNotifDescription": "Уведомляет пользователя о том, что одно или несколько приложений было удалено из-за ошибок при их загрузке",
 | 
			
		||||
    "xWasRemovedDueToErrorY": "{} был удален из-за ошибки: {}",
 | 
			
		||||
    "completeAppInstallation": "Завершение установки приложения",
 | 
			
		||||
    "obtainiumMustBeOpenToInstallApps": "Для установки приложений Obtainium должен быть открыт",
 | 
			
		||||
    "completeAppInstallationNotifDescription": "Просит пользователя вернуться в Obtainium, чтобы завершить установку приложения",
 | 
			
		||||
    "checkingForUpdates": "Проверка обновлений",
 | 
			
		||||
    "checkingForUpdatesNotifDescription": "Временное уведомление, которое появляется при проверке обновлений",
 | 
			
		||||
    "pleaseAllowInstallPerm": "Пожалуйста, разрешите Obtainium устанавливать приложения",
 | 
			
		||||
    "trackOnly": "Только отслеживать",
 | 
			
		||||
    "errorWithHttpStatusCode": "Ошибка {}",
 | 
			
		||||
    "versionCorrectionDisabled": "Коррекция версий отключена (плагин, кажется, не работает)",
 | 
			
		||||
    "unknown": "Неизвестно",
 | 
			
		||||
    "none": "Отсутствует",
 | 
			
		||||
    "never": "Никогда",
 | 
			
		||||
    "latestVersionX": "Последняя версия: {}",
 | 
			
		||||
    "installedVersionX": "Установленная версия: {}",
 | 
			
		||||
    "lastUpdateCheckX": "Последняя проверка обновлений: {}",
 | 
			
		||||
    "remove": "Удалить",
 | 
			
		||||
    "yesMarkUpdated": "Да, отметить как обновленное",
 | 
			
		||||
    "fdroid": "Официальный F-Droid",
 | 
			
		||||
    "appIdOrName": "ID или название приложения",
 | 
			
		||||
    "appId": "ID приложения",
 | 
			
		||||
    "appWithIdOrNameNotFound": "Приложение с таким ID или названием не было найдено",
 | 
			
		||||
    "reposHaveMultipleApps": "В хранилище может быть несколько приложений",
 | 
			
		||||
    "fdroidThirdPartyRepo": "Хранилище F-Droid сторонних разработчиков",
 | 
			
		||||
    "steam": "Steam",
 | 
			
		||||
    "steamMobile": "Steam Mobile",
 | 
			
		||||
    "steamChat": "Steam Chat",
 | 
			
		||||
    "install": "Установить",
 | 
			
		||||
    "markInstalled": "Пометить как установленное",
 | 
			
		||||
    "update": "Обновить",
 | 
			
		||||
    "markUpdated": "Отметить обновленным",
 | 
			
		||||
    "additionalOptions": "Дополнительные опции",
 | 
			
		||||
    "disableVersionDetection": "Отключить обнаружение версии",
 | 
			
		||||
    "noVersionDetectionExplanation": "Эта опция должна использоваться только для приложений, где обнаружение версии не работает корректно.",
 | 
			
		||||
    "downloadingX": "Загрузка {}",
 | 
			
		||||
    "downloadNotifDescription": "Уведомляет пользователя о прогрессе загрузки приложения",
 | 
			
		||||
    "noAPKFound": "APK не найден",
 | 
			
		||||
    "noVersionDetection": "Версий не обнаружено",
 | 
			
		||||
    "categorize": "Категоризировать",
 | 
			
		||||
    "categories": "Категории",
 | 
			
		||||
    "category": "Категория",
 | 
			
		||||
    "noCategory": "Без категории",
 | 
			
		||||
    "noCategories": "Без категорий",
 | 
			
		||||
    "deleteCategoriesQuestion": "Удалить категории?",
 | 
			
		||||
    "categoryDeleteWarning": "Все приложения в удаленных категориях будут помечены как без категории.",
 | 
			
		||||
    "addCategory": "Добавить категорию",
 | 
			
		||||
    "label": "Метка",
 | 
			
		||||
    "language": "Язык"
 | 
			
		||||
    "copiedToClipboard": "Скопировано в буфер обмена",
 | 
			
		||||
    "storagePermissionDenied": "Отказано в доступе к хранилищу",
 | 
			
		||||
    "selectedCategorizeWarning": "Это заменит все текущие настройки категорий для выбранных приложений.",
 | 
			
		||||
    "filterAPKsByRegEx": "Фильтровать APK-файлы с помощью регулярного выражения",
 | 
			
		||||
    "removeFromObtainium": "Удалить из Obtainium",
 | 
			
		||||
    "uninstallFromDevice": "Удалить с устройства",
 | 
			
		||||
    "onlyWorksWithNonVersionDetectApps": "Работает только для приложений с отключенным определением версии.",
 | 
			
		||||
    "releaseDateAsVersion": "Использовать дату выпуска в качестве версии",
 | 
			
		||||
    "releaseDateAsVersionExplanation": "Этот параметр следует использовать только для приложений, в которых определение версии не работает правильно, но имеется дата выпуска.",
 | 
			
		||||
    "changes": "Изменения",
 | 
			
		||||
    "releaseDate": "Дата выпуска",
 | 
			
		||||
    "importFromURLsInFile": "Импортировать из URL-адресов в файл (например, OPML)",
 | 
			
		||||
    "versionDetection": "Определение версии",
 | 
			
		||||
    "standardVersionDetection": "Стандартное определение версии",
 | 
			
		||||
    "groupByCategory": "Группировать по категориям",
 | 
			
		||||
    "autoApkFilterByArch": "Попытка фильтрации APK-файлов по архитектуре процессора, если это возможно",
 | 
			
		||||
    "overrideSource": "Переопределить источник",
 | 
			
		||||
    "dontShowAgain": "Не показывать снова",
 | 
			
		||||
    "dontShowTrackOnlyWarnings": "Не показывать предупреждения о только отслеживаемых приложениях",
 | 
			
		||||
    "dontShowAPKOriginWarnings": "Не показывать предупреждения об источнике APK-файлов",
 | 
			
		||||
    "moveNonInstalledAppsToBottom": "Переместить неустановленные приложения вниз списка",
 | 
			
		||||
    "gitlabPATLabel": "Персональный токен доступа GitLab (Включает поиск)",
 | 
			
		||||
    "about": "О приложении",
 | 
			
		||||
    "requiresCredentialsInSettings": "Для этого требуются дополнительные учетные данные (в настройках)",
 | 
			
		||||
    "checkOnStart": "Проверить один раз при запуске",
 | 
			
		||||
    "tryInferAppIdFromCode": "Попытаться определить ID приложения из исходного кода",
 | 
			
		||||
    "removeAppQuestion": {
 | 
			
		||||
        "one": "Удалить приложение?",
 | 
			
		||||
        "other": "Удалить приложения?"
 | 
			
		||||
    },
 | 
			
		||||
    "tooManyRequestsTryAgainInMinutes": {
 | 
			
		||||
        "one": "Слишком много запросов (ограничение скорости) - попробуйте снова через {} минуту",
 | 
			
		||||
        "other": "Слишком много запросов (ограничение скорости) - попробуйте снова через {} минуты"
 | 
			
		||||
    },
 | 
			
		||||
    "bgUpdateGotErrorRetryInMinutes": {
 | 
			
		||||
        "one": "При проверке обновлений в фоновом режиме возникла ошибка {}, повторная проверка будет запланирована через {} минуту",
 | 
			
		||||
        "other": "При проверке обновлений в фоновом режиме возникла ошибка {}, повторная проверка будет запланирована через {} минуты"
 | 
			
		||||
    },
 | 
			
		||||
    "bgCheckFoundUpdatesWillNotifyIfNeeded": {
 | 
			
		||||
        "one": "В ходе проверки обновления в фоновом режиме было обнаружено {} обновление - Пользователю будет отправлено уведомление, если это необходимо",
 | 
			
		||||
        "other": "В ходе проверки обновления в фоновом режиме было обнаружено {} обновлений - Пользователю будет отправлено уведомление, если это необходимо"
 | 
			
		||||
    },
 | 
			
		||||
    "apps": {
 | 
			
		||||
        "one": "{} Приложение",
 | 
			
		||||
        "other": "{} Приложений"
 | 
			
		||||
    },
 | 
			
		||||
    "url": {
 | 
			
		||||
        "one": "{} Ссылка",
 | 
			
		||||
        "other": "{} Ссылки"
 | 
			
		||||
    },
 | 
			
		||||
    "minute": {
 | 
			
		||||
        "one": "{} Минута",
 | 
			
		||||
        "other": "{} Минуты"
 | 
			
		||||
    },
 | 
			
		||||
    "hour": {
 | 
			
		||||
        "one": "{} Час",
 | 
			
		||||
        "other": "{} Часов"
 | 
			
		||||
    },
 | 
			
		||||
    "day": {
 | 
			
		||||
        "one": "{} День",
 | 
			
		||||
        "other": "{} Дней"
 | 
			
		||||
    },
 | 
			
		||||
    "clearedNLogsBeforeXAfterY": {
 | 
			
		||||
        "one": "Очищен {n} журнал (до = {before}, после = {after})",
 | 
			
		||||
        "other": "Очищено {n} журналов (до = {before}, после = {after})"
 | 
			
		||||
    },
 | 
			
		||||
    "xAndNMoreUpdatesAvailable": {
 | 
			
		||||
        "one": "У {} и еще 1 приложения есть обновления.",
 | 
			
		||||
        "other": "{} and {} more apps have updates."
 | 
			
		||||
    },
 | 
			
		||||
    "xAndNMoreUpdatesInstalled": {
 | 
			
		||||
        "one": "{} and 1 more app were updated.",
 | 
			
		||||
        "other": "У {} и еще {} приложений есть обновления."
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -96,14 +96,25 @@ class GitHub extends AppSource {
 | 
			
		||||
        if (res.statusCode == 200) {
 | 
			
		||||
          try {
 | 
			
		||||
            var body = jsonDecode(res.body);
 | 
			
		||||
            var appId = utf8
 | 
			
		||||
            var trimmedLines = utf8
 | 
			
		||||
                .decode(base64
 | 
			
		||||
                    .decode(body['content'].toString().split('\n').join('')))
 | 
			
		||||
                .split('\n')
 | 
			
		||||
                .map((e) => e.trim())
 | 
			
		||||
                .where((l) => l.startsWith('applicationId "'))
 | 
			
		||||
                .first
 | 
			
		||||
                .split('"')[1];
 | 
			
		||||
                .map((e) => e.trim());
 | 
			
		||||
            var appId = trimmedLines
 | 
			
		||||
                .where((l) =>
 | 
			
		||||
                    l.startsWith('applicationId "') ||
 | 
			
		||||
                    l.startsWith('applicationId \''))
 | 
			
		||||
                .first;
 | 
			
		||||
            appId = appId
 | 
			
		||||
                .split(appId.startsWith('applicationId "') ? '"' : '\'')[1];
 | 
			
		||||
            if (appId.startsWith('\${') && appId.endsWith('}')) {
 | 
			
		||||
              appId = trimmedLines
 | 
			
		||||
                  .where((l) => l.startsWith(
 | 
			
		||||
                      'def ${appId.substring(2, appId.length - 1)}'))
 | 
			
		||||
                  .first;
 | 
			
		||||
              appId = appId.split(appId.contains('"') ? '"' : '\'')[1];
 | 
			
		||||
            }
 | 
			
		||||
            if (appId.isNotEmpty) {
 | 
			
		||||
              return appId;
 | 
			
		||||
            }
 | 
			
		||||
 
 | 
			
		||||
@@ -56,7 +56,7 @@ class InstallError extends ObtainiumError {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
class IDChangedError extends ObtainiumError {
 | 
			
		||||
  IDChangedError() : super(tr('appIdMismatch'));
 | 
			
		||||
  IDChangedError(String newId) : super('${tr('appIdMismatch')} - $newId');
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
class NotImplementedError extends ObtainiumError {
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@ import 'package:easy_localization/src/easy_localization_controller.dart';
 | 
			
		||||
// ignore: implementation_imports
 | 
			
		||||
import 'package:easy_localization/src/localization.dart';
 | 
			
		||||
 | 
			
		||||
const String currentVersion = '0.13.7';
 | 
			
		||||
const String currentVersion = '0.13.10';
 | 
			
		||||
const String currentReleaseTag =
 | 
			
		||||
    'v$currentVersion-beta'; // KEEP THIS IN SYNC WITH GITHUB RELEASES
 | 
			
		||||
 | 
			
		||||
@@ -38,6 +38,7 @@ List<MapEntry<Locale, String>> supportedLocales = const [
 | 
			
		||||
  MapEntry(Locale('fr'), 'Français'),
 | 
			
		||||
  MapEntry(Locale('es'), 'Español'),
 | 
			
		||||
  MapEntry(Locale('pl'), 'Polski'),
 | 
			
		||||
  MapEntry(Locale('ru'), 'Русский язык'),
 | 
			
		||||
];
 | 
			
		||||
const fallbackLocale = Locale('en');
 | 
			
		||||
const localeDir = 'assets/translations';
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,5 @@
 | 
			
		||||
import 'dart:ui';
 | 
			
		||||
 | 
			
		||||
import 'package:easy_localization/easy_localization.dart';
 | 
			
		||||
import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:flutter/services.dart';
 | 
			
		||||
@@ -82,20 +84,20 @@ class _AppPageState extends State<AppPage> {
 | 
			
		||||
            const SizedBox(
 | 
			
		||||
              height: 32,
 | 
			
		||||
            ),
 | 
			
		||||
            Text(
 | 
			
		||||
              tr('latestVersionX',
 | 
			
		||||
                  args: [app?.app.latestVersion ?? tr('unknown')]),
 | 
			
		||||
              textAlign: TextAlign.center,
 | 
			
		||||
              style: Theme.of(context).textTheme.bodyLarge,
 | 
			
		||||
            ),
 | 
			
		||||
            Text(
 | 
			
		||||
              '${tr('installedVersionX', args: [
 | 
			
		||||
                    app?.app.installedVersion ?? tr('none')
 | 
			
		||||
                  ])}${trackOnly ? ' ${tr('estimateInBrackets')}\n\n${tr('xIsTrackOnly', args: [
 | 
			
		||||
                      tr('app')
 | 
			
		||||
                    ])}' : ''}',
 | 
			
		||||
              textAlign: TextAlign.center,
 | 
			
		||||
              style: Theme.of(context).textTheme.bodyLarge,
 | 
			
		||||
            Column(
 | 
			
		||||
              children: [
 | 
			
		||||
                Text(
 | 
			
		||||
                  '${tr('latestVersionX', args: [
 | 
			
		||||
                        app?.app.latestVersion ?? tr('unknown')
 | 
			
		||||
                      ])}\n${tr('installedVersionX', args: [
 | 
			
		||||
                        app?.app.installedVersion ?? tr('none')
 | 
			
		||||
                      ])}${trackOnly ? ' ${tr('estimateInBrackets')}\n\n${tr('xIsTrackOnly', args: [
 | 
			
		||||
                          tr('app')
 | 
			
		||||
                        ])}' : ''}',
 | 
			
		||||
                  textAlign: TextAlign.end,
 | 
			
		||||
                  style: Theme.of(context).textTheme.bodyLarge!,
 | 
			
		||||
                ),
 | 
			
		||||
              ],
 | 
			
		||||
            ),
 | 
			
		||||
            if (app?.app.installedVersion != null &&
 | 
			
		||||
                !isVersionDetectionStandard)
 | 
			
		||||
@@ -329,7 +331,8 @@ class _AppPageState extends State<AppPage> {
 | 
			
		||||
                try {
 | 
			
		||||
                  HapticFeedback.heavyImpact();
 | 
			
		||||
                  var res = await appsProvider.downloadAndInstallLatestApps(
 | 
			
		||||
                      [app!.app.id], globalNavigatorKey.currentContext);
 | 
			
		||||
                      app?.app.id != null ? [app!.app.id] : [],
 | 
			
		||||
                      globalNavigatorKey.currentContext);
 | 
			
		||||
                  if (res.isNotEmpty && mounted) {
 | 
			
		||||
                    Navigator.of(context).pop();
 | 
			
		||||
                  }
 | 
			
		||||
@@ -426,8 +429,10 @@ class _AppPageState extends State<AppPage> {
 | 
			
		||||
                        onPressed: app?.downloadProgress != null
 | 
			
		||||
                            ? null
 | 
			
		||||
                            : () {
 | 
			
		||||
                                appsProvider.removeAppsWithModal(
 | 
			
		||||
                                    context, [app!.app]).then((value) {
 | 
			
		||||
                                appsProvider
 | 
			
		||||
                                    .removeAppsWithModal(
 | 
			
		||||
                                        context, app != null ? [app.app] : [])
 | 
			
		||||
                                    .then((value) {
 | 
			
		||||
                                  if (value == true) {
 | 
			
		||||
                                    Navigator.of(context).pop();
 | 
			
		||||
                                  }
 | 
			
		||||
 
 | 
			
		||||
@@ -27,7 +27,7 @@ import 'package:flutter_fgbg/flutter_fgbg.dart';
 | 
			
		||||
import 'package:obtainium/providers/source_provider.dart';
 | 
			
		||||
import 'package:http/http.dart';
 | 
			
		||||
import 'package:android_intent_plus/android_intent.dart';
 | 
			
		||||
import 'package:archive/archive.dart';
 | 
			
		||||
import 'package:archive/archive_io.dart';
 | 
			
		||||
 | 
			
		||||
class AppInMemory {
 | 
			
		||||
  late App app;
 | 
			
		||||
@@ -202,16 +202,18 @@ class AppsProvider with ChangeNotifier {
 | 
			
		||||
    // The former case should be handled (give the App its real ID), the latter is a security issue
 | 
			
		||||
    if (app.id != newInfo.packageName) {
 | 
			
		||||
      var isTempId = SourceProvider().isTempId(app);
 | 
			
		||||
      if (apps[app.id] != null && !isTempId) {
 | 
			
		||||
        throw IDChangedError();
 | 
			
		||||
      if (apps[app.id] != null && !isTempId && !app.allowIdChange) {
 | 
			
		||||
        throw IDChangedError(newInfo.packageName);
 | 
			
		||||
      }
 | 
			
		||||
      var idChangeWasAllowed = app.allowIdChange;
 | 
			
		||||
      app.allowIdChange = false;
 | 
			
		||||
      var originalAppId = app.id;
 | 
			
		||||
      app.id = newInfo.packageName;
 | 
			
		||||
      downloadedFile = downloadedFile.renameSync(
 | 
			
		||||
          '${downloadedFile.parent.path}/${app.id}-${downloadUrl.hashCode}.${downloadedFile.path.split('.').last}');
 | 
			
		||||
      if (apps[originalAppId] != null) {
 | 
			
		||||
        await removeApps([originalAppId]);
 | 
			
		||||
        await saveApps([app], onlyIfExists: !isTempId);
 | 
			
		||||
        await saveApps([app], onlyIfExists: !isTempId && !idChangeWasAllowed);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    return downloadedFile;
 | 
			
		||||
@@ -333,20 +335,9 @@ class AppsProvider with ChangeNotifier {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  void unzipFile(String filePath, String destinationPath) {
 | 
			
		||||
    final bytes = File(filePath).readAsBytesSync();
 | 
			
		||||
    final archive = ZipDecoder().decodeBytes(bytes);
 | 
			
		||||
 | 
			
		||||
    for (final file in archive) {
 | 
			
		||||
      final filename = '$destinationPath/${file.name}';
 | 
			
		||||
      if (file.isFile) {
 | 
			
		||||
        final data = file.content as List<int>;
 | 
			
		||||
        File(filename)
 | 
			
		||||
          ..createSync(recursive: true)
 | 
			
		||||
          ..writeAsBytesSync(data);
 | 
			
		||||
      } else {
 | 
			
		||||
        Directory(filename).create(recursive: true);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    final inputStream = InputFileStream(filePath);
 | 
			
		||||
    final archive = ZipDecoder().decodeBuffer(inputStream);
 | 
			
		||||
    extractArchiveToDisk(archive, destinationPath);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  Future<void> installXApkDir(DownloadedXApkDir dir,
 | 
			
		||||
 
 | 
			
		||||
@@ -163,6 +163,7 @@ class App {
 | 
			
		||||
  late DateTime? releaseDate;
 | 
			
		||||
  late String? changeLog;
 | 
			
		||||
  late String? overrideSource;
 | 
			
		||||
  bool allowIdChange = false;
 | 
			
		||||
  App(
 | 
			
		||||
      this.id,
 | 
			
		||||
      this.url,
 | 
			
		||||
@@ -178,7 +179,8 @@ class App {
 | 
			
		||||
      {this.categories = const [],
 | 
			
		||||
      this.releaseDate,
 | 
			
		||||
      this.changeLog,
 | 
			
		||||
      this.overrideSource});
 | 
			
		||||
      this.overrideSource,
 | 
			
		||||
      this.allowIdChange = false});
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  String toString() {
 | 
			
		||||
@@ -209,7 +211,8 @@ class App {
 | 
			
		||||
      categories: categories,
 | 
			
		||||
      changeLog: changeLog,
 | 
			
		||||
      releaseDate: releaseDate,
 | 
			
		||||
      overrideSource: overrideSource);
 | 
			
		||||
      overrideSource: overrideSource,
 | 
			
		||||
      allowIdChange: allowIdChange);
 | 
			
		||||
 | 
			
		||||
  factory App.fromJson(Map<String, dynamic> json) {
 | 
			
		||||
    json = appJSONCompatibilityModifiers(json);
 | 
			
		||||
@@ -241,7 +244,8 @@ class App {
 | 
			
		||||
            : DateTime.fromMicrosecondsSinceEpoch(json['releaseDate']),
 | 
			
		||||
        changeLog:
 | 
			
		||||
            json['changeLog'] == null ? null : json['changeLog'] as String,
 | 
			
		||||
        overrideSource: json['overrideSource']);
 | 
			
		||||
        overrideSource: json['overrideSource'],
 | 
			
		||||
        allowIdChange: json['allowIdChange'] ?? false);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  Map<String, dynamic> toJson() => {
 | 
			
		||||
@@ -259,7 +263,8 @@ class App {
 | 
			
		||||
        'categories': categories,
 | 
			
		||||
        'releaseDate': releaseDate?.microsecondsSinceEpoch,
 | 
			
		||||
        'changeLog': changeLog,
 | 
			
		||||
        'overrideSource': overrideSource
 | 
			
		||||
        'overrideSource': overrideSource,
 | 
			
		||||
        'allowIdChange': allowIdChange
 | 
			
		||||
      };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -613,7 +618,11 @@ class SourceProvider {
 | 
			
		||||
        categories: currentApp?.categories ?? const [],
 | 
			
		||||
        releaseDate: apk.releaseDate,
 | 
			
		||||
        changeLog: apk.changeLog,
 | 
			
		||||
        overrideSource: overrideSource ?? currentApp?.overrideSource);
 | 
			
		||||
        overrideSource: overrideSource ?? currentApp?.overrideSource,
 | 
			
		||||
        allowIdChange: currentApp?.allowIdChange ??
 | 
			
		||||
            source.appIdInferIsOptional &&
 | 
			
		||||
                inferAppIdIfOptional // Optional ID inferring may be incorrect - allow correction on first install
 | 
			
		||||
        );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // Returns errors in [results, errors] instead of throwing them
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										72
									
								
								pubspec.lock
									
									
									
									
									
								
							
							
						
						
									
										72
									
								
								pubspec.lock
									
									
									
									
									
								
							@@ -46,10 +46,10 @@ packages:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: args
 | 
			
		||||
      sha256: c372bb384f273f0c2a8aaaa226dad84dc27c8519a691b888725dec59518ad53a
 | 
			
		||||
      sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "2.4.1"
 | 
			
		||||
    version: "2.4.2"
 | 
			
		||||
  async:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
@@ -134,10 +134,10 @@ packages:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: csslib
 | 
			
		||||
      sha256: "831883fb353c8bdc1d71979e5b342c7d88acfbc643113c14ae51e2442ea0f20f"
 | 
			
		||||
      sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "0.17.3"
 | 
			
		||||
    version: "1.0.0"
 | 
			
		||||
  cupertino_icons:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description:
 | 
			
		||||
@@ -222,10 +222,10 @@ packages:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description:
 | 
			
		||||
      name: file_picker
 | 
			
		||||
      sha256: "9d6e95ec73abbd31ec54d0e0df8a961017e165aba1395e462e5b31ea0c165daf"
 | 
			
		||||
      sha256: b1729fc96627dd44012d0a901558177418818d6bd428df59dcfeb594e5f66432
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "5.3.1"
 | 
			
		||||
    version: "5.3.2"
 | 
			
		||||
  flutter:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description: flutter
 | 
			
		||||
@@ -322,10 +322,10 @@ packages:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description:
 | 
			
		||||
      name: html
 | 
			
		||||
      sha256: "58e3491f7bf0b6a4ea5110c0c688877460d1a6366731155c4a4580e7ded773e8"
 | 
			
		||||
      sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "0.15.3"
 | 
			
		||||
    version: "0.15.4"
 | 
			
		||||
  http:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description:
 | 
			
		||||
@@ -506,42 +506,42 @@ packages:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: path_provider_windows
 | 
			
		||||
      sha256: d3f80b32e83ec208ac95253e0cd4d298e104fbc63cb29c5c69edaed43b0c69d6
 | 
			
		||||
      sha256: "1cb68ba4cd3a795033de62ba1b7b4564dace301f952de6bfb3cd91b202b6ee96"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "2.1.6"
 | 
			
		||||
    version: "2.1.7"
 | 
			
		||||
  permission_handler:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description:
 | 
			
		||||
      name: permission_handler
 | 
			
		||||
      sha256: "33c6a1253d1f95fd06fa74b65b7ba907ae9811f9d5c1d3150e51417d04b8d6a8"
 | 
			
		||||
      sha256: "1b6b3e73f0bcbc856548bbdfb1c33084a401c4f143e220629a9055233d76c331"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "10.2.0"
 | 
			
		||||
    version: "10.3.0"
 | 
			
		||||
  permission_handler_android:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: permission_handler_android
 | 
			
		||||
      sha256: d8cc6a62ded6d0f49c6eac337e080b066ee3bce4d405bd9439a61e1f1927bfe8
 | 
			
		||||
      sha256: "8f6a95ccbca13766882f95d32684d7c9bfe6c45650c32bedba948ef1c6a4ddf7"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "10.2.1"
 | 
			
		||||
    version: "10.2.3"
 | 
			
		||||
  permission_handler_apple:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: permission_handler_apple
 | 
			
		||||
      sha256: ee96ac32f5a8e6f80756e25b25b9f8e535816c8e6665a96b6d70681f8c4f7e85
 | 
			
		||||
      sha256: "08dcb6ce628ac0b257e429944b4c652c2a4e6af725bdf12b498daa2c6b2b1edb"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "9.0.8"
 | 
			
		||||
    version: "9.1.0"
 | 
			
		||||
  permission_handler_platform_interface:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: permission_handler_platform_interface
 | 
			
		||||
      sha256: "68abbc472002b5e6dfce47fe9898c6b7d8328d58b5d2524f75e277c07a97eb84"
 | 
			
		||||
      sha256: de20a5c3269229c1ae2e5a6b822f6cb59578b23e8255c93fbeebfc82116e6b11
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "3.9.0"
 | 
			
		||||
    version: "3.10.0"
 | 
			
		||||
  permission_handler_windows:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
@@ -618,10 +618,10 @@ packages:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description:
 | 
			
		||||
      name: shared_preferences
 | 
			
		||||
      sha256: "16d3fb6b3692ad244a695c0183fca18cf81fd4b821664394a781de42386bf022"
 | 
			
		||||
      sha256: "396f85b8afc6865182610c0a2fc470853d56499f75f7499e2a73a9f0539d23d0"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "2.1.1"
 | 
			
		||||
    version: "2.1.2"
 | 
			
		||||
  shared_preferences_android:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
@@ -695,10 +695,10 @@ packages:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: sqflite_common
 | 
			
		||||
      sha256: e77abf6ff961d69dfef41daccbb66b51e9983cdd5cb35bf30733598057401555
 | 
			
		||||
      sha256: "8f7603f3f8f126740bc55c4ca2d1027aab4b74a1267a3e31ce51fe40e3b65b8f"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "2.4.5"
 | 
			
		||||
    version: "2.4.5+1"
 | 
			
		||||
  stack_trace:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
@@ -775,10 +775,10 @@ packages:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: url_launcher_android
 | 
			
		||||
      sha256: eed4e6a1164aa9794409325c3b707ff424d4d1c2a785e7db67f8bbda00e36e51
 | 
			
		||||
      sha256: "15f5acbf0dce90146a0f5a2c4a002b1814a6303c4c5c075aa2623b2d16156f03"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "6.0.35"
 | 
			
		||||
    version: "6.0.36"
 | 
			
		||||
  url_launcher_ios:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
@@ -807,10 +807,10 @@ packages:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: url_launcher_platform_interface
 | 
			
		||||
      sha256: "6c9ca697a5ae218ce56cece69d46128169a58aa8653c1b01d26fcd4aad8c4370"
 | 
			
		||||
      sha256: bfdfa402f1f3298637d71ca8ecfe840b4696698213d5346e9d12d4ab647ee2ea
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "2.1.2"
 | 
			
		||||
    version: "2.1.3"
 | 
			
		||||
  url_launcher_web:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
@@ -847,18 +847,18 @@ packages:
 | 
			
		||||
    dependency: "direct main"
 | 
			
		||||
    description:
 | 
			
		||||
      name: webview_flutter
 | 
			
		||||
      sha256: "5604dac1178680a34fbe4a08c7b69ec42cca6601dc300009ec9ff69bef284cc2"
 | 
			
		||||
      sha256: "789d52bd789373cc1e100fb634af2127e86c99cf9abde09499743270c5de8d00"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "4.2.1"
 | 
			
		||||
    version: "4.2.2"
 | 
			
		||||
  webview_flutter_android:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: webview_flutter_android
 | 
			
		||||
      sha256: "57a22c86065375c1598b57224f92d6008141be0c877c64100de8bfb6f71083d8"
 | 
			
		||||
      sha256: "532135f6f6b8030cd039f30eab23f340d650350e29f38e9b37d2eaad028f1018"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "3.7.1"
 | 
			
		||||
    version: "3.8.0"
 | 
			
		||||
  webview_flutter_platform_interface:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
@@ -871,26 +871,26 @@ packages:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: webview_flutter_wkwebview
 | 
			
		||||
      sha256: "6bbc6ade302b842999b27cbaa7171241c273deea8a9c73f92ceb3d811c767de2"
 | 
			
		||||
      sha256: ecc9e9ea15216afc5ba3b1f14aa19414ceba526e57b19cebd970bfa91a0f4058
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "3.4.4"
 | 
			
		||||
    version: "3.5.0"
 | 
			
		||||
  win32:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: win32
 | 
			
		||||
      sha256: "5a751eddf9db89b3e5f9d50c20ab8612296e4e8db69009788d6c8b060a84191c"
 | 
			
		||||
      sha256: "1414f27dd781737e51afa9711f2ac2ace6ab4498ee98e20863fa5505aa00c58c"
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "4.1.4"
 | 
			
		||||
    version: "5.0.4"
 | 
			
		||||
  win32_registry:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
      name: win32_registry
 | 
			
		||||
      sha256: "1c52f994bdccb77103a6231ad4ea331a244dbcef5d1f37d8462f713143b0bfae"
 | 
			
		||||
      sha256: e4506d60b7244251bc59df15656a3093501c37fb5af02105a944d73eb95be4c9
 | 
			
		||||
      url: "https://pub.dev"
 | 
			
		||||
    source: hosted
 | 
			
		||||
    version: "1.1.0"
 | 
			
		||||
    version: "1.1.1"
 | 
			
		||||
  xdg_directories:
 | 
			
		||||
    dependency: transitive
 | 
			
		||||
    description:
 | 
			
		||||
 
 | 
			
		||||
@@ -17,7 +17,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
 | 
			
		||||
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
 | 
			
		||||
# In Windows, build-name is used as the major, minor, and patch parts
 | 
			
		||||
# of the product and file versions while build-number is used as the build suffix.
 | 
			
		||||
version: 0.13.7+171 # When changing this, update the tag in main() accordingly
 | 
			
		||||
version: 0.13.10+174 # When changing this, update the tag in main() accordingly
 | 
			
		||||
 | 
			
		||||
environment:
 | 
			
		||||
  sdk: '>=2.18.2 <3.0.0'
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user