tor-commits
Threads by month
- ----- 2025 -----
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
April 2020
- 25 participants
- 2156 discussions

[orbot/master] metadata: replace all goo.gl links with actual URLs
by n8fr8@torproject.org 28 Apr '20
by n8fr8@torproject.org 28 Apr '20
28 Apr '20
commit 8c4de5e900528366e8de700f21194d76e8753f3e
Author: Hans-Christoph Steiner <hans(a)eds.org>
Date: Fri Aug 23 15:54:46 2019 +0200
metadata: replace all goo.gl links with actual URLs
https://twitter.com/3albers/status/1105476763923238912
sed -i 's,http://goo.gl,https://goo.gl,g'
sed -i 's,https://goo.gl/2OA1y,https://guardianproject.info/apps/orbot/,g'
sed -i 's,https://goo.gl/6hni4,https://www.transifex.com/otf/orbot/,g'
sed -i 's,https://goo.gl/8U8BQG,https://play.google.com/store/apps/details?id=info.…'
sed -i 's,https://goo.gl/lgh1p,https://play.google.com/store/apps/details?id=com.du…'
sed -i 's,https://goo.gl/O3FfS,https://play.google.com/store/apps/details?id=info.g…'
sed -i 's,https://goo.gl/PH3T91,https://play.google.com/store/apps/details?id=info.…'
sed -i 's,https://goo.gl/s3mLa,https://play.google.com/store/apps/details?id=info.g…'
---
fastlane/metadata/android/af/full_description.txt | 4 ++--
fastlane/metadata/android/de-DE/full_description.txt | 8 ++++----
fastlane/metadata/android/es-ES/full_description.txt | 8 ++++----
fastlane/metadata/android/fr-FR/full_description.txt | 8 ++++----
fastlane/metadata/android/pt-BR/full_description.txt | 8 ++++----
fastlane/metadata/android/pt-PT/full_description.txt | 8 ++++----
fastlane/metadata/android/tr-TR/full_description.txt | 8 ++++----
fastlane/metadata/android/vi/full_description.txt | 8 ++++----
8 files changed, 30 insertions(+), 30 deletions(-)
diff --git a/fastlane/metadata/android/af/full_description.txt b/fastlane/metadata/android/af/full_description.txt
index bdfb3703..7a657701 100644
--- a/fastlane/metadata/android/af/full_description.txt
+++ b/fastlane/metadata/android/af/full_description.txt
@@ -10,8 +10,8 @@ Orbot is the only app that creates a truly private internet connection. As the N
★ ACCEPT NO SUBSTITUTES: Orbot is the safest way to use the Internet on Android. Period. Orbot bounces your encrypted traffic several times through computers around the world, instead of connecting you directly like VPNs and proxies. This process takes a little longer, but the strongest privacy and identity protection available is worth the wait.
★ PRIVATE WEB SURFING: Use with Orfox, the most anonymous way to access any website, even if it’s normally blocked, monitored, or on the hidden web. Get Orfox: https://play.google.com/store/apps/details?id=info.guardianproject.orfox
-★ PRIVATE CHAT MESSAGING: Use ChatSecure with Orbot to chat confidentially with anyone, anywhere for free. Get ChatSecure: https://goo.gl/O3FfS
-★ PRIVACY FOR APPS: Any installed app can use Tor if it has a proxy feature, using the settings found here: https://goo.gl/2OA1y Use Orbot with Twitter, or try private web searching with DuckDuckGo: https://goo.gl/lgh1p
+★ PRIVATE CHAT MESSAGING: Use ChatSecure with Orbot to chat confidentially with anyone, anywhere for free. Get ChatSecure: https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+★ PRIVACY FOR APPS: Any installed app can use Tor if it has a proxy feature, using the settings found here: https://guardianproject.info/apps/orbot/ Use Orbot with Twitter, or try private web searching with DuckDuckGo: https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
★ PRIVACY FOR EVERYONE: Tor can help you confidentially research a competitor, get around the Facebook block at school, or circumvent a firewall to watch sports at work.
★ PRIVACY MADE EASY: Check out our fun, interactive walkthrough: https://guardianproject.info/howto/browsefreely
★ IT’S OFFICIAL: This is the official version of the Tor onion routing service for Android.
diff --git a/fastlane/metadata/android/de-DE/full_description.txt b/fastlane/metadata/android/de-DE/full_description.txt
index e0970d3c..3d52a746 100644
--- a/fastlane/metadata/android/de-DE/full_description.txt
+++ b/fastlane/metadata/android/de-DE/full_description.txt
@@ -5,9 +5,9 @@ Orbot ist eine freie Vermittlungsanwendung, welche es anderen Programmen ermögl
Orbot ist die einzige Anwendung, die eine wirklich vertrauliche Internetverbindung herstellt. Wie die New York Times schreibt, »wenn Verbindungen über Tor eintreffen, weiß man nie von wem oder woher sie kommt.« Tor bekam 2012 den Electronic Frontier Foundation (EFF) Pioneer Award.
AKZEPTIEREN SIE KEINE SCHNÜFFLER: Orbot ist der sicherste Weg, um das Internet mit Android zu nutzen. Orbot leitet den verschlüsselten Verkehr mehrmals durch Rechner auf der ganzen Welt, anstatt Sie direkt zu verbinden wie z.B. VPNs und Proxys. Dieser Vorgang dauert ein wenig länger, aber der stärkste Privatsphären- und Identitätsschutz ist das Warten wert.
-PRIVATES INTERNETSURFEN: Nutzen Sie es mit Orweb, der anonymsten Art, eine Webseite zu besuchen, egal ob sie normalerweise geblockt, überwacht, oder versteckt ist. Hier bekommen Sie Orweb: https://goo.gl/s3mLa
-PRIVATE SOFORTNACHRICHTEN: Gibberbot mit Orbot nutzen, um sich vertraulich mit jedem, überall und kostenlos zu unterhalten. Hier bekommen Sie Gibberbot: https://goo.gl/O3FfS
-PRIVATSPHÄRE FÜR ANWENDUNGEN: Jede installierte Anwendung kann Tor benutzen, wenn es eine Vermittlungsfunktion hat und folgende Einstellungen nutzt: https://goo.gl/2OA1y Orbot mit Twitter benutzen, oder die anonyme Internetsuche mit DuckDuckGo: https://goo.gl/lgh1p
+PRIVATES INTERNETSURFEN: Nutzen Sie es mit Orweb, der anonymsten Art, eine Webseite zu besuchen, egal ob sie normalerweise geblockt, überwacht, oder versteckt ist. Hier bekommen Sie Orweb: https://play.google.com/store/apps/details?id=info.guardianproject.browser
+PRIVATE SOFORTNACHRICHTEN: Gibberbot mit Orbot nutzen, um sich vertraulich mit jedem, überall und kostenlos zu unterhalten. Hier bekommen Sie Gibberbot: https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+PRIVATSPHÄRE FÜR ANWENDUNGEN: Jede installierte Anwendung kann Tor benutzen, wenn es eine Vermittlungsfunktion hat und folgende Einstellungen nutzt: https://guardianproject.info/apps/orbot/ Orbot mit Twitter benutzen, oder die anonyme Internetsuche mit DuckDuckGo: https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
PRIVATSPHÄRE FÜR JEDEN: Tor kann dabei helfen einen vertraulich über einen Wettbewerber zu recherchieren, die Facebook-Blockade an der Schule oder die Firewall am Arbeitsplatz zu umgehen, um Sport zu gucken.
PRIVATSPHÄRE EINFACH GEMACHT: Unsere witzige und interaktive Führung ansehen: https://guardianproject.info/howto/browsefreely
ES IST OFFIZIELL: Das ist die offizielle Version des Tor-Onion-Routing-Dienstes für Android
@@ -23,4 +23,4 @@ QUELLOFFEN: Orbot ist freie Software. Werfen Sie einen blick auf den Quellcode,
ÜBER TOR: https://TorProject.org
UNS SCHREIBEN: Haben wir eine Funktion vergessen? Haben Sie einen Fehler gefunden? Wir würden uns freuen, von Ihnen zu hören! Senden Sie uns eine E-Mail an: root(a)guardianproject.info
HELFEN SIE UNS ORBOT IN IHR LAND ZU BRINGEN: Wir versuchen Orbot in so viele Sprachen wie möglich zu bringen. Derzeit gibt es folgende Sprachen: Arabic (العربية), Basque (Euskara), Bulgarian (български език), Chinese (中文简体), Czech (Čeština), Danish (Dansk), Dutch (Nederlands), English, Farsi (فارسی), French (Français), French (Français), German (Deutsch), Greek (Ελληνικά), Hebrew (עברית), Hungarian (Magyar Nyelv), Italian (Italiano), Japanese (日本語) Korean (조선말), Latvian (Latviešu), Malaysian (بهاس ملايو ), Polish (Polski), Portuguese (Português), Russian (Русский), Spanish (Español), Swedish (Svensk), and Vietnamese (Tiếng Việt).
-Falls Orbot derzeit nicht in ihrer Sprache verfügbar ist, freuen wir uns, wenn Sie sich unserer Übersetzergruppe anschließen: https://goo.gl/6hni4
+Falls Orbot derzeit nicht in ihrer Sprache verfügbar ist, freuen wir uns, wenn Sie sich unserer Übersetzergruppe anschließen: https://www.transifex.com/otf/orbot/
diff --git a/fastlane/metadata/android/es-ES/full_description.txt b/fastlane/metadata/android/es-ES/full_description.txt
index 845cee80..b07891ff 100644
--- a/fastlane/metadata/android/es-ES/full_description.txt
+++ b/fastlane/metadata/android/es-ES/full_description.txt
@@ -5,9 +5,9 @@ Orbot es una aplicación de proxy libre que da la posibilidad a otras aplicacion
Orbot es la única aplicación que crea una conexión verdaderamente privada a Internet. Como el New York Times escribe, "cuando una comunicación llega desde Tor, nunca puedes saber de dónde o de quién proviene". Tor ganó el Pioneer Award (Premio al Pionero) de 2012 de la Electronic Frontier Foundation (EEF, Fundación para las Fronteras Electrónicas).
NO ACEPTE SUSTITUTOS: Orbot es la manera más segura de usar Internet sobre Android. Punto. Orbot rebota su tráfico cifrado varias veces a través de ordenadores alrededor del mundo, en lugar de conectarlo a usted directamente, como hacen VPNs y proxys. Este proceso es un poco más largo, pero vale la pena la espera para obtener la privacidad y protección de identidad más fuertes disponibles.
-NAVEGACIÓN WEB PRIVADA: Úselo con Orweb, la forma más anónima de acceder a cualquier sitio web, incluso si normalmente está bloqueado, monitorizado, o en la web oculta. Consiga Orweb: http://goo.gl/PH3T91
-MENSAJERIA DE CHAT PRIVADO: Use Gibberbot con Orbot para chatear confidencialmente con cualquiera y en cualquier lugar, gratis. Consiga Gibberbot: http://goo.gl/8U8BQG
-PRIVACIDAD PARA APLICACIONES: Cualquier aplicación instalada puede usar Tor si tiene funciones de proxy, usando las opciones encontradas aquí: https://goo.gl/2OA1y Use Orbot con Twitter, o pruebe la búsqueda web privada con DuckDuckGo: https://goo.gl/lgh1p
+NAVEGACIÓN WEB PRIVADA: Úselo con Orweb, la forma más anónima de acceder a cualquier sitio web, incluso si normalmente está bloqueado, monitorizado, o en la web oculta. Consiga Orweb: https://play.google.com/store/apps/details?id=info.guardianproject.browser
+MENSAJERIA DE CHAT PRIVADO: Use Gibberbot con Orbot para chatear confidencialmente con cualquiera y en cualquier lugar, gratis. Consiga Gibberbot: https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+PRIVACIDAD PARA APLICACIONES: Cualquier aplicación instalada puede usar Tor si tiene funciones de proxy, usando las opciones encontradas aquí: https://guardianproject.info/apps/orbot/ Use Orbot con Twitter, o pruebe la búsqueda web privada con DuckDuckGo: https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
PRIVACIDAD PARA TODOS: Tor puede ayudarle a investigar confidencialmente a un competidor, eludir el bloqueo de Facebook en la escuela, o evitar un cortafuegos (`firewall`) para ver deportes en el trabajo.
PRIVACIDAD HECHA FÁCIL: Pruébelo por diversión, paseo interactivo: https://guardianproject.info/howto/browsefreely
@@ -24,4 +24,4 @@ CÓDIGO ABIERTO: Orweb es software libre. Puedes mirar el código fuente o ser p
ACERCA DE TOR: https://TorProject.org
CONTÁCTENOS: ¿Cree que deberíamos añadir una nueva función? ¿Encontró un error? ¡Por favor contáctenos! Envíenos un e-mail a support(a)guardianproject.info
AYÚDENOS A LLEVAR ORBOT A SU PAÍS: Estamos tratando de conseguir Orbot en tantos idiomas como sea posible. En este momento está en: Árabe (العربية), Vasco (Euskara), Búlgaro (български език), Chino (中文简体), Checo (Čeština), Danés (Dansk), Holandés (Nederlands), Inglés (English), Persa (فارسی), Francés (Français), Alemán (Deutsch), Griego (Ελληνικά), Hebreo (עברית), Húngaro (Magyar Nyelv), Italiano, Japonés (日本語) Koreano (조선말), Letón (Latviešu), Malayo (بهاس ملايو ), Polaco (Polski), Portugués (Português), Ruso (Русский), Español, Sueco (Svensk), y Vietnamita (Tiếng Việt).
-Si Orbot no está aún en su idioma, nos encantaría que usted se uniera a nuestro equipo de traducción: https://goo.gl/6hni4
+Si Orbot no está aún en su idioma, nos encantaría que usted se uniera a nuestro equipo de traducción: https://www.transifex.com/otf/orbot/
diff --git a/fastlane/metadata/android/fr-FR/full_description.txt b/fastlane/metadata/android/fr-FR/full_description.txt
index 27ee92da..fddd74e7 100644
--- a/fastlane/metadata/android/fr-FR/full_description.txt
+++ b/fastlane/metadata/android/fr-FR/full_description.txt
@@ -5,9 +5,9 @@ Orbot est un proxy libre et gratuit qui permet à d'autres applications d'accéd
Orbot est la seule application qui crée une connexion à Internet réellement privée. Pour citer le New York Times : « quand une communication arrive par Tor, on ne peut jamais savoir d'où, ou de qui elle vient. ». Tor a gagné le Pioneer Award 2012 de l'Electronic Frontier Foundation (EFF).
REFUSEZ LES PÂLES COPIES : Orbot est la manière la plus sûre d'utiliser Internet sur Android, point à la ligne. Orbot fait rebondir votre trafic chiffré plusieurs fois au travers de différents ordinateurs répartis de par le monde, au lieu de vous connecter directement comme le font les VPN et proxies. Le processus est un peu plus long, mais attendre un peu pour la meilleure protection possible de la vie privée et de votre identité en valent la peine.
-NAVIGATION INTERNET PRIVÉE : Utilisé avec Orweb, Orbot est la manière la plus anonyme d'accéder à n'importe quel site web, même si celui-ci est habituellement bloqué, surveillé ou fait partie du web caché. Téléchargez Orweb : https://goo.gl/s3mLa
-MESSAGERIE INSTANTANÉE PRIVÉE : Utilisez Gibberbot avec Orbot pour discuter en toute confidentialité avec qui que ce soit, où que ce soit, librement et gratuitement. Téléchargez Gibberbot : https://goo.gl/O3FfS
-RENDEZ VOS APPLICATIONS PRIVÉES : Toute application installée peut utiliser Tor si elle est capable d'utiliser un proxy, en utilisant les réglages fournis ici : https://goo.gl/2OA1y Utilisez Orbot avec Twitter ou essayez un moteur de recherche privé comme DuckDuckGo : https://goo.gl/lgh1p
+NAVIGATION INTERNET PRIVÉE : Utilisé avec Orweb, Orbot est la manière la plus anonyme d'accéder à n'importe quel site web, même si celui-ci est habituellement bloqué, surveillé ou fait partie du web caché. Téléchargez Orweb : https://play.google.com/store/apps/details?id=info.guardianproject.browser
+MESSAGERIE INSTANTANÉE PRIVÉE : Utilisez Gibberbot avec Orbot pour discuter en toute confidentialité avec qui que ce soit, où que ce soit, librement et gratuitement. Téléchargez Gibberbot : https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+RENDEZ VOS APPLICATIONS PRIVÉES : Toute application installée peut utiliser Tor si elle est capable d'utiliser un proxy, en utilisant les réglages fournis ici : https://guardianproject.info/apps/orbot/ Utilisez Orbot avec Twitter ou essayez un moteur de recherche privé comme DuckDuckGo : https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
LA VIE PRIVÉE POUR TOUS : Tor peut vous aider à vous renseigner confidentiellement sur un concurrent, contourner le blocage de Facebook à l'école ou éviter un parre-feu en entreprise pour regarder les diffusions sportives.
LA VIE PRIVÉE FACILE : Besoin d'aide ? Regardez notre sympathique tutoriel interactif : https://guardianproject.info/howto/browsefreely
OFFICIEL : Orbot est la version officielle du réseau Tor pour Android.
@@ -23,4 +23,4 @@ OPEN-SOURCE : Orbot est un logiciel libre. Jeter un œil à notre code source o
À PROPOS DE TOR: https://TorProject.org
NOUS JOINDRE : Il manque votre fonction préférée ? Vous avez trouvé un bug énervant ? Nous serions ravi d'entendre ce que vous avez à dire ! Envoyez-nous un mail : root(a)guardianproject.info
AIDEZ-NOUS À TRADUIRE ORBOT DANS VOTRE LANGUE : Nous voulons rendre Orbot accessible à autant de pays que possibles.
-Si Orbot n'existe pas encore dans votre langue nous serions ravi de vous voir rejoindre notre équipe de traduction : https://goo.gl/6hni4
+Si Orbot n'existe pas encore dans votre langue nous serions ravi de vous voir rejoindre notre équipe de traduction : https://www.transifex.com/otf/orbot/
diff --git a/fastlane/metadata/android/pt-BR/full_description.txt b/fastlane/metadata/android/pt-BR/full_description.txt
index 81a66df9..7f161446 100644
--- a/fastlane/metadata/android/pt-BR/full_description.txt
+++ b/fastlane/metadata/android/pt-BR/full_description.txt
@@ -5,9 +5,9 @@ Orbot é um aplicativo de proxy livre que permite outras aplicações usarem a i
Orbot é o único aplicativo que cria uma conexão verdadeiramente privada com a internet. Como o New York Times descreveu: "Quando uma comunicação chega a partir da rede Tor, você pode nunca saber de onde ou de quem veio." Tor ganhou em 2012 o prêmio Electronic Frontier Foundation (EFF) Pioneer Award.
NÃO ACEITE NENHUM SUBSTITUTO: Orbot é a forma mais segura de usar a Internet em dispositivos com o sistema operacional Android (Tvs, tablets, celulares e etc ). Anonimato. Orbot permuta seu tráfego criptografado várias vezes entre computadores espalhados geográfica em todo o mundo, em vez de conectá-lo diretamente ao seu destino, assim como fazem as VPNs e proxies. Esse processo demora um pouco mais, mas para ter privacidade e proteção de identidade vale a pena esperar.
-NAVEGAÇÃO WEB PRIVADA: Utilize o Orweb, a maneira mais anônima para acessar qualquer site, mesmo que seja normalmente bloqueado, monitorado, ou um serviço oculto na rede tor. Obtenha o Orweb na seguinte URL: https://goo.gl/s3mLa
-CHAT COM MENSAGENS PRIVADAS: Use o Gibberbot com Orbot para conversar confidencialmente com qualquer um, em qualquer lugar gratuitamente. Obter Gibberbot: https://goo.gl/O3FfS
-PRIVACIDADE PARA APLICATIVOS: Qualquer aplicativo instalado pode usar o Tor se ele tiver a possibilidade de sair por um proxy, usando as configurações encontradas aqui: https://goo.gl/2OA1y Use o Orbot com o Twitter, ou tente pesquisas privadas com DuckDuckGo: https://goo.gl/lgh1p
+NAVEGAÇÃO WEB PRIVADA: Utilize o Orweb, a maneira mais anônima para acessar qualquer site, mesmo que seja normalmente bloqueado, monitorado, ou um serviço oculto na rede tor. Obtenha o Orweb na seguinte URL: https://play.google.com/store/apps/details?id=info.guardianproject.browser
+CHAT COM MENSAGENS PRIVADAS: Use o Gibberbot com Orbot para conversar confidencialmente com qualquer um, em qualquer lugar gratuitamente. Obter Gibberbot: https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+PRIVACIDADE PARA APLICATIVOS: Qualquer aplicativo instalado pode usar o Tor se ele tiver a possibilidade de sair por um proxy, usando as configurações encontradas aqui: https://guardianproject.info/apps/orbot/ Use o Orbot com o Twitter, ou tente pesquisas privadas com DuckDuckGo: https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
PRIVACIDADE PARA TODOS: Tor pode ajudá-lo a pesquisar confidencialmente um concorrente, contornar o bloqueio do Facebook na escola, ou contornar um firewall para assistir esportes no trabalho.
UMA FORMA FÁCIL DE TER PRIVACIDADE: Confira a nossa diversão, passo a passo de modo interativo: https://guardianproject.info/howto/browsefreely
É OFICIAL: Esta é uma versão oficial do serviço de roteamento cebola Tor para o Android.
@@ -23,4 +23,4 @@ CÓDIGO ABERTO: Orbot é software livre. Dê uma olhada em nosso código fonte,
SOBRE O PROJETO Tor: https://TorProject.org
MANDE-NOS UMA MENSAGEM: Será que estamos desprezando o seu recurso favorito? Encontrou algum bug chato? Gostaríamos muito de ouvir de você! Envie-nos um e-mail: root(a)guardianproject.info
AJUDE-NO
-Se Orbot ainda não está na sua língua, nós adoraríamos que você participasse da nossa equipe de tradução: https://goo.gl/6hni4
+Se Orbot ainda não está na sua língua, nós adoraríamos que você participasse da nossa equipe de tradução: https://www.transifex.com/otf/orbot/
diff --git a/fastlane/metadata/android/pt-PT/full_description.txt b/fastlane/metadata/android/pt-PT/full_description.txt
index 81a66df9..7f161446 100644
--- a/fastlane/metadata/android/pt-PT/full_description.txt
+++ b/fastlane/metadata/android/pt-PT/full_description.txt
@@ -5,9 +5,9 @@ Orbot é um aplicativo de proxy livre que permite outras aplicações usarem a i
Orbot é o único aplicativo que cria uma conexão verdadeiramente privada com a internet. Como o New York Times descreveu: "Quando uma comunicação chega a partir da rede Tor, você pode nunca saber de onde ou de quem veio." Tor ganhou em 2012 o prêmio Electronic Frontier Foundation (EFF) Pioneer Award.
NÃO ACEITE NENHUM SUBSTITUTO: Orbot é a forma mais segura de usar a Internet em dispositivos com o sistema operacional Android (Tvs, tablets, celulares e etc ). Anonimato. Orbot permuta seu tráfego criptografado várias vezes entre computadores espalhados geográfica em todo o mundo, em vez de conectá-lo diretamente ao seu destino, assim como fazem as VPNs e proxies. Esse processo demora um pouco mais, mas para ter privacidade e proteção de identidade vale a pena esperar.
-NAVEGAÇÃO WEB PRIVADA: Utilize o Orweb, a maneira mais anônima para acessar qualquer site, mesmo que seja normalmente bloqueado, monitorado, ou um serviço oculto na rede tor. Obtenha o Orweb na seguinte URL: https://goo.gl/s3mLa
-CHAT COM MENSAGENS PRIVADAS: Use o Gibberbot com Orbot para conversar confidencialmente com qualquer um, em qualquer lugar gratuitamente. Obter Gibberbot: https://goo.gl/O3FfS
-PRIVACIDADE PARA APLICATIVOS: Qualquer aplicativo instalado pode usar o Tor se ele tiver a possibilidade de sair por um proxy, usando as configurações encontradas aqui: https://goo.gl/2OA1y Use o Orbot com o Twitter, ou tente pesquisas privadas com DuckDuckGo: https://goo.gl/lgh1p
+NAVEGAÇÃO WEB PRIVADA: Utilize o Orweb, a maneira mais anônima para acessar qualquer site, mesmo que seja normalmente bloqueado, monitorado, ou um serviço oculto na rede tor. Obtenha o Orweb na seguinte URL: https://play.google.com/store/apps/details?id=info.guardianproject.browser
+CHAT COM MENSAGENS PRIVADAS: Use o Gibberbot com Orbot para conversar confidencialmente com qualquer um, em qualquer lugar gratuitamente. Obter Gibberbot: https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+PRIVACIDADE PARA APLICATIVOS: Qualquer aplicativo instalado pode usar o Tor se ele tiver a possibilidade de sair por um proxy, usando as configurações encontradas aqui: https://guardianproject.info/apps/orbot/ Use o Orbot com o Twitter, ou tente pesquisas privadas com DuckDuckGo: https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
PRIVACIDADE PARA TODOS: Tor pode ajudá-lo a pesquisar confidencialmente um concorrente, contornar o bloqueio do Facebook na escola, ou contornar um firewall para assistir esportes no trabalho.
UMA FORMA FÁCIL DE TER PRIVACIDADE: Confira a nossa diversão, passo a passo de modo interativo: https://guardianproject.info/howto/browsefreely
É OFICIAL: Esta é uma versão oficial do serviço de roteamento cebola Tor para o Android.
@@ -23,4 +23,4 @@ CÓDIGO ABERTO: Orbot é software livre. Dê uma olhada em nosso código fonte,
SOBRE O PROJETO Tor: https://TorProject.org
MANDE-NOS UMA MENSAGEM: Será que estamos desprezando o seu recurso favorito? Encontrou algum bug chato? Gostaríamos muito de ouvir de você! Envie-nos um e-mail: root(a)guardianproject.info
AJUDE-NO
-Se Orbot ainda não está na sua língua, nós adoraríamos que você participasse da nossa equipe de tradução: https://goo.gl/6hni4
+Se Orbot ainda não está na sua língua, nós adoraríamos que você participasse da nossa equipe de tradução: https://www.transifex.com/otf/orbot/
diff --git a/fastlane/metadata/android/tr-TR/full_description.txt b/fastlane/metadata/android/tr-TR/full_description.txt
index c67400e0..d7d29bd7 100644
--- a/fastlane/metadata/android/tr-TR/full_description.txt
+++ b/fastlane/metadata/android/tr-TR/full_description.txt
@@ -5,9 +5,9 @@ Orbot başka uygulamaların interneti daha güvenli olarak kullanmasını sağla
Orbot gerçekten gizli internet bağlantısı kuran tek uygulamadır. New York Times'ın yazdığı gibi “eğer bir mesaj Tor Ağı üzerinden ulaşıyorsa kimden veya nereden geldiğini bilmek mümkün değil”. Tor 2012'de Electronic Frontier Foundation (EFF) Pioneer Award ile ödüllendirilmiştir.
ALTERNATİF KABUL ETMEYİN: Orbot Android sisteminde interneti kullanmanın en güvenli yoludur. Nokta. Orbot doğrudan VPN veya Proxy sunucularına bağlanmaktan farklı olarak şifrelenmiş internet trafiğinizi dünya üzerindeki pek çok başka bilgisayarlardan geçirerek izlenmenizi ve sansürü engeller. Bu yöntem biraz daha zaman alır, ancak en güçlü güvenlik ve gizliliğinizin korunması biraz beklemeye değer.
-İNTERNETTE GİZLİCE DOLAŞIN: Orweb ile birlikte kullanıldığında herhangi bir web sitesi sansürlenmiş, gözetim altında veya gizli internette olsa dahi ulaşmanızı sağlar. Orweb'i şuradan indirebilirsiniz: https://goo.gl/s3mLa
-GİZLİ MESAJLAŞIN: Gibberbot ile birlikte kullanıldığında istediğiniz kişiyle istediğiniz yerde ücretsiz mesajlaşın. Gibberbot'u şuradan indirebilirsiniz: https://goo.gl/O3FfS
-DİĞER UYGULAMAR İÇİN GİZLİLİK: Kullandığınız bütün uygulamalar proxy özellikleri varsa Tor ağını kullanabilir, şuradaki önerileri takip edin: https://goo.gl/2OA1y Orbot'u Twitter uygulaması ile kullanın, ya da gizli web araması yapmak için DuckDuckGo kullanın: https://goo.gl/lgh1p
+İNTERNETTE GİZLİCE DOLAŞIN: Orweb ile birlikte kullanıldığında herhangi bir web sitesi sansürlenmiş, gözetim altında veya gizli internette olsa dahi ulaşmanızı sağlar. Orweb'i şuradan indirebilirsiniz: https://play.google.com/store/apps/details?id=info.guardianproject.browser
+GİZLİ MESAJLAŞIN: Gibberbot ile birlikte kullanıldığında istediğiniz kişiyle istediğiniz yerde ücretsiz mesajlaşın. Gibberbot'u şuradan indirebilirsiniz: https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+DİĞER UYGULAMAR İÇİN GİZLİLİK: Kullandığınız bütün uygulamalar proxy özellikleri varsa Tor ağını kullanabilir, şuradaki önerileri takip edin: https://guardianproject.info/apps/orbot/ Orbot'u Twitter uygulaması ile kullanın, ya da gizli web araması yapmak için DuckDuckGo kullanın: https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
HERKES İÇİN GİZLİLİK: Tor rakip şirket hakkında fark edilmeden araştırma yapmanıza, okuldaki Facebook engellemesini aşmanıza, ya da iş yerinizde spor maçlarını izlemek istediğinizde güvenlik duvarını aşmanıza yardımcı olur.
GİZLİLİK HİÇ BU KADAR KOLAY OLMAMIŞTI: Eğlenceli ve interaktif kullanım kılavuzumuza şu adresten ulaşabilirsiniz: https://guardianproject.info/howto/browsefreely
RESMİ UYGULAMA: Orbot Tor onion routing service'in Android'deki resmi uygulamasıdır.
@@ -23,4 +23,4 @@ AÇIK KAYNAK KODU: Orbot ücretsiz bir uygulamadır. Kaynak kodumuza bakabilir,
TOR HAKKINDA: https://TorProject.org
BİZE YAZIN: İstediğiniz bir özellik eksik mi? Uygulamada bir hata mı buldunuz? Lütfen bize bildirin! Sizden geri bildirim almak bizi çok mutlu eder. Bize e-posta gönderebilirsiniz: root(a)guardianproject.info
ORBOT'U SİZİN ÜLKENİZE ULAŞTIRMAMIZA YARDIM EDİN: Orbot uygulamasını mümkün olan tüm dillere çevirmeye çalışıyoruz. Şimdilik bu dillere çevrildi: Arabic (العربية), Basque (Euskara), Bulgarian (български език), Chinese (中文简体), Czech (Čeština), Danish (Dansk), Dutch (Nederlands), English, Farsi (فارسی), French (Français), French (Français), German (Deutsch), Greek (Ελληνικά), Hebrew (עברית), Hungarian (Magyar Nyelv), Italian (Italiano), Japanese (日本語) Korean (조선말), Latvian (Latviešu), Malaysian (بهاس ملايو ), Polish (Polski), Portuguese (Português), Turkish (Türkçe), Russian (Русский), Spanish (Español), Swedish (Svensk), and Vietnamese (Tiếng Việt).
-Eğer Orbot sizin dilinizde yoksa, çeviri ekibimize katılmanız bizi çok mutlu eder: https://goo.gl/6hni4
+Eğer Orbot sizin dilinizde yoksa, çeviri ekibimize katılmanız bizi çok mutlu eder: https://www.transifex.com/otf/orbot/
diff --git a/fastlane/metadata/android/vi/full_description.txt b/fastlane/metadata/android/vi/full_description.txt
index 3a809355..61d63817 100644
--- a/fastlane/metadata/android/vi/full_description.txt
+++ b/fastlane/metadata/android/vi/full_description.txt
@@ -5,9 +5,9 @@ Orbot là một ứng dụng proxy miễn phí nó trao quyền cho các ứng d
Orbot là ứng dụng duy nhất tạo ra một kết nối internet thực sự. Như tờ New York Times viết, "khi một thông tin liên lạc đến từ Tor, bạn có thể không bao giờ biết ở đâu hoặc ai đó từ đâu." Tor giành Electronic Frontier 2012 Foundation (EFF) giải Tiên phong.
CHẤP NHẬN KHÔNG THAY THẾ: Orbot là cách an toàn nhất để sử dụng Internet trên Android. Giai đoạn. Orbot bị trả lại mã hóa giao thông của bạn nhiều lần thông qua các máy tính trên toàn thế giới, thay vì kết nối bạn trực tiếp như VPN và proxy. Quá trình này mất lâu hơn một chút, nhưng sự riêng tư mạnh mẽ và bảo vệ danh tính có sẵn là đáng để chờ đợi.
-CÁ NHÂN LƯỚT WEB: Sử dụng với Orweb, cách vô danh nhất để truy cập bất kỳ trang web, ngay cả khi nó thường bị chặn, theo dõi, hoặc trên các trang web ẩn. Vào Orweb: https://goo.gl/s3mLa
-thông báo chat cá nhân: Sử dụng Gibberbot với Orbot để trò chuyện bí mật với bất cứ ai, bất cứ nơi nào miễn phí. vào Gibberbot: https://goo.gl/O3FfS
-BẢO MẬT cho các ứng dụng: Bất kỳ ứng dụng được cài đặt có thể sử dụng Tor nếu nó có một tính năng proxy, sử dụng các thiết lập tìm thấy ở đây: https://goo.gl/2OA1y Sử dụng Orbot với Twitter, hoặc cố gắng web tin tìm kiếm với DuckDuckGo: https://goo.gl/lgh1p
+CÁ NHÂN LƯỚT WEB: Sử dụng với Orweb, cách vô danh nhất để truy cập bất kỳ trang web, ngay cả khi nó thường bị chặn, theo dõi, hoặc trên các trang web ẩn. Vào Orweb: https://play.google.com/store/apps/details?id=info.guardianproject.browser
+thông báo chat cá nhân: Sử dụng Gibberbot với Orbot để trò chuyện bí mật với bất cứ ai, bất cứ nơi nào miễn phí. vào Gibberbot: https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.…
+BẢO MẬT cho các ứng dụng: Bất kỳ ứng dụng được cài đặt có thể sử dụng Tor nếu nó có một tính năng proxy, sử dụng các thiết lập tìm thấy ở đây: https://guardianproject.info/apps/orbot/ Sử dụng Orbot với Twitter, hoặc cố gắng web tin tìm kiếm với DuckDuckGo: https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android
BẢO MẬT CHO MỌI NGƯỜI: Tor có thể giúp bạn bảo mật nghiên cứu đối thủ cạnh tranh, có được xung quanh khối Facebook tại trường học, hoặc phá vỡ một bức tường lửa để xem thể thao tại nơi làm việc.
BẢO MẬT MADE EASY: Kiểm tra niềm vui của chúng tôi, thông qua: https://guardianproject.info/howto/browsefreely
Đó là chính thức: Đây là phiên bản chính thức của dịch vụ định tuyến hành Tor cho Android.
@@ -23,4 +23,4 @@ Mở mã nguồn: Orbot là phần mềm miễn phí. Hãy xem mã nguồn của
VỀ DỰ ÁN TOR: https://TorProject.org
THÔNG ĐIỆP : Có phải chúng ta thiếu tính năng yêu thích của bạn? Tìm thấy một lỗi gây phiền nhiễu? Chúng tôi muốn nghe từ bạn! Gửi email cho chúng tôi: root(a)guardianproject.info
Trợ giúp của chúng tôi MANG ORBOT quốc gia của bạn: Chúng tôi đang cố gắng để có được Orbot thành nhiều ngôn ngữ càng tốt. Ngay bây giờ nó trong
-Nếu Orbot không có trong ngôn ngữ của bạn nhưng, chúng tôi rất muốn có bạn tham gia đội ngũ dịch thuật của chúng tôi: https://goo.gl/6hni4
+Nếu Orbot không có trong ngôn ngữ của bạn nhưng, chúng tôi rất muốn có bạn tham gia đội ngũ dịch thuật của chúng tôi: https://www.transifex.com/otf/orbot/
1
0
commit e6ff669828c95a1f645f06e20c88fadfec60ea44
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Wed Sep 4 08:24:02 2019 -0400
improve app-mini onboarding
---
app-mini/build.gradle | 1 +
app-mini/src/debug/AndroidManifest.xml | 4 +-
app-mini/src/main/AndroidManifest.xml | 2 +-
.../torproject/android/mini/MiniMainActivity.java | 356 +++++++++++----------
.../android/mini/ui/AppManagerActivity.java | 50 ++-
.../mini/ui/onboarding/OnboardingActivity.java | 39 +--
.../src/main/res/layout/custom_slide_big_text.xml | 32 +-
app-mini/src/main/res/layout/layout_apps_item.xml | 14 +-
.../src/main/res/layout/layout_apps_listing.xml | 56 ++++
app-mini/src/main/res/layout/layout_main.xml | 19 +-
app-mini/src/main/res/values/colors.xml | 1 +
11 files changed, 309 insertions(+), 265 deletions(-)
diff --git a/app-mini/build.gradle b/app-mini/build.gradle
index 8f071b98..0ffb405d 100644
--- a/app-mini/build.gradle
+++ b/app-mini/build.gradle
@@ -98,6 +98,7 @@ android {
dependencies {
implementation project(':orbotservice')
implementation 'com.github.apl-devs:appintro:v4.2.2'
+ implementation 'com.android.support:palette-v7:28.0.0'
implementation 'com.github.javiersantos:AppUpdater:2.7'
androidTestImplementation "tools.fastlane:screengrab:1.2.0"
}
diff --git a/app-mini/src/debug/AndroidManifest.xml b/app-mini/src/debug/AndroidManifest.xml
index cd6d8b66..b3444211 100644
--- a/app-mini/src/debug/AndroidManifest.xml
+++ b/app-mini/src/debug/AndroidManifest.xml
@@ -77,7 +77,9 @@
<activity
android:name=".ui.AppManagerActivity"
android:label="@string/app_name"
- android:theme="@style/Theme.AppCompat" />
+
+ android:theme="@style/Theme.AppCompat.Light"
+ />
<service
android:name="org.torproject.android.service.TorService"
diff --git a/app-mini/src/main/AndroidManifest.xml b/app-mini/src/main/AndroidManifest.xml
index 94f3f119..18b8a6f2 100644
--- a/app-mini/src/main/AndroidManifest.xml
+++ b/app-mini/src/main/AndroidManifest.xml
@@ -69,7 +69,7 @@
<activity
android:name=".ui.AppManagerActivity"
android:label="@string/app_name"
- android:theme="@style/Theme.AppCompat" />
+ android:theme="@style/Theme.AppCompat.Light" />
<service
android:name="org.torproject.android.service.TorService"
diff --git a/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
index 4ab9939a..c495a6a5 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
@@ -3,6 +3,7 @@
package org.torproject.android.mini;
+import android.Manifest;
import android.app.ActivityManager;
import android.app.ActivityManager.RunningServiceInfo;
import android.app.AlertDialog;
@@ -13,8 +14,15 @@ import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.Canvas;
+import android.graphics.drawable.AdaptiveIconDrawable;
+import android.graphics.drawable.BitmapDrawable;
+import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
@@ -22,6 +30,9 @@ import android.os.Message;
import android.support.v4.content.LocalBroadcastManager;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.AppCompatActivity;
+import android.support.v7.graphics.Palette;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.SwitchCompat;
import android.support.v7.widget.Toolbar;
import android.text.Html;
@@ -34,6 +45,7 @@ import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnLongClickListener;
+import android.view.ViewGroup;
import android.view.animation.AccelerateInterpolator;
import android.widget.Button;
import android.widget.CompoundButton;
@@ -57,6 +69,7 @@ import org.torproject.android.service.TorService;
import org.torproject.android.service.TorServiceConstants;
import org.torproject.android.service.util.Prefs;
import org.torproject.android.service.util.TorServiceUtils;
+import org.torproject.android.service.vpn.TorifiedApp;
import org.torproject.android.service.vpn.VpnConstants;
import org.torproject.android.service.vpn.VpnPrefs;
@@ -68,6 +81,9 @@ import java.net.URLDecoder;
import java.net.URLEncoder;
import java.text.NumberFormat;
import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
import java.util.Locale;
import java.util.StringTokenizer;
@@ -111,11 +127,9 @@ public class MiniMainActivity extends AppCompatActivity
private static final int MESSAGE_PORTS = 3;
- public final static String INTENT_ACTION_REQUEST_HIDDEN_SERVICE = "org.torproject.android.REQUEST_HS_PORT";
- public final static String INTENT_ACTION_REQUEST_START_TOR = "org.torproject.android.START_TOR";
-
-
+ private RecyclerView rv;
+ ArrayList<String> pkgIds = new ArrayList<>();
/**
* Called when the activity is first created.
@@ -269,23 +283,6 @@ public class MiniMainActivity extends AppCompatActivity
uploadText.setText(formatTotal(0) + " \u2191");
- /**
- mBtnStart =(Button)findViewById(R.id.btnStart);
- mBtnStart.setOnClickListener(new View.OnClickListener()
- {
- @Override
- public void onClick(View v) {
-
- if (torStatus == TorServiceConstants.STATUS_OFF) {
-// lblStatus.setText(getString(R.string.status_starting_up));
- startTor();
- } else {
-// lblStatus.setText(getString(R.string.status_shutting_down));
- stopTor();
- }
- }
- });**/
-
mBtnVPN = (SwitchCompat)findViewById(R.id.btnVPN);
boolean useVPN = Prefs.useVpn();
@@ -304,76 +301,20 @@ public class MiniMainActivity extends AppCompatActivity
});
- }
-
- /**
- private void setCountrySpinner ()
- {
- String currentExit = Prefs.getExitNodes();
- if (currentExit.length() > 4)
- {
- //someone put a complex value in, so let's disable
- ArrayList<String> cList = new ArrayList<String>();
- cList.add(0, currentExit);
- ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, cList);
- spnCountries.setAdapter(adapter);
- spnCountries.setEnabled(false);
- }
- else {
- int selIdx = -1;
-
- ArrayList<String> cList = new ArrayList<String>();
- cList.add(0, getString(R.string.vpn_default_world));
-
- for (int i = 0; i < COUNTRY_CODES.length; i++) {
- Locale locale = new Locale("", COUNTRY_CODES[i]);
- cList.add(locale.getDisplayCountry());
+ rv = findViewById(R.id.rv);
+ LinearLayoutManager llm = new LinearLayoutManager(this);
+ llm.setOrientation(LinearLayoutManager.VERTICAL);
+ rv.setLayoutManager(llm);
- if (currentExit.contains(COUNTRY_CODES[i]))
- selIdx = i + 1;
+ /**
+ findViewById(R.id.btnAdd).setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ startActivityForResult(new Intent(MiniMainActivity.this, AppManagerActivity.class), REQUEST_VPN_APPS_SELECT);
}
+ });**/
+ }
- ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, cList);
- spnCountries.setAdapter(adapter);
-
- if (selIdx > 0)
- spnCountries.setSelection(selIdx,true);
-
- spnCountries.setOnItemSelectedListener(new OnItemSelectedListener() {
-
- int mOldPosition = spnCountries.getSelectedItemPosition();
-
- @Override
- public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
- // your code here
-
- if (mOldPosition == position)
- return;
-
- mOldPosition = position; //new position!
-
- String country = null;
-
- if (position == 0)
- country = "";
- else
- country = '{' + COUNTRY_CODES[position - 1] + '}';
-
- Intent torService = new Intent(MiniMainActivity.this, TorService.class);
- torService.setAction(TorServiceConstants.CMD_SET_EXIT);
- torService.putExtra("exit", country);
- startService(torService);
-
- }
-
- @Override
- public void onNothingSelected(AdapterView<?> parentView) {
- // your code here
- }
-
- });
- }
- }**/
@Override
protected void attachBaseContext(Context base) {
@@ -552,7 +493,6 @@ public class MiniMainActivity extends AppCompatActivity
} else
stopVpnService();
- addAppShortcuts();
}
@@ -688,9 +628,14 @@ public class MiniMainActivity extends AppCompatActivity
else if (request == REQUEST_VPN_APPS_SELECT)
{
if (response == RESULT_OK &&
- torStatus == TorServiceConstants.STATUS_ON)
+ torStatus == TorServiceConstants.STATUS_ON) {
refreshVPNApps();
+ String newPkgId = data.getStringExtra("package");
+ //add new entry
+
+ }
+
}
IntentResult scanResult = IntentIntegrator.parseActivityResult(request, response, data);
@@ -794,12 +739,19 @@ public class MiniMainActivity extends AppCompatActivity
else
updateStatus(null, torStatus);
- addAppShortcuts();
-
//now you can handle the intents properly
handleIntents();
- }
+ pkgIds.clear();
+ String tordAppString = mPrefs.getString(PREFS_KEY_TORIFIED, "");
+ StringTokenizer st = new StringTokenizer(tordAppString, "|");
+ while (st.hasMoreTokens())
+ pkgIds.add(st.nextToken());
+
+ RVAdapter adapter = new RVAdapter();
+ rv.setAdapter(adapter);
+
+ }
AlertDialog aDialog = null;
@@ -841,7 +793,7 @@ public class MiniMainActivity extends AppCompatActivity
* Update the layout_main UI based on the status of {@link TorService}.
* {@code torServiceMsg} must never be {@code null}
*/
- private synchronized void updateStatus(String torServiceMsg, String newTorStatus) {
+ private void updateStatus(String torServiceMsg, String newTorStatus) {
if (!TextUtils.isEmpty(torServiceMsg))
{
@@ -998,7 +950,6 @@ public class MiniMainActivity extends AppCompatActivity
if (torStatus == null && newTorStatus != null) //first time status
{
- findViewById(R.id.frameMain).setVisibility(View.VISIBLE);
updateStatus(log, newTorStatus);
}
@@ -1077,91 +1028,162 @@ public class MiniMainActivity extends AppCompatActivity
// lblStatus.setText(getString(R.string.newnym));
}
- private void addAppShortcuts() {
-
- LinearLayout llBoxShortcuts = findViewById(R.id.frameMain);
-
- PackageManager pMgr = getPackageManager();
-
- llBoxShortcuts.removeAllViews();
-
-
- if (Prefs.useVpn()) {
- ArrayList<String> pkgIds = new ArrayList<>();
- String tordAppString = mPrefs.getString(PREFS_KEY_TORIFIED, "");
-
- if (TextUtils.isEmpty(tordAppString)) {
- addFullDeviceVpnView(llBoxShortcuts);
- } else {
- StringTokenizer st = new StringTokenizer(tordAppString, "|");
- while (st.hasMoreTokens() && pkgIds.size() < 4)
- pkgIds.add(st.nextToken());
- int appsAdded = 0;
- for (final String pkgId : pkgIds) {
- try {
- ApplicationInfo aInfo = getPackageManager().getApplicationInfo(pkgId, 0);
- // skip disabled packages
- if (!aInfo.enabled) continue;
- ImageView iv = new ImageView(this);
- LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
- params.setMargins(3, 3, 3, 3);
- iv.setLayoutParams(params);
- iv.setImageDrawable(pMgr.getApplicationIcon(pkgId));
-
- iv.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- openBrowser(URL_TOR_CHECK, false, pkgId);
- }
- });
-
- llBoxShortcuts.addView(iv);
- appsAdded++;
- } catch (Exception e) {
- //package not installed?
+
+ public class RVAdapter extends RecyclerView.Adapter<RVAdapter.AppViewHolder>{
+
+
+ public class AppViewHolder extends RecyclerView.ViewHolder {
+
+ ImageView iv;
+ TextView tv;
+ View parent;
+
+ AppViewHolder(View itemView) {
+ super(itemView);
+ parent = itemView;
+ iv = itemView.findViewById(R.id.itemicon);
+ tv = itemView.findViewById(R.id.itemtext);
+
+ }
+
+ }
+
+ @Override
+ public int getItemCount() {
+
+ return pkgIds.size()+1;
+ }
+
+ @Override
+ public AppViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
+
+ View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.layout_apps_listing, viewGroup, false);
+ final AppViewHolder avh = new AppViewHolder(v);
+
+
+
+ return avh;
+ }
+
+ @Override
+ public void onBindViewHolder(final AppViewHolder avh, int i) {
+
+
+ if (i < getItemCount()-1) {
+ String pkgId = pkgIds.get(i);
+
+ ApplicationInfo aInfo = null;
+ try {
+ aInfo = getPackageManager().getApplicationInfo(pkgId, 0);
+ TorifiedApp app = getApp(aInfo);
+
+ avh.tv.setText(app.getName());
+ avh.iv.setImageDrawable(app.getIcon());
+
+ Palette.generateAsync(drawableToBitmap(app.getIcon()), new Palette.PaletteAsyncListener() {
+ public void onGenerated(Palette palette) {
+ // Do something with colors...
+
+ int color = palette.getVibrantColor(0x000000);
+ avh.parent.setBackgroundColor(color);
+
}
- }
- if (appsAdded == 0) {
+ });
- addFullDeviceVpnView(llBoxShortcuts);
- }
+ avh.iv.setVisibility(View.VISIBLE);
+
+ avh.parent.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+
+
+ }
+ });
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
}
}
else
{
- TextView tv = new TextView(this);
- LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
- params.setMargins(12, 3, 3, 3);
- tv.setLayoutParams(params);
- tv.setText(R.string.vpn_disabled);
- llBoxShortcuts.addView(tv);
+ avh.iv.setVisibility(View.INVISIBLE);
+ avh.tv.setText("+ ADD APP");
+ avh.parent.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+
+ showAppPicker();
+
+ }
+ });
}
+ }
+
+ private TorifiedApp getApp (ApplicationInfo aInfo)
+ {
+ TorifiedApp app = new TorifiedApp();
- //now add app edit/add shortcut
- ImageView iv = new ImageView(this);
- LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
- params.setMargins(3, 3, 3, 3);
- iv.setLayoutParams(params);
- iv.setImageDrawable(getResources().getDrawable(R.drawable.ic_settings_white_24dp));
- llBoxShortcuts.addView(iv);
- iv.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- startActivityForResult(new Intent(MiniMainActivity.this, AppManagerActivity.class), REQUEST_VPN_APPS_SELECT);
- }
- });
+ try
+ {
+ app.setName(getPackageManager().getApplicationLabel(aInfo).toString());
+ }
+ catch (Exception e)
+ {
+ return null;
+ }
+
+
+ app.setEnabled(aInfo.enabled);
+ app.setUid(aInfo.uid);
+ app.setUsername(getPackageManager().getNameForUid(app.getUid()));
+ app.setProcname(aInfo.processName);
+ app.setPackageName(aInfo.packageName);
+
+ app.setTorified(true);
+
+ try {
+ app.setIcon(getPackageManager().getApplicationIcon(app.getPackageName()));
+
+
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
+ }
+ return app;
+ }
+
}
- private void addFullDeviceVpnView(LinearLayout llBoxShortcuts) {
- TextView tv = new TextView(this);
- LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
- params.setMargins(12, 3, 3, 3);
- tv.setLayoutParams(params);
- tv.setText(R.string.full_device_vpn);
- llBoxShortcuts.addView(tv);
+ public void showAppPicker ()
+ {
+ startActivityForResult(new Intent(MiniMainActivity.this, AppManagerActivity.class), REQUEST_VPN_APPS_SELECT);
+
+ }
+
+
+
+ public static Bitmap drawableToBitmap (Drawable drawable) {
+ Bitmap bitmap = null;
+
+ if (drawable instanceof BitmapDrawable) {
+ BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
+ if(bitmapDrawable.getBitmap() != null) {
+ return bitmapDrawable.getBitmap();
+ }
+ }
+
+ if(drawable.getIntrinsicWidth() <= 0 || drawable.getIntrinsicHeight() <= 0) {
+ bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888); // Single color bitmap will be created of 1x1 pixel
+ } else {
+ bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
+ }
+
+ Canvas canvas = new Canvas(bitmap);
+ drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
+ drawable.draw(canvas);
+ return bitmap;
}
+
}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
index 5c61db99..30a43779 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
@@ -56,7 +56,7 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
pMgr = getPackageManager();
this.setContentView(R.layout.layout_apps);
- setTitle(R.string.apps_mode);
+ setTitle("");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
listApps = findViewById(R.id.applistview);
progressBar = findViewById(R.id.progressBar);
@@ -126,18 +126,15 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
if (mApps == null)
mApps = getApps(prefs);
+ /**
Collections.sort(mApps,new Comparator<TorifiedApp>() {
public int compare(TorifiedApp o1, TorifiedApp o2) {
- /* Some apps start with lowercase letters and without the sorting being case
- insensitive they'd appear at the end of the grid of apps, a position where users
- would likely not expect to find them.
- */
if (o1.isTorified() == o2.isTorified())
return o1.getName().compareToIgnoreCase(o2.getName());
if (o1.isTorified()) return -1;
return 1;
}
- });
+ });**/
final LayoutInflater inflater = getLayoutInflater();
@@ -157,7 +154,6 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
// Inflate a new view
entry = new ListEntry();
entry.icon = convertView.findViewById(R.id.itemicon);
- entry.box = convertView.findViewById(R.id.itemcheck);
entry.text = convertView.findViewById(R.id.itemtext);
convertView.setTag(entry);
}
@@ -169,7 +165,7 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
try {
entry.icon.setImageDrawable(pMgr.getApplicationIcon(app.getPackageName()));
entry.icon.setOnClickListener(AppManagerActivity.this);
- entry.icon.setTag(entry.box);
+ entry.icon.setTag(app);
}
catch (Exception e)
{
@@ -179,14 +175,17 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
if (entry.text != null) {
entry.text.setText(app.getName());
- entry.text.setOnClickListener(AppManagerActivity.this);
- entry.text.setTag(entry.box);
}
- if (entry.box != null) {
- entry.box.setOnClickListener(AppManagerActivity.this);
- entry.box.setChecked(app.isTorified());
- entry.box.setTag(app);
+ if (app.isTorified())
+ {
+ convertView.setBackgroundColor(getResources().getColor(R.color.dark_purple));
+
+ }
+ else
+ {
+ convertView.setBackgroundColor(getResources().getColor(android.R.color.transparent));
+
}
return convertView;
@@ -197,7 +196,6 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
}
private static class ListEntry {
- private CheckBox box;
private TextView text;
private ImageView icon;
}
@@ -323,21 +321,19 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
public void onClick(View v) {
- CheckBox cbox = null;
+ final TorifiedApp app = (TorifiedApp) v.getTag();
+ if (app != null) {
+ app.setTorified(!app.isTorified());
- if (v instanceof CheckBox)
- cbox = (CheckBox)v;
- else if (v.getTag() instanceof CheckBox)
- cbox = (CheckBox)v.getTag();
-
- if (cbox != null) {
- final TorifiedApp app = (TorifiedApp) cbox.getTag();
- if (app != null) {
- app.setTorified(!app.isTorified());
- cbox.setChecked(app.isTorified());
- }
+ Intent data = new Intent();
+ data.putExtra("package",app.getPackageName());
+ setResult(RESULT_OK,data);
saveAppSettings();
+
+ finish();
}
+
+
}
}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
index 7a2f6d25..1c1b9927 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
@@ -1,18 +1,14 @@
package org.torproject.android.mini.ui.onboarding;
import android.content.Context;
-import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
-import android.view.View;
import com.github.paolorotolo.appintro.AppIntro;
import org.torproject.android.mini.R;
import org.torproject.android.mini.settings.LocaleHelper;
-import org.torproject.android.mini.ui.AppManagerActivity;
-import org.torproject.android.mini.vpn.VPNEnableActivity;
public class OnboardingActivity extends AppIntro {
@@ -23,43 +19,18 @@ public class OnboardingActivity extends AppIntro {
// Instead of fragments, you can also use our default slide
// Just set a title, description, background and image. AppIntro will do the rest.
CustomSlideBigText welcome = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
- welcome.setTitle(getString(R.string.hello));
- welcome.setSubTitle(getString(R.string.welcome));
+ welcome.setTitle("The power of tor made simple for your life");
+ welcome.setSubTitle("orbot mini");
addSlide(welcome);
CustomSlideBigText intro2 = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
- intro2.setTitle(getString(R.string.browser_the_internet));
- intro2.setSubTitle(getString(R.string.no_tracking));
+ intro2.setTitle("unblock any app with a few taps");
+ intro2.setSubTitle("so easy");
addSlide(intro2);
- CustomSlideBigText cs2 = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
- cs2.setTitle(getString(R.string.bridges_sometimes));
- cs2.showButton(getString(R.string.action_more), new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- startActivity(new Intent(OnboardingActivity.this,BridgeWizardActivity.class));
- }
- });
- addSlide(cs2);
-
- CustomSlideBigText cs3 = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
- cs3.setTitle(getString(R.string.vpn_setup));
- cs3.setSubTitle(getString(R.string.vpn_setup_sub));
- cs3.showButton(getString(R.string.action_vpn_choose), new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- startActivity(new Intent(OnboardingActivity.this, VPNEnableActivity.class));
- startActivityForResult(new Intent(OnboardingActivity.this, AppManagerActivity.class), 9999);
-
- }
- });
- addSlide(cs3);
-
-
-
// OPTIONAL METHODS
// Override bar/separator color.
- setBarColor(getResources().getColor(R.color.dark_purple));
+ setBarColor(getResources().getColor(R.color.dark_green));
setSeparatorColor(getResources().getColor(R.color.panel_background_main));
// Hide Skip/Done button.
diff --git a/app-mini/src/main/res/layout/custom_slide_big_text.xml b/app-mini/src/main/res/layout/custom_slide_big_text.xml
index 100392e6..39f5486a 100644
--- a/app-mini/src/main/res/layout/custom_slide_big_text.xml
+++ b/app-mini/src/main/res/layout/custom_slide_big_text.xml
@@ -2,33 +2,34 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:gravity="center"
android:orientation="vertical"
- android:background="@color/dark_purple"
+ android:gravity="center_vertical"
+ android:background="@color/dark_green"
>
<TextView
- android:id="@+id/custom_slide_big_text"
+ android:id="@+id/custom_slide_big_text_sub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text=""
+ android:text="okay cool"
android:textColor="@color/panel_background_main"
- android:gravity="center"
- android:layout_margin="12dp"
+ android:layout_gravity="start"
+ android:layout_marginLeft="36dp"
android:textStyle="bold"
- android:textSize="28sp"/>
+ android:textSize="16sp"
+ android:visibility="gone"
+ />
<TextView
- android:id="@+id/custom_slide_big_text_sub"
+ android:id="@+id/custom_slide_big_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text=""
+ android:text="This is the big text"
android:textColor="@color/panel_background_main"
- android:gravity="center"
- android:layout_margin="12dp"
+ android:gravity="start"
+ android:layout_margin="36dp"
android:textStyle="bold"
- android:textSize="16sp"
- android:visibility="gone"
- />
+ android:textSize="52sp"/>
+
<Button
android:id="@+id/custom_slide_button"
@@ -37,7 +38,8 @@
android:layout_margin="10dp"
android:background="@drawable/round_drawable"
android:textColor="@color/panel_background_main"
+ android:text="button"
+ android:layout_gravity="end"
android:visibility="gone"
-
/>
</LinearLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/layout/layout_apps_item.xml b/app-mini/src/main/res/layout/layout_apps_item.xml
index ef188b3e..b9fac8c4 100644
--- a/app-mini/src/main/res/layout/layout_apps_item.xml
+++ b/app-mini/src/main/res/layout/layout_apps_item.xml
@@ -1,10 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="90dp"
- android:layout_height="90dp"
+ android:layout_width="80dp"
+ android:layout_height="70dp"
android:gravity="center_horizontal"
- android:orientation="vertical">
+ android:orientation="vertical"
+ android:layout_marginTop="10dp"
+ >
<ImageView
android:id="@+id/itemicon"
@@ -22,12 +24,8 @@
android:scrollHorizontally="false"
android:text="uid:packages"
android:textAlignment="center"
- android:textSize="12sp" />
+ android:textSize="10sp" />
- <CheckBox
- android:id="@+id/itemcheck"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content" />
</LinearLayout>
diff --git a/app-mini/src/main/res/layout/layout_apps_listing.xml b/app-mini/src/main/res/layout/layout_apps_listing.xml
new file mode 100644
index 00000000..d47126b4
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_apps_listing.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="80dp"
+ android:orientation="horizontal"
+ android:layout_marginLeft="20dp"
+ android:layout_marginRight="20dp"
+
+ android:layout_marginTop="20dp"
+
+ android:background="@color/med_gray"
+ android:padding="10dp"
+ android:gravity="center_vertical"
+ >
+
+ <ImageView
+ android:id="@+id/itemicon"
+ android:layout_width="40dp"
+ android:layout_height="40dp"
+ android:src="@mipmap/ic_launcher"
+ />
+
+ <TextView
+ android:id="@+id/itemtext"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:ellipsize="end"
+ android:gravity="center_horizontal|center_vertical"
+ android:maxLines="2"
+ android:minLines="2"
+ android:scrollHorizontally="false"
+ android:text="app name"
+ android:textAlignment="center"
+ android:layout_marginLeft="18dp"
+ android:textSize="18sp"
+ android:textColor="@color/light_gray"
+ android:textStyle="bold"
+ />
+
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:ellipsize="end"
+ android:gravity="center_horizontal|center_vertical|right"
+ android:maxLines="2"
+ android:minLines="2"
+ android:scrollHorizontally="false"
+ android:text=">"
+ android:textAlignment="center"
+ android:layout_marginLeft="18dp"
+ android:textSize="24sp" />
+
+</LinearLayout>
+
diff --git a/app-mini/src/main/res/layout/layout_main.xml b/app-mini/src/main/res/layout/layout_main.xml
index d4422fa2..d8fbfce6 100644
--- a/app-mini/src/main/res/layout/layout_main.xml
+++ b/app-mini/src/main/res/layout/layout_main.xml
@@ -22,19 +22,13 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="250dp"
- android:id="@+id/frameMain"any
- android:visibility="visible"
- android:orientation="vertical"
- android:layout_alignParentLeft="true"
- android:layout_alignParentStart="true"
- android:layout_margin="3dp"
- android:weightSum="1">
-
- </LinearLayout>
+<android.support.v7.widget.RecyclerView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/rv"
+ android:layout_marginBottom="60dp"
+ />
@@ -46,6 +40,7 @@
android:orientation="vertical"
android:id="@+id/controls"
android:layout_alignParentBottom="true"
+ android:background="@color/light_gray"
>
diff --git a/app-mini/src/main/res/values/colors.xml b/app-mini/src/main/res/values/colors.xml
index dcbbcd60..4a7a1e37 100644
--- a/app-mini/src/main/res/values/colors.xml
+++ b/app-mini/src/main/res/values/colors.xml
@@ -7,5 +7,6 @@
<color name="light_purple">#E6CCFF</color>
<color name="light_green">#E1FFC0</color>
<color name="light_gray">#EFEFEF</color>
+ <color name="med_gray">#BCBCBC</color>
</resources>
1
0
commit 285d77e9e337e2ea5a53421411b5f989a3768fda
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Wed Sep 4 11:45:39 2019 -0400
implement app configuration screens
---
app-mini/build.gradle | 6 +-
app-mini/src/main/AndroidManifest.xml | 92 +++++++++--------
.../torproject/android/mini/MiniMainActivity.java | 64 +++++++-----
.../android/mini/ui/AppConfigActivity.java | 102 +++++++++++++++++++
.../android/mini/ui/AppManagerActivity.java | 21 +---
.../mini/ui/onboarding/OnboardingActivity.java | 8 +-
.../src/main/res/layout/activity_app_config.xml | 26 +++++
.../src/main/res/layout/content_app_config.xml | 111 +++++++++++++++++++++
app-mini/src/main/res/menu/app_config.xml | 32 ++++++
app-mini/src/main/res/values/strings.xml | 15 ++-
app-mini/src/main/res/values/styles.xml | 5 +
11 files changed, 380 insertions(+), 102 deletions(-)
diff --git a/app-mini/build.gradle b/app-mini/build.gradle
index 0ffb405d..ea8a8d22 100644
--- a/app-mini/build.gradle
+++ b/app-mini/build.gradle
@@ -11,7 +11,7 @@ def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android {
- signingConfigs {
+ signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
@@ -100,11 +100,12 @@ dependencies {
implementation 'com.github.apl-devs:appintro:v4.2.2'
implementation 'com.android.support:palette-v7:28.0.0'
implementation 'com.github.javiersantos:AppUpdater:2.7'
+ implementation 'com.android.support.constraint:constraint-layout:1.1.3'
androidTestImplementation "tools.fastlane:screengrab:1.2.0"
}
// Map for the version code that gives each ABI a value.
-ext.abiCodes = ['armeabi-v7a':'1', 'arm64-v8a':'2', 'mips':'3', 'x86':'4', 'x86_64':'5']
+ext.abiCodes = ['armeabi-v7a': '1', 'arm64-v8a': '2', 'mips': '3', 'x86': '4', 'x86_64': '5']
import com.android.build.OutputFile
@@ -119,4 +120,3 @@ android.applicationVariants.all { variant ->
}
}
}
-
diff --git a/app-mini/src/main/AndroidManifest.xml b/app-mini/src/main/AndroidManifest.xml
index 18b8a6f2..23db19d7 100644
--- a/app-mini/src/main/AndroidManifest.xml
+++ b/app-mini/src/main/AndroidManifest.xml
@@ -4,16 +4,6 @@
package="org.torproject.android.mini"
android:installLocation="internalOnly">
- <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
- <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
- <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
- <!-- Some Chromebooks don't support touch. Although not essential,
- it's a good idea to explicitly include this declaration. -->
- <uses-feature android:name="android.hardware.touchscreen"
- android:required="false" />
-
<application
android:name=".OrbotMiniApp"
android:allowBackup="false"
@@ -24,8 +14,10 @@
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/DefaultTheme"
- tools:replace="android:allowBackup"
- >
+ tools:replace="android:allowBackup">
+ <activity
+ android:name=".ui.AppConfigActivity"
+ android:label="@string/title_activity_app_config"></activity>
<activity
android:name=".MiniMainActivity"
android:excludeFromRecents="false"
@@ -43,11 +35,10 @@
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="bridge" />
- </intent-filter>-->
-
- </activity>
+ </intent-filter>
+ -->
- <!-- This is for ensuring the background service still runs when/if the app is swiped away -->
+ </activity> <!-- This is for ensuring the background service still runs when/if the app is swiped away -->
<activity
android:name="org.torproject.android.service.util.DummyActivity"
android:allowTaskReparenting="true"
@@ -71,20 +62,18 @@
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat.Light" />
- <service
- android:name="org.torproject.android.service.TorService"
- android:enabled="true"
- android:permission="android.permission.BIND_VPN_SERVICE"
- android:stopWithTask="false"></service>
- <service
- android:name="org.torproject.android.service.vpn.TorVpnService"
- android:enabled="true"
- android:permission="android.permission.BIND_VPN_SERVICE">
- <intent-filter>
- <action android:name="android.net.VpnService" />
- </intent-filter>
- </service>
+ <activity android:name=".ui.onboarding.OnboardingActivity" />
+ <activity android:name=".ui.onboarding.BridgeWizardActivity" />
+ <provider
+ android:name="android.support.v4.content.FileProvider"
+ android:authorities="org.torproject.android.mini.ui.hiddenservices.storage"
+ android:exported="false"
+ android:grantUriPermissions="true">
+ <meta-data
+ android:name="android.support.FILE_PROVIDER_PATHS"
+ android:resource="@xml/hidden_services_paths" />
+ </provider>
<receiver
android:name="org.torproject.android.service.StartTorReceiver"
android:exported="true">
@@ -92,6 +81,7 @@
<action android:name="org.torproject.android.intent.action.START" />
</intent-filter>
</receiver>
+
<receiver
android:name=".OnBootReceiver"
android:enabled="true"
@@ -113,25 +103,33 @@
</intent-filter>
</receiver>
+ <service
+ android:name="org.torproject.android.service.TorService"
+ android:enabled="true"
+ android:permission="android.permission.BIND_VPN_SERVICE"
+ android:stopWithTask="false" />
+ <service
+ android:name="org.torproject.android.service.vpn.TorVpnService"
+ android:enabled="true"
+ android:permission="android.permission.BIND_VPN_SERVICE">
+ <intent-filter>
+ <action android:name="android.net.VpnService" />
+ </intent-filter>
+ </service>
+ </application>
+ <uses-feature
+ android:name="android.hardware.touchscreen"
+ android:required="false" />
+ <!--
+ Some Chromebooks don't support touch. Although not essential,
+ it's a good idea to explicitly include this declaration.
+ -->
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+ <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+ <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
+ <uses-permission android:name="android.permission.INTERNET" />
-
- <provider
- android:name="android.support.v4.content.FileProvider"
- android:authorities="org.torproject.android.mini.ui.hiddenservices.storage"
- android:exported="false"
- android:grantUriPermissions="true">
- <meta-data
- android:name="android.support.FILE_PROVIDER_PATHS"
- android:resource="@xml/hidden_services_paths" />
- </provider>
-
-
-
- <activity android:name=".ui.onboarding.OnboardingActivity"/>
- <activity android:name=".ui.onboarding.BridgeWizardActivity"/>
-
-
- </application>
+ <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
</manifest>
\ No newline at end of file
diff --git a/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
index c495a6a5..e6f33ba0 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
@@ -60,6 +60,7 @@ import org.json.JSONArray;
import org.torproject.android.mini.settings.Languages;
import org.torproject.android.mini.settings.LocaleHelper;
import org.torproject.android.mini.settings.SettingsPreferences;
+import org.torproject.android.mini.ui.AppConfigActivity;
import org.torproject.android.mini.ui.AppManagerActivity;
import org.torproject.android.mini.ui.Rotate3dAnimation;
import org.torproject.android.mini.ui.onboarding.OnboardingActivity;
@@ -631,7 +632,7 @@ public class MiniMainActivity extends AppCompatActivity
torStatus == TorServiceConstants.STATUS_ON) {
refreshVPNApps();
- String newPkgId = data.getStringExtra("package");
+ String newPkgId = data.getStringExtra(Intent.EXTRA_PACKAGE_NAME);
//add new entry
}
@@ -1070,12 +1071,12 @@ public class MiniMainActivity extends AppCompatActivity
if (i < getItemCount()-1) {
- String pkgId = pkgIds.get(i);
+ final String pkgId = pkgIds.get(i);
ApplicationInfo aInfo = null;
try {
aInfo = getPackageManager().getApplicationInfo(pkgId, 0);
- TorifiedApp app = getApp(aInfo);
+ TorifiedApp app = getApp(MiniMainActivity.this, aInfo);
avh.tv.setText(app.getName());
avh.iv.setImageDrawable(app.getIcon());
@@ -1096,6 +1097,7 @@ public class MiniMainActivity extends AppCompatActivity
@Override
public void onClick(View v) {
+ showAppConfig(pkgId);
}
});
@@ -1118,49 +1120,57 @@ public class MiniMainActivity extends AppCompatActivity
}
}
- private TorifiedApp getApp (ApplicationInfo aInfo)
- {
- TorifiedApp app = new TorifiedApp();
+ }
+ public static TorifiedApp getApp (Context context, ApplicationInfo aInfo)
+ {
+ TorifiedApp app = new TorifiedApp();
+ PackageManager pMgr = context.getPackageManager();
- try
- {
- app.setName(getPackageManager().getApplicationLabel(aInfo).toString());
- }
- catch (Exception e)
- {
- return null;
- }
+ try
+ {
+ app.setName(pMgr.getApplicationLabel(aInfo).toString());
+ }
+ catch (Exception e)
+ {
+ return null;
+ }
- app.setEnabled(aInfo.enabled);
- app.setUid(aInfo.uid);
- app.setUsername(getPackageManager().getNameForUid(app.getUid()));
- app.setProcname(aInfo.processName);
- app.setPackageName(aInfo.packageName);
- app.setTorified(true);
+ app.setEnabled(aInfo.enabled);
+ app.setUid(aInfo.uid);
+ app.setUsername(pMgr.getNameForUid(app.getUid()));
+ app.setProcname(aInfo.processName);
+ app.setPackageName(aInfo.packageName);
- try {
- app.setIcon(getPackageManager().getApplicationIcon(app.getPackageName()));
+ app.setTorified(true);
+ try {
+ app.setIcon(pMgr.getApplicationIcon(app.getPackageName()));
- } catch (NameNotFoundException e) {
- e.printStackTrace();
- }
- return app;
- }
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
+ }
+ return app;
}
+
public void showAppPicker ()
{
startActivityForResult(new Intent(MiniMainActivity.this, AppManagerActivity.class), REQUEST_VPN_APPS_SELECT);
}
+ public void showAppConfig (String pkgId)
+ {
+ Intent data = new Intent(this, AppConfigActivity.class);
+ data.putExtra(Intent.EXTRA_PACKAGE_NAME,pkgId);
+ startActivity(data);
+ }
public static Bitmap drawableToBitmap (Drawable drawable) {
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/AppConfigActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/AppConfigActivity.java
new file mode 100644
index 00000000..f4dcc6c6
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/AppConfigActivity.java
@@ -0,0 +1,102 @@
+package org.torproject.android.mini.ui;
+
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.content.pm.ApplicationInfo;
+import android.os.Bundle;
+import android.support.design.widget.FloatingActionButton;
+import android.support.design.widget.Snackbar;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.view.View;
+
+import org.torproject.android.mini.MiniMainActivity;
+import org.torproject.android.mini.R;
+import org.torproject.android.service.util.TorServiceUtils;
+import org.torproject.android.service.vpn.TorifiedApp;
+
+import static org.torproject.android.mini.MiniMainActivity.getApp;
+import static org.torproject.android.service.vpn.VpnPrefs.PREFS_KEY_TORIFIED;
+
+public class AppConfigActivity extends AppCompatActivity {
+
+ TorifiedApp mApp;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_app_config);
+ Toolbar toolbar = findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+
+ String pkgId = getIntent().getStringExtra(Intent.EXTRA_PACKAGE_NAME);
+
+ ApplicationInfo aInfo = null;
+ try {
+ aInfo = getPackageManager().getApplicationInfo(pkgId, 0);
+ mApp = getApp(this, aInfo);
+
+ getSupportActionBar().setIcon(mApp.getIcon());
+
+ setTitle(mApp.getName());
+ }
+ catch (Exception e){}
+
+ }
+
+
+ private void removeApp ()
+ {
+ mApp.setTorified(false);
+
+ SharedPreferences prefs = TorServiceUtils.getSharedPrefs(getApplicationContext());
+
+ String tordAppString = prefs.getString(PREFS_KEY_TORIFIED, "");
+
+ tordAppString = tordAppString.replace(mApp.getPackageName()+"|","");
+
+ SharedPreferences.Editor edit = prefs.edit();
+ edit.putString(PREFS_KEY_TORIFIED, tordAppString);
+ edit.commit();
+
+ Intent response = new Intent();
+ setResult(RESULT_OK,response);
+
+ finish();
+ }
+
+ /*
+ * Create the UI Options Menu (non-Javadoc)
+ * @see android.app.Activity#onCreateOptionsMenu(android.view.Menu)
+ */
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ super.onCreateOptionsMenu(menu);
+ MenuInflater inflater = getMenuInflater();
+ inflater.inflate(R.menu.app_config, menu);
+ return true;
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+
+ if (item.getItemId() == android.R.id.home) {
+ finish();
+ return true;
+ }
+ else if (item.getItemId() == R.id.menu_remove_app) {
+ removeApp();
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+
+
+
+
+}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
index 30a43779..ea66d7f2 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
@@ -126,15 +126,6 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
if (mApps == null)
mApps = getApps(prefs);
- /**
- Collections.sort(mApps,new Comparator<TorifiedApp>() {
- public int compare(TorifiedApp o1, TorifiedApp o2) {
- if (o1.isTorified() == o2.isTorified())
- return o1.getName().compareToIgnoreCase(o2.getName());
- if (o1.isTorified()) return -1;
- return 1;
- }
- });**/
final LayoutInflater inflater = getLayoutInflater();
@@ -177,16 +168,6 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
entry.text.setText(app.getName());
}
- if (app.isTorified())
- {
- convertView.setBackgroundColor(getResources().getColor(R.color.dark_purple));
-
- }
- else
- {
- convertView.setBackgroundColor(getResources().getColor(android.R.color.transparent));
-
- }
return convertView;
}
@@ -327,7 +308,7 @@ public class AppManagerActivity extends AppCompatActivity implements OnClickList
Intent data = new Intent();
- data.putExtra("package",app.getPackageName());
+ data.putExtra(Intent.EXTRA_PACKAGE_NAME,app.getPackageName());
setResult(RESULT_OK,data);
saveAppSettings();
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
index 1c1b9927..f6531a7d 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
@@ -19,13 +19,13 @@ public class OnboardingActivity extends AppIntro {
// Instead of fragments, you can also use our default slide
// Just set a title, description, background and image. AppIntro will do the rest.
CustomSlideBigText welcome = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
- welcome.setTitle("The power of tor made simple for your life");
- welcome.setSubTitle("orbot mini");
+ welcome.setTitle(getString(R.string.mini_onboarding_1));
+ welcome.setSubTitle(getString(R.string.app_name));
addSlide(welcome);
CustomSlideBigText intro2 = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
- intro2.setTitle("unblock any app with a few taps");
- intro2.setSubTitle("so easy");
+ intro2.setTitle(getString(R.string.mini_onboarding_2));
+ intro2.setSubTitle(getString(R.string.mini_onboarding_2_title));
addSlide(intro2);
// OPTIONAL METHODS
diff --git a/app-mini/src/main/res/layout/activity_app_config.xml b/app-mini/src/main/res/layout/activity_app_config.xml
new file mode 100644
index 00000000..accb290b
--- /dev/null
+++ b/app-mini/src/main/res/layout/activity_app_config.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ tools:context=".ui.AppConfigActivity">
+
+ <android.support.design.widget.AppBarLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:theme="@style/DefaultTheme.AppBarOverlay">
+
+ <android.support.v7.widget.Toolbar
+ android:id="@+id/toolbar"
+ android:layout_width="match_parent"
+ android:layout_height="?attr/actionBarSize"
+ android:background="@color/dark_green"
+ app:popupTheme="@style/DefaultTheme.PopupOverlay" />
+
+ </android.support.design.widget.AppBarLayout>
+
+
+ <include layout="@layout/content_app_config" />
+
+</android.support.design.widget.CoordinatorLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/layout/content_app_config.xml b/app-mini/src/main/res/layout/content_app_config.xml
new file mode 100644
index 00000000..8e7b727e
--- /dev/null
+++ b/app-mini/src/main/res/layout/content_app_config.xml
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ app:layout_behavior="@string/appbar_scrolling_view_behavior"
+ tools:context=".ui.AppConfigActivity"
+ android:orientation="vertical"
+ tools:showIn="@layout/activity_app_config"
+ android:padding="20dp"
+ >
+
+
+ <RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content">
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/title_boost_your_privacy"
+ android:textStyle="bold"
+ android:textSize="20dp"
+ android:id="@+id/privacy_title"
+ />
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/send_your_app_traffic_over_tor"
+ android:textSize="16dp"
+ android:layout_below="@+id/privacy_title"
+ />
+
+ <Switch
+ android:layout_alignParentEnd="true"
+ android:layout_alignParentRight="true"
+
+ android:layout_toRightOf="@+id/privacy_title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+
+ </RelativeLayout>
+
+ <RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="20dp"
+ >
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/turn_off_apps"
+ android:textStyle="bold"
+ android:textSize="20dp"
+ android:id="@+id/off_apps_title"
+ />
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/stop_apps_from_using_the_network"
+ android:textSize="16dp"
+ android:layout_below="@+id/off_apps_title"
+ />
+ <Switch
+ android:layout_alignParentEnd="true"
+ android:layout_alignParentRight="true"
+
+ android:layout_toRightOf="@+id/off_apps_title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+
+ </RelativeLayout>
+
+ <RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="20dp"
+ >
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/wifi_only"
+ android:textStyle="bold"
+ android:textSize="20dp"
+ android:id="@+id/wifi_title"
+ />
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/keep_your_apps_from_using_mobile_data"
+ android:textSize="16dp"
+ android:layout_below="@+id/wifi_title"
+ />
+
+ <Switch
+ android:layout_alignParentEnd="true"
+ android:layout_alignParentRight="true"
+
+ android:layout_toRightOf="@+id/wifi_title"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"/>
+
+
+ </RelativeLayout>
+
+
+
+</LinearLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/menu/app_config.xml b/app-mini/src/main/res/menu/app_config.xml
new file mode 100644
index 00000000..d0a75569
--- /dev/null
+++ b/app-mini/src/main/res/menu/app_config.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+ * Copyright (C) 2008 Esmertec AG.
+ * Copyright (C) 2008 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:yourapp="http://schemas.android.com/apk/res-auto"
+ >
+
+
+ <item android:id="@+id/menu_remove_app"
+ android:title="@string/remove"
+ yourapp:showAsAction="never"
+ />
+
+
+
+</menu>
diff --git a/app-mini/src/main/res/values/strings.xml b/app-mini/src/main/res/values/strings.xml
index 42bc1674..c7ae3edd 100644
--- a/app-mini/src/main/res/values/strings.xml
+++ b/app-mini/src/main/res/values/strings.xml
@@ -124,7 +124,7 @@
<string name="newnym">You\'ve switched to a new Tor identity!</string>
<string name="pref_open_proxy_on_all_interfaces_title">Open Proxy on All Interfaces</string>
- <string name="pref_open_proxy_on_all_interfaces_summary">Allow Wi-Fi peers, tethered devices and anyone else who can connect to your IP, to access Tor</string>
+ <string name="pref_open_proxy_on_all_interfaces_summary">Allow Wi-Fi peers, tethered devices and anyone else who can connect to your IP, to access Tor</string>
<string name="no_network_connectivity_putting_tor_to_sleep_">No network connectivity. Putting Tor to sleep…</string>
<string name="network_connectivity_is_good_waking_tor_up_">Network connectivity is good. Waking Tor up…</string>
@@ -255,4 +255,17 @@
<string name="app_services">App services</string>
<string name="default_socks_http">SOCKS: - HTTP: -</string>
<string name="refresh_apps">Refresh Apps</string>
+
+ <!-- Orbot Mini Strings -->
+ <string name="mini_onboarding_1">The power of tor made mini to fit your life</string>
+ <string name="mini_onboarding_2">unblock any app with a few taps</string>
+ <string name="mini_onboarding_2_title">so easy!</string>
+ <string name="title_activity_app_config">AppConfigActivity</string>
+ <string name="title_boost_your_privacy">Boost Your Privacy</string>
+ <string name="send_your_app_traffic_over_tor">Send app data over Tor</string>
+ <string name="turn_off_apps">Turn off app data</string>
+ <string name="stop_apps_from_using_the_network">Stop app from using the network</string>
+ <string name="wifi_only">Wifi only</string>
+ <string name="keep_your_apps_from_using_mobile_data">Only allow connection over wifi</string>
+ <string name="remove">Remove</string>
</resources>
diff --git a/app-mini/src/main/res/values/styles.xml b/app-mini/src/main/res/values/styles.xml
index b2e69a53..428c097c 100644
--- a/app-mini/src/main/res/values/styles.xml
+++ b/app-mini/src/main/res/values/styles.xml
@@ -4,4 +4,9 @@
<style name="DefaultTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
<style name="DefaultTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
+
+ <style name="DefaultTheme.NoActionBar">
+ <item name="windowActionBar">false</item>
+ <item name="windowNoTitle">true</item>
+ </style>
</resources>
1
0

[orbot/master] add new functionality to allow for checking connections against app blacklist
by n8fr8@torproject.org 28 Apr '20
by n8fr8@torproject.org 28 Apr '20
28 Apr '20
commit a266c65d772cffb3d42a803ebb1231bdbea467aa
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Thu Sep 5 12:01:36 2019 -0400
add new functionality to allow for checking connections against app blacklist
---
.../java/org/torproject/android/service/vpn/Tun2Socks.java | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java b/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java
index e7f0591b..a0ded90e 100644
--- a/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java
+++ b/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java
@@ -134,6 +134,16 @@ public class Tun2Socks
private native static void terminateTun2Socks();
+ public static boolean checkIsAllowed (int protocol, String sourceAddr, int sourcePort, String destAddr, int destPort) {
+
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q)
+ {
+ return isAllowedQ(protocol, sourceAddr, sourcePort, destAddr, destPort);
+ }
+ else
+ return isAllowed(protocol, sourceAddr, sourcePort, destAddr, destPort);
+ }
+
public static boolean isAllowed (int protocol, String sourceAddr, int sourcePort, String destAddr, int destPort) {
TCPSourceApp.AppDescriptor aInfo = TCPSourceApp.getApplicationInfo(mContext, sourceAddr, sourcePort, destAddr, destPort);
1
0

[orbot/master] update changelog for 16.1.1-BETA-2-tor-0.4.0.4-rc-orbotservice
by n8fr8@torproject.org 28 Apr '20
by n8fr8@torproject.org 28 Apr '20
28 Apr '20
commit d98e5fbf4c9a6423373e1a85288f0de6ca036610
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Thu Sep 5 11:45:30 2019 -0400
update changelog for 16.1.1-BETA-2-tor-0.4.0.4-rc-orbotservice
---
CHANGELOG | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/CHANGELOG b/CHANGELOG
index 3bc14676..bdfebb3a 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,36 @@
NOTE: Specific #s below correspond to Trac tickets logged and maintained at https://trac.torproject.org/projects/tor/
+/** 16.1.1-BETA-2-tor-0.4.0.4-rc / Wed Aug 7 13:33:30 2019 -0400 / bbf5fcb3fb346e9bba712d12bf4934cf925cb2bd **/
+
+bbf5fcb3 (tag: 16.1.1-BETA-2-tor-0.4.0.4-rc) update service for VPN mode and startup fixes
+ea7f3f10 update gitignore
+cf19750d update fastlane and gradle to support split apks builds, CI and more
+cd80e850 (tag: 16.1.1-BETA-1-tor-0.4.0.4-rc) update to 16.1.1-BETA-1-tor-0.4.0.4-rc
+bfb5eab1 Merge branch 'master' of github.com:n8fr8/orbot
+d02fb582 instead of DisableNetwork, let's try NEWNYM when the network returns - we've had issues of losing connectivity setting DisableNetwork, so we are trying a new approach - now using DormantClientTimeout settings, to have client go to sleep when it is not used - when we receive a network connectivity notification, we call NEWNYM to refresh circuits
+d5e570a5 Merge pull request #247 from bitmold/low_dpi_launcher_icon
+767a8596 Launcher icon was out of date on low resolution devices.
+7d11984b (tag: 16.1.0-RC-3-tor-0.4.0.4-rc) update to 16.1.0-RC-3-tor-0.4.0.4-rc
+e146f703 make sure to kill existing pdnsd, and set the new ports properly
+c6bfc491 send ports on start request, even if tor is already running
+d3963516 keep apps around as static variable, enable user to refresh
+be5b8d88 make sure we don't have any orphaned pdnsd processes
+72ff7dd2 Merge branch 'ejo4041-mergeDebugJniLibFolders_issue'
+07e34239 (ejo4041-mergeDebugJniLibFolders_issue) Merge branch 'mergeDebugJniLibFolders_issue' of https://github.com/ejo4041/orbot into ejo4041-mergeDebugJniLibFolders_issue
+be6feea8 Merge branch 'master' of github.com:n8fr8/orbot
+d2005234 update gradle
+929cb6b6 pdnsd must be named with a .so extension to be included
+c0afffeb don't build plain armeabi anymore
+4321ae49 update native libs
+c7e9b01f Merge pull request #244 from bitmold/vpn_app_ui_glitch
+fc0b035a After following the BUILD file, could not build the apk because of a issue mentioned in #217: Execution failed for task :orbotservice:mergeDebugJniLibFolders. This change fixes that.
+7b832f19 Fixed VPN App UI for apps that were disabled or uninstalled
+d084aa6c (tag: 16.1.0-RC-2-tor-0.4.0.4-rc) update to 16.1.0-RC-2-tor-0.4.0.4-rc
+79afbe05 bind pdnsd to virtual address within VPN
+9ff0b00c fix VPN code to support dynamic DNS port for Tor
+f1e572e8 use standard string keys for intent values
+361ea26d ports can be set to "auto" so allow letters as well
+
/** 16.1.0-RC-1-tor-0.4.0.4-rc / 8 July 2019 / e60c07ed0ffc8360db4dfcdeffd8578945b38d0b **/
Thanks to @bitmold @sisbell @pgerber and @eighthave for all the great work, not to mention the core Tor dev team making all things mobile better every day!
1
0

[orbot/master] implement initial framework for blocking traffic per app
by n8fr8@torproject.org 28 Apr '20
by n8fr8@torproject.org 28 Apr '20
28 Apr '20
commit efb1c0686d0e7a80b7470020d748be4d0814d7e4
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Wed Sep 4 17:07:12 2019 -0400
implement initial framework for blocking traffic per app
- also add ability to disable tor routing as a per app preference
---
orbotservice/build.gradle | 4 +-
.../torproject/android/service/OrbotConstants.java | 6 +
.../android/service/util/TCPSourceApp.java | 316 +++++++++++++++++++++
.../android/service/vpn/OrbotVpnManager.java | 23 +-
.../torproject/android/service/vpn/Tun2Socks.java | 64 ++++-
5 files changed, 401 insertions(+), 12 deletions(-)
diff --git a/orbotservice/build.gradle b/orbotservice/build.gradle
index a62d4590..a5d07d76 100644
--- a/orbotservice/build.gradle
+++ b/orbotservice/build.gradle
@@ -1,7 +1,7 @@
apply plugin: 'com.android.library'
android {
- compileSdkVersion 28
+ compileSdkVersion 29
buildToolsVersion '28.0.3'
sourceSets {
@@ -12,7 +12,7 @@ android {
defaultConfig {
minSdkVersion 16
- targetSdkVersion 28
+ targetSdkVersion 29
versionCode 16111000
versionName '16.1.1-BETA-2-tor-0.4.0.4-rc-orbotservice'
archivesBaseName = "OrbotService-$versionName"
diff --git a/orbotservice/src/main/java/org/torproject/android/service/OrbotConstants.java b/orbotservice/src/main/java/org/torproject/android/service/OrbotConstants.java
index e452105e..a5dec36e 100644
--- a/orbotservice/src/main/java/org/torproject/android/service/OrbotConstants.java
+++ b/orbotservice/src/main/java/org/torproject/android/service/OrbotConstants.java
@@ -29,4 +29,10 @@ public interface OrbotConstants {
String PREF_PREFER_IPV6 = "pref_prefer_ipv6";
String PREF_DISABLE_IPV4 = "pref_disable_ipv4";
+
+ String APP_TOR_KEY = "_app_tor";
+ String APP_DATA_KEY = "_app_data";
+ String APP_WIFI_KEY = "_app_wifi";
+
+
}
diff --git a/orbotservice/src/main/java/org/torproject/android/service/util/TCPSourceApp.java b/orbotservice/src/main/java/org/torproject/android/service/util/TCPSourceApp.java
new file mode 100644
index 00000000..610e1ab4
--- /dev/null
+++ b/orbotservice/src/main/java/org/torproject/android/service/util/TCPSourceApp.java
@@ -0,0 +1,316 @@
+package org.torproject.android.service.util;
+
+/***********************************************************************
+ *
+ * Copyright (c) 2013, Sebastiano Gottardo
+ * All rights reserved.
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of the MegaDevs nor the
+ * names of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL SEBASTIANO GOTTARDO BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.IOException;
+import java.net.Inet4Address;
+import java.net.InetAddress;
+import java.net.NetworkInterface;
+import java.net.Socket;
+import java.net.SocketException;
+import java.util.Collections;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import android.annotation.SuppressLint;
+import android.content.Context;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
+
+/**
+ * Main class for the TCPSourceApp library.
+ * @author Sebastiano Gottardo
+ *
+ */
+public class TCPSourceApp {
+
+ /*
+ * This class represents an Android application. Each application is
+ * uniquely identified by its package name (e.g. com.megadevs.tcpsourceapp)
+ * and its version (e.g. 1.0).
+ */
+ public static class AppDescriptor {
+
+ private String packageName;
+ private String version;
+ private int uid;
+
+ public AppDescriptor(int uid, String pName, String ver) {
+ this.uid = uid;
+ packageName = pName;
+ version = ver;
+ }
+
+ public int getUid () {
+ return uid;
+ }
+
+ public String getPackageName() {
+ return packageName;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ /*
+ * Override of the 'equals' method, in order to have a proper
+ * comparison between two AppDescriptor objects.
+ *
+ * (non-Javadoc)
+ * @see java.lang.Object#equals(java.lang.Object)
+ */
+ @Override
+ public boolean equals(Object o) {
+
+ if (o instanceof AppDescriptor) {
+ boolean c1 = ((AppDescriptor) o).packageName.compareTo(this.packageName) == 0;
+ boolean c2 = ((AppDescriptor) o).version.compareTo(this.version) == 0;
+
+ return c1 && c2;
+ }
+
+ return false;
+ }
+
+ }
+
+ /*
+ * In a Linux-based OS, each active TCP socket is mapped in the following
+ * two files. A socket may be mapped in the '/proc/net/tcp' file in case
+ * of a simple IPv4 address, or in the '/proc/net/tcp6' if an IPv6 address
+ * is available.
+ */
+ private static final String TCP_4_FILE_PATH = "/proc/net/tcp";
+ private static final String TCP_6_FILE_PATH = "/proc/net/tcp6";
+
+ /*
+ * Two regular expressions that are able to extract valuable informations
+ * from the two /proc/net/tcp* files. More specifically, there are three
+ * fields that are extracted:
+ * - address
+ * - port
+ * - PID
+ */
+ private static final String TCP_6_PATTERN = "\\d+:\\s([0-9A-F]{32}):([0-9A-F]{4})\\s[0-9A-F]{32}:[0-9A-F]{4}\\s[0-9A-F]{2}\\s[0-9]{8}:[0-9]{8}\\s[0-9]{2}:[0-9]{8}\\s[0-9]{8}\\s+([0-9]+)";
+//sargo:/ $ cat /proc/net/tcp6
+// sl local_address remote_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
+// 0: 00000000000000000000000000000000:C36A 00000000000000000000000000000000:0000 8A 00000000:00000000 00:00000000 00000000 1001 0 35059 1 0000000000000000 99 0 0 10 0
+// 1: 00000000000000000000000000000000:A64B 00000000000000000000000000000000:0000 8A 00000000:00000000 00:00000000 00000000 1001 0 910009 1 0000000000000000 99 0 0 10 0
+
+
+ private static final String TCP_4_PATTERN = "\\d+:\\s([0-9A-F]{8}):([0-9A-F]{4})\\s[0-9A-F]{8}:[0-9A-F]{4}\\s[0-9A-F]{2}\\s[0-9A-F]{8}:[0-9A-F]{8}\\s[0-9]{2}:[0-9]{8}\\s[0-9A-F]{8}\\s+([0-9]+)";
+// sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
+// 0: 00000000:C368 00000000:0000 8A 00000000:00000000 00:00000000 00000000 1001 0 34999 1 0000000000000000 99 0 0 10 0
+
+ /*
+ * Optimises the socket lookup by checking if the connected network
+ * interface has a 'valid' IPv6 address (a global address, not a link-local
+ * one).
+ */
+ private static boolean checkConnectedIfaces = true;
+
+
+ /**
+ * The main method of the TCPSourceApp library. This method receives an
+ * Android Context instance, which is used to access the PackageManager.
+ * It parses the /proc/net/tcp* files, looking for a socket entry that
+ * matches the given port. If it finds an entry, this method extracts the
+ * PID value and it uses the PackageManager.getPackagesFromPid() method to
+ * find the originating application.
+ *
+ * @param context a valid Android Context instance
+ * @param daddr the (logical) address of the destination
+ * @param dport the (logical) port of the destination
+ * @return an AppDescriptor object, representing the found application; null
+ * if no application could be found
+ */
+ @SuppressWarnings("unused")
+ public static AppDescriptor getApplicationInfo(Context context, String saddr, int sport, String daddr, int dport) {
+
+ File tcp;
+ BufferedReader reader;
+ String line;
+ StringBuilder builder;
+ String content;
+
+ try {
+ boolean hasIPv6 = true;
+
+ // if true, checks for a connected network interface with a valid
+ // IPv4 / IPv6 address
+ if (checkConnectedIfaces) {
+ String ipv4Address = getIPAddress(true);
+ String ipv6Address = getIPAddress(false);
+
+ hasIPv6 = (ipv6Address.length() > 0);
+ }
+
+ tcp = new File(TCP_6_FILE_PATH);
+ reader = new BufferedReader(new FileReader(tcp));
+ line = "";
+ builder = new StringBuilder();
+
+ while ((line = reader.readLine()) != null) {
+ builder.append(line);
+ }
+
+ content = builder.toString();
+
+ Matcher m6 = Pattern.compile(TCP_6_PATTERN, Pattern.CASE_INSENSITIVE | Pattern.UNIX_LINES | Pattern.DOTALL).matcher(content);
+
+ if (hasIPv6)
+ while (m6.find()) {
+ String addressEntry = m6.group(1);
+ String portEntry = m6.group(2);
+ int pidEntry = Integer.valueOf(m6.group(3));
+
+ if (Integer.parseInt(portEntry, 16) == dport) {
+ PackageManager manager = context.getPackageManager();
+ String[] packagesForUid = manager.getPackagesForUid(pidEntry);
+
+ if (packagesForUid != null) {
+ String packageName = packagesForUid[0];
+ PackageInfo pInfo = manager.getPackageInfo(packageName, 0);
+ String version = pInfo.versionName;
+
+ return new AppDescriptor(pidEntry, packageName, version);
+ }
+ }
+ }
+
+ } catch (SocketException e) {
+ e.printStackTrace();
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
+ } catch (IOException e) {
+ e.printStackTrace();
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ // From here, no connection with the given port could be found in the tcp6 file
+ // So let's try the tcp (IPv4) one
+
+ try {
+ tcp = new File(TCP_4_FILE_PATH);
+ reader = new BufferedReader(new FileReader(tcp));
+ line = "";
+ builder = new StringBuilder();
+
+ while ((line = reader.readLine()) != null) {
+ builder.append(line);
+ }
+
+ content = builder.toString();
+
+ Matcher m4 = Pattern.compile(TCP_4_PATTERN, Pattern.CASE_INSENSITIVE | Pattern.UNIX_LINES | Pattern.DOTALL).matcher(content);
+
+ while (m4.find()) {
+ String addressEntry = m4.group(1);
+ String portEntry = m4.group(2);
+ int pidEntry = Integer.valueOf(m4.group(3));
+
+ if (Integer.parseInt(portEntry, 16) == dport) {
+ PackageManager manager = context.getPackageManager();
+ String[] packagesForUid = manager.getPackagesForUid(pidEntry);
+
+ if (packagesForUid != null) {
+ String packageName = packagesForUid[0];
+ PackageInfo pInfo = manager.getPackageInfo(packageName, 0);
+ String version = pInfo.versionName;
+
+ return new AppDescriptor(pidEntry, packageName, version);
+ }
+ }
+ }
+
+ } catch (SocketException e) {
+ e.printStackTrace();
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
+ } catch (IOException e) {
+ e.printStackTrace();
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ return null;
+ }
+
+ @SuppressLint("DefaultLocale")
+ public static String getIPAddress(boolean useIPv4) throws SocketException {
+
+ List<NetworkInterface> interfaces = Collections.list(NetworkInterface.getNetworkInterfaces());
+
+ for (NetworkInterface intf : interfaces) {
+ List<InetAddress> addrs = Collections.list(intf.getInetAddresses());
+
+ for (InetAddress addr : addrs) {
+ if (!addr.isLoopbackAddress()) {
+ String sAddr = addr.getHostAddress().toUpperCase();
+
+ boolean isIPv4 = addr instanceof Inet4Address;
+
+ if (useIPv4) {
+ if (isIPv4)
+ return sAddr;
+ } else {
+ if (!isIPv4) {
+ if (sAddr.startsWith("fe80") || sAddr.startsWith("FE80")) // skipping link-local addresses
+ continue;
+
+ int delim = sAddr.indexOf('%'); // drop ip6 port suffix
+ return delim < 0 ? sAddr : sAddr.substring(0, delim);
+ }
+ }
+ }
+ }
+ }
+
+ return "";
+ }
+
+ /*
+ * Sets the connected interfaces optimisation.
+ */
+ public static void setCheckConnectedIfaces(boolean value) {
+ checkConnectedIfaces = value;
+ }
+
+}
\ No newline at end of file
diff --git a/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java b/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java
index 9b099a24..03ad79c2 100644
--- a/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java
+++ b/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java
@@ -38,6 +38,7 @@ import android.widget.Toast;
import com.runjva.sourceforge.jsocks.protocol.ProxyServer;
import com.runjva.sourceforge.jsocks.server.ServerAuthenticatorNone;
+import org.torproject.android.service.OrbotConstants;
import org.torproject.android.service.R;
import org.torproject.android.service.TorService;
import org.torproject.android.service.TorServiceConstants;
@@ -315,7 +316,6 @@ public class OrbotVpnManager implements Handler.Callback {
builder.addDnsServer(dummyDNS);
builder.addRoute(dummyDNS,32);
-
//handle ipv6
//builder.addAddress("fdfe:dcba:9876::1", 126);
//builder.addRoute("::", 0);
@@ -344,7 +344,7 @@ public class OrbotVpnManager implements Handler.Callback {
startDNS(filePdnsd.getCanonicalPath(), localhost,mTorDns, virtualGateway, pdnsdPort);
final boolean localDnsTransparentProxy = true;
- Tun2Socks.Start(mInterface, VPN_MTU, virtualIP, virtualNetMask, localSocks , virtualGateway + ":" + pdnsdPort , localDnsTransparentProxy);
+ Tun2Socks.Start(mService, mInterface, VPN_MTU, virtualIP, virtualNetMask, localSocks , virtualGateway + ":" + pdnsdPort , localDnsTransparentProxy);
}
@@ -366,17 +366,24 @@ public class OrbotVpnManager implements Handler.Callback {
{
ArrayList<TorifiedApp> apps = TorifiedApp.getApps(mService, getSharedPrefs(mService.getApplicationContext()));
-
- boolean perAppEnabled = false;
+
+ SharedPreferences prefs = getSharedPrefs(mService.getApplicationContext());
+
+ boolean perAppEnabled = false;
for (TorifiedApp app : apps)
{
if (app.isTorified() && (!app.getPackageName().equals(mService.getPackageName())))
{
- builder.addAllowedApplication(app.getPackageName());
- perAppEnabled = true;
- }
-
+ if (prefs.getBoolean(app.getPackageName() + OrbotConstants.APP_TOR_KEY,true)) {
+
+ builder.addAllowedApplication(app.getPackageName());
+
+ }
+
+ perAppEnabled = true;
+
+ }
}
if (!perAppEnabled)
diff --git a/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java b/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java
index 958fb9ad..e7f0591b 100644
--- a/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java
+++ b/orbotservice/src/main/java/org/torproject/android/service/vpn/Tun2Socks.java
@@ -19,11 +19,22 @@ package org.torproject.android.service.vpn;
*
*/
+import android.annotation.TargetApi;
+import android.content.Context;
+import android.content.pm.ApplicationInfo;
+import android.net.ConnectivityManager;
+import android.os.Build;
import android.os.ParcelFileDescriptor;
import android.util.Log;
+import org.torproject.android.service.util.TCPSourceApp;
+
import java.net.DatagramSocket;
+import java.net.InetSocketAddress;
import java.net.Socket;
+import java.util.HashMap;
+
+import static android.content.Context.CONNECTIVITY_SERVICE;
public class Tun2Socks
{
@@ -49,7 +60,9 @@ public class Tun2Socks
private static String mSocksServerAddress;
private static String mUdpgwServerAddress;
private static boolean mUdpgwTransparentDNS;
-
+
+ private static HashMap<Integer,String> mAppUidBlacklist = new HashMap<>();
+ private static Context mContext;
// Note: this class isn't a singleton, but you can't run more
// than one instance due to the use of global state (the lwip
// module, etc.) in the native code.
@@ -57,6 +70,7 @@ public class Tun2Socks
public static void init () {}
public static void Start(
+ Context context,
ParcelFileDescriptor vpnInterfaceFileDescriptor,
int vpnInterfaceMTU,
String vpnIpAddress,
@@ -65,6 +79,7 @@ public class Tun2Socks
String udpgwServerAddress,
boolean udpgwTransparentDNS)
{
+ mContext = context;
mVpnInterfaceFileDescriptor = vpnInterfaceFileDescriptor;
mVpnInterfaceMTU = vpnInterfaceMTU;
@@ -118,5 +133,50 @@ public class Tun2Socks
int udpgwTransparentDNS);
private native static void terminateTun2Socks();
-
+
+ public static boolean isAllowed (int protocol, String sourceAddr, int sourcePort, String destAddr, int destPort) {
+
+ TCPSourceApp.AppDescriptor aInfo = TCPSourceApp.getApplicationInfo(mContext, sourceAddr, sourcePort, destAddr, destPort);
+
+ if (aInfo != null) {
+ int uid = aInfo.getUid();
+ return mAppUidBlacklist.containsKey(uid);
+ }
+ else
+ return true;
+ }
+
+ @TargetApi(Build.VERSION_CODES.Q)
+ public static boolean isAllowedQ (int protocol, String sourceAddr, int sourcePort, String destAddr, int destPort) {
+ ConnectivityManager cm = (ConnectivityManager) mContext.getSystemService(CONNECTIVITY_SERVICE);
+ if (cm == null)
+ return false;
+
+ InetSocketAddress local = new InetSocketAddress(sourceAddr, sourcePort);
+ InetSocketAddress remote = new InetSocketAddress(destAddr, destPort);
+
+ int uid = cm.getConnectionOwnerUid(protocol, local, remote);
+ return mAppUidBlacklist.containsKey(uid);
+ }
+
+ public static void setBlacklist(HashMap<Integer,String> appUidBlacklist)
+ {
+ mAppUidBlacklist = appUidBlacklist;
+ }
+
+ public static void clearBlacklist()
+ {
+ mAppUidBlacklist.clear();
+ }
+
+ public static void addToBlacklist (int uid, String pkgId)
+ {
+ mAppUidBlacklist.put(uid,pkgId);
+ }
+
+ public static void removeFromBlacklist (int uid)
+ {
+ mAppUidBlacklist.remove(uid);
+ }
+
}
\ No newline at end of file
1
0

28 Apr '20
commit 6304ffc8374258370e77e0aa4890b09e534b5dd7
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Wed Sep 4 08:24:14 2019 -0400
don't read the line twice and cause a NPE
---
.../main/java/org/torproject/android/service/vpn/OrbotVpnManager.java | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java b/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java
index 0af6dcff..9b099a24 100644
--- a/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java
+++ b/orbotservice/src/main/java/org/torproject/android/service/vpn/OrbotVpnManager.java
@@ -448,8 +448,7 @@ public class OrbotVpnManager implements Handler.Callback {
BufferedReader reader = new BufferedReader(new FileReader(filePid));
String line = reader.readLine();
if (line != null) {
- pid = reader.readLine().trim();
-
+ pid = line.trim();
VpnUtils.killProcess(pid, "-9");
filePid.delete();
return true;
1
0

[orbot/master] more work on app-mini user interface for configuration
by n8fr8@torproject.org 28 Apr '20
by n8fr8@torproject.org 28 Apr '20
28 Apr '20
commit e73d16c0982eecaa0d1ffe56d7f2f708a35a0458
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Wed Sep 4 17:07:53 2019 -0400
more work on app-mini user interface for configuration
---
app-mini/build.gradle | 6 +-
.../torproject/android/mini/MiniMainActivity.java | 21 ++++--
.../android/mini/ui/AppConfigActivity.java | 81 ++++++++++++++++++++--
.../src/main/res/layout/content_app_config.xml | 6 ++
app-mini/src/main/res/values/strings.xml | 4 +-
5 files changed, 101 insertions(+), 17 deletions(-)
diff --git a/app-mini/build.gradle b/app-mini/build.gradle
index ea8a8d22..678a70e6 100644
--- a/app-mini/build.gradle
+++ b/app-mini/build.gradle
@@ -20,12 +20,12 @@ android {
}
}
- compileSdkVersion 28
+ compileSdkVersion 29
buildToolsVersion '28.0.3'
defaultConfig {
applicationId "org.torproject.android.mini"
minSdkVersion 16
- targetSdkVersion 28
+ targetSdkVersion 29
}
lintOptions {
checkReleaseBuilds false
@@ -55,7 +55,7 @@ android {
applicationId 'org.torproject.android.mini'
targetSdkVersion 28
versionCode 10010000
- versionName '1.0.0-BETA-1-tor-0.4.0.4-rc'
+ versionName 'mini-1.0.0-BETA-1-tor-0.4.0.4-rc'
archivesBaseName = "Orbot-mini-$versionName"
}
}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
index e6f33ba0..54cf23a9 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
@@ -487,13 +487,20 @@ public class MiniMainActivity extends AppCompatActivity
private void enableVPN (boolean enable)
{
- Prefs.putUseVpn(enable);
-
- if (enable) {
- startActivityForResult(new Intent(MiniMainActivity.this, VPNEnableActivity.class), REQUEST_VPN);
- } else
- stopVpnService();
+ if (enable && pkgIds.size() == 0)
+ {
+ showAppPicker();
+ }
+ else {
+ Prefs.putUseVpn(enable);
+ if (enable) {
+ startActivityForResult(new Intent(MiniMainActivity.this, VPNEnableActivity.class), REQUEST_VPN);
+ } else {
+ stopVpnService();
+ stopTor();
+ }
+ }
}
@@ -1169,7 +1176,7 @@ public class MiniMainActivity extends AppCompatActivity
{
Intent data = new Intent(this, AppConfigActivity.class);
data.putExtra(Intent.EXTRA_PACKAGE_NAME,pkgId);
- startActivity(data);
+ startActivityForResult(data,REQUEST_VPN_APPS_SELECT);
}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/AppConfigActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/AppConfigActivity.java
index f4dcc6c6..d57674d3 100644
--- a/app-mini/src/main/java/org/torproject/android/mini/ui/AppConfigActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/AppConfigActivity.java
@@ -12,9 +12,13 @@ import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
+import android.widget.CompoundButton;
+import android.widget.Switch;
+import org.torproject.android.mini.MainConstants;
import org.torproject.android.mini.MiniMainActivity;
import org.torproject.android.mini.R;
+import org.torproject.android.service.OrbotConstants;
import org.torproject.android.service.util.TorServiceUtils;
import org.torproject.android.service.vpn.TorifiedApp;
@@ -25,6 +29,12 @@ public class AppConfigActivity extends AppCompatActivity {
TorifiedApp mApp;
+ private boolean mAppTor = false;
+ private boolean mAppData = false;
+ private boolean mAppWifi = false;
+
+ private SharedPreferences mPrefs;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -34,7 +44,9 @@ public class AppConfigActivity extends AppCompatActivity {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
- String pkgId = getIntent().getStringExtra(Intent.EXTRA_PACKAGE_NAME);
+ final String pkgId = getIntent().getStringExtra(Intent.EXTRA_PACKAGE_NAME);
+
+ mPrefs = TorServiceUtils.getSharedPrefs(getApplicationContext());
ApplicationInfo aInfo = null;
try {
@@ -47,27 +59,85 @@ public class AppConfigActivity extends AppCompatActivity {
}
catch (Exception e){}
+ mAppTor = mPrefs.getBoolean(pkgId + OrbotConstants.APP_TOR_KEY,true);
+ mAppData = mPrefs.getBoolean(pkgId + OrbotConstants.APP_DATA_KEY,false);
+ mAppWifi = mPrefs.getBoolean(pkgId + OrbotConstants.APP_WIFI_KEY,false);
+
+ Switch switchAppTor = findViewById(R.id.switch_app_tor);
+ switchAppTor.setChecked(mAppTor);
+ switchAppTor.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ mPrefs.edit().putBoolean(pkgId + OrbotConstants.APP_TOR_KEY,isChecked).commit();
+
+ Intent response = new Intent();
+ setResult(RESULT_OK,response);
+ }
+ });
+
+ Switch switchAppData = findViewById(R.id.switch_app_data);
+ switchAppData.setChecked(mAppData);
+ switchAppData.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ mPrefs.edit().putBoolean(pkgId + OrbotConstants.APP_DATA_KEY,isChecked).commit();
+
+ Intent response = new Intent();
+ setResult(RESULT_OK,response);
+ }
+ });
+ switchAppData.setEnabled(false);
+
+ Switch switchAppWifi = findViewById(R.id.switch_app_wifi);
+ switchAppWifi.setChecked(mAppWifi);
+ switchAppWifi.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ mPrefs.edit().putBoolean(pkgId + OrbotConstants.APP_WIFI_KEY,isChecked).commit();
+
+ Intent response = new Intent();
+ setResult(RESULT_OK,response);
+ }
+ });
+ switchAppWifi.setEnabled(false);
+
+
+
}
+ private void addApp ()
+ {
+ mApp.setTorified(true);
+
+ String tordAppString = mPrefs.getString(PREFS_KEY_TORIFIED, "");
+
+ tordAppString = tordAppString += mApp.getPackageName()+"|";
+
+ SharedPreferences.Editor edit = mPrefs.edit();
+ edit.putString(PREFS_KEY_TORIFIED, tordAppString);
+ edit.commit();
+
+ Intent response = new Intent();
+ setResult(RESULT_OK,response);
+
+ }
private void removeApp ()
{
mApp.setTorified(false);
- SharedPreferences prefs = TorServiceUtils.getSharedPrefs(getApplicationContext());
- String tordAppString = prefs.getString(PREFS_KEY_TORIFIED, "");
+ String tordAppString = mPrefs.getString(PREFS_KEY_TORIFIED, "");
tordAppString = tordAppString.replace(mApp.getPackageName()+"|","");
- SharedPreferences.Editor edit = prefs.edit();
+ SharedPreferences.Editor edit = mPrefs.edit();
edit.putString(PREFS_KEY_TORIFIED, tordAppString);
edit.commit();
Intent response = new Intent();
setResult(RESULT_OK,response);
- finish();
}
/*
@@ -91,6 +161,7 @@ public class AppConfigActivity extends AppCompatActivity {
}
else if (item.getItemId() == R.id.menu_remove_app) {
removeApp();
+ finish();
}
return super.onOptionsItemSelected(item);
diff --git a/app-mini/src/main/res/layout/content_app_config.xml b/app-mini/src/main/res/layout/content_app_config.xml
index 8e7b727e..3a8c41a8 100644
--- a/app-mini/src/main/res/layout/content_app_config.xml
+++ b/app-mini/src/main/res/layout/content_app_config.xml
@@ -33,6 +33,7 @@
/>
<Switch
+ android:id="@+id/switch_app_tor"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
@@ -64,6 +65,8 @@
android:layout_below="@+id/off_apps_title"
/>
<Switch
+ android:id="@+id/switch_app_data"
+
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
@@ -96,6 +99,9 @@
/>
<Switch
+
+ android:id="@+id/switch_app_wifi"
+
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
diff --git a/app-mini/src/main/res/values/strings.xml b/app-mini/src/main/res/values/strings.xml
index c7ae3edd..810ced96 100644
--- a/app-mini/src/main/res/values/strings.xml
+++ b/app-mini/src/main/res/values/strings.xml
@@ -264,8 +264,8 @@
<string name="title_boost_your_privacy">Boost Your Privacy</string>
<string name="send_your_app_traffic_over_tor">Send app data over Tor</string>
<string name="turn_off_apps">Turn off app data</string>
- <string name="stop_apps_from_using_the_network">Stop app from using the network</string>
+ <string name="stop_apps_from_using_the_network">Stop app from using the network (coming soon!)</string>
<string name="wifi_only">Wifi only</string>
- <string name="keep_your_apps_from_using_mobile_data">Only allow connection over wifi</string>
+ <string name="keep_your_apps_from_using_mobile_data">Only allow connection over wifi (coming soon!)</string>
<string name="remove">Remove</string>
</resources>
1
0

[orbot/master] manually use `aapt singleCrunch` for reproducible builds
by n8fr8@torproject.org 28 Apr '20
by n8fr8@torproject.org 28 Apr '20
28 Apr '20
commit 30cdfa93f27d21f3d2a2b79ec6b5cbd93586a366
Author: Hans-Christoph Steiner <hans(a)eds.org>
Date: Thu Sep 5 16:14:51 2019 +0200
manually use `aapt singleCrunch` for reproducible builds
PNG crunching is not a deterministic process, especially the way aapt does
it. This makes the builds not reproducible. The easy solution to this is
to pre-crunch the PNGs and commit them to git. This also uses exiftool to
strip any metadata from the PNG. This then disables running the crunch as
part of the gradle build process.
https://medium.com/@duhroach/smaller-pngs-and-android-s-aapt-tool-4ce38a240…
---
app-mini/src/main/ic_launcher-web.png | Bin 18915 -> 20211 bytes
.../res/drawable-hdpi-v11/ic_stat_notifyerr.png | Bin 480 -> 359 bytes
.../main/res/drawable-hdpi-v11/ic_stat_tor_off.png | Bin 744 -> 944 bytes
.../res/drawable-hdpi-v9/ic_stat_notifyerr.png | Bin 616 -> 508 bytes
.../main/res/drawable-hdpi/ic_action_settings.png | Bin 553 -> 329 bytes
.../res/drawable-hdpi/ic_settings_white_24dp.png | Bin 460 -> 816 bytes
.../main/res/drawable-hdpi/ic_stat_notifyerr.png | Bin 1312 -> 901 bytes
.../src/main/res/drawable-hdpi/ic_stat_tor.png | Bin 606 -> 912 bytes
.../res/drawable-ldpi-v11/ic_stat_notifyerr.png | Bin 294 -> 262 bytes
.../res/drawable-ldpi-v9/ic_stat_notifyerr.png | Bin 342 -> 326 bytes
.../main/res/drawable-ldpi/ic_action_settings.png | Bin 319 -> 250 bytes
.../main/res/drawable-ldpi/ic_stat_notifyerr.png | Bin 647 -> 443 bytes
.../res/drawable-mdpi-v11/ic_stat_notifyerr.png | Bin 357 -> 317 bytes
.../res/drawable-mdpi-v9/ic_stat_notifyerr.png | Bin 458 -> 417 bytes
.../res/drawable-mdpi/ic_settings_white_24dp.png | Bin 326 -> 598 bytes
.../src/main/res/drawable-mdpi/ic_stat_tor.png | Bin 389 -> 576 bytes
.../res/drawable-xhdpi-v11/ic_stat_notifyerr.png | Bin 618 -> 406 bytes
.../res/drawable-xhdpi-v9/ic_stat_notifyerr.png | Bin 747 -> 580 bytes
.../res/drawable-xhdpi/ic_settings_white_24dp.png | Bin 562 -> 982 bytes
.../src/main/res/drawable-xhdpi/ic_stat_tor.png | Bin 773 -> 1115 bytes
.../res/drawable-xxhdpi/ic_settings_white_24dp.png | Bin 843 -> 1455 bytes
.../src/main/res/drawable-xxhdpi/ic_stat_tor.png | Bin 1131 -> 1496 bytes
.../drawable-xxxhdpi/ic_settings_white_24dp.png | Bin 1074 -> 1764 bytes
.../src/main/res/drawable-xxxhdpi/ic_stat_tor.png | Bin 1564 -> 1899 bytes
app-mini/src/main/res/drawable/ic_menu_about.png | Bin 1771 -> 1479 bytes
app-mini/src/main/res/drawable/ic_menu_exit.png | Bin 2693 -> 1031 bytes
app-mini/src/main/res/drawable/ic_stat_tor_off.png | Bin 744 -> 944 bytes
app-mini/src/main/res/drawable/onion32.png | Bin 1599 -> 1402 bytes
app-mini/src/main/res/drawable/toroff.png | Bin 19187 -> 19161 bytes
app-mini/src/main/res/drawable/toron.png | Bin 19057 -> 19035 bytes
app-mini/src/main/res/drawable/torstarting.png | Bin 18052 -> 18019 bytes
app-mini/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 2019 -> 2579 bytes
.../res/mipmap-hdpi/ic_launcher_foreground.png | Bin 1815 -> 2048 bytes
.../src/main/res/mipmap-hdpi/ic_launcher_round.png | Bin 4055 -> 5226 bytes
app-mini/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 1456 -> 1473 bytes
.../res/mipmap-mdpi/ic_launcher_foreground.png | Bin 1174 -> 1536 bytes
.../src/main/res/mipmap-mdpi/ic_launcher_round.png | Bin 2620 -> 3414 bytes
app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 2761 -> 3479 bytes
.../res/mipmap-xhdpi/ic_launcher_foreground.png | Bin 2495 -> 2543 bytes
.../main/res/mipmap-xhdpi/ic_launcher_round.png | Bin 5714 -> 7313 bytes
.../src/main/res/mipmap-xxhdpi/ic_launcher.png | Bin 4143 -> 5120 bytes
.../res/mipmap-xxhdpi/ic_launcher_foreground.png | Bin 3922 -> 3468 bytes
.../main/res/mipmap-xxhdpi/ic_launcher_round.png | Bin 8706 -> 10885 bytes
.../src/main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 5726 -> 6935 bytes
.../res/mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 5467 -> 4466 bytes
.../main/res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 12555 -> 15090 bytes
app/build.gradle | 3 +++
.../res/drawable-hdpi-v11/ic_stat_notifyerr.png | Bin 480 -> 359 bytes
app/src/main/res/drawable-hdpi-v11/ic_stat_tor.png | Bin 802 -> 660 bytes
.../main/res/drawable-hdpi-v11/ic_stat_tor_off.png | Bin 744 -> 944 bytes
.../res/drawable-hdpi-v11/ic_stat_tor_xfer.png | Bin 967 -> 1073 bytes
.../res/drawable-hdpi-v9/ic_stat_notifyerr.png | Bin 616 -> 508 bytes
app/src/main/res/drawable-hdpi-v9/ic_stat_tor.png | Bin 713 -> 640 bytes
.../main/res/drawable-hdpi/ic_action_settings.png | Bin 553 -> 329 bytes
app/src/main/res/drawable-hdpi/ic_launcher.png | Bin 4194 -> 3616 bytes
.../res/drawable-hdpi/ic_settings_white_24dp.png | Bin 460 -> 816 bytes
.../main/res/drawable-hdpi/ic_stat_notifyerr.png | Bin 1312 -> 901 bytes
app/src/main/res/drawable-hdpi/ic_stat_tor.png | Bin 852 -> 715 bytes
.../main/res/drawable-hdpi/ic_stat_tor_xfer.png | Bin 990 -> 969 bytes
.../res/drawable-ldpi-v11/ic_stat_notifyerr.png | Bin 294 -> 262 bytes
app/src/main/res/drawable-ldpi-v11/ic_stat_tor.png | Bin 390 -> 420 bytes
.../res/drawable-ldpi-v9/ic_stat_notifyerr.png | Bin 342 -> 326 bytes
app/src/main/res/drawable-ldpi-v9/ic_stat_tor.png | Bin 358 -> 365 bytes
.../main/res/drawable-ldpi/ic_action_settings.png | Bin 319 -> 250 bytes
app/src/main/res/drawable-ldpi/ic_launcher.png | Bin 2394 -> 2004 bytes
.../main/res/drawable-ldpi/ic_stat_notifyerr.png | Bin 647 -> 443 bytes
app/src/main/res/drawable-ldpi/ic_stat_tor.png | Bin 606 -> 494 bytes
.../res/drawable-mdpi-v11/ic_stat_notifyerr.png | Bin 357 -> 317 bytes
app/src/main/res/drawable-mdpi-v11/ic_stat_tor.png | Bin 517 -> 441 bytes
.../res/drawable-mdpi-v11/ic_stat_tor_xfer.png | Bin 607 -> 741 bytes
.../res/drawable-mdpi-v9/ic_stat_notifyerr.png | Bin 458 -> 417 bytes
app/src/main/res/drawable-mdpi-v9/ic_stat_tor.png | Bin 475 -> 464 bytes
.../res/drawable-mdpi/ic_settings_white_24dp.png | Bin 326 -> 598 bytes
.../res/drawable-xhdpi-v11/ic_stat_notifyerr.png | Bin 618 -> 406 bytes
.../main/res/drawable-xhdpi-v11/ic_stat_tor.png | Bin 1165 -> 887 bytes
.../res/drawable-xhdpi-v11/ic_stat_tor_xfer.png | Bin 1337 -> 1348 bytes
.../res/drawable-xhdpi-v9/ic_stat_notifyerr.png | Bin 747 -> 580 bytes
app/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png | Bin 970 -> 864 bytes
.../res/drawable-xhdpi/ic_settings_white_24dp.png | Bin 562 -> 982 bytes
.../main/res/drawable-xxhdpi-v11/ic_stat_tor.png | Bin 1903 -> 1307 bytes
.../res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png | Bin 2019 -> 1734 bytes
.../res/drawable-xxhdpi/ic_settings_white_24dp.png | Bin 843 -> 1455 bytes
.../main/res/drawable-xxxhdpi-v11/ic_stat_tor.png | Bin 2661 -> 1734 bytes
.../res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png | Bin 3156 -> 2424 bytes
.../drawable-xxxhdpi/ic_settings_white_24dp.png | Bin 1074 -> 1764 bytes
app/src/main/res/drawable/ic_launcher.png | Bin 6055 -> 5111 bytes
app/src/main/res/drawable/ic_menu_about.png | Bin 1771 -> 1479 bytes
app/src/main/res/drawable/ic_menu_exit.png | Bin 2693 -> 1031 bytes
app/src/main/res/drawable/ic_stat_tor_off.png | Bin 744 -> 944 bytes
app/src/main/res/drawable/ic_stat_tor_xfer.png | Bin 600 -> 628 bytes
app/src/main/res/drawable/onion32.png | Bin 1599 -> 1402 bytes
app/src/main/res/drawable/toroff.png | Bin 19187 -> 19161 bytes
app/src/main/res/drawable/toron.png | Bin 19057 -> 19035 bytes
app/src/main/res/drawable/torstarting.png | Bin 18052 -> 18019 bytes
.../android/en-US/images/featureGraphic.png | Bin 299999 -> 224893 bytes
fastlane/metadata/android/en-US/images/icon.png | Bin 46595 -> 31345 bytes
.../phoneScreenshots/device-2018-01-05-122015.png | Bin 337474 -> 254422 bytes
.../phoneScreenshots/device-2018-01-05-122035.png | Bin 119904 -> 96898 bytes
.../phoneScreenshots/device-2018-01-05-122111.png | Bin 472163 -> 358410 bytes
.../phoneScreenshots/device-2018-01-05-122301.png | Bin 65793 -> 52269 bytes
.../phoneScreenshots/device-2018-01-05-122310.png | Bin 65793 -> 52269 bytes
.../phoneScreenshots/device-2018-01-05-122314.png | Bin 65793 -> 52269 bytes
.../phoneScreenshots/device-2018-01-05-122344.png | Bin 236020 -> 193597 bytes
.../phoneScreenshots/device-2018-01-05-123814.png | Bin 282081 -> 222617 bytes
.../phoneScreenshots/device-2018-01-05-123828.png | Bin 148480 -> 120576 bytes
.../phoneScreenshots/device-2018-01-05-123836.png | Bin 161380 -> 130945 bytes
.../phoneScreenshots/device-2018-01-05-123908.png | Bin 344849 -> 259920 bytes
.../phoneScreenshots/device-2018-01-05-124039.png | Bin 49019 -> 39303 bytes
.../phoneScreenshots/device-2018-01-05-124045.png | Bin 73495 -> 58218 bytes
.../phoneScreenshots/device-2018-01-05-124052.png | Bin 80358 -> 64827 bytes
.../phoneScreenshots/device-2018-01-05-124059.png | Bin 120833 -> 96786 bytes
orbotservice/build.gradle | 4 ++++
.../res/drawable-hdpi-v11/ic_stat_notifyerr.png | Bin 480 -> 359 bytes
.../main/res/drawable-hdpi-v11/ic_stat_tor_off.png | Bin 744 -> 944 bytes
.../res/drawable-hdpi-v9/ic_stat_notifyerr.png | Bin 616 -> 508 bytes
.../res/drawable-hdpi/ic_refresh_white_24dp.png | Bin 387 -> 675 bytes
.../main/res/drawable-hdpi/ic_stat_notifyerr.png | Bin 1312 -> 901 bytes
.../src/main/res/drawable-hdpi/ic_stat_tor.png | Bin 1136 -> 1519 bytes
.../res/drawable-ldpi-v11/ic_stat_notifyerr.png | Bin 294 -> 262 bytes
.../res/drawable-ldpi-v9/ic_stat_notifyerr.png | Bin 342 -> 326 bytes
.../main/res/drawable-ldpi/ic_stat_notifyerr.png | Bin 647 -> 443 bytes
.../res/drawable-mdpi-v11/ic_stat_notifyerr.png | Bin 357 -> 317 bytes
.../res/drawable-mdpi-v9/ic_stat_notifyerr.png | Bin 458 -> 417 bytes
.../drawable-mdpi/ic_action_settings.png | Bin 364 -> 251 bytes
.../drawable-mdpi/ic_autorenew_black_36dp.png | Bin 369 -> 578 bytes
.../drawable-mdpi/ic_filter_none_black_36dp.png | Bin 198 -> 251 bytes
.../drawable-mdpi/drawable-mdpi/ic_launcher.png | Bin 2677 -> 2319 bytes
.../ic_playlist_add_check_black_36dp.png | Bin 163 -> 202 bytes
.../drawable-mdpi/ic_stat_notifyerr.png | Bin 883 -> 617 bytes
.../drawable-mdpi/drawable-mdpi/ic_stat_tor.png | Bin 535 -> 479 bytes
.../drawable-mdpi/ic_stat_tor_xfer.png | Bin 600 -> 628 bytes
.../res/drawable-mdpi/drawable-mdpi/inverse.png | Bin 1027 -> 1231 bytes
.../res/drawable-mdpi/ic_refresh_white_24dp.png | Bin 254 -> 426 bytes
.../main/res/drawable-mdpi/ic_stat_notifyerr.png | Bin 883 -> 617 bytes
.../src/main/res/drawable-mdpi/ic_stat_tor.png | Bin 622 -> 943 bytes
.../res/drawable-xhdpi-v11/ic_stat_notifyerr.png | Bin 618 -> 406 bytes
.../res/drawable-xhdpi-v9/ic_stat_notifyerr.png | Bin 747 -> 580 bytes
.../res/drawable-xhdpi/ic_refresh_white_24dp.png | Bin 509 -> 895 bytes
.../main/res/drawable-xhdpi/ic_stat_notifyerr.png | Bin 1796 -> 1370 bytes
.../src/main/res/drawable-xhdpi/ic_stat_tor.png | Bin 1774 -> 2148 bytes
.../drawable-xxhdpi/ic_autorenew_black_36dp.png | Bin 1000 -> 1440 bytes
.../drawable-xxhdpi/ic_filter_none_black_36dp.png | Bin 415 -> 518 bytes
.../drawable-xxhdpi/ic_launcher.png | Bin 9556 -> 7975 bytes
.../ic_playlist_add_check_black_36dp.png | Bin 325 -> 413 bytes
.../drawable-xxhdpi/ic_stat_tor.png | Bin 1872 -> 1430 bytes
.../drawable-xxhdpi/ic_stat_tor_xfer.png | Bin 2216 -> 1295 bytes
.../drawable-xxhdpi/drawable-xxhdpi/inverse.png | Bin 1027 -> 1231 bytes
.../res/drawable-xxhdpi/ic_refresh_white_24dp.png | Bin 734 -> 1231 bytes
.../src/main/res/drawable-xxhdpi/ic_stat_tor.png | Bin 3241 -> 3296 bytes
.../drawable-xxxhdpi/ic_autorenew_black_36dp.png | Bin 1362 -> 1953 bytes
.../drawable-xxxhdpi/ic_filter_none_black_36dp.png | Bin 505 -> 577 bytes
.../drawable-xxxhdpi/ic_launcher.png | Bin 13297 -> 11077 bytes
.../ic_playlist_add_check_black_36dp.png | Bin 379 -> 440 bytes
.../drawable-xxxhdpi/ic_stat_tor.png | Bin 2631 -> 1998 bytes
.../drawable-xxxhdpi/ic_stat_tor_xfer.png | Bin 2859 -> 1585 bytes
.../drawable-xxxhdpi/drawable-xxxhdpi/inverse.png | Bin 1027 -> 1231 bytes
.../res/drawable-xxxhdpi/ic_refresh_white_24dp.png | Bin 967 -> 1553 bytes
.../src/main/res/drawable-xxxhdpi/ic_stat_tor.png | Bin 3188 -> 3580 bytes
tools/png-pre-compress | 18 ++++++++++++++++++
159 files changed, 25 insertions(+)
diff --git a/app-mini/src/main/ic_launcher-web.png b/app-mini/src/main/ic_launcher-web.png
index fe170c1e..6903b7bd 100644
Binary files a/app-mini/src/main/ic_launcher-web.png and b/app-mini/src/main/ic_launcher-web.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png
index 1f97a9ed..782a52d9 100644
Binary files a/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png
index 6df646eb..a8cbe1de 100644
Binary files a/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png and b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png
index 58fc5ae8..75f8a863 100644
Binary files a/app-mini/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_action_settings.png b/app-mini/src/main/res/drawable-hdpi/ic_action_settings.png
index d57b2905..6bcf08a7 100644
Binary files a/app-mini/src/main/res/drawable-hdpi/ic_action_settings.png and b/app-mini/src/main/res/drawable-hdpi/ic_action_settings.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-hdpi/ic_settings_white_24dp.png
index 97ded33b..55d652f5 100644
Binary files a/app-mini/src/main/res/drawable-hdpi/ic_settings_white_24dp.png and b/app-mini/src/main/res/drawable-hdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-hdpi/ic_stat_notifyerr.png
index b65fa648..abd8c126 100644
Binary files a/app-mini/src/main/res/drawable-hdpi/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-hdpi/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-hdpi/ic_stat_tor.png
index 3091474e..b50c7a3f 100644
Binary files a/app-mini/src/main/res/drawable-hdpi/ic_stat_tor.png and b/app-mini/src/main/res/drawable-hdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png
index b73292dd..43d71e2f 100644
Binary files a/app-mini/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png
index 2787bbb5..eedf7faf 100644
Binary files a/app-mini/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi/ic_action_settings.png b/app-mini/src/main/res/drawable-ldpi/ic_action_settings.png
index c3927fd7..d179ccec 100644
Binary files a/app-mini/src/main/res/drawable-ldpi/ic_action_settings.png and b/app-mini/src/main/res/drawable-ldpi/ic_action_settings.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-ldpi/ic_stat_notifyerr.png
index 518e188e..645432c2 100644
Binary files a/app-mini/src/main/res/drawable-ldpi/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-ldpi/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png
index 935e2093..e55893c3 100644
Binary files a/app-mini/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png
index b1490315..b19d6b65 100644
Binary files a/app-mini/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-mdpi/ic_settings_white_24dp.png
index 8909c355..74830332 100644
Binary files a/app-mini/src/main/res/drawable-mdpi/ic_settings_white_24dp.png and b/app-mini/src/main/res/drawable-mdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-mdpi/ic_stat_tor.png
index a10c654d..a4b2f3ec 100644
Binary files a/app-mini/src/main/res/drawable-mdpi/ic_stat_tor.png and b/app-mini/src/main/res/drawable-mdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png
index bed9e215..36f750a5 100644
Binary files a/app-mini/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png
index 7d1139c9..7eaea7be 100644
Binary files a/app-mini/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png and b/app-mini/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png
index 5caedc8e..24dc0e8c 100644
Binary files a/app-mini/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png and b/app-mini/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-xhdpi/ic_stat_tor.png
index 25bf4549..0cec60a0 100644
Binary files a/app-mini/src/main/res/drawable-xhdpi/ic_stat_tor.png and b/app-mini/src/main/res/drawable-xhdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png
index eabb0a2b..3c1b30ad 100644
Binary files a/app-mini/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png and b/app-mini/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-xxhdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-xxhdpi/ic_stat_tor.png
index fb7bce8a..781d6a47 100644
Binary files a/app-mini/src/main/res/drawable-xxhdpi/ic_stat_tor.png and b/app-mini/src/main/res/drawable-xxhdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png
index 507c5edd..f27a68b7 100644
Binary files a/app-mini/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png and b/app-mini/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-xxxhdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-xxxhdpi/ic_stat_tor.png
index 32595644..1661fd13 100644
Binary files a/app-mini/src/main/res/drawable-xxxhdpi/ic_stat_tor.png and b/app-mini/src/main/res/drawable-xxxhdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable/ic_menu_about.png b/app-mini/src/main/res/drawable/ic_menu_about.png
index 866d4e0b..5734d4d3 100644
Binary files a/app-mini/src/main/res/drawable/ic_menu_about.png and b/app-mini/src/main/res/drawable/ic_menu_about.png differ
diff --git a/app-mini/src/main/res/drawable/ic_menu_exit.png b/app-mini/src/main/res/drawable/ic_menu_exit.png
index d301ea64..f6491824 100644
Binary files a/app-mini/src/main/res/drawable/ic_menu_exit.png and b/app-mini/src/main/res/drawable/ic_menu_exit.png differ
diff --git a/app-mini/src/main/res/drawable/ic_stat_tor_off.png b/app-mini/src/main/res/drawable/ic_stat_tor_off.png
index 6df646eb..a8cbe1de 100644
Binary files a/app-mini/src/main/res/drawable/ic_stat_tor_off.png and b/app-mini/src/main/res/drawable/ic_stat_tor_off.png differ
diff --git a/app-mini/src/main/res/drawable/onion32.png b/app-mini/src/main/res/drawable/onion32.png
index 78467601..5e002370 100644
Binary files a/app-mini/src/main/res/drawable/onion32.png and b/app-mini/src/main/res/drawable/onion32.png differ
diff --git a/app-mini/src/main/res/drawable/toroff.png b/app-mini/src/main/res/drawable/toroff.png
index 759400f2..d7367ea2 100644
Binary files a/app-mini/src/main/res/drawable/toroff.png and b/app-mini/src/main/res/drawable/toroff.png differ
diff --git a/app-mini/src/main/res/drawable/toron.png b/app-mini/src/main/res/drawable/toron.png
index 12f830a5..46a5e5af 100644
Binary files a/app-mini/src/main/res/drawable/toron.png and b/app-mini/src/main/res/drawable/toron.png differ
diff --git a/app-mini/src/main/res/drawable/torstarting.png b/app-mini/src/main/res/drawable/torstarting.png
index 3a08305f..b58490fb 100644
Binary files a/app-mini/src/main/res/drawable/torstarting.png and b/app-mini/src/main/res/drawable/torstarting.png differ
diff --git a/app-mini/src/main/res/mipmap-hdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-hdpi/ic_launcher.png
index 42426c19..eef89435 100644
Binary files a/app-mini/src/main/res/mipmap-hdpi/ic_launcher.png and b/app-mini/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-hdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
index aa867fe2..01d70758 100644
Binary files a/app-mini/src/main/res/mipmap-hdpi/ic_launcher_foreground.png and b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-hdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_round.png
index d8e76add..2508f71b 100644
Binary files a/app-mini/src/main/res/mipmap-hdpi/ic_launcher_round.png and b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-mdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-mdpi/ic_launcher.png
index 6c8a8aac..5b616d96 100644
Binary files a/app-mini/src/main/res/mipmap-mdpi/ic_launcher.png and b/app-mini/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-mdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
index ea25e877..ada9b628 100644
Binary files a/app-mini/src/main/res/mipmap-mdpi/ic_launcher_foreground.png and b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-mdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_round.png
index d056f3cf..50a61022 100644
Binary files a/app-mini/src/main/res/mipmap-mdpi/ic_launcher_round.png and b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png
index 09ca1b23..f7cf2a02 100644
Binary files a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png and b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
index 782034e0..18b8fad9 100644
Binary files a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png and b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_round.png
index 9197cb68..9613090b 100644
Binary files a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_round.png and b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher.png
index b45b0359..e6d96037 100644
Binary files a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher.png and b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
index a0b88e23..9e9c5835 100644
Binary files a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png and b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
index 51aac254..31f253ca 100644
Binary files a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher.png
index 7061de75..2cbd708a 100644
Binary files a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher.png and b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
index 829f12db..c7d8e5ee 100644
Binary files a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png and b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
index 1b155587..05f7e20c 100644
Binary files a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ
diff --git a/app/build.gradle b/app/build.gradle
index a6b56a43..b51afb13 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -31,6 +31,9 @@ android {
minSdkVersion 16
targetSdkVersion 29
}
+ aaptOptions {
+ cruncherEnabled = false
+ }
lintOptions {
checkReleaseBuilds false
// Or, if you prefer, you can continue to check for errors in release builds,
diff --git a/app/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png b/app/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png
index 1f97a9ed..782a52d9 100644
Binary files a/app/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png and b/app/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-hdpi-v11/ic_stat_tor.png b/app/src/main/res/drawable-hdpi-v11/ic_stat_tor.png
index b4d2e333..543c788f 100644
Binary files a/app/src/main/res/drawable-hdpi-v11/ic_stat_tor.png and b/app/src/main/res/drawable-hdpi-v11/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png b/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png
index 6df646eb..a8cbe1de 100644
Binary files a/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png and b/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png differ
diff --git a/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_xfer.png b/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_xfer.png
index 3d757218..781f061a 100644
Binary files a/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_xfer.png and b/app/src/main/res/drawable-hdpi-v11/ic_stat_tor_xfer.png differ
diff --git a/app/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png b/app/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png
index 58fc5ae8..75f8a863 100644
Binary files a/app/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png and b/app/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-hdpi-v9/ic_stat_tor.png b/app/src/main/res/drawable-hdpi-v9/ic_stat_tor.png
index 1dfdc09a..716e4981 100644
Binary files a/app/src/main/res/drawable-hdpi-v9/ic_stat_tor.png and b/app/src/main/res/drawable-hdpi-v9/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_action_settings.png b/app/src/main/res/drawable-hdpi/ic_action_settings.png
index d57b2905..6bcf08a7 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_action_settings.png and b/app/src/main/res/drawable-hdpi/ic_action_settings.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_launcher.png b/app/src/main/res/drawable-hdpi/ic_launcher.png
index e9954eb7..ce4331de 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_launcher.png and b/app/src/main/res/drawable-hdpi/ic_launcher.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_settings_white_24dp.png b/app/src/main/res/drawable-hdpi/ic_settings_white_24dp.png
index 97ded33b..55d652f5 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_settings_white_24dp.png and b/app/src/main/res/drawable-hdpi/ic_settings_white_24dp.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_stat_notifyerr.png b/app/src/main/res/drawable-hdpi/ic_stat_notifyerr.png
index b65fa648..abd8c126 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_stat_notifyerr.png and b/app/src/main/res/drawable-hdpi/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_stat_tor.png b/app/src/main/res/drawable-hdpi/ic_stat_tor.png
index 0f3b147e..0f8f87d1 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_stat_tor.png and b/app/src/main/res/drawable-hdpi/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-hdpi/ic_stat_tor_xfer.png b/app/src/main/res/drawable-hdpi/ic_stat_tor_xfer.png
index d222fb67..44a2f772 100644
Binary files a/app/src/main/res/drawable-hdpi/ic_stat_tor_xfer.png and b/app/src/main/res/drawable-hdpi/ic_stat_tor_xfer.png differ
diff --git a/app/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png b/app/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png
index b73292dd..43d71e2f 100644
Binary files a/app/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png and b/app/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-ldpi-v11/ic_stat_tor.png b/app/src/main/res/drawable-ldpi-v11/ic_stat_tor.png
index 0f24ee8a..e3d85b5b 100644
Binary files a/app/src/main/res/drawable-ldpi-v11/ic_stat_tor.png and b/app/src/main/res/drawable-ldpi-v11/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png b/app/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png
index 2787bbb5..eedf7faf 100644
Binary files a/app/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png and b/app/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-ldpi-v9/ic_stat_tor.png b/app/src/main/res/drawable-ldpi-v9/ic_stat_tor.png
index 82d54466..2f344690 100644
Binary files a/app/src/main/res/drawable-ldpi-v9/ic_stat_tor.png and b/app/src/main/res/drawable-ldpi-v9/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_action_settings.png b/app/src/main/res/drawable-ldpi/ic_action_settings.png
index c3927fd7..d179ccec 100644
Binary files a/app/src/main/res/drawable-ldpi/ic_action_settings.png and b/app/src/main/res/drawable-ldpi/ic_action_settings.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_launcher.png b/app/src/main/res/drawable-ldpi/ic_launcher.png
index aed52cbc..089ac7e2 100644
Binary files a/app/src/main/res/drawable-ldpi/ic_launcher.png and b/app/src/main/res/drawable-ldpi/ic_launcher.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_stat_notifyerr.png b/app/src/main/res/drawable-ldpi/ic_stat_notifyerr.png
index 518e188e..645432c2 100644
Binary files a/app/src/main/res/drawable-ldpi/ic_stat_notifyerr.png and b/app/src/main/res/drawable-ldpi/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-ldpi/ic_stat_tor.png b/app/src/main/res/drawable-ldpi/ic_stat_tor.png
index 3cd399db..1a18c2ab 100644
Binary files a/app/src/main/res/drawable-ldpi/ic_stat_tor.png and b/app/src/main/res/drawable-ldpi/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png b/app/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png
index 935e2093..e55893c3 100644
Binary files a/app/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png and b/app/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-mdpi-v11/ic_stat_tor.png b/app/src/main/res/drawable-mdpi-v11/ic_stat_tor.png
index a34840dc..be7dccf7 100644
Binary files a/app/src/main/res/drawable-mdpi-v11/ic_stat_tor.png and b/app/src/main/res/drawable-mdpi-v11/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-mdpi-v11/ic_stat_tor_xfer.png b/app/src/main/res/drawable-mdpi-v11/ic_stat_tor_xfer.png
index fe291e76..04168ec8 100644
Binary files a/app/src/main/res/drawable-mdpi-v11/ic_stat_tor_xfer.png and b/app/src/main/res/drawable-mdpi-v11/ic_stat_tor_xfer.png differ
diff --git a/app/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png b/app/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png
index b1490315..b19d6b65 100644
Binary files a/app/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png and b/app/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-mdpi-v9/ic_stat_tor.png b/app/src/main/res/drawable-mdpi-v9/ic_stat_tor.png
index c150cede..be212d07 100644
Binary files a/app/src/main/res/drawable-mdpi-v9/ic_stat_tor.png and b/app/src/main/res/drawable-mdpi-v9/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_settings_white_24dp.png b/app/src/main/res/drawable-mdpi/ic_settings_white_24dp.png
index 8909c355..74830332 100644
Binary files a/app/src/main/res/drawable-mdpi/ic_settings_white_24dp.png and b/app/src/main/res/drawable-mdpi/ic_settings_white_24dp.png differ
diff --git a/app/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png b/app/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png
index bed9e215..36f750a5 100644
Binary files a/app/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png and b/app/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor.png b/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor.png
index e742ae7b..2344022f 100644
Binary files a/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor.png and b/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor_xfer.png b/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor_xfer.png
index 27e86725..270a4139 100644
Binary files a/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor_xfer.png and b/app/src/main/res/drawable-xhdpi-v11/ic_stat_tor_xfer.png differ
diff --git a/app/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png b/app/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png
index 7d1139c9..7eaea7be 100644
Binary files a/app/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png and b/app/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png b/app/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png
index 9e56f4fc..ce82130d 100644
Binary files a/app/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png and b/app/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png
index 5caedc8e..24dc0e8c 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png and b/app/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png differ
diff --git a/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor.png b/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor.png
index 1451c505..c162b7e0 100644
Binary files a/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor.png and b/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png b/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png
index 59e63d4d..0d09348f 100644
Binary files a/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png and b/app/src/main/res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png
index eabb0a2b..3c1b30ad 100644
Binary files a/app/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png and b/app/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor.png b/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor.png
index a78d2907..5b6154a8 100644
Binary files a/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor.png and b/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png b/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png
index 30fe5893..8e6eb04a 100644
Binary files a/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png and b/app/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png
index 507c5edd..f27a68b7 100644
Binary files a/app/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png and b/app/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png differ
diff --git a/app/src/main/res/drawable/ic_launcher.png b/app/src/main/res/drawable/ic_launcher.png
index ea473739..5f418e7c 100644
Binary files a/app/src/main/res/drawable/ic_launcher.png and b/app/src/main/res/drawable/ic_launcher.png differ
diff --git a/app/src/main/res/drawable/ic_menu_about.png b/app/src/main/res/drawable/ic_menu_about.png
index 866d4e0b..5734d4d3 100644
Binary files a/app/src/main/res/drawable/ic_menu_about.png and b/app/src/main/res/drawable/ic_menu_about.png differ
diff --git a/app/src/main/res/drawable/ic_menu_exit.png b/app/src/main/res/drawable/ic_menu_exit.png
index d301ea64..f6491824 100644
Binary files a/app/src/main/res/drawable/ic_menu_exit.png and b/app/src/main/res/drawable/ic_menu_exit.png differ
diff --git a/app/src/main/res/drawable/ic_stat_tor_off.png b/app/src/main/res/drawable/ic_stat_tor_off.png
index 6df646eb..a8cbe1de 100644
Binary files a/app/src/main/res/drawable/ic_stat_tor_off.png and b/app/src/main/res/drawable/ic_stat_tor_off.png differ
diff --git a/app/src/main/res/drawable/ic_stat_tor_xfer.png b/app/src/main/res/drawable/ic_stat_tor_xfer.png
index 73ab2330..ec893235 100644
Binary files a/app/src/main/res/drawable/ic_stat_tor_xfer.png and b/app/src/main/res/drawable/ic_stat_tor_xfer.png differ
diff --git a/app/src/main/res/drawable/onion32.png b/app/src/main/res/drawable/onion32.png
index 78467601..5e002370 100644
Binary files a/app/src/main/res/drawable/onion32.png and b/app/src/main/res/drawable/onion32.png differ
diff --git a/app/src/main/res/drawable/toroff.png b/app/src/main/res/drawable/toroff.png
index 759400f2..d7367ea2 100644
Binary files a/app/src/main/res/drawable/toroff.png and b/app/src/main/res/drawable/toroff.png differ
diff --git a/app/src/main/res/drawable/toron.png b/app/src/main/res/drawable/toron.png
index 12f830a5..46a5e5af 100644
Binary files a/app/src/main/res/drawable/toron.png and b/app/src/main/res/drawable/toron.png differ
diff --git a/app/src/main/res/drawable/torstarting.png b/app/src/main/res/drawable/torstarting.png
index 3a08305f..b58490fb 100644
Binary files a/app/src/main/res/drawable/torstarting.png and b/app/src/main/res/drawable/torstarting.png differ
diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png
index f0c12d40..e34640ef 100644
Binary files a/fastlane/metadata/android/en-US/images/featureGraphic.png and b/fastlane/metadata/android/en-US/images/featureGraphic.png differ
diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png
index 2f8735c1..9813df31 100644
Binary files a/fastlane/metadata/android/en-US/images/icon.png and b/fastlane/metadata/android/en-US/images/icon.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122015.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122015.png
index c8e777b6..14307613 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122015.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122015.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122035.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122035.png
index add55f2e..c105aaab 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122035.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122035.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122111.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122111.png
index 593e9308..47e9d9f6 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122111.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122111.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122301.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122301.png
index 61e27eb4..256932bc 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122301.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122301.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122310.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122310.png
index 61e27eb4..256932bc 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122310.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122310.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122314.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122314.png
index 61e27eb4..256932bc 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122314.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122314.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122344.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122344.png
index 6f118d8c..96f8a24c 100644
Binary files a/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122344.png and b/fastlane/metadata/android/en-US/images/phoneScreenshots/device-2018-01-05-122344.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123814.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123814.png
index 356bc950..f11425d1 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123814.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123814.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123828.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123828.png
index a70c93ec..d6d6cb68 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123828.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123828.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123836.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123836.png
index 6896c0fd..0f94e5ac 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123836.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123836.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123908.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123908.png
index 47d3b5f5..a8ffda63 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123908.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-123908.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124039.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124039.png
index 10f76ee7..db835f9b 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124039.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124039.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124045.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124045.png
index 1b4f1dcc..6f7b0a8f 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124045.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124045.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124052.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124052.png
index 086a1b22..7500ca90 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124052.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124052.png differ
diff --git a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124059.png b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124059.png
index 76c95c6e..4f51e829 100644
Binary files a/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124059.png and b/fastlane/metadata/android/fa/images/phoneScreenshots/device-2018-01-05-124059.png differ
diff --git a/orbotservice/build.gradle b/orbotservice/build.gradle
index a5d07d76..96861f1e 100644
--- a/orbotservice/build.gradle
+++ b/orbotservice/build.gradle
@@ -25,6 +25,10 @@ android {
}
}
+ aaptOptions {
+ cruncherEnabled = false
+ }
+
lintOptions {
abortOnError false
}
diff --git a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png
index 1f97a9ed..782a52d9 100644
Binary files a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png b/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png
index 6df646eb..a8cbe1de 100644
Binary files a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png and b/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png differ
diff --git a/orbotservice/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png
index 58fc5ae8..75f8a863 100644
Binary files a/orbotservice/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-hdpi/ic_refresh_white_24dp.png b/orbotservice/src/main/res/drawable-hdpi/ic_refresh_white_24dp.png
index ffa7be93..19bea38e 100644
Binary files a/orbotservice/src/main/res/drawable-hdpi/ic_refresh_white_24dp.png and b/orbotservice/src/main/res/drawable-hdpi/ic_refresh_white_24dp.png differ
diff --git a/orbotservice/src/main/res/drawable-hdpi/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-hdpi/ic_stat_notifyerr.png
index b65fa648..abd8c126 100644
Binary files a/orbotservice/src/main/res/drawable-hdpi/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-hdpi/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png
index af616fc9..1ccb6ec8 100644
Binary files a/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png
index b73292dd..43d71e2f 100644
Binary files a/orbotservice/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png
index 2787bbb5..eedf7faf 100644
Binary files a/orbotservice/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-ldpi/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-ldpi/ic_stat_notifyerr.png
index 518e188e..645432c2 100644
Binary files a/orbotservice/src/main/res/drawable-ldpi/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-ldpi/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png
index 935e2093..e55893c3 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png
index b1490315..b19d6b65 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_action_settings.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_action_settings.png
index d90f1255..4b965fa7 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_action_settings.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_action_settings.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_autorenew_black_36dp.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_autorenew_black_36dp.png
index 39be19e4..32a688d8 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_autorenew_black_36dp.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_autorenew_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_filter_none_black_36dp.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_filter_none_black_36dp.png
index ebe663df..c4a6d7d7 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_filter_none_black_36dp.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_filter_none_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_launcher.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_launcher.png
index e45ce29a..d81f1159 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_launcher.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_launcher.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_playlist_add_check_black_36dp.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_playlist_add_check_black_36dp.png
index 92448842..0a3f63b8 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_playlist_add_check_black_36dp.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_playlist_add_check_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_notifyerr.png
index c4b3178e..87684ad8 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor.png
index 6649e14a..116cb16c 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor_xfer.png
index 73ab2330..ec893235 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor_xfer.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/ic_stat_tor_xfer.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/inverse.png b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/inverse.png
index 65eff2c7..71e1adc5 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/inverse.png and b/orbotservice/src/main/res/drawable-mdpi/drawable-mdpi/inverse.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/ic_refresh_white_24dp.png b/orbotservice/src/main/res/drawable-mdpi/ic_refresh_white_24dp.png
index 97e42b52..99233274 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/ic_refresh_white_24dp.png and b/orbotservice/src/main/res/drawable-mdpi/ic_refresh_white_24dp.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-mdpi/ic_stat_notifyerr.png
index c4b3178e..87684ad8 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-mdpi/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png
index a2da32e6..dff3187f 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png
index bed9e215..36f750a5 100644
Binary files a/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png
index 7d1139c9..7eaea7be 100644
Binary files a/orbotservice/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi/ic_refresh_white_24dp.png b/orbotservice/src/main/res/drawable-xhdpi/ic_refresh_white_24dp.png
index 1989184b..91d695d2 100644
Binary files a/orbotservice/src/main/res/drawable-xhdpi/ic_refresh_white_24dp.png and b/orbotservice/src/main/res/drawable-xhdpi/ic_refresh_white_24dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_notifyerr.png b/orbotservice/src/main/res/drawable-xhdpi/ic_stat_notifyerr.png
index f48e8e83..44327e6c 100644
Binary files a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_notifyerr.png and b/orbotservice/src/main/res/drawable-xhdpi/ic_stat_notifyerr.png differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png
index 3f64c293..3e0d67ae 100644
Binary files a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_autorenew_black_36dp.png b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_autorenew_black_36dp.png
index 2b9fd98a..f5fcab1c 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_autorenew_black_36dp.png and b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_autorenew_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_filter_none_black_36dp.png b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_filter_none_black_36dp.png
index d6e77c74..b7a72182 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_filter_none_black_36dp.png and b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_filter_none_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_launcher.png b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_launcher.png
index c2f2f45d..448c032b 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_launcher.png and b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_launcher.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_playlist_add_check_black_36dp.png b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_playlist_add_check_black_36dp.png
index 38b8b271..aae1fc8d 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_playlist_add_check_black_36dp.png and b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_playlist_add_check_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor.png
index 778cc1e2..5467c680 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor_xfer.png
index eb8809c4..b04b18e7 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor_xfer.png and b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/ic_stat_tor_xfer.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/inverse.png b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/inverse.png
index 65eff2c7..71e1adc5 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/inverse.png and b/orbotservice/src/main/res/drawable-xxhdpi/drawable-xxhdpi/inverse.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/ic_refresh_white_24dp.png b/orbotservice/src/main/res/drawable-xxhdpi/ic_refresh_white_24dp.png
index 1692d8a2..535f3f01 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/ic_refresh_white_24dp.png and b/orbotservice/src/main/res/drawable-xxhdpi/ic_refresh_white_24dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png
index b006186a..3f21c04f 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_autorenew_black_36dp.png b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_autorenew_black_36dp.png
index 5f614e44..9c9a1f66 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_autorenew_black_36dp.png and b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_autorenew_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_filter_none_black_36dp.png b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_filter_none_black_36dp.png
index d88cd353..963e1951 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_filter_none_black_36dp.png and b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_filter_none_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_launcher.png b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_launcher.png
index 74a31304..6ae04dbf 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_launcher.png and b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_launcher.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_playlist_add_check_black_36dp.png b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_playlist_add_check_black_36dp.png
index 25426909..9a544026 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_playlist_add_check_black_36dp.png and b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_playlist_add_check_black_36dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor.png
index a2ff338a..94542bdc 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor_xfer.png
index 8f967793..82bb917c 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor_xfer.png and b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/ic_stat_tor_xfer.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/inverse.png b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/inverse.png
index 65eff2c7..71e1adc5 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/inverse.png and b/orbotservice/src/main/res/drawable-xxxhdpi/drawable-xxxhdpi/inverse.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/ic_refresh_white_24dp.png b/orbotservice/src/main/res/drawable-xxxhdpi/ic_refresh_white_24dp.png
index f5beca25..a9db32db 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/ic_refresh_white_24dp.png and b/orbotservice/src/main/res/drawable-xxxhdpi/ic_refresh_white_24dp.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png
index 4127c36b..c3f54164 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png differ
diff --git a/tools/png-pre-compress b/tools/png-pre-compress
new file mode 100755
index 00000000..a52dbbd8
--- /dev/null
+++ b/tools/png-pre-compress
@@ -0,0 +1,18 @@
+#!/usr/bin/env sh
+
+set -e
+set -x
+
+for f in `find $(dirname $0)/../*/src/ -type f -name \*.png`; do
+ echo $f | grep -Eo '\.9\.png$' && continue # do not optimized 9-patch, it breaks them
+ tmpfile=$(mktemp)
+ aapt singleCrunch -v -i $f -o $tmpfile
+ exiftool -all= $tmpfile
+ mv $tmpfile $f
+done
+
+for f in `find $(dirname $0)/../fastlane/metadata/android/ -type f -name \*.png`; do
+ exiftool -all= $f
+ tmpfile=$(mktemp)
+ (zopflipng --filters=01234mepb --lossy_8bit --lossy_transparent -y $f $tmpfile && mv $tmpfile $f) &
+done
1
0

[orbot/master] adding in new app-mini module for "Orbot Mini" builds
by n8fr8@torproject.org 28 Apr '20
by n8fr8@torproject.org 28 Apr '20
28 Apr '20
commit 6ae0ca1e858e34a5457a0f5fd61384e187ff3193
Author: n8fr8 <nathan(a)guardianproject.info>
Date: Mon Sep 2 22:47:10 2019 -0400
adding in new app-mini module for "Orbot Mini" builds
- we are developing a light version of Orbot with a new user interface, and we'll be doing it right here in the main Orbot project
---
.gitmodules | 4 -
app-mini/build.gradle | 121 ++
app-mini/mini/release/output.json | 1 +
app-mini/proguard-rules.txt | 14 +
.../org.torproject.android/AutomateScreenshotsTest | 16 +
app-mini/src/debug/AndroidManifest.xml | 145 +++
app-mini/src/main/AndroidManifest.xml | 137 +++
app-mini/src/main/assets/LICENSE | 1 +
app-mini/src/main/assets/arm/obfs4proxy | 1 +
app-mini/src/main/assets/common/geoip | 0
app-mini/src/main/assets/common/geoip6 | 0
app-mini/src/main/ic_launcher-web.png | Bin 0 -> 18915 bytes
.../integration/android/IntentIntegrator.java | 506 +++++++++
.../zxing/integration/android/IntentResult.java | 95 ++
.../org/torproject/android/mini/MainConstants.java | 15 +
.../torproject/android/mini/MiniMainActivity.java | 1167 ++++++++++++++++++++
.../torproject/android/mini/OnBootReceiver.java | 57 +
.../org/torproject/android/mini/OrbotMiniApp.java | 111 ++
.../android/mini}/settings/Languages.java | 2 +-
.../android/mini}/settings/LocaleHelper.java | 4 +-
.../android/mini/settings/SettingsPreferences.java | 73 ++
.../android/mini/ui/AppManagerActivity.java | 343 ++++++
.../mini}/ui/NoPersonalizedLearningEditText.java | 2 +-
.../android/mini}/ui/Rotate3dAnimation.java | 2 +-
.../mini/ui/onboarding/BridgeWizardActivity.java | 223 ++++
.../mini/ui/onboarding/CustomSlideBigText.java | 82 ++
.../mini/ui/onboarding/OnboardingActivity.java | 81 ++
.../android/mini}/vpn/VPNEnableActivity.java | 2 +-
.../res/drawable-hdpi-v11/ic_stat_notifyerr.png | Bin 0 -> 480 bytes
.../main/res/drawable-hdpi-v11/ic_stat_tor_off.png | Bin 0 -> 744 bytes
.../res/drawable-hdpi-v9/ic_stat_notifyerr.png | Bin 0 -> 616 bytes
.../main/res/drawable-hdpi/ic_action_settings.png | Bin 0 -> 553 bytes
.../res/drawable-hdpi/ic_settings_white_24dp.png | Bin 0 -> 460 bytes
.../main/res/drawable-hdpi/ic_stat_notifyerr.png | Bin 0 -> 1312 bytes
.../src/main/res/drawable-hdpi/ic_stat_tor.png | Bin 0 -> 606 bytes
.../res/drawable-ldpi-v11/ic_stat_notifyerr.png | Bin 0 -> 294 bytes
.../res/drawable-ldpi-v9/ic_stat_notifyerr.png | Bin 0 -> 342 bytes
.../main/res/drawable-ldpi/ic_action_settings.png | Bin 0 -> 319 bytes
.../main/res/drawable-ldpi/ic_stat_notifyerr.png | Bin 0 -> 647 bytes
.../res/drawable-mdpi-v11/ic_stat_notifyerr.png | Bin 0 -> 357 bytes
.../res/drawable-mdpi-v9/ic_stat_notifyerr.png | Bin 0 -> 458 bytes
.../res/drawable-mdpi/ic_settings_white_24dp.png | Bin 0 -> 326 bytes
.../src/main/res/drawable-mdpi/ic_stat_tor.png | Bin 0 -> 389 bytes
.../res/drawable-xhdpi-v11/ic_stat_notifyerr.png | Bin 0 -> 618 bytes
.../res/drawable-xhdpi-v9/ic_stat_notifyerr.png | Bin 0 -> 747 bytes
.../res/drawable-xhdpi/ic_settings_white_24dp.png | Bin 0 -> 562 bytes
.../src/main/res/drawable-xhdpi/ic_stat_tor.png | Bin 0 -> 773 bytes
.../res/drawable-xxhdpi/ic_settings_white_24dp.png | Bin 0 -> 843 bytes
.../src/main/res/drawable-xxhdpi/ic_stat_tor.png | Bin 0 -> 1131 bytes
.../drawable-xxxhdpi/ic_settings_white_24dp.png | Bin 0 -> 1074 bytes
.../src/main/res/drawable-xxxhdpi/ic_stat_tor.png | Bin 0 -> 1564 bytes
app-mini/src/main/res/drawable/ic_menu_about.png | Bin 0 -> 1771 bytes
app-mini/src/main/res/drawable/ic_menu_exit.png | Bin 0 -> 2693 bytes
app-mini/src/main/res/drawable/ic_stat_tor_off.png | Bin 0 -> 744 bytes
app-mini/src/main/res/drawable/onion32.png | Bin 0 -> 1599 bytes
app-mini/src/main/res/drawable/round_drawable.xml | 16 +
app-mini/src/main/res/drawable/toroff.png | Bin 0 -> 19187 bytes
app-mini/src/main/res/drawable/toron.png | Bin 0 -> 19057 bytes
app-mini/src/main/res/drawable/torstarting.png | Bin 0 -> 18052 bytes
.../src/main/res/layout/activity_bridge_wizard.xml | 27 +
.../src/main/res/layout/content_bridge_wizard.xml | 66 ++
.../src/main/res/layout/custom_slide_big_text.xml | 43 +
app-mini/src/main/res/layout/layout_about.xml | 117 ++
.../res/layout/layout_activity_client_cookies.xml | 35 +
.../res/layout/layout_add_client_cookie_dialog.xml | 62 ++
app-mini/src/main/res/layout/layout_apps.xml | 26 +
app-mini/src/main/res/layout/layout_apps_item.xml | 33 +
.../res/layout/layout_client_cookie_list_item.xml | 24 +
.../res/layout/layout_content_client_cookies.xml | 20 +
.../src/main/res/layout/layout_cookie_actions.xml | 24 +
app-mini/src/main/res/layout/layout_main.xml | 151 +++
app-mini/src/main/res/menu/app_main.xml | 33 +
app-mini/src/main/res/menu/orbot_main.xml | 73 ++
.../src/main/res/mipmap-anydpi-v26/ic_launcher.xml | 5 +
.../res/mipmap-anydpi-v26/ic_launcher_round.xml | 5 +
app-mini/src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2019 bytes
.../res/mipmap-hdpi/ic_launcher_foreground.png | Bin 0 -> 1815 bytes
.../src/main/res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 4055 bytes
app-mini/src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1456 bytes
.../res/mipmap-mdpi/ic_launcher_foreground.png | Bin 0 -> 1174 bytes
.../src/main/res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 2620 bytes
app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 2761 bytes
.../res/mipmap-xhdpi/ic_launcher_foreground.png | Bin 0 -> 2495 bytes
.../main/res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 5714 bytes
.../src/main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 4143 bytes
.../res/mipmap-xxhdpi/ic_launcher_foreground.png | Bin 0 -> 3922 bytes
.../main/res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 8706 bytes
.../src/main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 5726 bytes
.../res/mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 0 -> 5467 bytes
.../main/res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 12555 bytes
app-mini/src/main/res/values-ach/strings.xml | 11 +
app-mini/src/main/res/values-ar/poestrings.xml | 17 +
app-mini/src/main/res/values-ar/strings.xml | 194 ++++
app-mini/src/main/res/values-ay/poestrings.xml | 17 +
app-mini/src/main/res/values-ay/strings.xml | 205 ++++
app-mini/src/main/res/values-az/strings.xml | 143 +++
app-mini/src/main/res/values-be/poestrings.xml | 17 +
app-mini/src/main/res/values-be/strings.xml | 205 ++++
app-mini/src/main/res/values-bg/poestrings.xml | 17 +
app-mini/src/main/res/values-bg/strings.xml | 145 +++
app-mini/src/main/res/values-bn-rBD/strings.xml | 39 +
app-mini/src/main/res/values-bn-rIN/strings.xml | 13 +
app-mini/src/main/res/values-bn/strings.xml | 28 +
app-mini/src/main/res/values-brx/strings.xml | 15 +
app-mini/src/main/res/values-bs/strings.xml | 18 +
app-mini/src/main/res/values-ca/poestrings.xml | 17 +
app-mini/src/main/res/values-ca/strings.xml | 206 ++++
app-mini/src/main/res/values-cs-rCZ/strings.xml | 139 +++
app-mini/src/main/res/values-cs/strings.xml | 48 +
app-mini/src/main/res/values-cy/strings.xml | 46 +
app-mini/src/main/res/values-da/strings.xml | 111 ++
app-mini/src/main/res/values-de-rAT/strings.xml | 11 +
app-mini/src/main/res/values-de/poestrings.xml | 17 +
app-mini/src/main/res/values-de/strings.xml | 206 ++++
app-mini/src/main/res/values-el/poestrings.xml | 17 +
app-mini/src/main/res/values-el/strings.xml | 206 ++++
app-mini/src/main/res/values-en-rGB/poestrings.xml | 17 +
app-mini/src/main/res/values-en-rGB/strings.xml | 41 +
app-mini/src/main/res/values-eo/strings.xml | 80 ++
app-mini/src/main/res/values-es-rAR/poestrings.xml | 17 +
app-mini/src/main/res/values-es-rAR/strings.xml | 118 ++
app-mini/src/main/res/values-es/arrays.xml | 9 +
app-mini/src/main/res/values-es/poestrings.xml | 17 +
app-mini/src/main/res/values-es/strings.xml | 207 ++++
app-mini/src/main/res/values-et/strings.xml | 103 ++
app-mini/src/main/res/values-eu/poestrings.xml | 17 +
app-mini/src/main/res/values-eu/strings.xml | 206 ++++
app-mini/src/main/res/values-fa/poestrings.xml | 17 +
app-mini/src/main/res/values-fa/strings.xml | 206 ++++
app-mini/src/main/res/values-fi/strings.xml | 146 +++
app-mini/src/main/res/values-fr-rFR/strings.xml | 140 +++
app-mini/src/main/res/values-fr/poestrings.xml | 17 +
app-mini/src/main/res/values-fr/strings.xml | 206 ++++
app-mini/src/main/res/values-gl/poestrings.xml | 17 +
app-mini/src/main/res/values-gl/strings.xml | 206 ++++
app-mini/src/main/res/values-gu-rIN/strings.xml | 12 +
app-mini/src/main/res/values-gu/strings.xml | 19 +
app-mini/src/main/res/values-he/strings.xml | 206 ++++
app-mini/src/main/res/values-hi/poestrings.xml | 17 +
app-mini/src/main/res/values-hi/strings.xml | 207 ++++
app-mini/src/main/res/values-hr-rHR/strings.xml | 18 +
app-mini/src/main/res/values-hr/strings.xml | 140 +++
app-mini/src/main/res/values-hu/poestrings.xml | 17 +
app-mini/src/main/res/values-hu/strings.xml | 206 ++++
app-mini/src/main/res/values-hy-rAM/strings.xml | 19 +
app-mini/src/main/res/values-ia/strings.xml | 21 +
app-mini/src/main/res/values-id/strings.xml | 143 +++
app-mini/src/main/res/values-in-rID/poestrings.xml | 17 +
app-mini/src/main/res/values-in-rID/strings.xml | 138 +++
app-mini/src/main/res/values-in/strings.xml | 24 +
app-mini/src/main/res/values-is/poestrings.xml | 17 +
app-mini/src/main/res/values-is/strings.xml | 206 ++++
app-mini/src/main/res/values-it/poestrings.xml | 17 +
app-mini/src/main/res/values-it/strings.xml | 206 ++++
app-mini/src/main/res/values-iw/poestrings.xml | 17 +
app-mini/src/main/res/values-iw/strings.xml | 112 ++
app-mini/src/main/res/values-ja/poestrings.xml | 17 +
app-mini/src/main/res/values-ja/strings.xml | 206 ++++
app-mini/src/main/res/values-kn-rIN/strings.xml | 11 +
app-mini/src/main/res/values-kn/strings.xml | 17 +
app-mini/src/main/res/values-ko/strings.xml | 142 +++
app-mini/src/main/res/values-ky/strings.xml | 21 +
app-mini/src/main/res/values-lt-rLT/strings.xml | 11 +
app-mini/src/main/res/values-lt/poestrings.xml | 17 +
app-mini/src/main/res/values-lt/strings.xml | 45 +
app-mini/src/main/res/values-lv/strings.xml | 144 +++
app-mini/src/main/res/values-mk/poestrings.xml | 17 +
app-mini/src/main/res/values-mk/strings.xml | 206 ++++
app-mini/src/main/res/values-ml/strings.xml | 21 +
app-mini/src/main/res/values-mn/strings.xml | 15 +
app-mini/src/main/res/values-mr-rIN/strings.xml | 13 +
app-mini/src/main/res/values-ms-rMY/strings.xml | 98 ++
app-mini/src/main/res/values-ms/strings.xml | 88 ++
app-mini/src/main/res/values-my/strings.xml | 31 +
app-mini/src/main/res/values-nb/poestrings.xml | 17 +
app-mini/src/main/res/values-nb/strings.xml | 178 +++
app-mini/src/main/res/values-nl/poestrings.xml | 17 +
app-mini/src/main/res/values-nl/strings.xml | 206 ++++
app-mini/src/main/res/values-pa/strings.xml | 20 +
app-mini/src/main/res/values-pl/strings.xml | 150 +++
app-mini/src/main/res/values-ps/strings.xml | 13 +
app-mini/src/main/res/values-pt-rBR/poestrings.xml | 17 +
app-mini/src/main/res/values-pt-rBR/strings.xml | 185 ++++
app-mini/src/main/res/values-pt-rPT/strings.xml | 67 ++
app-mini/src/main/res/values-pt/strings.xml | 96 ++
app-mini/src/main/res/values-ro-rRO/strings.xml | 18 +
app-mini/src/main/res/values-ro/strings.xml | 146 +++
app-mini/src/main/res/values-rs-rAR/strings.xml | 32 +
app-mini/src/main/res/values-ru/poestrings.xml | 17 +
app-mini/src/main/res/values-ru/strings.xml | 206 ++++
app-mini/src/main/res/values-si-rLK/strings.xml | 96 ++
app-mini/src/main/res/values-sk-rSK/strings.xml | 11 +
app-mini/src/main/res/values-sk/strings.xml | 142 +++
app-mini/src/main/res/values-sl/strings.xml | 35 +
app-mini/src/main/res/values-sn/strings.xml | 23 +
app-mini/src/main/res/values-sq/strings.xml | 34 +
app-mini/src/main/res/values-sr/strings.xml | 186 ++++
app-mini/src/main/res/values-sv/poestrings.xml | 17 +
app-mini/src/main/res/values-sv/strings.xml | 206 ++++
app-mini/src/main/res/values-ta/poestrings.xml | 17 +
app-mini/src/main/res/values-ta/strings.xml | 53 +
app-mini/src/main/res/values-th/poestrings.xml | 17 +
app-mini/src/main/res/values-th/strings.xml | 206 ++++
app-mini/src/main/res/values-tl/strings.xml | 117 ++
app-mini/src/main/res/values-tr/poestrings.xml | 17 +
app-mini/src/main/res/values-tr/strings.xml | 206 ++++
app-mini/src/main/res/values-uk/poestrings.xml | 17 +
app-mini/src/main/res/values-uk/strings.xml | 203 ++++
app-mini/src/main/res/values-ur/strings.xml | 22 +
app-mini/src/main/res/values-uz/strings.xml | 33 +
app-mini/src/main/res/values-v21/styles.xml | 1 +
app-mini/src/main/res/values-vi/strings.xml | 142 +++
app-mini/src/main/res/values-w820dp/dimens.xml | 6 +
app-mini/src/main/res/values-zh-rCN/strings.xml | 142 +++
app-mini/src/main/res/values-zh-rTW/poestrings.xml | 17 +
app-mini/src/main/res/values-zh-rTW/strings.xml | 207 ++++
app-mini/src/main/res/values/arrays.xml | 9 +
app-mini/src/main/res/values/colors.xml | 11 +
app-mini/src/main/res/values/dimens.xml | 241 ++++
.../src/main/res/values/ic_launcher_background.xml | 4 +
app-mini/src/main/res/values/poestrings.xml | 17 +
app-mini/src/main/res/values/strings.xml | 258 +++++
app-mini/src/main/res/values/styles.xml | 7 +
app-mini/src/main/res/values/theme.xml | 8 +
.../src/main/res/xml/hidden_services_paths.xml | 4 +
app-mini/src/main/res/xml/preferences.xml | 301 +++++
app/src/main/AndroidManifest.xml | 24 +-
.../org/torproject/android/OnBootReceiver.java | 2 +-
.../main/java/org/torproject/android/OrbotApp.java | 4 +-
.../org/torproject/android/OrbotMainActivity.java | 28 +-
.../android/mini/settings/Languages.java | 228 ++++
.../android/mini/settings/LocaleHelper.java | 87 ++
.../{ => mini}/settings/SettingsPreferences.java | 2 +-
.../android/{ => mini}/ui/AppManagerActivity.java | 11 +-
.../mini/ui/NoPersonalizedLearningEditText.java | 13 +
.../android/mini/ui/Rotate3dAnimation.java | 76 ++
.../ui/hiddenservices/ClientCookiesActivity.java | 16 +-
.../ui/hiddenservices/HiddenServicesActivity.java | 16 +-
.../ui/hiddenservices/adapters/BackupAdapter.java | 2 +-
.../adapters/ClientCookiesAdapter.java | 4 +-
.../hiddenservices/adapters/OnionListAdapter.java | 4 +-
.../ui/hiddenservices/backup/BackupUtils.java | 8 +-
.../{ => mini}/ui/hiddenservices/backup/ZipIt.java | 2 +-
.../ui/hiddenservices/database/HSDatabase.java | 2 +-
.../ui/hiddenservices/dialogs/AddCookieDialog.java | 4 +-
.../dialogs/CookieActionsDialog.java | 6 +-
.../hiddenservices/dialogs/CookieDeleteDialog.java | 4 +-
.../ui/hiddenservices/dialogs/HSActionsDialog.java | 6 +-
.../ui/hiddenservices/dialogs/HSCookieDialog.java | 4 +-
.../ui/hiddenservices/dialogs/HSDataDialog.java | 4 +-
.../ui/hiddenservices/dialogs/HSDeleteDialog.java | 4 +-
.../dialogs/SelectCookieBackupDialog.java | 8 +-
.../dialogs/SelectHSBackupDialog.java | 8 +-
.../permissions/PermissionManager.java | 2 +-
.../providers/CookieContentProvider.java | 6 +-
.../providers/HSContentProvider.java | 6 +-
.../ui/hiddenservices/storage/ExternalStorage.java | 2 +-
.../ui/onboarding/BridgeWizardActivity.java | 5 +-
.../ui/onboarding/CustomSlideBigText.java | 2 +-
.../ui/onboarding/OnboardingActivity.java | 10 +-
.../android/mini/vpn/VPNEnableActivity.java | 120 ++
app/src/main/res/layout/activity_bridge_wizard.xml | 2 +-
app/src/main/res/layout/content_bridge_wizard.xml | 2 +-
.../res/layout/layout_activity_client_cookies.xml | 2 +-
.../res/layout/layout_add_client_cookie_dialog.xml | 4 +-
.../res/layout/layout_content_client_cookies.xml | 2 +-
app/src/main/res/layout/layout_hs_data_dialog.xml | 6 +-
app/src/main/res/layout/layout_hs_list_view.xml | 2 +-
.../main/res/layout/layout_hs_list_view_main.xml | 2 +-
build.gradle | 2 +-
external/pluto | 1 -
orbotservice/build.gradle | 4 +
.../android/service/TorEventHandler.java | 2 +
.../org/torproject/android/service/TorService.java | 4 +-
.../src/main/res/drawable-hdpi-v11/ic_stat_tor.png | Bin 802 -> 0 bytes
.../res/drawable-hdpi-v11/ic_stat_tor_xfer.png | Bin 967 -> 0 bytes
.../src/main/res/drawable-hdpi-v9/ic_stat_tor.png | Bin 713 -> 0 bytes
.../src/main/res/drawable-hdpi/ic_stat_tor.png | Bin 852 -> 606 bytes
.../main/res/drawable-hdpi/ic_stat_tor_xfer.png | Bin 990 -> 0 bytes
.../src/main/res/drawable-ldpi-v11/ic_stat_tor.png | Bin 390 -> 0 bytes
.../src/main/res/drawable-ldpi-v9/ic_stat_tor.png | Bin 358 -> 0 bytes
.../src/main/res/drawable-ldpi/ic_stat_tor.png | Bin 606 -> 0 bytes
.../src/main/res/drawable-mdpi-v11/ic_stat_tor.png | Bin 517 -> 0 bytes
.../res/drawable-mdpi-v11/ic_stat_tor_xfer.png | Bin 607 -> 0 bytes
.../src/main/res/drawable-mdpi-v9/ic_stat_tor.png | Bin 475 -> 0 bytes
.../src/main/res/drawable-mdpi/ic_stat_tor.png | Bin 535 -> 389 bytes
.../main/res/drawable-mdpi/ic_stat_tor_xfer.png | Bin 600 -> 0 bytes
.../main/res/drawable-xhdpi-v11/ic_stat_tor.png | Bin 1165 -> 0 bytes
.../res/drawable-xhdpi-v11/ic_stat_tor_xfer.png | Bin 1337 -> 0 bytes
.../src/main/res/drawable-xhdpi-v9/ic_stat_tor.png | Bin 970 -> 0 bytes
.../src/main/res/drawable-xhdpi/ic_stat_tor.png | Bin 1161 -> 773 bytes
.../main/res/drawable-xhdpi/ic_stat_tor_xfer.png | Bin 1378 -> 0 bytes
.../main/res/drawable-xxhdpi-v11/ic_stat_tor.png | Bin 1903 -> 0 bytes
.../res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png | Bin 2019 -> 0 bytes
.../src/main/res/drawable-xxhdpi/ic_stat_tor.png | Bin 1872 -> 1131 bytes
.../main/res/drawable-xxhdpi/ic_stat_tor_xfer.png | Bin 2216 -> 0 bytes
.../main/res/drawable-xxxhdpi-v11/ic_stat_tor.png | Bin 2661 -> 0 bytes
.../res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png | Bin 3156 -> 0 bytes
.../src/main/res/drawable-xxxhdpi/ic_stat_tor.png | Bin 2631 -> 1564 bytes
.../main/res/drawable-xxxhdpi/ic_stat_tor_xfer.png | Bin 2859 -> 0 bytes
settings.gradle | 2 +-
301 files changed, 15809 insertions(+), 135 deletions(-)
diff --git a/.gitmodules b/.gitmodules
index 67daeac2..691efaad 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -6,10 +6,6 @@
path = external/badvpn
url = https://github.com/guardianproject/badvpn.git
ignore = dirty
-[submodule "external/pluto"]
- path = external/pluto
- url = https://github.com/guardianproject/pluto.git
- ignore = dirty
[submodule "external/jsocks"]
path = external/jsocks
url = https://github.com/guardianproject/jsocks.git
diff --git a/app-mini/build.gradle b/app-mini/build.gradle
new file mode 100644
index 00000000..8f071b98
--- /dev/null
+++ b/app-mini/build.gradle
@@ -0,0 +1,121 @@
+apply plugin: 'com.android.application'
+
+// Create a variable called keystorePropertiesFile, and initialize it to your
+// keystore.properties file, in the rootProject folder.
+def keystorePropertiesFile = rootProject.file("keystore.properties")
+
+// Initialize a new Properties() object called keystoreProperties.
+def keystoreProperties = new Properties()
+
+// Load your keystore.properties file into the keystoreProperties object.
+keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
+
+android {
+ signingConfigs {
+ release {
+ keyAlias keystoreProperties['keyAlias']
+ keyPassword keystoreProperties['keyPassword']
+ storeFile file(keystoreProperties['storeFile'])
+ storePassword keystoreProperties['storePassword']
+ }
+ }
+
+ compileSdkVersion 28
+ buildToolsVersion '28.0.3'
+ defaultConfig {
+ applicationId "org.torproject.android.mini"
+ minSdkVersion 16
+ targetSdkVersion 28
+ }
+ lintOptions {
+ checkReleaseBuilds false
+ // Or, if you prefer, you can continue to check for errors in release builds,
+ // but continue the build even when errors are found:
+ abortOnError false
+ }
+ buildTypes {
+ release {
+ minifyEnabled true
+ shrinkResources true
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ signingConfig signingConfigs.release
+ }
+ }
+
+ aaptOptions {
+ cruncherEnabled = false
+ }
+
+ flavorDimensions "free"
+
+ productFlavors {
+ mini {
+ dimension "free"
+ minSdkVersion 16
+ applicationId 'org.torproject.android.mini'
+ targetSdkVersion 28
+ versionCode 10010000
+ versionName '1.0.0-BETA-1-tor-0.4.0.4-rc'
+ archivesBaseName = "Orbot-mini-$versionName"
+ }
+ }
+
+ splits {
+
+ // Configures multiple APKs based on ABI. This helps keep the size down, since PT binaries can be large.
+ abi {
+
+ // Enables building multiple APKs per ABI.
+ enable true
+
+ // By default all ABIs are included, so use reset() and include to specify that we only
+ // want APKs for x86 and x86_64.
+
+ // Resets the list of ABIs that Gradle should create APKs for to none.
+ reset()
+
+ // Specifies a list of ABIs that Gradle should create APKs for.
+ include "x86", "armeabi-v7a", "x86_64", "arm64-v8a"
+
+ // Specifies that we do not want to also generate a universal APK that includes all ABIs.
+ universalApk false
+ }
+
+ }
+
+ packagingOptions {
+ exclude 'assets/arm/obfs4proxy'
+ exclude 'lib/x86/obfs4proxy.so'
+ exclude 'lib/x86_64/obfs4proxy.so'
+ exclude 'lib/arm64-v8a/obfs4proxy.so'
+ exclude 'lib/armeabi-v7a/obfs4proxy.so'
+ exclude 'lib/armeabi/obfs4proxy.so'
+ }
+
+}
+
+
+dependencies {
+ implementation project(':orbotservice')
+ implementation 'com.github.apl-devs:appintro:v4.2.2'
+ implementation 'com.github.javiersantos:AppUpdater:2.7'
+ androidTestImplementation "tools.fastlane:screengrab:1.2.0"
+}
+
+// Map for the version code that gives each ABI a value.
+ext.abiCodes = ['armeabi-v7a':'1', 'arm64-v8a':'2', 'mips':'3', 'x86':'4', 'x86_64':'5']
+
+import com.android.build.OutputFile
+
+// For each APK output variant, override version code of outputs based on ABI codes
+// ex) 'mips' -> 3xxx
+// ex) 'x86' -> 4xxx
+android.applicationVariants.all { variant ->
+ variant.outputs.each { output ->
+ def baseVersionCode = project.ext.abiCodes.get(output.getFilter(OutputFile.ABI))
+ if (baseVersionCode != null) {
+ output.versionCodeOverride = Integer.valueOf(baseVersionCode + variant.versionCode)
+ }
+ }
+}
+
diff --git a/app-mini/mini/release/output.json b/app-mini/mini/release/output.json
new file mode 100644
index 00000000..50073a2c
--- /dev/null
+++ b/app-mini/mini/release/output.json
@@ -0,0 +1 @@
+[{"outputType":{"type":"APK"},"apkData":{"type":"FULL_SPLIT","splits":[{"filterType":"ABI","value":"arm64-v8a"}],"versionCode":210010000,"versionName":"1.0.0-BETA-1-tor-0.4.0.4-rc","enabled":true,"filterName":"arm64-v8a","outputFile":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-arm64-v8a-release.apk","fullName":"miniArm64-v8aRelease","baseName":"mini-arm64-v8a-release"},"path":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-arm64-v8a-release.apk","properties":{}},{"outputType":{"type":"APK"},"apkData":{"type":"FULL_SPLIT","splits":[{"filterType":"ABI","value":"x86"}],"versionCode":410010000,"versionName":"1.0.0-BETA-1-tor-0.4.0.4-rc","enabled":true,"filterName":"x86","outputFile":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-x86-release.apk","fullName":"miniX86Release","baseName":"mini-x86-release"},"path":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-x86-release.apk","properties":{}},{"outputType":{"type":"APK"},"apkData":{"type":"FULL_SPLIT","splits":[{"filterType":"ABI","value":"armea
bi-v7a"}],"versionCode":110010000,"versionName":"1.0.0-BETA-1-tor-0.4.0.4-rc","enabled":true,"filterName":"armeabi-v7a","outputFile":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-armeabi-v7a-release.apk","fullName":"miniArmeabi-v7aRelease","baseName":"mini-armeabi-v7a-release"},"path":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-armeabi-v7a-release.apk","properties":{}},{"outputType":{"type":"APK"},"apkData":{"type":"FULL_SPLIT","splits":[{"filterType":"ABI","value":"x86_64"}],"versionCode":510010000,"versionName":"1.0.0-BETA-1-tor-0.4.0.4-rc","enabled":true,"filterName":"x86_64","outputFile":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-x86_64-release.apk","fullName":"miniX86_64Release","baseName":"mini-x86_64-release"},"path":"Orbot-mini-1.0.0-BETA-1-tor-0.4.0.4-rc-mini-x86_64-release.apk","properties":{}}]
\ No newline at end of file
diff --git a/app-mini/proguard-rules.txt b/app-mini/proguard-rules.txt
new file mode 100644
index 00000000..b1120f82
--- /dev/null
+++ b/app-mini/proguard-rules.txt
@@ -0,0 +1,14 @@
+-dontobfuscate
+# https://stackoverflow.com/questions/9651703/using-proguard-with-android-wit…
+-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*,!code/allocation/variable
+
+-keep class org.torproject.android.service.vpn.Tun2Socks {
+ void logTun2Socks(java.lang.String, java.lang.String, java.lang.String);
+}
+
+-keepattributes Signature
+-keepattributes Annotation
+-keep class okhttp3.** { *; }
+-keep interface okhttp3.** { *; }
+-dontwarn okhttp3.**
+-dontwarn okio.**
\ No newline at end of file
diff --git a/app-mini/src/androidTest/org.torproject.android/AutomateScreenshotsTest b/app-mini/src/androidTest/org.torproject.android/AutomateScreenshotsTest
new file mode 100644
index 00000000..a64fa59a
--- /dev/null
+++ b/app-mini/src/androidTest/org.torproject.android/AutomateScreenshotsTest
@@ -0,0 +1,16 @@
+@RunWith(JUnit4::class)
+class AutomateScreenshotsTest {
+
+ @Before
+ fun setUp() {
+ ActivityScenario.launch(MainActivity::class.java)
+ Screengrab.setDefaultScreenshotStrategry(UiAutomatorScreenshotStrategy())
+ }
+
+ @Test
+ fun captureScreen() {
+ // Delay 500 millis for app launch to main screen
+ Thread.sleep(500)
+ Screengrab.screenshot("main_screen")
+ }
+}
diff --git a/app-mini/src/debug/AndroidManifest.xml b/app-mini/src/debug/AndroidManifest.xml
new file mode 100644
index 00000000..cd6d8b66
--- /dev/null
+++ b/app-mini/src/debug/AndroidManifest.xml
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ package="org.torproject.android.mini"
+ android:installLocation="internalOnly">
+
+ <uses-permission android:name="android.permission.INTERNET" />
+ <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+ <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+ <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
+ <!-- Some Chromebooks don't support touch. Although not essential,
+ it's a good idea to explicitly include this declaration. -->
+ <uses-feature android:name="android.hardware.touchscreen"
+ android:required="false" />
+
+ <application
+ android:name=".OrbotMiniApp"
+ android:allowBackup="false"
+ android:allowClearUserData="true"
+ android:configChanges="locale|orientation|screenSize"
+ android:description="@string/app_description"
+ android:hardwareAccelerated="false"
+ android:icon="@mipmap/ic_launcher"
+ android:label="@string/app_name"
+ android:theme="@style/DefaultTheme"
+ tools:replace="android:allowBackup"
+ >
+ <activity
+ android:name=".MiniMainActivity"
+ android:excludeFromRecents="false"
+ android:launchMode="singleTop">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.intent.action.VIEW" />
+
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+
+ <data android:scheme="bridge" />
+ </intent-filter>
+ <intent-filter>
+ <category android:name="android.intent.category.DEFAULT" />
+
+ <action android:name="org.torproject.android.REQUEST_HS_PORT" />
+ </intent-filter>
+ <intent-filter>
+ <category android:name="android.intent.category.DEFAULT" />
+
+ <action android:name="org.torproject.android.START_TOR" />
+ </intent-filter>
+ </activity>
+
+ <!-- This is for ensuring the background service still runs when/if the app is swiped away -->
+ <activity
+ android:name="org.torproject.android.service.util.DummyActivity"
+ android:allowTaskReparenting="true"
+ android:alwaysRetainTaskState="false"
+ android:clearTaskOnLaunch="true"
+ android:enabled="true"
+ android:excludeFromRecents="true"
+ android:finishOnTaskLaunch="true"
+ android:noHistory="true"
+ android:stateNotNeeded="true"
+ android:theme="@android:style/Theme.Translucent" />
+ <activity
+ android:name=".vpn.VPNEnableActivity"
+ android:exported="false"
+ android:label="@string/app_name" />
+ <activity
+ android:name=".settings.SettingsPreferences"
+ android:label="@string/app_name" />
+ <activity
+ android:name=".ui.AppManagerActivity"
+ android:label="@string/app_name"
+ android:theme="@style/Theme.AppCompat" />
+
+ <service
+ android:name="org.torproject.android.service.TorService"
+ android:enabled="true"
+ android:permission="android.permission.BIND_VPN_SERVICE"
+ android:stopWithTask="false"></service>
+ <service
+ android:name="org.torproject.android.service.vpn.TorVpnService"
+ android:enabled="true"
+ android:permission="android.permission.BIND_VPN_SERVICE">
+ <intent-filter>
+ <action android:name="android.net.VpnService" />
+ </intent-filter>
+ </service>
+
+ <receiver
+ android:name="org.torproject.android.service.StartTorReceiver"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="org.torproject.android.intent.action.START" />
+ </intent-filter>
+ </receiver>
+ <receiver
+ android:name=".OnBootReceiver"
+ android:enabled="true"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="android.intent.action.BOOT_COMPLETED" />
+
+ <category android:name="android.intent.category.HOME" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.intent.action.QUICKBOOT_POWERON" />
+
+ <category android:name="android.intent.category.HOME" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.intent.action.MEDIA_MOUNTED" />
+
+ <category android:name="android.intent.category.HOME" />
+ </intent-filter>
+ </receiver>
+
+
+
+
+ <provider
+ android:name="android.support.v4.content.FileProvider"
+ android:authorities="org.torproject.android.mini.ui.hiddenservices.storage"
+ android:exported="false"
+ android:grantUriPermissions="true">
+ <meta-data
+ android:name="android.support.FILE_PROVIDER_PATHS"
+ android:resource="@xml/hidden_services_paths" />
+ </provider>
+
+
+
+ <activity android:name=".ui.onboarding.OnboardingActivity"/>
+ <activity android:name=".ui.onboarding.BridgeWizardActivity"/>
+
+
+ </application>
+
+</manifest>
\ No newline at end of file
diff --git a/app-mini/src/main/AndroidManifest.xml b/app-mini/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..94f3f119
--- /dev/null
+++ b/app-mini/src/main/AndroidManifest.xml
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ package="org.torproject.android.mini"
+ android:installLocation="internalOnly">
+
+ <uses-permission android:name="android.permission.INTERNET" />
+ <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+ <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+ <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
+ <!-- Some Chromebooks don't support touch. Although not essential,
+ it's a good idea to explicitly include this declaration. -->
+ <uses-feature android:name="android.hardware.touchscreen"
+ android:required="false" />
+
+ <application
+ android:name=".OrbotMiniApp"
+ android:allowBackup="false"
+ android:allowClearUserData="true"
+ android:configChanges="locale|orientation|screenSize"
+ android:description="@string/app_description"
+ android:hardwareAccelerated="false"
+ android:icon="@mipmap/ic_launcher"
+ android:label="@string/app_name"
+ android:theme="@style/DefaultTheme"
+ tools:replace="android:allowBackup"
+ >
+ <activity
+ android:name=".MiniMainActivity"
+ android:excludeFromRecents="false"
+ android:launchMode="singleTop">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ <!--
+ <intent-filter>
+ <action android:name="android.intent.action.VIEW" />
+
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+
+ <data android:scheme="bridge" />
+ </intent-filter>-->
+
+ </activity>
+
+ <!-- This is for ensuring the background service still runs when/if the app is swiped away -->
+ <activity
+ android:name="org.torproject.android.service.util.DummyActivity"
+ android:allowTaskReparenting="true"
+ android:alwaysRetainTaskState="false"
+ android:clearTaskOnLaunch="true"
+ android:enabled="true"
+ android:excludeFromRecents="true"
+ android:finishOnTaskLaunch="true"
+ android:noHistory="true"
+ android:stateNotNeeded="true"
+ android:theme="@android:style/Theme.Translucent" />
+ <activity
+ android:name=".vpn.VPNEnableActivity"
+ android:exported="false"
+ android:label="@string/app_name" />
+ <activity
+ android:name=".settings.SettingsPreferences"
+ android:label="@string/app_name" />
+ <activity
+ android:name=".ui.AppManagerActivity"
+ android:label="@string/app_name"
+ android:theme="@style/Theme.AppCompat" />
+
+ <service
+ android:name="org.torproject.android.service.TorService"
+ android:enabled="true"
+ android:permission="android.permission.BIND_VPN_SERVICE"
+ android:stopWithTask="false"></service>
+ <service
+ android:name="org.torproject.android.service.vpn.TorVpnService"
+ android:enabled="true"
+ android:permission="android.permission.BIND_VPN_SERVICE">
+ <intent-filter>
+ <action android:name="android.net.VpnService" />
+ </intent-filter>
+ </service>
+
+ <receiver
+ android:name="org.torproject.android.service.StartTorReceiver"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="org.torproject.android.intent.action.START" />
+ </intent-filter>
+ </receiver>
+ <receiver
+ android:name=".OnBootReceiver"
+ android:enabled="true"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="android.intent.action.BOOT_COMPLETED" />
+
+ <category android:name="android.intent.category.HOME" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.intent.action.QUICKBOOT_POWERON" />
+
+ <category android:name="android.intent.category.HOME" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.intent.action.MEDIA_MOUNTED" />
+
+ <category android:name="android.intent.category.HOME" />
+ </intent-filter>
+ </receiver>
+
+
+
+
+ <provider
+ android:name="android.support.v4.content.FileProvider"
+ android:authorities="org.torproject.android.mini.ui.hiddenservices.storage"
+ android:exported="false"
+ android:grantUriPermissions="true">
+ <meta-data
+ android:name="android.support.FILE_PROVIDER_PATHS"
+ android:resource="@xml/hidden_services_paths" />
+ </provider>
+
+
+
+ <activity android:name=".ui.onboarding.OnboardingActivity"/>
+ <activity android:name=".ui.onboarding.BridgeWizardActivity"/>
+
+
+ </application>
+
+</manifest>
\ No newline at end of file
diff --git a/app-mini/src/main/assets/LICENSE b/app-mini/src/main/assets/LICENSE
new file mode 120000
index 00000000..14776154
--- /dev/null
+++ b/app-mini/src/main/assets/LICENSE
@@ -0,0 +1 @@
+../../../../LICENSE
\ No newline at end of file
diff --git a/app-mini/src/main/assets/arm/obfs4proxy b/app-mini/src/main/assets/arm/obfs4proxy
new file mode 100644
index 00000000..b766412f
--- /dev/null
+++ b/app-mini/src/main/assets/arm/obfs4proxy
@@ -0,0 +1 @@
+//empty
\ No newline at end of file
diff --git a/app-mini/src/main/assets/common/geoip b/app-mini/src/main/assets/common/geoip
new file mode 100644
index 00000000..e69de29b
diff --git a/app-mini/src/main/assets/common/geoip6 b/app-mini/src/main/assets/common/geoip6
new file mode 100644
index 00000000..e69de29b
diff --git a/app-mini/src/main/ic_launcher-web.png b/app-mini/src/main/ic_launcher-web.png
new file mode 100644
index 00000000..fe170c1e
Binary files /dev/null and b/app-mini/src/main/ic_launcher-web.png differ
diff --git a/app-mini/src/main/java/com/google/zxing/integration/android/IntentIntegrator.java b/app-mini/src/main/java/com/google/zxing/integration/android/IntentIntegrator.java
new file mode 100644
index 00000000..d5628e87
--- /dev/null
+++ b/app-mini/src/main/java/com/google/zxing/integration/android/IntentIntegrator.java
@@ -0,0 +1,506 @@
+/*
+ * Copyright 2009 ZXing authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.zxing.integration.android;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import android.app.Activity;
+import android.app.AlertDialog;
+import android.app.Fragment;
+import android.content.ActivityNotFoundException;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.content.pm.ResolveInfo;
+import android.net.Uri;
+import android.os.Bundle;
+import android.util.Log;
+
+/**
+ * <p>A utility class which helps ease integration with Barcode Scanner via {@link Intent}s. This is a simple
+ * way to invoke barcode scanning and receive the result, without any need to integrate, modify, or learn the
+ * project's source code.</p>
+ *
+ * <h2>Initiating a barcode scan</h2>
+ *
+ * <p>To integrate, create an instance of {@code IntentIntegrator} and call {@link #initiateScan()} and wait
+ * for the result in your app.</p>
+ *
+ * <p>It does require that the Barcode Scanner (or work-alike) application is installed. The
+ * {@link #initiateScan()} method will prompt the user to download the application, if needed.</p>
+ *
+ * <p>There are a few steps to using this integration. First, your {@link Activity} must implement
+ * the method {@link Activity#onActivityResult(int, int, Intent)} and include a line of code like this:</p>
+ *
+ * <pre>{@code
+ * public void onActivityResult(int requestCode, int resultCode, Intent intent) {
+ * IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
+ * if (scanResult != null) {
+ * // handle scan result
+ * }
+ * // else continue with any other code you need in the method
+ * ...
+ * }
+ * }</pre>
+ *
+ * <p>This is where you will handle a scan result.</p>
+ *
+ * <p>Second, just call this in response to a user action somewhere to begin the scan process:</p>
+ *
+ * <pre>{@code
+ * IntentIntegrator integrator = new IntentIntegrator(yourActivity);
+ * integrator.initiateScan();
+ * }</pre>
+ *
+ * <p>Note that {@link #initiateScan()} returns an {@link AlertDialog} which is non-null if the
+ * user was prompted to download the application. This lets the calling app potentially manage the dialog.
+ * In particular, ideally, the app dismisses the dialog if it's still active in its {@link Activity#onPause()}
+ * method.</p>
+ *
+ * <p>You can use {@link #setTitle(String)} to customize the title of this download prompt dialog (or, use
+ * {@link #setTitleByID(int)} to set the title by string resource ID.) Likewise, the prompt message, and
+ * yes/no button labels can be changed.</p>
+ *
+ * <p>Finally, you can use {@link #addExtra(String, Object)} to add more parameters to the Intent used
+ * to invoke the scanner. This can be used to set additional options not directly exposed by this
+ * simplified API.</p>
+ *
+ * <p>By default, this will only allow applications that are known to respond to this intent correctly
+ * do so. The apps that are allowed to response can be set with {@link #setTargetApplications(List)}.
+ * For example, set to {@link #TARGET_BARCODE_SCANNER_ONLY} to only target the Barcode Scanner app itself.</p>
+ *
+ * <h2>Sharing text via barcode</h2>
+ *
+ * <p>To share text, encoded as a QR Code on-screen, similarly, see {@link #shareText(CharSequence)}.</p>
+ *
+ * <p>Some code, particularly download integration, was contributed from the Anobiit application.</p>
+ *
+ * <h2>Enabling experimental barcode formats</h2>
+ *
+ * <p>Some formats are not enabled by default even when scanning with {@link #ALL_CODE_TYPES}, such as
+ * PDF417. Use {@link #initiateScan(java.util.Collection)} with
+ * a collection containing the names of formats to scan for explicitly, like "PDF_417", to use such
+ * formats.</p>
+ *
+ * @author Sean Owen
+ * @author Fred Lin
+ * @author Isaac Potoczny-Jones
+ * @author Brad Drehmer
+ * @author gcstang
+ */
+public class IntentIntegrator {
+
+ public static final int REQUEST_CODE = 0x0000c0de; // Only use bottom 16 bits
+ private static final String TAG = IntentIntegrator.class.getSimpleName();
+
+ public static final String DEFAULT_TITLE = "Install Barcode Scanner?";
+ public static final String DEFAULT_MESSAGE =
+ "This application requires Barcode Scanner. Would you like to install it?";
+ public static final String DEFAULT_YES = "Yes";
+ public static final String DEFAULT_NO = "No";
+
+ private static final String BS_PACKAGE = "com.google.zxing.client.android";
+ private static final String BSPLUS_PACKAGE = "com.srowen.bs.android";
+
+ // supported barcode formats
+ public static final Collection<String> PRODUCT_CODE_TYPES = list("UPC_A", "UPC_E", "EAN_8", "EAN_13", "RSS_14");
+ public static final Collection<String> ONE_D_CODE_TYPES =
+ list("UPC_A", "UPC_E", "EAN_8", "EAN_13", "CODE_39", "CODE_93", "CODE_128",
+ "ITF", "RSS_14", "RSS_EXPANDED");
+ public static final Collection<String> QR_CODE_TYPES = Collections.singleton("QR_CODE");
+ public static final Collection<String> DATA_MATRIX_TYPES = Collections.singleton("DATA_MATRIX");
+
+ public static final Collection<String> ALL_CODE_TYPES = null;
+
+ public static final List<String> TARGET_BARCODE_SCANNER_ONLY = Collections.singletonList(BS_PACKAGE);
+ public static final List<String> TARGET_ALL_KNOWN = list(
+ BSPLUS_PACKAGE, // Barcode Scanner+
+ BSPLUS_PACKAGE + ".simple", // Barcode Scanner+ Simple
+ BS_PACKAGE // Barcode Scanner
+ // What else supports this intent?
+ );
+
+ private final Activity activity;
+ private final Fragment fragment;
+
+ private String title;
+ private String message;
+ private String buttonYes;
+ private String buttonNo;
+ private List<String> targetApplications;
+ private final Map<String,Object> moreExtras = new HashMap<String,Object>(3);
+
+ /**
+ * @param activity {@link Activity} invoking the integration
+ */
+ public IntentIntegrator(Activity activity) {
+ this.activity = activity;
+ this.fragment = null;
+ initializeConfiguration();
+ }
+
+ /**
+ * @param fragment {@link Fragment} invoking the integration.
+ * {@link #startActivityForResult(Intent, int)} will be called on the {@link Fragment} instead
+ * of an {@link Activity}
+ */
+ public IntentIntegrator(Fragment fragment) {
+ this.activity = fragment.getActivity();
+ this.fragment = fragment;
+ initializeConfiguration();
+ }
+
+ private void initializeConfiguration() {
+ title = DEFAULT_TITLE;
+ message = DEFAULT_MESSAGE;
+ buttonYes = DEFAULT_YES;
+ buttonNo = DEFAULT_NO;
+ targetApplications = TARGET_ALL_KNOWN;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public void setTitleByID(int titleID) {
+ title = activity.getString(titleID);
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public void setMessageByID(int messageID) {
+ message = activity.getString(messageID);
+ }
+
+ public String getButtonYes() {
+ return buttonYes;
+ }
+
+ public void setButtonYes(String buttonYes) {
+ this.buttonYes = buttonYes;
+ }
+
+ public void setButtonYesByID(int buttonYesID) {
+ buttonYes = activity.getString(buttonYesID);
+ }
+
+ public String getButtonNo() {
+ return buttonNo;
+ }
+
+ public void setButtonNo(String buttonNo) {
+ this.buttonNo = buttonNo;
+ }
+
+ public void setButtonNoByID(int buttonNoID) {
+ buttonNo = activity.getString(buttonNoID);
+ }
+
+ public Collection<String> getTargetApplications() {
+ return targetApplications;
+ }
+
+ public final void setTargetApplications(List<String> targetApplications) {
+ if (targetApplications.isEmpty()) {
+ throw new IllegalArgumentException("No target applications");
+ }
+ this.targetApplications = targetApplications;
+ }
+
+ public void setSingleTargetApplication(String targetApplication) {
+ this.targetApplications = Collections.singletonList(targetApplication);
+ }
+
+ public Map<String,?> getMoreExtras() {
+ return moreExtras;
+ }
+
+ public final void addExtra(String key, Object value) {
+ moreExtras.put(key, value);
+ }
+
+ /**
+ * Initiates a scan for all known barcode types with the default camera.
+ *
+ * @return the {@link AlertDialog} that was shown to the user prompting them to download the app
+ * if a prompt was needed, or null otherwise.
+ */
+ public final AlertDialog initiateScan() {
+ return initiateScan(ALL_CODE_TYPES, -1);
+ }
+
+ /**
+ * Initiates a scan for all known barcode types with the specified camera.
+ *
+ * @param cameraId camera ID of the camera to use. A negative value means "no preference".
+ * @return the {@link AlertDialog} that was shown to the user prompting them to download the app
+ * if a prompt was needed, or null otherwise.
+ */
+ public final AlertDialog initiateScan(int cameraId) {
+ return initiateScan(ALL_CODE_TYPES, cameraId);
+ }
+
+ /**
+ * Initiates a scan, using the default camera, only for a certain set of barcode types, given as strings corresponding
+ * to their names in ZXing's {@code BarcodeFormat} class like "UPC_A". You can supply constants
+ * like {@link #PRODUCT_CODE_TYPES} for example.
+ *
+ * @param desiredBarcodeFormats names of {@code BarcodeFormat}s to scan for
+ * @return the {@link AlertDialog} that was shown to the user prompting them to download the app
+ * if a prompt was needed, or null otherwise.
+ */
+ public final AlertDialog initiateScan(Collection<String> desiredBarcodeFormats) {
+ return initiateScan(desiredBarcodeFormats, -1);
+ }
+
+ /**
+ * Initiates a scan, using the specified camera, only for a certain set of barcode types, given as strings corresponding
+ * to their names in ZXing's {@code BarcodeFormat} class like "UPC_A". You can supply constants
+ * like {@link #PRODUCT_CODE_TYPES} for example.
+ *
+ * @param desiredBarcodeFormats names of {@code BarcodeFormat}s to scan for
+ * @param cameraId camera ID of the camera to use. A negative value means "no preference".
+ * @return the {@link AlertDialog} that was shown to the user prompting them to download the app
+ * if a prompt was needed, or null otherwise
+ */
+ public final AlertDialog initiateScan(Collection<String> desiredBarcodeFormats, int cameraId) {
+ Intent intentScan = new Intent(BS_PACKAGE + ".SCAN");
+ intentScan.addCategory(Intent.CATEGORY_DEFAULT);
+
+ // check which types of codes to scan for
+ if (desiredBarcodeFormats != null) {
+ // set the desired barcode types
+ StringBuilder joinedByComma = new StringBuilder();
+ for (String format : desiredBarcodeFormats) {
+ if (joinedByComma.length() > 0) {
+ joinedByComma.append(',');
+ }
+ joinedByComma.append(format);
+ }
+ intentScan.putExtra("SCAN_FORMATS", joinedByComma.toString());
+ }
+
+ // check requested camera ID
+ if (cameraId >= 0) {
+ intentScan.putExtra("SCAN_CAMERA_ID", cameraId);
+ }
+
+ String targetAppPackage = findTargetAppPackage(intentScan);
+ if (targetAppPackage == null) {
+ return showDownloadDialog();
+ }
+ intentScan.setPackage(targetAppPackage);
+ intentScan.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
+ intentScan.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
+ attachMoreExtras(intentScan);
+ startActivityForResult(intentScan, REQUEST_CODE);
+ return null;
+ }
+
+ /**
+ * Start an activity. This method is defined to allow different methods of activity starting for
+ * newer versions of Android and for compatibility library.
+ *
+ * @param intent Intent to start.
+ * @param code Request code for the activity
+ * @see android.app.Activity#startActivityForResult(Intent, int)
+ * @see android.app.Fragment#startActivityForResult(Intent, int)
+ */
+ protected void startActivityForResult(Intent intent, int code) {
+ if (fragment == null) {
+ activity.startActivityForResult(intent, code);
+ } else {
+ fragment.startActivityForResult(intent, code);
+ }
+ }
+
+ private String findTargetAppPackage(Intent intent) {
+ PackageManager pm = activity.getPackageManager();
+ List<ResolveInfo> availableApps = pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
+ if (availableApps != null) {
+ for (String targetApp : targetApplications) {
+ if (contains(availableApps, targetApp)) {
+ return targetApp;
+ }
+ }
+ }
+ return null;
+ }
+
+ private static boolean contains(Iterable<ResolveInfo> availableApps, String targetApp) {
+ for (ResolveInfo availableApp : availableApps) {
+ String packageName = availableApp.activityInfo.packageName;
+ if (targetApp.equals(packageName)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private AlertDialog showDownloadDialog() {
+ AlertDialog.Builder downloadDialog = new AlertDialog.Builder(activity);
+ downloadDialog.setTitle(title);
+ downloadDialog.setMessage(message);
+ downloadDialog.setPositiveButton(buttonYes, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialogInterface, int i) {
+ String packageName;
+ if (targetApplications.contains(BS_PACKAGE)) {
+ // Prefer to suggest download of BS if it's anywhere in the list
+ packageName = BS_PACKAGE;
+ } else {
+ // Otherwise, first option:
+ packageName = targetApplications.get(0);
+ }
+ Uri uri = Uri.parse("market://details?id=" + packageName);
+ Intent intent = new Intent(Intent.ACTION_VIEW, uri);
+ try {
+ if (fragment == null) {
+ activity.startActivity(intent);
+ } else {
+ fragment.startActivity(intent);
+ }
+ } catch (ActivityNotFoundException anfe) {
+ // Hmm, market is not installed
+ Log.w(TAG, "Google Play is not installed; cannot install " + packageName);
+ }
+ }
+ });
+ downloadDialog.setNegativeButton(buttonNo, null);
+ downloadDialog.setCancelable(true);
+ return downloadDialog.show();
+ }
+
+
+ /**
+ * <p>Call this from your {@link Activity}'s
+ * {@link Activity#onActivityResult(int, int, Intent)} method.</p>
+ *
+ * @param requestCode request code from {@code onActivityResult()}
+ * @param resultCode result code from {@code onActivityResult()}
+ * @param intent {@link Intent} from {@code onActivityResult()}
+ * @return null if the event handled here was not related to this class, or
+ * else an {@link IntentResult} containing the result of the scan. If the user cancelled scanning,
+ * the fields will be null.
+ */
+ public static IntentResult parseActivityResult(int requestCode, int resultCode, Intent intent) {
+ if (requestCode == REQUEST_CODE) {
+ if (resultCode == Activity.RESULT_OK) {
+ String contents = intent.getStringExtra("SCAN_RESULT");
+ String formatName = intent.getStringExtra("SCAN_RESULT_FORMAT");
+ byte[] rawBytes = intent.getByteArrayExtra("SCAN_RESULT_BYTES");
+ int intentOrientation = intent.getIntExtra("SCAN_RESULT_ORIENTATION", Integer.MIN_VALUE);
+ Integer orientation = intentOrientation == Integer.MIN_VALUE ? null : intentOrientation;
+ String errorCorrectionLevel = intent.getStringExtra("SCAN_RESULT_ERROR_CORRECTION_LEVEL");
+ return new IntentResult(contents,
+ formatName,
+ rawBytes,
+ orientation,
+ errorCorrectionLevel);
+ }
+ return new IntentResult();
+ }
+ return null;
+ }
+
+
+ /**
+ * Defaults to type "TEXT_TYPE".
+ *
+ * @param text the text string to encode as a barcode
+ * @return the {@link AlertDialog} that was shown to the user prompting them to download the app
+ * if a prompt was needed, or null otherwise
+ * @see #shareText(CharSequence, CharSequence)
+ */
+ public final AlertDialog shareText(CharSequence text) {
+ return shareText(text, "TEXT_TYPE");
+ }
+
+ /**
+ * Shares the given text by encoding it as a barcode, such that another user can
+ * scan the text off the screen of the device.
+ *
+ * @param text the text string to encode as a barcode
+ * @param type type of data to encode. See {@code com.google.zxing.client.android.Contents.Type} constants.
+ * @return the {@link AlertDialog} that was shown to the user prompting them to download the app
+ * if a prompt was needed, or null otherwise
+ */
+ public final AlertDialog shareText(CharSequence text, CharSequence type) {
+ Intent intent = new Intent();
+ intent.addCategory(Intent.CATEGORY_DEFAULT);
+ intent.setAction(BS_PACKAGE + ".ENCODE");
+ intent.putExtra("ENCODE_TYPE", type);
+ intent.putExtra("ENCODE_DATA", text);
+ String targetAppPackage = findTargetAppPackage(intent);
+ if (targetAppPackage == null) {
+ return showDownloadDialog();
+ }
+ intent.setPackage(targetAppPackage);
+ intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
+ intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
+ attachMoreExtras(intent);
+ if (fragment == null) {
+ activity.startActivity(intent);
+ } else {
+ fragment.startActivity(intent);
+ }
+ return null;
+ }
+
+ private static List<String> list(String... values) {
+ return Collections.unmodifiableList(Arrays.asList(values));
+ }
+
+ private void attachMoreExtras(Intent intent) {
+ for (Map.Entry<String,Object> entry : moreExtras.entrySet()) {
+ String key = entry.getKey();
+ Object value = entry.getValue();
+ // Kind of hacky
+ if (value instanceof Integer) {
+ intent.putExtra(key, (Integer) value);
+ } else if (value instanceof Long) {
+ intent.putExtra(key, (Long) value);
+ } else if (value instanceof Boolean) {
+ intent.putExtra(key, (Boolean) value);
+ } else if (value instanceof Double) {
+ intent.putExtra(key, (Double) value);
+ } else if (value instanceof Float) {
+ intent.putExtra(key, (Float) value);
+ } else if (value instanceof Bundle) {
+ intent.putExtra(key, (Bundle) value);
+ } else {
+ intent.putExtra(key, value.toString());
+ }
+ }
+ }
+
+}
diff --git a/app-mini/src/main/java/com/google/zxing/integration/android/IntentResult.java b/app-mini/src/main/java/com/google/zxing/integration/android/IntentResult.java
new file mode 100644
index 00000000..2469af92
--- /dev/null
+++ b/app-mini/src/main/java/com/google/zxing/integration/android/IntentResult.java
@@ -0,0 +1,95 @@
+/*
+ * Copyright 2009 ZXing authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.zxing.integration.android;
+
+/**
+ * <p>Encapsulates the result of a barcode scan invoked through {@link IntentIntegrator}.</p>
+ *
+ * @author Sean Owen
+ */
+public final class IntentResult {
+
+ private final String contents;
+ private final String formatName;
+ private final byte[] rawBytes;
+ private final Integer orientation;
+ private final String errorCorrectionLevel;
+
+ IntentResult() {
+ this(null, null, null, null, null);
+ }
+
+ IntentResult(String contents,
+ String formatName,
+ byte[] rawBytes,
+ Integer orientation,
+ String errorCorrectionLevel) {
+ this.contents = contents;
+ this.formatName = formatName;
+ this.rawBytes = rawBytes;
+ this.orientation = orientation;
+ this.errorCorrectionLevel = errorCorrectionLevel;
+ }
+
+ /**
+ * @return raw content of barcode
+ */
+ public String getContents() {
+ return contents;
+ }
+
+ /**
+ * @return name of format, like "QR_CODE", "UPC_A". See {@code BarcodeFormat} for more format names.
+ */
+ public String getFormatName() {
+ return formatName;
+ }
+
+ /**
+ * @return raw bytes of the barcode content, if applicable, or null otherwise
+ */
+ public byte[] getRawBytes() {
+ return rawBytes;
+ }
+
+ /**
+ * @return rotation of the image, in degrees, which resulted in a successful scan. May be null.
+ */
+ public Integer getOrientation() {
+ return orientation;
+ }
+
+ /**
+ * @return name of the error correction level used in the barcode, if applicable
+ */
+ public String getErrorCorrectionLevel() {
+ return errorCorrectionLevel;
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder dialogText = new StringBuilder(100);
+ dialogText.append("Format: ").append(formatName).append('\n');
+ dialogText.append("Contents: ").append(contents).append('\n');
+ int rawBytesLength = rawBytes == null ? 0 : rawBytes.length;
+ dialogText.append("Raw bytes: (").append(rawBytesLength).append(" bytes)\n");
+ dialogText.append("Orientation: ").append(orientation).append('\n');
+ dialogText.append("EC level: ").append(errorCorrectionLevel).append('\n');
+ return dialogText.toString();
+ }
+
+}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/MainConstants.java b/app-mini/src/main/java/org/torproject/android/mini/MainConstants.java
new file mode 100644
index 00000000..b4d64147
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/MainConstants.java
@@ -0,0 +1,15 @@
+package org.torproject.android.mini;
+
+public interface MainConstants {
+
+ //EXIT COUNTRY CODES
+ String[] COUNTRY_CODES = {"DE","AT","SE","CH","IS","CA","US","ES","FR","BG","PL","AU","BR","CZ","DK","FI","GB","HU","NL","JP","RO","RU","SG","SK"};
+
+ //path to check Tor against
+ String URL_TOR_CHECK = "https://check.torproject.org";
+
+ String URL_TOR_BRIDGES = "https://bridges.torproject.org/bridges?transport=";
+
+ int RESULT_CLOSE_ALL = 0;
+
+}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
new file mode 100644
index 00000000..4ab9939a
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/MiniMainActivity.java
@@ -0,0 +1,1167 @@
+/* Copyright (c) 2009, Nathan Freitas, Orbot / The Guardian Project - https://guardianproject.info */
+/* See LICENSE for licensing information */
+
+package org.torproject.android.mini;
+
+import android.app.ActivityManager;
+import android.app.ActivityManager.RunningServiceInfo;
+import android.app.AlertDialog;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.Editor;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
+import android.net.Uri;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.support.v4.content.LocalBroadcastManager;
+import android.support.v4.widget.DrawerLayout;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.SwitchCompat;
+import android.support.v7.widget.Toolbar;
+import android.text.Html;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.View.OnLongClickListener;
+import android.view.animation.AccelerateInterpolator;
+import android.widget.Button;
+import android.widget.CompoundButton;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+
+import com.google.zxing.integration.android.IntentIntegrator;
+import com.google.zxing.integration.android.IntentResult;
+
+import org.json.JSONArray;
+import org.torproject.android.mini.settings.Languages;
+import org.torproject.android.mini.settings.LocaleHelper;
+import org.torproject.android.mini.settings.SettingsPreferences;
+import org.torproject.android.mini.ui.AppManagerActivity;
+import org.torproject.android.mini.ui.Rotate3dAnimation;
+import org.torproject.android.mini.ui.onboarding.OnboardingActivity;
+import org.torproject.android.mini.vpn.VPNEnableActivity;
+import org.torproject.android.service.OrbotConstants;
+import org.torproject.android.service.TorService;
+import org.torproject.android.service.TorServiceConstants;
+import org.torproject.android.service.util.Prefs;
+import org.torproject.android.service.util.TorServiceUtils;
+import org.torproject.android.service.vpn.VpnConstants;
+import org.torproject.android.service.vpn.VpnPrefs;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import java.net.URLEncoder;
+import java.text.NumberFormat;
+import java.util.ArrayList;
+import java.util.Locale;
+import java.util.StringTokenizer;
+
+import static org.torproject.android.mini.MainConstants.RESULT_CLOSE_ALL;
+import static org.torproject.android.mini.MainConstants.URL_TOR_CHECK;
+import static org.torproject.android.service.vpn.VpnPrefs.PREFS_KEY_TORIFIED;
+import static org.torproject.android.service.vpn.VpnUtils.getSharedPrefs;
+
+public class MiniMainActivity extends AppCompatActivity
+ implements OrbotConstants, OnLongClickListener {
+
+ /* Useful UI bits */
+// private TextView lblStatus = null; //the main text display widget
+ private ImageView imgStatus = null; //the main touchable image for activating Orbot
+
+ private TextView downloadText = null;
+ private TextView uploadText = null;
+ private TextView mTxtOrbotLog = null;
+
+ private SwitchCompat mBtnVPN = null;
+
+ private DrawerLayout mDrawer;
+
+ /* Some tracking bits */
+ private String torStatus = null; //latest status reported from the tor service
+ private Intent lastStatusIntent; // the last ACTION_STATUS Intent received
+
+ private SharedPreferences mPrefs = null;
+
+ private boolean autoStartFromIntent = false;
+
+ private final static int REQUEST_VPN = 8888;
+ private final static int REQUEST_SETTINGS = 0x9874;
+ private final static int REQUEST_VPN_APPS_SELECT = 8889;
+
+ private final static int LOG_DRAWER_GRAVITY = Gravity.END;
+
+ // message types for mStatusUpdateHandler
+ private final static int STATUS_UPDATE = 1;
+ private static final int MESSAGE_TRAFFIC_COUNT = 2;
+ private static final int MESSAGE_PORTS = 3;
+
+
+ public final static String INTENT_ACTION_REQUEST_HIDDEN_SERVICE = "org.torproject.android.REQUEST_HS_PORT";
+ public final static String INTENT_ACTION_REQUEST_START_TOR = "org.torproject.android.START_TOR";
+
+
+
+
+ /**
+ * Called when the activity is first created.
+ */
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ mPrefs = TorServiceUtils.getSharedPrefs(getApplicationContext());
+
+ /* Create the widgets before registering for broadcasts to guarantee
+ * that the widgets exist when the status updates try to update them */
+ doLayout();
+
+ /* receive the internal status broadcasts, which are separate from the public
+ * status broadcasts to prevent other apps from sending fake/wrong status
+ * info to this app */
+ LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(this);
+ lbm.registerReceiver(mLocalBroadcastReceiver,
+ new IntentFilter(TorServiceConstants.ACTION_STATUS));
+ lbm.registerReceiver(mLocalBroadcastReceiver,
+ new IntentFilter(TorServiceConstants.LOCAL_ACTION_BANDWIDTH));
+ lbm.registerReceiver(mLocalBroadcastReceiver,
+ new IntentFilter(TorServiceConstants.LOCAL_ACTION_LOG));
+ lbm.registerReceiver(mLocalBroadcastReceiver,
+ new IntentFilter(TorServiceConstants.LOCAL_ACTION_PORTS));
+
+
+
+ boolean showFirstTime = mPrefs.getBoolean("connect_first_time", true);
+
+ if (showFirstTime)
+ {
+ Editor pEdit = mPrefs.edit();
+ pEdit.putBoolean("connect_first_time", false);
+ pEdit.commit();
+ startActivity(new Intent(this,OnboardingActivity.class));
+ }
+
+ /**
+ * Resets previous DNS Port to the default
+ */
+ getSharedPrefs(getApplicationContext()).edit().putInt(VpnPrefs.PREFS_DNS_PORT,
+ VpnConstants.TOR_DNS_PORT_DEFAULT).apply();
+
+ }
+
+ private void sendIntentToService(final String action) {
+
+ Intent torService = new Intent(MiniMainActivity.this, TorService.class);
+ torService.setAction(action);
+ startService(torService);
+
+ }
+
+ private void stopTor() {
+
+// requestTorStatus();
+
+ Intent torService = new Intent(MiniMainActivity.this, TorService.class);
+ stopService(torService);
+
+ }
+
+ /**
+ * The state and log info from {@link TorService} are sent to the UI here in
+ * the form of a local broadcast. Regular broadcasts can be sent by any app,
+ * so local ones are used here so other apps cannot interfere with Orbot's
+ * operation.
+ */
+ private BroadcastReceiver mLocalBroadcastReceiver = new BroadcastReceiver() {
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ String action = intent.getAction();
+ if (action == null)
+ return;
+
+ if (action.equals(TorServiceConstants.LOCAL_ACTION_LOG)) {
+ Message msg = mStatusUpdateHandler.obtainMessage(STATUS_UPDATE);
+ msg.obj = intent.getStringExtra(TorServiceConstants.LOCAL_EXTRA_LOG);
+ msg.getData().putString("status", intent.getStringExtra(TorServiceConstants.EXTRA_STATUS));
+ mStatusUpdateHandler.sendMessage(msg);
+
+ } else if (action.equals(TorServiceConstants.LOCAL_ACTION_BANDWIDTH)) {
+ long upload = intent.getLongExtra("up", 0);
+ long download = intent.getLongExtra("down", 0);
+ long written = intent.getLongExtra("written", 0);
+ long read = intent.getLongExtra("read", 0);
+
+ Message msg = mStatusUpdateHandler.obtainMessage(MESSAGE_TRAFFIC_COUNT);
+ msg.getData().putLong("download", download);
+ msg.getData().putLong("upload", upload);
+ msg.getData().putLong("readTotal", read);
+ msg.getData().putLong("writeTotal", written);
+ msg.getData().putString("status", intent.getStringExtra(TorServiceConstants.EXTRA_STATUS));
+
+ mStatusUpdateHandler.sendMessage(msg);
+
+ } else if (action.equals(TorServiceConstants.ACTION_STATUS)) {
+ lastStatusIntent = intent;
+
+ Message msg = mStatusUpdateHandler.obtainMessage(STATUS_UPDATE);
+ msg.getData().putString("status", intent.getStringExtra(TorServiceConstants.EXTRA_STATUS));
+
+ mStatusUpdateHandler.sendMessage(msg);
+ }
+ else if (action.equals(TorServiceConstants.LOCAL_ACTION_PORTS)) {
+
+ Message msg = mStatusUpdateHandler.obtainMessage(MESSAGE_PORTS);
+ msg.getData().putInt("socks",intent.getIntExtra(TorService.EXTRA_SOCKS_PROXY_PORT,-1));
+ msg.getData().putInt("http",intent.getIntExtra(TorService.EXTRA_HTTP_PROXY_PORT,-1));
+
+ mStatusUpdateHandler.sendMessage(msg);
+
+ }
+ }
+ };
+
+ private void doLayout ()
+ {
+ setContentView(R.layout.layout_main);
+
+ setTitle(R.string.app_name);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+
+ mDrawer = (DrawerLayout) findViewById(R.id.drawer_layout);
+
+ mTxtOrbotLog = (TextView)findViewById(R.id.orbotLog);
+
+ /**
+ lblStatus = (TextView)findViewById(R.id.lblStatus);
+ lblStatus.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ mDrawer.openDrawer(LOG_DRAWER_GRAVITY);
+ }
+ });**/
+
+ imgStatus = (ImageView)findViewById(R.id.imgStatus);
+ imgStatus.setOnLongClickListener(this);
+
+ downloadText = (TextView)findViewById(R.id.trafficDown);
+ uploadText = (TextView)findViewById(R.id.trafficUp);
+
+ // downloadText.setText(formatCount(0) + " / " + formatTotal(0)+ " \u2193");
+ // uploadText.setText(formatCount(0) + " / " + formatTotal(0)+ " \u2191");
+
+ downloadText.setText(formatTotal(0) +" \u2193");
+ uploadText.setText(formatTotal(0) + " \u2191");
+
+
+ /**
+ mBtnStart =(Button)findViewById(R.id.btnStart);
+ mBtnStart.setOnClickListener(new View.OnClickListener()
+ {
+ @Override
+ public void onClick(View v) {
+
+ if (torStatus == TorServiceConstants.STATUS_OFF) {
+// lblStatus.setText(getString(R.string.status_starting_up));
+ startTor();
+ } else {
+// lblStatus.setText(getString(R.string.status_shutting_down));
+ stopTor();
+ }
+ }
+ });**/
+
+ mBtnVPN = (SwitchCompat)findViewById(R.id.btnVPN);
+
+ boolean useVPN = Prefs.useVpn();
+ mBtnVPN.setChecked(useVPN);
+
+ //auto start VPN if VPN is enabled
+ if (useVPN) {
+ startActivity(new Intent(MiniMainActivity.this,VPNEnableActivity.class));
+ }
+
+ mBtnVPN.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ enableVPN(isChecked);
+ }
+ });
+
+
+ }
+
+ /**
+ private void setCountrySpinner ()
+ {
+ String currentExit = Prefs.getExitNodes();
+ if (currentExit.length() > 4)
+ {
+ //someone put a complex value in, so let's disable
+ ArrayList<String> cList = new ArrayList<String>();
+ cList.add(0, currentExit);
+ ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, cList);
+ spnCountries.setAdapter(adapter);
+ spnCountries.setEnabled(false);
+ }
+ else {
+ int selIdx = -1;
+
+ ArrayList<String> cList = new ArrayList<String>();
+ cList.add(0, getString(R.string.vpn_default_world));
+
+ for (int i = 0; i < COUNTRY_CODES.length; i++) {
+ Locale locale = new Locale("", COUNTRY_CODES[i]);
+ cList.add(locale.getDisplayCountry());
+
+ if (currentExit.contains(COUNTRY_CODES[i]))
+ selIdx = i + 1;
+ }
+
+ ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, cList);
+ spnCountries.setAdapter(adapter);
+
+ if (selIdx > 0)
+ spnCountries.setSelection(selIdx,true);
+
+ spnCountries.setOnItemSelectedListener(new OnItemSelectedListener() {
+
+ int mOldPosition = spnCountries.getSelectedItemPosition();
+
+ @Override
+ public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
+ // your code here
+
+ if (mOldPosition == position)
+ return;
+
+ mOldPosition = position; //new position!
+
+ String country = null;
+
+ if (position == 0)
+ country = "";
+ else
+ country = '{' + COUNTRY_CODES[position - 1] + '}';
+
+ Intent torService = new Intent(MiniMainActivity.this, TorService.class);
+ torService.setAction(TorServiceConstants.CMD_SET_EXIT);
+ torService.putExtra("exit", country);
+ startService(torService);
+
+ }
+
+ @Override
+ public void onNothingSelected(AdapterView<?> parentView) {
+ // your code here
+ }
+
+ });
+ }
+ }**/
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ super.attachBaseContext(LocaleHelper.onAttach(base));
+ }
+
+ /*
+ * Create the UI Options Menu (non-Javadoc)
+ * @see android.app.Activity#onCreateOptionsMenu(android.view.Menu)
+ */
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ super.onCreateOptionsMenu(menu);
+ MenuInflater inflater = getMenuInflater();
+ inflater.inflate(R.menu.orbot_main, menu);
+ return true;
+ }
+
+
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+
+ if (item.getItemId() == R.id.menu_newnym)
+ {
+ requestNewTorIdentity();
+ }
+ else if (item.getItemId() == R.id.menu_settings)
+ {
+ Intent intent = new Intent(MiniMainActivity.this, SettingsPreferences.class);
+ startActivityForResult(intent, REQUEST_SETTINGS);
+ }
+ /**
+ else if (item.getItemId() == R.id.menu_exit)
+ {
+ //exit app
+ doExit();
+
+ }**/
+ else if (item.getItemId() == R.id.menu_about)
+ {
+ showAbout();
+
+
+ }
+ /**
+ else if (item.getItemId() == R.id.menu_scan)
+ {
+ IntentIntegrator integrator = new IntentIntegrator(MiniMainActivity.this);
+ integrator.initiateScan();
+ }
+ else if (item.getItemId() == R.id.menu_share_bridge)
+ {
+
+ String bridges = Prefs.getBridgesList();
+
+ if (bridges != null && bridges.length() > 0)
+ {
+ try {
+ bridges = "bridge://" + URLEncoder.encode(bridges,"UTF-8");
+
+ IntentIntegrator integrator = new IntentIntegrator(MiniMainActivity.this);
+ integrator.shareText(bridges);
+
+ } catch (UnsupportedEncodingException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ }**/
+
+ return super.onOptionsItemSelected(item);
+ }
+
+ private void showAbout ()
+ {
+
+ LayoutInflater li = LayoutInflater.from(this);
+ View view = li.inflate(R.layout.layout_about, null);
+
+ String version = "";
+
+ try {
+ version = getPackageManager().getPackageInfo(getPackageName(), 0).versionName + " (Tor " + TorService.BINARY_TOR_VERSION + ")";
+ } catch (NameNotFoundException e) {
+ version = "Version Not Found";
+ }
+
+ TextView versionName = (TextView)view.findViewById(R.id.versionName);
+ versionName.setText(version);
+
+ TextView aboutOther = (TextView)view.findViewById(R.id.aboutother);
+
+ try
+ {
+ String aboutText = readFromAssets(this,"LICENSE");
+ aboutText = aboutText.replace("\n","<br/>");
+ aboutOther.setText(Html.fromHtml(aboutText));
+ }
+ catch (Exception e){}
+
+ new AlertDialog.Builder(this)
+ .setTitle(getString(R.string.button_about))
+ .setView(view)
+ .show();
+ }
+
+ private static String readFromAssets(Context context, String filename) throws IOException {
+ BufferedReader reader = new BufferedReader(new InputStreamReader(context.getAssets().open(filename)));
+
+ // do reading, usually loop until end of file reading
+ StringBuilder sb = new StringBuilder();
+ String mLine = reader.readLine();
+ while (mLine != null) {
+ sb.append(mLine + '\n'); // process line
+ mLine = reader.readLine();
+ }
+ reader.close();
+ return sb.toString();
+ }
+
+
+ /**
+ * This is our attempt to REALLY exit Orbot, and stop the background service
+ * However, Android doesn't like people "quitting" apps, and/or our code may
+ * not be quite right b/c no matter what we do, it seems like the TorService
+ * still exists
+ **/
+ private void doExit() {
+ stopTor();
+
+ // Kill all the wizard activities
+ setResult(RESULT_CLOSE_ALL);
+ finish();
+ }
+
+ protected void onPause() {
+ try
+ {
+ super.onPause();
+
+ if (aDialog != null)
+ aDialog.dismiss();
+ }
+ catch (IllegalStateException ise)
+ {
+ //can happen on exit/shutdown
+ }
+ }
+
+
+ @Override
+ public void onBackPressed() {
+ // check to see if the log is open, if so close it
+ if (mDrawer.isDrawerOpen(LOG_DRAWER_GRAVITY)) {
+ mDrawer.closeDrawers();
+ }
+ else {
+ super.onBackPressed();
+ }
+ }
+
+ private void refreshVPNApps ()
+ {
+ stopVpnService();
+ startActivity(new Intent(MiniMainActivity.this, VPNEnableActivity.class));
+ }
+
+ private void enableVPN (boolean enable)
+ {
+ Prefs.putUseVpn(enable);
+
+ if (enable) {
+ startActivityForResult(new Intent(MiniMainActivity.this, VPNEnableActivity.class), REQUEST_VPN);
+ } else
+ stopVpnService();
+
+ addAppShortcuts();
+ }
+
+
+ private synchronized void handleIntents() {
+ if (getIntent() == null)
+ return;
+
+ // Get intent, action and MIME type
+ Intent intent = getIntent();
+ String action = intent.getAction();
+
+ if (action == null)
+ return;
+
+ switch (action) {
+
+ case Intent.ACTION_VIEW:
+ String urlString = intent.getDataString();
+
+ if (urlString != null) {
+
+ if (urlString.toLowerCase().startsWith("bridge://"))
+
+ {
+ String newBridgeValue = urlString.substring(9); //remove the bridge protocol piece
+ newBridgeValue = URLDecoder.decode(newBridgeValue); //decode the value here
+
+ showAlert(getString(R.string.bridges_updated), getString(R.string.restart_orbot_to_use_this_bridge_) + newBridgeValue, false);
+
+ setNewBridges(newBridgeValue);
+ }
+ }
+ break;
+ }
+
+ updateStatus(null, torStatus);
+
+ setIntent(null);
+
+ }
+
+ private void setNewBridges(String newBridgeValue) {
+
+ Prefs.setBridgesList(newBridgeValue); //set the string to a preference
+ Prefs.putBridgesEnabled(true);
+
+ setResult(RESULT_OK);
+
+// mBtnBridges.setChecked(true);
+
+ enableBridges(true);
+ }
+
+ /*
+ * Launch the system activity for Uri viewing with the provided url
+ */
+ private void openBrowser(final String browserLaunchUrl,boolean forceExternal, String pkgId) {
+ if (pkgId != null) {
+ startIntent(pkgId,Intent.ACTION_VIEW,Uri.parse(browserLaunchUrl));
+ }
+ else if (mBtnVPN.isChecked()||forceExternal) {
+ //use the system browser since VPN is on
+ startIntent(null,Intent.ACTION_VIEW, Uri.parse(browserLaunchUrl));
+ }
+ }
+
+ private void startIntent (String pkg, String action, Uri data)
+ {
+ Intent i;
+ PackageManager pm = getPackageManager();
+
+ try {
+ if (pkg != null) {
+ i = pm.getLaunchIntentForPackage(pkg);
+ if (i == null)
+ throw new PackageManager.NameNotFoundException();
+ }
+ else
+ {
+ i = new Intent();
+ }
+
+ i.setAction(action);
+ i.setData(data);
+
+ if (i.resolveActivity(pm)!=null)
+ startActivity(i);
+
+ } catch (PackageManager.NameNotFoundException e) {
+
+ }
+ }
+
+ @Override
+ protected void onActivityResult(int request, int response, Intent data) {
+ super.onActivityResult(request, response, data);
+
+ if (request == REQUEST_SETTINGS && response == RESULT_OK)
+ {
+ if (data != null && (!TextUtils.isEmpty(data.getStringExtra("locale")))) {
+
+ String newLocale = data.getStringExtra("locale");
+ Prefs.setDefaultLocale(newLocale);
+ Languages.setLanguage(this, newLocale, true);
+ // Language.setFromPreference(this, "pref_default_locale");
+
+ finish();
+
+ final Handler handler = new Handler();
+ handler.postDelayed(new Runnable() {
+ @Override
+ public void run() {
+ //Do something after 100ms
+ startActivity(new Intent(MiniMainActivity.this, MiniMainActivity.class));
+
+ }
+ }, 1000);
+
+
+ }
+ }
+ else if (request == REQUEST_VPN)
+ {
+ if (response == RESULT_OK) {
+ sendIntentToService(TorServiceConstants.CMD_VPN);
+ }
+ else if (response == VPNEnableActivity.ACTIVITY_RESULT_VPN_DENIED)
+ {
+ mBtnVPN.setChecked(false);
+ Prefs.putUseVpn(false);
+ }
+ }
+ else if (request == REQUEST_VPN_APPS_SELECT)
+ {
+ if (response == RESULT_OK &&
+ torStatus == TorServiceConstants.STATUS_ON)
+ refreshVPNApps();
+
+ }
+
+ IntentResult scanResult = IntentIntegrator.parseActivityResult(request, response, data);
+ if (scanResult != null) {
+ // handle scan result
+
+ String results = scanResult.getContents();
+
+ if (results != null && results.length() > 0)
+ {
+ try {
+
+ int urlIdx = results.indexOf("://");
+
+ if (urlIdx!=-1)
+ {
+ results = URLDecoder.decode(results, "UTF-8");
+ results = results.substring(urlIdx+3);
+
+ showAlert(getString(R.string.bridges_updated),getString(R.string.restart_orbot_to_use_this_bridge_) + results,false);
+
+ setNewBridges(results);
+ }
+ else
+ {
+ JSONArray bridgeJson = new JSONArray(results);
+ StringBuffer bridgeLines = new StringBuffer();
+
+ for (int i = 0; i < bridgeJson.length(); i++)
+ {
+ String bridgeLine = bridgeJson.getString(i);
+ bridgeLines.append(bridgeLine).append("\n");
+ }
+
+ setNewBridges(bridgeLines.toString());
+ }
+
+
+ } catch (Exception e) {
+ Log.e(TAG,"unsupported",e);
+ }
+ }
+
+ }
+
+ }
+
+ /**
+ public void promptSetupBridges ()
+ {
+
+ if (mBtnBridges.isChecked())
+ {
+ Prefs.putBridgesEnabled(true);
+ startActivity(new Intent(this, BridgeWizardActivity.class));
+ }
+ else
+ {
+ enableBridges(false);
+ }
+
+ }**/
+
+
+ private void enableBridges (boolean enable)
+ {
+ Prefs.putBridgesEnabled(enable);
+
+ if (torStatus == TorServiceConstants.STATUS_ON)
+ {
+ String bridgeList = Prefs.getBridgesList();
+ if (bridgeList != null && bridgeList.length() > 0)
+ {
+ requestTorRereadConfig ();
+ }
+ }
+ }
+
+ private void requestTorRereadConfig() {
+ sendIntentToService(TorServiceConstants.CMD_SIGNAL_HUP);
+ }
+
+ public void stopVpnService ()
+ {
+ sendIntentToService(TorServiceConstants.CMD_VPN_CLEAR);
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+
+// mBtnBridges.setChecked(Prefs.bridgesEnabled());
+ mBtnVPN.setChecked(Prefs.useVpn());
+
+// setCountrySpinner();
+
+ requestTorStatus();
+
+ if (torStatus == null)
+ updateStatus("", TorServiceConstants.STATUS_STOPPING);
+ else
+ updateStatus(null, torStatus);
+
+ addAppShortcuts();
+
+ //now you can handle the intents properly
+ handleIntents();
+
+ }
+
+ AlertDialog aDialog = null;
+
+ //general alert dialog for mostly Tor warning messages
+ //sometimes this can go haywire or crazy with too many error
+ //messages from Tor, and the user cannot stop or exit Orbot
+ //so need to ensure repeated error messages are not spamming this method
+ private void showAlert(String title, String msg, boolean button)
+ {
+ try
+ {
+ if (aDialog != null && aDialog.isShowing())
+ aDialog.dismiss();
+ }
+ catch (Exception e){} //swallow any errors
+
+ if (button)
+ {
+ aDialog = new AlertDialog.Builder(MiniMainActivity.this)
+ .setIcon(R.drawable.onion32)
+ .setTitle(title)
+ .setMessage(msg)
+ .setPositiveButton(R.string.btn_okay, null)
+ .show();
+ }
+ else
+ {
+ aDialog = new AlertDialog.Builder(MiniMainActivity.this)
+ .setIcon(R.drawable.onion32)
+ .setTitle(title)
+ .setMessage(msg)
+ .show();
+ }
+
+ aDialog.setCanceledOnTouchOutside(true);
+ }
+
+ /**
+ * Update the layout_main UI based on the status of {@link TorService}.
+ * {@code torServiceMsg} must never be {@code null}
+ */
+ private synchronized void updateStatus(String torServiceMsg, String newTorStatus) {
+
+ if (!TextUtils.isEmpty(torServiceMsg))
+ {
+ if (torServiceMsg.contains(TorServiceConstants.LOG_NOTICE_HEADER)) {
+ // lblStatus.setText(torServiceMsg);
+ }
+
+ mTxtOrbotLog.append(torServiceMsg + '\n');
+
+ }
+
+ if (torStatus == null || (newTorStatus != null && newTorStatus.equals(torStatus))) {
+ torStatus = newTorStatus;
+ return;
+ }
+ else
+ torStatus = newTorStatus;
+
+ if (torStatus == TorServiceConstants.STATUS_ON) {
+
+ imgStatus.setImageResource(R.drawable.toron);
+
+ //lblStatus.setText(getString(R.string.status_activated));
+
+ if (autoStartFromIntent)
+ {
+ autoStartFromIntent = false;
+ Intent resultIntent = lastStatusIntent;
+
+ if (resultIntent == null)
+ resultIntent = new Intent(TorServiceConstants.ACTION_START);
+
+ resultIntent.putExtra(
+ TorServiceConstants.EXTRA_STATUS,
+ torStatus == null?TorServiceConstants.STATUS_OFF:torStatus
+ );
+
+ setResult(RESULT_OK, resultIntent);
+
+ finish();
+ Log.d(TAG, "autoStartFromIntent finish");
+ }
+
+
+
+ } else if (torStatus == TorServiceConstants.STATUS_STARTING) {
+
+ imgStatus.setImageResource(R.drawable.torstarting);
+
+ if (torServiceMsg != null)
+ {
+ if (torServiceMsg.contains(TorServiceConstants.LOG_NOTICE_BOOTSTRAPPED)) {
+ // lblStatus.setText(torServiceMsg);
+ }
+ }
+ // else
+ // lblStatus.setText(getString(R.string.status_starting_up));
+
+
+ } else if (torStatus == TorServiceConstants.STATUS_STOPPING) {
+
+ // if (torServiceMsg != null && torServiceMsg.contains(TorServiceConstants.LOG_NOTICE_HEADER))
+ // lblStatus.setText(torServiceMsg);
+
+ imgStatus.setImageResource(R.drawable.torstarting);
+// lblStatus.setText(torServiceMsg);
+
+ } else if (torStatus == TorServiceConstants.STATUS_OFF) {
+
+ imgStatus.setImageResource(R.drawable.toroff);
+ // lblStatus.setText("Tor v" + TorService.BINARY_TOR_VERSION);
+
+
+ }
+
+
+ }
+
+ /**
+ * Starts tor and related daemons by sending an
+ * {@link TorServiceConstants#ACTION_START} {@link Intent} to
+ * {@link TorService}
+ */
+ private void startTor() {
+ sendIntentToService(TorServiceConstants.ACTION_START);
+ mTxtOrbotLog.setText("");
+ }
+
+ /**
+ * Request tor status without starting it
+ * {@link TorServiceConstants#ACTION_START} {@link Intent} to
+ * {@link TorService}
+ */
+ private void requestTorStatus() {
+ sendIntentToService(TorServiceConstants.ACTION_STATUS);
+ }
+
+ private boolean isTorServiceRunning() {
+ ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
+ for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
+ if (TorService.class.getName().equals(service.service.getClassName())) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ public boolean onLongClick(View view) {
+
+ if (torStatus == TorServiceConstants.STATUS_OFF) {
+ startTor();
+ } else {
+ stopTor();
+ }
+
+ return true;
+
+ }
+
+// this is what takes messages or values from the callback threads or other non-mainUI threads
+//and passes them back into the main UI thread for display to the user
+ private Handler mStatusUpdateHandler = new Handler() {
+
+ @Override
+ public void handleMessage(final Message msg) {
+
+
+ Bundle data = msg.getData();
+
+ switch (msg.what) {
+ case MESSAGE_TRAFFIC_COUNT:
+
+ DataCount datacount = new DataCount(data.getLong("upload"),data.getLong("download"));
+
+ long totalRead = data.getLong("readTotal");
+ long totalWrite = data.getLong("writeTotal");
+
+// downloadText.setText(formatCount(datacount.Download) + " / " + formatTotal(totalRead));
+ // uploadText.setText(formatCount(datacount.Upload) + " / " + formatTotal(totalWrite));
+
+ downloadText.setText(formatTotal(totalRead) +" \u2193");
+ uploadText.setText(formatTotal(totalWrite) + " \u2191");
+
+ break;
+ case MESSAGE_PORTS:
+
+ int socksPort = data.getInt("socks");
+ int httpPort = data.getInt("http");
+
+ break;
+ default:
+ String newTorStatus = msg.getData().getString("status");
+ String log = (String)msg.obj;
+
+ if (torStatus == null && newTorStatus != null) //first time status
+ {
+ findViewById(R.id.frameMain).setVisibility(View.VISIBLE);
+ updateStatus(log, newTorStatus);
+
+ }
+ else
+ updateStatus(log, newTorStatus);
+ super.handleMessage(msg);
+ break;
+ }
+ }
+ };
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ LocalBroadcastManager.getInstance(this).unregisterReceiver(mLocalBroadcastReceiver);
+
+ }
+
+ public class DataCount {
+ // data uploaded
+ public long Upload;
+ // data downloaded
+ public long Download;
+
+ DataCount(long Upload, long Download){
+ this.Upload = Upload;
+ this.Download = Download;
+ }
+ }
+
+ private String formatCount(long count) {
+ NumberFormat numberFormat = NumberFormat.getInstance(Locale.getDefault());
+ // Converts the supplied argument into a string.
+ // Under 2Mb, returns "xxx.xKb"
+ // Over 2Mb, returns "xxx.xxMb"
+ if (count < 1e6)
+ return numberFormat.format(Math.round(((float) ((int) (count * 10 / 1024)) / 10)))
+ + getString(R.string.kbps);
+ else
+ return numberFormat.format(Math
+ .round(((float) ((int) (count * 100 / 1024 / 1024)) / 100)))
+ + getString(R.string.mbps);
+ }
+
+ private String formatTotal(long count) {
+ NumberFormat numberFormat = NumberFormat.getInstance(Locale.getDefault());
+ // Converts the supplied argument into a string.
+ // Under 2Mb, returns "xxx.xKb"
+ // Over 2Mb, returns "xxx.xxMb"
+ if (count < 1e6)
+ return numberFormat.format(Math.round(
+ (int)(((float)count)) * 10f / 1024f / 10f)
+ )
+ + getString(R.string.kb);
+ else
+ return numberFormat.format(Math
+ .round(
+ ((float)count)) * 100f / 1024f / 1024f / 100f
+ )
+ + getString(R.string.mb);
+ }
+
+ private static final float ROTATE_FROM = 0.0f;
+ private static final float ROTATE_TO = 360.0f*4f;// 3.141592654f * 32.0f;
+
+ private void requestNewTorIdentity ()
+ {
+ sendIntentToService (TorServiceConstants.CMD_NEWNYM);
+
+ Rotate3dAnimation rotation = new Rotate3dAnimation(ROTATE_FROM, ROTATE_TO, imgStatus.getWidth()/2f,imgStatus.getWidth()/2f,20f,false);
+ rotation.setFillAfter(true);
+ rotation.setInterpolator(new AccelerateInterpolator());
+ rotation.setDuration((long) 2*1000);
+ rotation.setRepeatCount(0);
+ imgStatus.startAnimation(rotation);
+// lblStatus.setText(getString(R.string.newnym));
+ }
+
+ private void addAppShortcuts() {
+
+ LinearLayout llBoxShortcuts = findViewById(R.id.frameMain);
+
+ PackageManager pMgr = getPackageManager();
+
+ llBoxShortcuts.removeAllViews();
+
+
+ if (Prefs.useVpn()) {
+ ArrayList<String> pkgIds = new ArrayList<>();
+ String tordAppString = mPrefs.getString(PREFS_KEY_TORIFIED, "");
+
+ if (TextUtils.isEmpty(tordAppString)) {
+ addFullDeviceVpnView(llBoxShortcuts);
+ } else {
+ StringTokenizer st = new StringTokenizer(tordAppString, "|");
+ while (st.hasMoreTokens() && pkgIds.size() < 4)
+ pkgIds.add(st.nextToken());
+ int appsAdded = 0;
+ for (final String pkgId : pkgIds) {
+ try {
+ ApplicationInfo aInfo = getPackageManager().getApplicationInfo(pkgId, 0);
+ // skip disabled packages
+ if (!aInfo.enabled) continue;
+ ImageView iv = new ImageView(this);
+ LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
+ params.setMargins(3, 3, 3, 3);
+ iv.setLayoutParams(params);
+ iv.setImageDrawable(pMgr.getApplicationIcon(pkgId));
+
+ iv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ openBrowser(URL_TOR_CHECK, false, pkgId);
+ }
+ });
+
+ llBoxShortcuts.addView(iv);
+ appsAdded++;
+ } catch (Exception e) {
+ //package not installed?
+ }
+ }
+ if (appsAdded == 0) {
+
+ addFullDeviceVpnView(llBoxShortcuts);
+ }
+ }
+ }
+ else
+ {
+ TextView tv = new TextView(this);
+ LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
+ params.setMargins(12, 3, 3, 3);
+ tv.setLayoutParams(params);
+ tv.setText(R.string.vpn_disabled);
+ llBoxShortcuts.addView(tv);
+ }
+
+ //now add app edit/add shortcut
+ ImageView iv = new ImageView(this);
+ LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
+ params.setMargins(3, 3, 3, 3);
+ iv.setLayoutParams(params);
+ iv.setImageDrawable(getResources().getDrawable(R.drawable.ic_settings_white_24dp));
+ llBoxShortcuts.addView(iv);
+ iv.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ startActivityForResult(new Intent(MiniMainActivity.this, AppManagerActivity.class), REQUEST_VPN_APPS_SELECT);
+
+ }
+ });
+
+
+ }
+
+ private void addFullDeviceVpnView(LinearLayout llBoxShortcuts) {
+ TextView tv = new TextView(this);
+ LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
+ params.setMargins(12, 3, 3, 3);
+ tv.setLayoutParams(params);
+ tv.setText(R.string.full_device_vpn);
+ llBoxShortcuts.addView(tv);
+ }
+
+}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/OnBootReceiver.java b/app-mini/src/main/java/org/torproject/android/mini/OnBootReceiver.java
new file mode 100644
index 00000000..6ddaf47e
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/OnBootReceiver.java
@@ -0,0 +1,57 @@
+package org.torproject.android.mini;
+
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.os.Build;
+
+import org.torproject.android.service.util.Prefs;
+import org.torproject.android.service.TorService;
+import org.torproject.android.service.TorServiceConstants;
+import org.torproject.android.mini.vpn.VPNEnableActivity;
+
+public class OnBootReceiver extends BroadcastReceiver {
+
+ private static boolean sReceivedBoot = false;
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+
+ if (Prefs.startOnBoot() && (!sReceivedBoot))
+ {
+ if (Prefs.useVpn())
+ startVpnService(context); //VPN will start Tor once it is done
+ else
+ startService(TorServiceConstants.ACTION_START, context);
+
+ sReceivedBoot = true;
+ }
+ }
+
+ public void startVpnService (final Context context)
+ {
+ Intent intent = new Intent(context,VPNEnableActivity.class);
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ context.startActivity(intent);
+
+ }
+
+ private void startService (String action, Context context)
+ {
+
+ Intent torService = new Intent(context, TorService.class);
+ torService.setAction(action);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ context.startForegroundService(torService);
+ }
+ else
+ {
+ context.startService(torService);
+ }
+
+ }
+
+
+}
+
diff --git a/app-mini/src/main/java/org/torproject/android/mini/OrbotMiniApp.java b/app-mini/src/main/java/org/torproject/android/mini/OrbotMiniApp.java
new file mode 100644
index 00000000..95e867cf
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/OrbotMiniApp.java
@@ -0,0 +1,111 @@
+
+package org.torproject.android.mini;
+
+import android.annotation.SuppressLint;
+import android.app.Activity;
+import android.app.Application;
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.content.res.Configuration;
+import android.support.v4.app.NotificationCompat;
+
+import com.github.javiersantos.appupdater.AppUpdater;
+import com.github.javiersantos.appupdater.enums.Display;
+import com.github.javiersantos.appupdater.enums.UpdateFrom;
+
+import org.torproject.android.service.OrbotConstants;
+import org.torproject.android.service.util.Prefs;
+
+import org.torproject.android.mini.settings.Languages;
+import org.torproject.android.mini.settings.LocaleHelper;
+
+import java.util.Locale;
+
+
+public class OrbotMiniApp extends Application implements OrbotConstants {
+
+ private Locale locale;
+
+ @Override
+ public void onCreate() {
+ super.onCreate();
+ Languages.setup(MiniMainActivity.class, R.string.menu_settings);
+
+ if (!Prefs.getDefaultLocale().equals(Locale.getDefault().getLanguage())) {
+ Languages.setLanguage(this, Prefs.getDefaultLocale(), true);
+ }
+
+ //check for updates via github, since it is unlikely to be blocked; notify the user of places where upgrades can be found
+ new AppUpdater(this)
+ .setUpdateFrom(UpdateFrom.JSON)
+ .setUpdateJSON("https://raw.githubusercontent.com/n8fr8/orbot/master/update.json")
+ .setDisplay(Display.NOTIFICATION).start();
+ }
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ Prefs.setContext(base);
+ super.attachBaseContext(LocaleHelper.onAttach(base, Prefs.getDefaultLocale()));
+ }
+
+ @Override
+ public void onConfigurationChanged(Configuration newConfig) {
+ super.onConfigurationChanged(newConfig);
+
+ if (!Prefs.getDefaultLocale().equals(Locale.getDefault().getLanguage()))
+ Languages.setLanguage(this, Prefs.getDefaultLocale(), true);
+ }
+ /**
+ public static void forceChangeLanguage(Activity activity) {
+ Intent intent = activity.getIntent();
+ if (intent == null) // when launched as LAUNCHER
+ intent = new Intent(activity, OrbotMainActivity.class);
+ intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
+ activity.finish();
+ activity.overridePendingTransition(0, 0);
+ activity.startActivity(intent);
+ activity.overridePendingTransition(0, 0);
+ }**/
+
+ public static Languages getLanguages(Activity activity) {
+ return Languages.get(activity);
+ }
+
+
+ @SuppressLint("NewApi")
+ protected void showToolbarNotification (String shortMsg, String notifyMsg, int notifyId, int icon)
+ {
+
+ NotificationCompat.Builder notifyBuilder;
+
+ //Reusable code.
+ PackageManager pm = getPackageManager();
+ Intent intent = pm.getLaunchIntentForPackage(getPackageName());
+ PendingIntent pendIntent = PendingIntent.getActivity(this, 0, intent, 0);
+
+ NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
+
+ notifyBuilder = new NotificationCompat.Builder(this)
+ .setContentTitle(getString(org.torproject.android.service.R.string.app_name));
+
+
+ notifyBuilder.setContentIntent(pendIntent);
+
+ notifyBuilder.setContentText(shortMsg);
+ notifyBuilder.setSmallIcon(icon);
+ notifyBuilder.setTicker(notifyMsg);
+
+ notifyBuilder.setOngoing(false);
+
+ notifyBuilder.setStyle(new NotificationCompat.BigTextStyle()
+ .bigText(notifyMsg).setBigContentTitle(getString(org.torproject.android.service.R.string.app_name)));
+
+ Notification notification = notifyBuilder.build();
+
+ notificationManager.notify(notifyId, notification);
+ }
+}
diff --git a/app/src/main/java/org/torproject/android/settings/Languages.java b/app-mini/src/main/java/org/torproject/android/mini/settings/Languages.java
similarity index 99%
rename from app/src/main/java/org/torproject/android/settings/Languages.java
rename to app-mini/src/main/java/org/torproject/android/mini/settings/Languages.java
index 05ae96ce..5fe04a62 100644
--- a/app/src/main/java/org/torproject/android/settings/Languages.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/settings/Languages.java
@@ -1,4 +1,4 @@
-package org.torproject.android.settings;
+package org.torproject.android.mini.settings;
import android.annotation.SuppressLint;
import android.app.Activity;
diff --git a/app/src/main/java/org/torproject/android/settings/LocaleHelper.java b/app-mini/src/main/java/org/torproject/android/mini/settings/LocaleHelper.java
similarity index 95%
rename from app/src/main/java/org/torproject/android/settings/LocaleHelper.java
rename to app-mini/src/main/java/org/torproject/android/mini/settings/LocaleHelper.java
index 4d5f79d7..2d84e988 100644
--- a/app/src/main/java/org/torproject/android/settings/LocaleHelper.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/settings/LocaleHelper.java
@@ -1,12 +1,10 @@
-package org.torproject.android.settings;
+package org.torproject.android.mini.settings;
import android.annotation.TargetApi;
import android.content.Context;
-import android.content.SharedPreferences;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.os.Build;
-import android.preference.PreferenceManager;
import org.torproject.android.service.util.Prefs;
diff --git a/app-mini/src/main/java/org/torproject/android/mini/settings/SettingsPreferences.java b/app-mini/src/main/java/org/torproject/android/mini/settings/SettingsPreferences.java
new file mode 100644
index 00000000..f551f306
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/settings/SettingsPreferences.java
@@ -0,0 +1,73 @@
+/* Copyright (c) 2009, Nathan Freitas, Orbot / The Guardian Project - http://openideals.com/guardian */
+/* See LICENSE for licensing information */
+
+package org.torproject.android.mini.settings;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.preference.EditTextPreference;
+import android.preference.ListPreference;
+import android.preference.Preference;
+import android.preference.Preference.OnPreferenceChangeListener;
+import android.preference.PreferenceActivity;
+import android.preference.PreferenceCategory;
+import android.preference.PreferenceScreen;
+import android.view.inputmethod.EditorInfo;
+import android.widget.EditText;
+
+import org.torproject.android.mini.R;
+
+public class SettingsPreferences extends PreferenceActivity {
+ private ListPreference prefLocale = null;
+
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ addPreferencesFromResource(R.xml.preferences);
+ setNoPersonalizedLearningOnEditTextPreferences();
+ getPreferenceManager().setSharedPreferencesMode(Context.MODE_MULTI_PROCESS);
+
+ prefLocale = (ListPreference) findPreference("pref_default_locale");
+
+ Languages languages = Languages.get(this);
+ prefLocale.setEntries(languages.getAllNames());
+ prefLocale.setEntryValues(languages.getSupportedLocales());
+ prefLocale.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ String language = (String) newValue;
+ Intent intentResult = new Intent();
+ intentResult.putExtra("locale", language);
+ setResult(RESULT_OK, intentResult);
+ finish();
+ return false;
+ }
+ });
+ }
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ super.attachBaseContext(LocaleHelper.onAttach(base));
+ }
+
+ private void setNoPersonalizedLearningOnEditTextPreferences() {
+ PreferenceScreen preferenceScreen = getPreferenceScreen();
+ int categoryCount = preferenceScreen.getPreferenceCount();
+ for (int i = 0; i < categoryCount; i++) {
+ Preference p = preferenceScreen.getPreference(i);
+ if (p instanceof PreferenceCategory) {
+ PreferenceCategory pc = (PreferenceCategory) p;
+ int preferenceCount = pc.getPreferenceCount();
+ for (int j = 0; j < preferenceCount; j++) {
+ p = pc.getPreference(j);
+ if (p instanceof EditTextPreference) {
+ EditText editText = ((EditTextPreference) p).getEditText();
+ editText.setImeOptions(editText.getImeOptions() | EditorInfo.IME_FLAG_NO_PERSONALIZED_LEARNING);
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
new file mode 100644
index 00000000..5c61db99
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
@@ -0,0 +1,343 @@
+/* Copyright (c) 2009, Nathan Freitas, Orbot / The Guardian Project - http://openideals.com/guardian */
+/* See LICENSE for licensing information */
+
+package org.torproject.android.mini.ui;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Iterator;
+import java.util.List;
+import java.util.StringTokenizer;
+
+import org.torproject.android.mini.R;
+import org.torproject.android.service.OrbotConstants;
+import org.torproject.android.service.util.TorServiceUtils;
+import org.torproject.android.service.vpn.TorifiedApp;
+
+import android.Manifest;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.Editor;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.support.v7.app.AppCompatActivity;
+import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.view.ViewGroup;
+import android.widget.ArrayAdapter;
+import android.widget.CheckBox;
+import android.widget.GridView;
+import android.widget.ImageView;
+import android.widget.ListAdapter;
+import android.widget.ProgressBar;
+import android.widget.TextView;
+
+import static org.torproject.android.service.vpn.VpnPrefs.PREFS_KEY_TORIFIED;
+
+public class AppManagerActivity extends AppCompatActivity implements OnClickListener, OrbotConstants {
+
+ private GridView listApps;
+ private ListAdapter adapterApps;
+ private ProgressBar progressBar;
+ PackageManager pMgr = null;
+
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ pMgr = getPackageManager();
+
+ this.setContentView(R.layout.layout_apps);
+ setTitle(R.string.apps_mode);
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+ listApps = findViewById(R.id.applistview);
+ progressBar = findViewById(R.id.progressBar);
+ }
+
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+ mPrefs = TorServiceUtils.getSharedPrefs(getApplicationContext());
+ reloadApps();
+ }
+
+
+ /*
+ * Create the UI Options Menu (non-Javadoc)
+ * @see android.app.Activity#onCreateOptionsMenu(android.view.Menu)
+ */
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ super.onCreateOptionsMenu(menu);
+ MenuInflater inflater = getMenuInflater();
+ inflater.inflate(R.menu.app_main, menu);
+ return true;
+ }
+
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+
+ if (item.getItemId() == R.id.menu_refresh_apps)
+ {
+ mApps = null;
+ reloadApps();
+ }
+ else if (item.getItemId() == android.R.id.home) {
+ finish();
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+
+ private void reloadApps () {
+ new AsyncTask<Void, Void, Void>() {
+ protected void onPreExecute() {
+ // Pre Code
+ progressBar.setVisibility(View.VISIBLE);
+ }
+ protected Void doInBackground(Void... unused) {
+ loadApps(mPrefs);
+ return null;
+ }
+ protected void onPostExecute(Void unused) {
+ listApps.setAdapter(adapterApps);
+ progressBar.setVisibility(View.GONE);
+ }
+ }.execute();
+
+
+ }
+
+ SharedPreferences mPrefs = null;
+ static ArrayList<TorifiedApp> mApps = null;
+
+ private void loadApps (SharedPreferences prefs) {
+ if (mApps == null)
+ mApps = getApps(prefs);
+
+ Collections.sort(mApps,new Comparator<TorifiedApp>() {
+ public int compare(TorifiedApp o1, TorifiedApp o2) {
+ /* Some apps start with lowercase letters and without the sorting being case
+ insensitive they'd appear at the end of the grid of apps, a position where users
+ would likely not expect to find them.
+ */
+ if (o1.isTorified() == o2.isTorified())
+ return o1.getName().compareToIgnoreCase(o2.getName());
+ if (o1.isTorified()) return -1;
+ return 1;
+ }
+ });
+
+ final LayoutInflater inflater = getLayoutInflater();
+
+ adapterApps = new ArrayAdapter<TorifiedApp>(this, R.layout.layout_apps_item, R.id.itemtext,mApps) {
+
+ @Override
+ public View getView(int position, View convertView, ViewGroup parent) {
+
+ ListEntry entry = null;
+
+ if (convertView == null)
+ convertView = inflater.inflate(R.layout.layout_apps_item, parent, false);
+ else
+ entry = (ListEntry) convertView.getTag();
+
+ if (entry == null) {
+ // Inflate a new view
+ entry = new ListEntry();
+ entry.icon = convertView.findViewById(R.id.itemicon);
+ entry.box = convertView.findViewById(R.id.itemcheck);
+ entry.text = convertView.findViewById(R.id.itemtext);
+ convertView.setTag(entry);
+ }
+
+ final TorifiedApp app = mApps.get(position);
+
+ if (entry.icon != null) {
+
+ try {
+ entry.icon.setImageDrawable(pMgr.getApplicationIcon(app.getPackageName()));
+ entry.icon.setOnClickListener(AppManagerActivity.this);
+ entry.icon.setTag(entry.box);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+ if (entry.text != null) {
+ entry.text.setText(app.getName());
+ entry.text.setOnClickListener(AppManagerActivity.this);
+ entry.text.setTag(entry.box);
+ }
+
+ if (entry.box != null) {
+ entry.box.setOnClickListener(AppManagerActivity.this);
+ entry.box.setChecked(app.isTorified());
+ entry.box.setTag(app);
+ }
+
+ return convertView;
+ }
+ };
+
+
+ }
+
+ private static class ListEntry {
+ private CheckBox box;
+ private TextView text;
+ private ImageView icon;
+ }
+
+ public ArrayList<TorifiedApp> getApps(SharedPreferences prefs) {
+
+ String tordAppString = prefs.getString(PREFS_KEY_TORIFIED, "");
+
+ String[] tordApps;
+
+ StringTokenizer st = new StringTokenizer(tordAppString,"|");
+ tordApps = new String[st.countTokens()];
+ int tordIdx = 0;
+ while (st.hasMoreTokens())
+ {
+ tordApps[tordIdx++] = st.nextToken();
+ }
+ Arrays.sort(tordApps);
+
+ List<ApplicationInfo> lAppInfo = pMgr.getInstalledApplications(0);
+
+ Iterator<ApplicationInfo> itAppInfo = lAppInfo.iterator();
+
+ ArrayList<TorifiedApp> apps = new ArrayList<>();
+
+ ApplicationInfo aInfo;
+
+ TorifiedApp app;
+
+ while (itAppInfo.hasNext())
+ {
+ aInfo = itAppInfo.next();
+ // don't include apps user has disabled, often these ship with the device
+ if (!aInfo.enabled) continue;
+ app = new TorifiedApp();
+
+
+ try {
+ PackageInfo pInfo = pMgr.getPackageInfo(aInfo.packageName, PackageManager.GET_PERMISSIONS);
+
+ if (pInfo != null && pInfo.requestedPermissions != null)
+ {
+ for (String permInfo:pInfo.requestedPermissions)
+ {
+ if (permInfo.equals(Manifest.permission.INTERNET))
+ {
+ app.setUsesInternet(true);
+ }
+ }
+
+ }
+
+
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ try
+ {
+ app.setName(pMgr.getApplicationLabel(aInfo).toString());
+ }
+ catch (Exception e)
+ {
+ // no name
+ continue; //we only show apps with names
+ }
+
+
+ if (!app.usesInternet())
+ continue;
+ else
+ {
+ apps.add(app);
+ }
+
+ app.setEnabled(aInfo.enabled);
+ app.setUid(aInfo.uid);
+ app.setUsername(pMgr.getNameForUid(app.getUid()));
+ app.setProcname(aInfo.processName);
+ app.setPackageName(aInfo.packageName);
+
+
+ // check if this application is allowed
+ if (Arrays.binarySearch(tordApps, app.getUsername()) >= 0) {
+ app.setTorified(true);
+ }
+ else
+ {
+ app.setTorified(false);
+ }
+
+ }
+
+ Collections.sort(apps);
+
+ return apps;
+ }
+
+
+ public void saveAppSettings() {
+
+ StringBuilder tordApps = new StringBuilder();
+ Intent response = new Intent();
+
+ for (TorifiedApp tApp:mApps)
+ {
+ if (tApp.isTorified())
+ {
+ tordApps.append(tApp.getUsername());
+ tordApps.append("|");
+ response.putExtra(tApp.getUsername(),true);
+ }
+ }
+
+ Editor edit = mPrefs.edit();
+ edit.putString(PREFS_KEY_TORIFIED, tordApps.toString());
+ edit.commit();
+
+ setResult(RESULT_OK,response);
+ }
+
+
+ public void onClick(View v) {
+
+ CheckBox cbox = null;
+
+ if (v instanceof CheckBox)
+ cbox = (CheckBox)v;
+ else if (v.getTag() instanceof CheckBox)
+ cbox = (CheckBox)v.getTag();
+
+ if (cbox != null) {
+ final TorifiedApp app = (TorifiedApp) cbox.getTag();
+ if (app != null) {
+ app.setTorified(!app.isTorified());
+ cbox.setChecked(app.isTorified());
+ }
+
+ saveAppSettings();
+ }
+ }
+}
diff --git a/app/src/main/java/org/torproject/android/ui/NoPersonalizedLearningEditText.java b/app-mini/src/main/java/org/torproject/android/mini/ui/NoPersonalizedLearningEditText.java
similarity index 91%
rename from app/src/main/java/org/torproject/android/ui/NoPersonalizedLearningEditText.java
rename to app-mini/src/main/java/org/torproject/android/mini/ui/NoPersonalizedLearningEditText.java
index 15d8d023..a5d67d79 100644
--- a/app/src/main/java/org/torproject/android/ui/NoPersonalizedLearningEditText.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/NoPersonalizedLearningEditText.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui;
+package org.torproject.android.mini.ui;
import android.content.Context;
import android.support.v7.widget.AppCompatEditText;
diff --git a/app/src/main/java/org/torproject/android/ui/Rotate3dAnimation.java b/app-mini/src/main/java/org/torproject/android/mini/ui/Rotate3dAnimation.java
similarity index 98%
rename from app/src/main/java/org/torproject/android/ui/Rotate3dAnimation.java
rename to app-mini/src/main/java/org/torproject/android/mini/ui/Rotate3dAnimation.java
index 7829d2db..ac8de549 100644
--- a/app/src/main/java/org/torproject/android/ui/Rotate3dAnimation.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/Rotate3dAnimation.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui;
+package org.torproject.android.mini.ui;
import android.graphics.Camera;
import android.graphics.Matrix;
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/BridgeWizardActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/BridgeWizardActivity.java
new file mode 100644
index 00000000..8a85714d
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/BridgeWizardActivity.java
@@ -0,0 +1,223 @@
+package org.torproject.android.mini.ui.onboarding;
+
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.text.TextUtils;
+import android.view.MenuItem;
+import android.view.View;
+import android.widget.RadioButton;
+import android.widget.TextView;
+
+import org.torproject.android.mini.R;
+import org.torproject.android.service.util.Prefs;
+import org.torproject.android.mini.settings.LocaleHelper;
+
+import java.io.IOException;
+import java.net.InetSocketAddress;
+import java.net.Socket;
+import java.net.SocketAddress;
+
+import static org.torproject.android.mini.MainConstants.URL_TOR_BRIDGES;
+
+public class BridgeWizardActivity extends AppCompatActivity {
+
+ private TextView tvStatus;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_bridge_wizard);
+ Toolbar toolbar = findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+ getSupportActionBar().setDisplayHomeAsUpEnabled(true);
+
+ tvStatus = findViewById(R.id.lbl_bridge_test_status);
+ tvStatus.setVisibility(View.GONE);
+
+ setTitle(getString(R.string.bridges));
+
+ RadioButton btnDirect = findViewById(R.id.btnBridgesDirect);
+ btnDirect.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Prefs.setBridgesList("");
+ Prefs.putBridgesEnabled(false);
+ testBridgeConnection();
+ }
+ });
+
+ RadioButton btnObfs4 = findViewById(R.id.btnBridgesObfs4);
+ btnObfs4.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Prefs.setBridgesList("obfs4");
+ Prefs.putBridgesEnabled(true);
+ testBridgeConnection();
+ }
+ });
+
+
+ RadioButton btnMeek = findViewById(R.id.btnBridgesMeek);
+ btnMeek.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Prefs.setBridgesList("meek");
+ Prefs.putBridgesEnabled(true);
+ testBridgeConnection();
+ }
+ });
+
+
+ RadioButton btnNew = findViewById(R.id.btnBridgesNew);
+ btnNew.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ showGetBridgePrompt();
+ }
+ });
+
+ if (!Prefs.bridgesEnabled())
+ btnDirect.setChecked(true);
+ else if (Prefs.getBridgesList().equals("meek"))
+ btnMeek.setChecked(true);
+ else if (Prefs.getBridgesList().equals("obfs4"))
+ btnObfs4.setChecked(true);
+
+ }
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ super.attachBaseContext(LocaleHelper.onAttach(base));
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ if (item.getItemId() == android.R.id.home) {
+ finish();
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+
+
+ private void showGetBridgePrompt() {
+ new AlertDialog.Builder(this)
+ .setTitle(R.string.bridge_mode)
+ .setMessage(R.string.you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_)
+ .setNegativeButton(R.string.btn_cancel, new Dialog.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ //do nothing
+ }
+ })
+ .setNeutralButton(R.string.get_bridges_email, new Dialog.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ sendGetBridgeEmail();
+ }
+
+ })
+ .setPositiveButton(R.string.get_bridges_web, new Dialog.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ openBrowser(URL_TOR_BRIDGES, true);
+ }
+ }).show();
+ }
+
+ private void sendGetBridgeEmail() {
+ String email = "bridges(a)torproject.org";
+ Uri emailUri = Uri.parse("mailto:" + email);
+ Intent emailIntent = new Intent(Intent.ACTION_SENDTO, emailUri);
+ emailIntent.putExtra(Intent.EXTRA_SUBJECT, "get transport");
+ emailIntent.putExtra(Intent.EXTRA_TEXT, "get transport");
+ startActivity(Intent.createChooser(emailIntent, getString(R.string.send_email)));
+ }
+
+
+ /*
+ * Launch the system activity for Uri viewing with the provided url
+ */
+ private void openBrowser(final String browserLaunchUrl, boolean forceExternal) {
+ startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(browserLaunchUrl)));
+ }
+
+
+ private void testBridgeConnection() {
+ if (TextUtils.isEmpty(Prefs.getBridgesList()) || (!Prefs.bridgesEnabled())) {
+ new HostTester().execute("check.torproject.org", "443");
+ } else if (Prefs.getBridgesList().equals("meek")) {
+ new HostTester().execute("meek.azureedge.net", "443", "d2cly7j4zqgua7.cloudfront.net", "443");
+ } else if (Prefs.getBridgesList().equals("obfs4")) {
+ new HostTester().execute("85.17.30.79", "443", "154.35.22.9", "443", "192.99.11.54", "443");
+ } else {
+ tvStatus.setText("");
+ }
+ }
+
+ private class HostTester extends AsyncTask<String, Void, Boolean> {
+ @Override
+ protected void onPreExecute() {
+ // Pre Code
+ tvStatus.setVisibility(View.VISIBLE);
+ tvStatus.setText(R.string.testing_bridges);
+ }
+
+ @Override
+ protected Boolean doInBackground(String... host) {
+ // Background Code
+ boolean result = false;
+
+ for (int i = 0; i < host.length; i++) {
+ String testHost = host[i];
+ i++; //move to the port
+ int testPort = Integer.parseInt(host[i]);
+ result = isHostReachable(testHost, testPort, 10000);
+ if (result)
+ return result;
+ }
+
+ return result;
+ }
+
+ @Override
+ protected void onPostExecute(Boolean result) {
+ // Post Code
+ if (result) {
+ tvStatus.setText(R.string.testing_bridges_success);
+
+ } else {
+ tvStatus.setText(R.string.testing_bridges_fail);
+
+ }
+ }
+ }
+
+ private static boolean isHostReachable(String serverAddress, int serverTCPport, int timeoutMS) {
+ boolean connected = false;
+ Socket socket;
+ try {
+ socket = new Socket();
+ SocketAddress socketAddress = new InetSocketAddress(serverAddress, serverTCPport);
+ socket.connect(socketAddress, timeoutMS);
+ if (socket.isConnected()) {
+ connected = true;
+ socket.close();
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ } finally {
+ socket = null;
+ }
+ return connected;
+ }
+}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/CustomSlideBigText.java b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/CustomSlideBigText.java
new file mode 100644
index 00000000..133b3241
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/CustomSlideBigText.java
@@ -0,0 +1,82 @@
+package org.torproject.android.mini.ui.onboarding;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.app.Fragment;
+import android.text.TextUtils;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.TextView;
+
+import org.torproject.android.mini.R;
+
+
+public class CustomSlideBigText extends Fragment {
+
+ private static final String ARG_LAYOUT_RES_ID = "layoutResId";
+ private int layoutResId;
+ private String mTitle;
+ private String mButtonText;
+ private String mSubTitle;
+ private View.OnClickListener mButtonListener;
+
+ public static CustomSlideBigText newInstance(int layoutResId) {
+ CustomSlideBigText sampleSlide = new CustomSlideBigText();
+
+ Bundle args = new Bundle();
+ args.putInt(ARG_LAYOUT_RES_ID, layoutResId);
+ sampleSlide.setArguments(args);
+
+ return sampleSlide;
+ }
+
+ public void setTitle (String title)
+ {
+ mTitle = title;
+ }
+
+ public void setSubTitle(String subTitle) { mSubTitle = subTitle; }
+
+ public void showButton (String buttonText, View.OnClickListener buttonListener)
+ {
+ mButtonText = buttonText;
+ mButtonListener = buttonListener;
+ }
+
+ @Override
+ public void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ if (getArguments() != null && getArguments().containsKey(ARG_LAYOUT_RES_ID)) {
+ layoutResId = getArguments().getInt(ARG_LAYOUT_RES_ID);
+ }
+ }
+
+ @Nullable
+ @Override
+ public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
+ @Nullable Bundle savedInstanceState) {
+ View view = inflater.inflate(layoutResId, container, false);
+ ((TextView)view.findViewById(R.id.custom_slide_big_text)).setText(mTitle);
+
+ if (!TextUtils.isEmpty(mSubTitle)) {
+
+ TextView tv =
+ (TextView)view.findViewById(R.id.custom_slide_big_text_sub);
+ tv.setText(mSubTitle);
+ tv.setVisibility(View.VISIBLE);
+ }
+
+ if (mButtonText != null)
+ {
+ Button button = (Button)view.findViewById(R.id.custom_slide_button);
+ button.setVisibility(View.VISIBLE);
+ button.setText(mButtonText);
+ button.setOnClickListener(mButtonListener);
+ }
+ return view;
+
+ }
+}
diff --git a/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
new file mode 100644
index 00000000..7a2f6d25
--- /dev/null
+++ b/app-mini/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
@@ -0,0 +1,81 @@
+package org.torproject.android.mini.ui.onboarding;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.app.Fragment;
+import android.view.View;
+
+import com.github.paolorotolo.appintro.AppIntro;
+
+import org.torproject.android.mini.R;
+import org.torproject.android.mini.settings.LocaleHelper;
+import org.torproject.android.mini.ui.AppManagerActivity;
+import org.torproject.android.mini.vpn.VPNEnableActivity;
+
+public class OnboardingActivity extends AppIntro {
+
+ @Override
+ protected void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ // Instead of fragments, you can also use our default slide
+ // Just set a title, description, background and image. AppIntro will do the rest.
+ CustomSlideBigText welcome = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
+ welcome.setTitle(getString(R.string.hello));
+ welcome.setSubTitle(getString(R.string.welcome));
+ addSlide(welcome);
+
+ CustomSlideBigText intro2 = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
+ intro2.setTitle(getString(R.string.browser_the_internet));
+ intro2.setSubTitle(getString(R.string.no_tracking));
+ addSlide(intro2);
+
+ CustomSlideBigText cs2 = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
+ cs2.setTitle(getString(R.string.bridges_sometimes));
+ cs2.showButton(getString(R.string.action_more), new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ startActivity(new Intent(OnboardingActivity.this,BridgeWizardActivity.class));
+ }
+ });
+ addSlide(cs2);
+
+ CustomSlideBigText cs3 = CustomSlideBigText.newInstance(R.layout.custom_slide_big_text);
+ cs3.setTitle(getString(R.string.vpn_setup));
+ cs3.setSubTitle(getString(R.string.vpn_setup_sub));
+ cs3.showButton(getString(R.string.action_vpn_choose), new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ startActivity(new Intent(OnboardingActivity.this, VPNEnableActivity.class));
+ startActivityForResult(new Intent(OnboardingActivity.this, AppManagerActivity.class), 9999);
+
+ }
+ });
+ addSlide(cs3);
+
+
+
+ // OPTIONAL METHODS
+ // Override bar/separator color.
+ setBarColor(getResources().getColor(R.color.dark_purple));
+ setSeparatorColor(getResources().getColor(R.color.panel_background_main));
+
+ // Hide Skip/Done button.
+ showSkipButton(false);
+ setProgressButtonEnabled(true);
+ }
+
+ @Override
+ public void onDonePressed(Fragment currentFragment) {
+ super.onDonePressed(currentFragment);
+ // Do something when users tap on Done button.
+ finish();
+ }
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ super.attachBaseContext(LocaleHelper.onAttach(base));
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/org/torproject/android/vpn/VPNEnableActivity.java b/app-mini/src/main/java/org/torproject/android/mini/vpn/VPNEnableActivity.java
similarity index 98%
rename from app/src/main/java/org/torproject/android/vpn/VPNEnableActivity.java
rename to app-mini/src/main/java/org/torproject/android/mini/vpn/VPNEnableActivity.java
index c1b30c50..29492d3e 100644
--- a/app/src/main/java/org/torproject/android/vpn/VPNEnableActivity.java
+++ b/app-mini/src/main/java/org/torproject/android/mini/vpn/VPNEnableActivity.java
@@ -1,4 +1,4 @@
-package org.torproject.android.vpn;
+package org.torproject.android.mini.vpn;
import org.torproject.android.service.util.Prefs;
import org.torproject.android.service.TorService;
diff --git a/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png
new file mode 100644
index 00000000..1f97a9ed
Binary files /dev/null and b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png
new file mode 100644
index 00000000..6df646eb
Binary files /dev/null and b/app-mini/src/main/res/drawable-hdpi-v11/ic_stat_tor_off.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png
new file mode 100644
index 00000000..58fc5ae8
Binary files /dev/null and b/app-mini/src/main/res/drawable-hdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_action_settings.png b/app-mini/src/main/res/drawable-hdpi/ic_action_settings.png
new file mode 100644
index 00000000..d57b2905
Binary files /dev/null and b/app-mini/src/main/res/drawable-hdpi/ic_action_settings.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-hdpi/ic_settings_white_24dp.png
new file mode 100644
index 00000000..97ded33b
Binary files /dev/null and b/app-mini/src/main/res/drawable-hdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-hdpi/ic_stat_notifyerr.png
new file mode 100644
index 00000000..b65fa648
Binary files /dev/null and b/app-mini/src/main/res/drawable-hdpi/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-hdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-hdpi/ic_stat_tor.png
new file mode 100644
index 00000000..3091474e
Binary files /dev/null and b/app-mini/src/main/res/drawable-hdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png
new file mode 100644
index 00000000..b73292dd
Binary files /dev/null and b/app-mini/src/main/res/drawable-ldpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png
new file mode 100644
index 00000000..2787bbb5
Binary files /dev/null and b/app-mini/src/main/res/drawable-ldpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi/ic_action_settings.png b/app-mini/src/main/res/drawable-ldpi/ic_action_settings.png
new file mode 100644
index 00000000..c3927fd7
Binary files /dev/null and b/app-mini/src/main/res/drawable-ldpi/ic_action_settings.png differ
diff --git a/app-mini/src/main/res/drawable-ldpi/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-ldpi/ic_stat_notifyerr.png
new file mode 100644
index 00000000..518e188e
Binary files /dev/null and b/app-mini/src/main/res/drawable-ldpi/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png
new file mode 100644
index 00000000..935e2093
Binary files /dev/null and b/app-mini/src/main/res/drawable-mdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png
new file mode 100644
index 00000000..b1490315
Binary files /dev/null and b/app-mini/src/main/res/drawable-mdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-mdpi/ic_settings_white_24dp.png
new file mode 100644
index 00000000..8909c355
Binary files /dev/null and b/app-mini/src/main/res/drawable-mdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-mdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-mdpi/ic_stat_tor.png
new file mode 100644
index 00000000..a10c654d
Binary files /dev/null and b/app-mini/src/main/res/drawable-mdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png
new file mode 100644
index 00000000..bed9e215
Binary files /dev/null and b/app-mini/src/main/res/drawable-xhdpi-v11/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png b/app-mini/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png
new file mode 100644
index 00000000..7d1139c9
Binary files /dev/null and b/app-mini/src/main/res/drawable-xhdpi-v9/ic_stat_notifyerr.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png
new file mode 100644
index 00000000..5caedc8e
Binary files /dev/null and b/app-mini/src/main/res/drawable-xhdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-xhdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-xhdpi/ic_stat_tor.png
new file mode 100644
index 00000000..25bf4549
Binary files /dev/null and b/app-mini/src/main/res/drawable-xhdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png
new file mode 100644
index 00000000..eabb0a2b
Binary files /dev/null and b/app-mini/src/main/res/drawable-xxhdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-xxhdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-xxhdpi/ic_stat_tor.png
new file mode 100644
index 00000000..fb7bce8a
Binary files /dev/null and b/app-mini/src/main/res/drawable-xxhdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png b/app-mini/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png
new file mode 100644
index 00000000..507c5edd
Binary files /dev/null and b/app-mini/src/main/res/drawable-xxxhdpi/ic_settings_white_24dp.png differ
diff --git a/app-mini/src/main/res/drawable-xxxhdpi/ic_stat_tor.png b/app-mini/src/main/res/drawable-xxxhdpi/ic_stat_tor.png
new file mode 100644
index 00000000..32595644
Binary files /dev/null and b/app-mini/src/main/res/drawable-xxxhdpi/ic_stat_tor.png differ
diff --git a/app-mini/src/main/res/drawable/ic_menu_about.png b/app-mini/src/main/res/drawable/ic_menu_about.png
new file mode 100644
index 00000000..866d4e0b
Binary files /dev/null and b/app-mini/src/main/res/drawable/ic_menu_about.png differ
diff --git a/app-mini/src/main/res/drawable/ic_menu_exit.png b/app-mini/src/main/res/drawable/ic_menu_exit.png
new file mode 100644
index 00000000..d301ea64
Binary files /dev/null and b/app-mini/src/main/res/drawable/ic_menu_exit.png differ
diff --git a/app-mini/src/main/res/drawable/ic_stat_tor_off.png b/app-mini/src/main/res/drawable/ic_stat_tor_off.png
new file mode 100644
index 00000000..6df646eb
Binary files /dev/null and b/app-mini/src/main/res/drawable/ic_stat_tor_off.png differ
diff --git a/app-mini/src/main/res/drawable/onion32.png b/app-mini/src/main/res/drawable/onion32.png
new file mode 100644
index 00000000..78467601
Binary files /dev/null and b/app-mini/src/main/res/drawable/onion32.png differ
diff --git a/app-mini/src/main/res/drawable/round_drawable.xml b/app-mini/src/main/res/drawable/round_drawable.xml
new file mode 100644
index 00000000..134c36e7
--- /dev/null
+++ b/app-mini/src/main/res/drawable/round_drawable.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+ <stroke
+ android:width="3dp"
+ android:color="#ffffff" />
+
+ <padding
+ android:left="5dp"
+ android:right="5dp"/>
+
+ <corners
+ android:bottomLeftRadius="7dp"
+ android:bottomRightRadius="7dp"
+ android:topLeftRadius="7dp"
+ android:topRightRadius="7dp" />
+</shape>
\ No newline at end of file
diff --git a/app-mini/src/main/res/drawable/toroff.png b/app-mini/src/main/res/drawable/toroff.png
new file mode 100644
index 00000000..759400f2
Binary files /dev/null and b/app-mini/src/main/res/drawable/toroff.png differ
diff --git a/app-mini/src/main/res/drawable/toron.png b/app-mini/src/main/res/drawable/toron.png
new file mode 100644
index 00000000..12f830a5
Binary files /dev/null and b/app-mini/src/main/res/drawable/toron.png differ
diff --git a/app-mini/src/main/res/drawable/torstarting.png b/app-mini/src/main/res/drawable/torstarting.png
new file mode 100644
index 00000000..3a08305f
Binary files /dev/null and b/app-mini/src/main/res/drawable/torstarting.png differ
diff --git a/app-mini/src/main/res/layout/activity_bridge_wizard.xml b/app-mini/src/main/res/layout/activity_bridge_wizard.xml
new file mode 100644
index 00000000..cc23654c
--- /dev/null
+++ b/app-mini/src/main/res/layout/activity_bridge_wizard.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/dark_purple"
+
+ tools:context="org.torproject.android.mini.ui.onboarding.BridgeWizardActivity">
+
+ <android.support.design.widget.AppBarLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:theme="@style/DefaultTheme.AppBarOverlay">
+
+ <android.support.v7.widget.Toolbar
+ android:id="@+id/toolbar"
+ android:layout_width="match_parent"
+ android:layout_height="?attr/actionBarSize"
+ android:background="?attr/colorPrimary"
+ app:popupTheme="@style/DefaultTheme.PopupOverlay" />
+
+ </android.support.design.widget.AppBarLayout>
+
+ <include layout="@layout/content_bridge_wizard" />
+
+</android.support.design.widget.CoordinatorLayout>
diff --git a/app-mini/src/main/res/layout/content_bridge_wizard.xml b/app-mini/src/main/res/layout/content_bridge_wizard.xml
new file mode 100644
index 00000000..15387fff
--- /dev/null
+++ b/app-mini/src/main/res/layout/content_bridge_wizard.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical"
+ app:layout_behavior="@string/appbar_scrolling_view_behavior"
+ tools:context="org.torproject.android.mini.ui.onboarding.BridgeWizardActivity"
+ tools:showIn="@layout/activity_bridge_wizard">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="12dp"
+
+ android:text="@string/if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_"
+ android:textColor="@color/panel_background_main"
+ android:textSize="16sp"
+ android:textStyle="bold" />
+
+ <RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:orientation="vertical">
+
+ <RadioButton
+ android:id="@+id/btnBridgesDirect"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="12dp"
+ android:text="@string/bridge_direct_connect" />
+
+ <RadioButton
+ android:id="@+id/btnBridgesObfs4"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="12dp"
+ android:text="@string/bridge_community" />
+
+ <RadioButton
+ android:id="@+id/btnBridgesMeek"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="12dp"
+ android:text="@string/bridge_cloud" />
+
+ <RadioButton
+ android:id="@+id/btnBridgesNew"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_margin="12dp"
+ android:text="@string/bridges_get_new" />
+
+ </RadioGroup>
+
+ <TextView
+ android:id="@+id/lbl_bridge_test_status"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_margin="12dp"
+ android:gravity="center"
+ android:textColor="@color/bright_green"
+ android:textSize="16sp"
+ android:textStyle="bold" />
+</LinearLayout>
diff --git a/app-mini/src/main/res/layout/custom_slide_big_text.xml b/app-mini/src/main/res/layout/custom_slide_big_text.xml
new file mode 100644
index 00000000..100392e6
--- /dev/null
+++ b/app-mini/src/main/res/layout/custom_slide_big_text.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:orientation="vertical"
+ android:background="@color/dark_purple"
+ >
+
+ <TextView
+ android:id="@+id/custom_slide_big_text"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text=""
+ android:textColor="@color/panel_background_main"
+ android:gravity="center"
+ android:layout_margin="12dp"
+ android:textStyle="bold"
+ android:textSize="28sp"/>
+ <TextView
+ android:id="@+id/custom_slide_big_text_sub"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text=""
+ android:textColor="@color/panel_background_main"
+ android:gravity="center"
+ android:layout_margin="12dp"
+ android:textStyle="bold"
+ android:textSize="16sp"
+ android:visibility="gone"
+ />
+
+ <Button
+ android:id="@+id/custom_slide_button"
+ android:layout_width="120dp"
+ android:layout_height="40dp"
+ android:layout_margin="10dp"
+ android:background="@drawable/round_drawable"
+ android:textColor="@color/panel_background_main"
+ android:visibility="gone"
+
+ />
+</LinearLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/layout/layout_about.xml b/app-mini/src/main/res/layout/layout_about.xml
new file mode 100644
index 00000000..9d01498b
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_about.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+ <ScrollView
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+ <LinearLayout
+ android:orientation="vertical"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent">
+ <TextView android:text="@string/wizard_details"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="15px"
+ android:paddingLeft="15px"
+ android:textStyle="bold"
+ android:textColor="#00ff00" />
+ <TextView android:text="@string/wizard_details_msg"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff" />
+
+ <TextView android:text="Version: "
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="15px"
+ android:paddingLeft="15px"
+ android:textStyle="bold"
+ android:textColor="#00ff00" />
+ <TextView android:text="- Unknown -"
+ android:id="@+id/versionName"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingLeft="15px"
+ android:layout_gravity="center_vertical"
+ android:textColor="#ffffff" />
+ <TextView android:text="@string/project_home"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="15px"
+ android:paddingLeft="15px"
+ android:textStyle="bold"
+ android:textColor="#00ff00" />
+ <TextView android:text="@string/project_urls"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff" />
+ <TextView android:text="@string/third_party_software"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="15px"
+ android:paddingLeft="15px"
+ android:textStyle="bold"
+ android:textColor="#00ff00" />
+ <TextView android:text="@string/tor_version"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff" />
+ <TextView android:text="@string/libevent_version"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff" />
+ <TextView android:text="@string/polipo_version"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff" />
+ <TextView android:text="@string/obfsproxy_version"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff"/>
+ <TextView android:text="@string/openssl_version"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff" />
+
+ <TextView android:text="License: "
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="15px"
+ android:paddingLeft="15px"
+ android:textStyle="bold"
+ android:textColor="#00ff00" />
+ <TextView
+ android:id="@+id/aboutother"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="web"
+ android:textColorLink="#ffffff"
+ android:paddingLeft="15px"
+ android:textColor="#ffffff" />
+ </LinearLayout>
+ </ScrollView>
+</LinearLayout>
diff --git a/app-mini/src/main/res/layout/layout_activity_client_cookies.xml b/app-mini/src/main/res/layout/layout_activity_client_cookies.xml
new file mode 100644
index 00000000..5c5bf936
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_activity_client_cookies.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:fitsSystemWindows="true"
+ tools:context="org.torproject.android.mini.ui.hiddenservices.ClientCookiesActivity">
+
+ <android.support.design.widget.AppBarLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:theme="@style/DefaultTheme.AppBarOverlay">
+
+ <android.support.v7.widget.Toolbar
+ android:id="@+id/toolbar"
+ android:layout_width="match_parent"
+ android:layout_height="?attr/actionBarSize"
+ android:background="?attr/colorPrimary"
+ app:popupTheme="@style/DefaultTheme.PopupOverlay" />
+
+ </android.support.design.widget.AppBarLayout>
+
+ <include layout="@layout/layout_content_client_cookies" />
+
+ <android.support.design.widget.FloatingActionButton
+ android:id="@+id/fab"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="bottom|end"
+ android:layout_margin="@dimen/fab_margin"
+ app:srcCompat="@android:drawable/stat_notify_more"
+ app:backgroundTint="@android:color/darker_gray" />
+
+</android.support.design.widget.CoordinatorLayout>
diff --git a/app-mini/src/main/res/layout/layout_add_client_cookie_dialog.xml b/app-mini/src/main/res/layout/layout_add_client_cookie_dialog.xml
new file mode 100644
index 00000000..f28a8282
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_add_client_cookie_dialog.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingLeft="5dp"
+ android:paddingRight="5dp"
+ android:paddingTop="5dp"
+ android:paddingBottom="5dp">
+
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/onion"
+ android:textAppearance="@style/TextAppearance.AppCompat.Widget.PopupMenu.Small"
+ android:paddingLeft="5dp" />
+
+ <org.torproject.android.mini.ui.NoPersonalizedLearningEditText
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:inputType="text"
+ android:ems="10"
+ android:id="@+id/cookie_onion" />
+
+ <TextView
+ android:text="@string/auth_cookie"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="@style/TextAppearance.AppCompat.Widget.PopupMenu.Small"
+ android:paddingLeft="5dp" />
+
+ <org.torproject.android.mini.ui.NoPersonalizedLearningEditText
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:ems="10"
+ android:id="@+id/cookie_value"
+ android:inputType="text" />
+
+ <LinearLayout
+ android:orientation="horizontal"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <Button
+ android:text="@string/btn_cancel"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/cookie_dialog_cancel"
+ android:layout_weight="1"
+ style="@style/Widget.AppCompat.Button.Borderless.Colored" />
+
+ <Button
+ android:text="@string/save"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/cookie_dialog_save"
+ android:layout_weight="1"
+ style="@style/Widget.AppCompat.Button.Borderless.Colored" />
+
+ </LinearLayout>
+
+</LinearLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/layout/layout_apps.xml b/app-mini/src/main/res/layout/layout_apps.xml
new file mode 100644
index 00000000..bc35af99
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_apps.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:duplicateParentState="true">
+
+ <ProgressBar
+ android:id="@+id/progressBar"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:visibility="gone" />
+
+ <GridView
+ android:id="@+id/applistview"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_alignParentTop="true"
+ android:gravity="center"
+ android:horizontalSpacing="5dp"
+ android:numColumns="4"
+ android:verticalSpacing="15dp">
+
+ </GridView>
+
+</FrameLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/layout/layout_apps_item.xml b/app-mini/src/main/res/layout/layout_apps_item.xml
new file mode 100644
index 00000000..ef188b3e
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_apps_item.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="90dp"
+ android:layout_height="90dp"
+ android:gravity="center_horizontal"
+ android:orientation="vertical">
+
+ <ImageView
+ android:id="@+id/itemicon"
+ android:layout_width="40dp"
+ android:layout_height="40dp" />
+
+ <TextView
+ android:id="@+id/itemtext"
+ android:layout_width="80dp"
+ android:layout_height="wrap_content"
+ android:ellipsize="end"
+ android:gravity="center_horizontal"
+ android:maxLines="2"
+ android:minLines="2"
+ android:scrollHorizontally="false"
+ android:text="uid:packages"
+ android:textAlignment="center"
+ android:textSize="12sp" />
+
+ <CheckBox
+ android:id="@+id/itemcheck"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content" />
+
+</LinearLayout>
+
diff --git a/app-mini/src/main/res/layout/layout_client_cookie_list_item.xml b/app-mini/src/main/res/layout/layout_client_cookie_list_item.xml
new file mode 100644
index 00000000..80eefb94
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_client_cookie_list_item.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal"
+ android:padding="15dp">
+
+ <TextView
+ android:id="@+id/cookie_onion"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textSize="18sp"
+ android:layout_weight="1" />
+
+ <Switch
+ android:id="@+id/cookie_switch"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:focusable="false"
+ android:focusableInTouchMode="false"
+ android:switchPadding="30dp" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/layout/layout_content_client_cookies.xml b/app-mini/src/main/res/layout/layout_content_client_cookies.xml
new file mode 100644
index 00000000..5295641c
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_content_client_cookies.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:paddingBottom="@dimen/activity_vertical_margin"
+ android:paddingLeft="@dimen/activity_horizontal_margin"
+ android:paddingRight="@dimen/activity_horizontal_margin"
+ android:paddingTop="@dimen/activity_vertical_margin"
+ app:layout_behavior="@string/appbar_scrolling_view_behavior"
+ tools:context="org.torproject.android.mini.ui.hiddenservices.ClientCookiesActivity"
+ tools:showIn="@layout/layout_activity_client_cookies">
+
+ <ListView
+ android:id="@+id/clien_cookies_list"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent" />
+
+</RelativeLayout>
diff --git a/app-mini/src/main/res/layout/layout_cookie_actions.xml b/app-mini/src/main/res/layout/layout_cookie_actions.xml
new file mode 100644
index 00000000..64d8c1c6
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_cookie_actions.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="vertical" android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <Button
+ android:text="@string/backup_cookie"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/btn_cookie_backup" />
+
+ <Button
+ android:text="@string/delete_cookie"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/btn_cookie_delete" />
+
+ <Button
+ android:text="@string/btn_cancel"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/btn_cookie_cancel" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/app-mini/src/main/res/layout/layout_main.xml b/app-mini/src/main/res/layout/layout_main.xml
new file mode 100644
index 00000000..d4422fa2
--- /dev/null
+++ b/app-mini/src/main/res/layout/layout_main.xml
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout android:gravity="center_vertical|center_horizontal"
+ xmlns:android="http://schemas.android.com/apk/res/android"
+
+ android:orientation="vertical"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/light_gray"
+ xmlns:app="http://schemas.android.com/apk/res-auto">
+
+ <android.support.v7.widget.Toolbar
+ android:id="@+id/toolbar"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:minHeight="?attr/actionBarSize" />
+ <android.support.v4.widget.DrawerLayout
+ android:id="@+id/drawer_layout"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ >
+<RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="250dp"
+ android:id="@+id/frameMain"any
+ android:visibility="visible"
+ android:orientation="vertical"
+ android:layout_alignParentLeft="true"
+ android:layout_alignParentStart="true"
+ android:layout_margin="3dp"
+ android:weightSum="1">
+
+
+ </LinearLayout>
+
+
+
+
+
+<LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="50dp"
+ android:orientation="vertical"
+ android:id="@+id/controls"
+ android:layout_alignParentBottom="true"
+ >
+
+
+ <LinearLayout
+ android:layout_gravity="center"
+ android:orientation="horizontal"
+ android:layout_width="match_parent"
+ android:layout_height="80dp"
+ android:layout_margin="3dp"
+ android:layout_weight="1"
+ android:gravity="center"
+ >
+
+ <ImageView
+ android:id="@+id/imgStatus"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:padding="0dp"
+ android:layout_margin="0dp"
+ android:src="@drawable/toroff" />
+
+ <android.support.v7.widget.SwitchCompat
+ android:id="@+id/btnVPN"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/activate"
+ android:layout_margin="9dp"
+ android:layout_gravity="center"
+ app:switchPadding="3dp"
+
+ />
+
+
+
+
+ <TextView
+ android:id="@+id/trafficDown"
+ android:layout_width="80dp"
+ android:layout_height="wrap_content"
+ android:gravity="center_vertical"
+ android:fontFamily="sans-serif-light"
+ android:text="0kbps"
+ android:layout_margin="3dp"
+ android:lines="1"
+ />
+
+
+ <TextView
+ android:id="@+id/trafficUp"
+ android:layout_width="80dp"
+ android:layout_height="wrap_content"
+ android:gravity="center_vertical"
+ android:fontFamily="sans-serif-light"
+ android:text="0kbps"
+ android:layout_margin="3dp"
+ android:lines="1"
+ />
+
+
+ </LinearLayout>
+
+
+
+
+
+</LinearLayout>
+
+
+</RelativeLayout>
+
+
+ <LinearLayout
+ android:layout_width="320dp"
+ android:layout_height="match_parent"
+ android:orientation="vertical"
+ android:layout_gravity="end"
+ android:background="#dddddd"
+ android:padding="6dp"
+ >
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/menu_log"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ />
+ <TextView
+ android:id="@+id/orbotLog"
+ android:textSize="12sp"
+ android:gravity="start"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_alignParentLeft="true"
+ android:layout_marginTop="10dp"
+ android:textIsSelectable="true"
+ android:fontFamily="monospace"
+ />
+ </LinearLayout>
+
+ </android.support.v4.widget.DrawerLayout>
+
+</LinearLayout>
+
+
diff --git a/app-mini/src/main/res/menu/app_main.xml b/app-mini/src/main/res/menu/app_main.xml
new file mode 100644
index 00000000..7f0e34d0
--- /dev/null
+++ b/app-mini/src/main/res/menu/app_main.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+ * Copyright (C) 2008 Esmertec AG.
+ * Copyright (C) 2008 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:yourapp="http://schemas.android.com/apk/res-auto"
+ >
+
+
+ <item android:id="@+id/menu_refresh_apps"
+ android:title="@string/refresh_apps"
+ android:icon="@drawable/ic_refresh_white_24dp"
+ yourapp:showAsAction="always"
+ />
+
+
+
+</menu>
diff --git a/app-mini/src/main/res/menu/orbot_main.xml b/app-mini/src/main/res/menu/orbot_main.xml
new file mode 100644
index 00000000..2c1939d7
--- /dev/null
+++ b/app-mini/src/main/res/menu/orbot_main.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+ * Copyright (C) 2008 Esmertec AG.
+ * Copyright (C) 2008 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:yourapp="http://schemas.android.com/apk/res-auto"
+ >
+
+
+ <item android:id="@+id/menu_newnym"
+ android:title="@string/menu_new_identity"
+ android:icon="@drawable/ic_refresh_white_24dp"
+ yourapp:showAsAction="never"
+ />
+
+
+ <item android:id="@+id/menu_settings"
+ android:title="@string/menu_settings"
+ android:icon="@drawable/ic_action_settings"
+ yourapp:showAsAction="never"
+ />
+
+ <!--
+ <item
+ android:title="@string/menu_qr"
+ yourapp:showAsAction="never"
+ >
+ <menu>
+ <item android:id="@+id/menu_scan"
+ android:title="@string/menu_scan"
+ yourapp:showAsAction="never"
+ />
+
+ <item android:id="@+id/menu_share_bridge"
+ android:title="@string/menu_share_bridge"
+ yourapp:showAsAction="never"
+ />
+ </menu>
+ </item>
+-->
+
+
+
+ <item android:id="@+id/menu_about"
+ android:title="@string/menu_about"
+ android:icon="@drawable/ic_menu_about"
+ yourapp:showAsAction="never"
+
+ />
+ <!--
+ <item android:id="@+id/menu_exit"
+ android:title="@string/menu_exit"
+ android:icon="@drawable/ic_menu_exit"
+ yourapp:showAsAction="never"
+
+ />-->
+
+</menu>
diff --git a/app-mini/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app-mini/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
new file mode 100644
index 00000000..036d09bc
--- /dev/null
+++ b/app-mini/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+ <background android:drawable="@color/ic_launcher_background"/>
+ <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
+</adaptive-icon>
\ No newline at end of file
diff --git a/app-mini/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app-mini/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
new file mode 100644
index 00000000..036d09bc
--- /dev/null
+++ b/app-mini/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+ <background android:drawable="@color/ic_launcher_background"/>
+ <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
+</adaptive-icon>
\ No newline at end of file
diff --git a/app-mini/src/main/res/mipmap-hdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 00000000..42426c19
Binary files /dev/null and b/app-mini/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-hdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..aa867fe2
Binary files /dev/null and b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-hdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_round.png
new file mode 100644
index 00000000..d8e76add
Binary files /dev/null and b/app-mini/src/main/res/mipmap-hdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-mdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 00000000..6c8a8aac
Binary files /dev/null and b/app-mini/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-mdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..ea25e877
Binary files /dev/null and b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-mdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_round.png
new file mode 100644
index 00000000..d056f3cf
Binary files /dev/null and b/app-mini/src/main/res/mipmap-mdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 00000000..09ca1b23
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..782034e0
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_round.png
new file mode 100644
index 00000000..9197cb68
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 00000000..b45b0359
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..a0b88e23
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
new file mode 100644
index 00000000..51aac254
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 00000000..7061de75
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..829f12db
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png differ
diff --git a/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
new file mode 100644
index 00000000..1b155587
Binary files /dev/null and b/app-mini/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ
diff --git a/app-mini/src/main/res/values-ach/strings.xml b/app-mini/src/main/res/values-ach/strings.xml
new file mode 100644
index 00000000..49c8dbc4
--- /dev/null
+++ b/app-mini/src/main/res/values-ach/strings.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+</resources>
diff --git a/app-mini/src/main/res/values-ar/poestrings.xml b/app-mini/src/main/res/values-ar/poestrings.xml
new file mode 100644
index 00000000..ebde94bc
--- /dev/null
+++ b/app-mini/src/main/res/values-ar/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Ø£ØÙØ§ÙØ§ ØªØØªØ§Ø¬ Ø¥Ù٠جسر ÙÙØ¹ØšÙر عؚر ØªÙØ±.</string>
+ <string name="action_more">Ø¥ÙØªØŽÙ اÙÙ
Ø²ÙØ¯</string>
+
+ <string name="vpn_setup">ÙÙÙ
ÙÙÙÙÙ Ø§Ø®ØªÙØ§Ø± Ø£Ù Ù
Ù Ø§ÙØªØ·ØšÙÙØ§Øª ستستعÙ
Ù ØŽØšÙØªÙا Ø§ÙØ¥ÙØªØ±Ø§Ø¶ÙØ© اÙÙ
دÙ
جة ÙÙØ¹ØšÙر عؚر ØªÙØ±.</string>
+ <string name="vpn_setup_sub">ÙØ°Ø§ ÙÙ ÙØ¬Ø¹ÙÙ Ù
جÙÙ٠اÙÙÙÙØ© ÙÙÙÙ Ø³ÙØ³Ø§Ø¹Ø¯Ù ÙÙ ØªØ®Ø·Ù Ø¬Ø¯Ø±Ø§Ù Ø§ÙØÙ
Ø§ÙØ©.</string>
+ <string name="action_vpn_choose">Ø¥Ø®ØªÙØ§Ø± Ø§ÙØªØ·ØšÙÙØ§Øª</string>
+
+ <string name="hello">Ù
Ø±ØØšØ§</string>
+ <string name="welcome">Ø£ÙÙØ§ ؚ٠إÙÙ ØªÙØ± عÙÙ Ø¬ÙØ§Ø²Ù اÙÙ
ØÙ
ÙÙ.</string>
+
+ <string name="browser_the_internet">أؚØÙر عÙÙ Ø§ÙØ¥ÙØªØ±ÙØª ÙÙ
ا ÙØÙÙ ÙÙ.</string>
+ <string name="no_tracking">دÙÙ Ø±ÙØ§ØšØ© Ø£Ù ØªÙØ¹ÙÙØš Ø£Ù ØØ¬Øš.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-ar/strings.xml b/app-mini/src/main/res/values-ar/strings.xml
new file mode 100644
index 00000000..9c544e93
--- /dev/null
+++ b/app-mini/src/main/res/values-ar/strings.xml
@@ -0,0 +1,194 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_description">Ø§ÙØ±ØšÙت Ù٠تطؚÙ٠اÙÙÙÙÙ-Ø§ÙØšØ±ÙÙØ³Ù Ø§ÙØØ± Ø§ÙØ°Ù ÙÙ
ÙÙ٠تطؚÙÙØ§Øª Ø£Ø®Ø±Ù ÙØ§Ø³ØªØ®Ø¯Ø§Ù
Ø§ÙØ¥ÙØªØ±ÙØª ؚأÙ
Ø§Ù Ø£ÙØ«Ø± . ÙÙØ³ØªØ®Ø¯Ù
Ø§ÙØ±ØšÙت ØªÙØ± ÙØªØŽÙÙØ± ØªØØ±Ùات Ù
Ø±ÙØ±Ù عÙÙ Ø§ÙØ¥ÙØªØ±ÙØª Ø Ø«Ù
ÙØ®ÙÙÙ ÙÙØ¬Ø¹ÙÙ ÙÙÙ
Ù Ù
Ù Ø®ÙØ§Ù Ø³ÙØ³ÙØ© Ù
Ù Ø£Ø¬ÙØ²Ø© اÙÙÙ
ØšÙÙØªØ± Ù٠جÙ
ÙØ¹ Ø£ÙØØ§Ø¡ Ø§ÙØ¹Ø§ÙÙ
. ØªÙØ± Ù٠تطؚÙÙ ØØ± ÙØŽØšÙØ© Ù
ÙØªÙØØ© ÙØ§Ùت٠تساعد٠عÙÙ ØÙ
Ø§ÙØ© ÙÙØ³Ù Ù
Ù Ù
Ø±Ø§ÙØšØ© Ø§ÙØŽØšÙات Ø§ÙØªÙ ØªÙØ¯Ø¯ Ø§ÙØØ±ÙØ© Ø§ÙØŽØ®ØµÙØ© ÙØ§ÙØ®ØµÙØµÙØ© Ø ÙØ§ÙØ£ÙØŽØ·Ø© Ø§ÙØªØ¬Ø§Ø±ÙØ© Ø§ÙØ³Ø±ÙØ© ÙØ§ÙØ¹ÙØ§Ùات Ø ÙØ£Ù
Ù Ø§ÙØ¯ÙÙØ© ÙØ§ÙØÙÙÙ
ات اÙÙÙ
عÙÙØ© ÙØ§Ùت٠تستخدÙ
Ù
Ø§ÙØ¹Ø±Ù ؚاسÙ
تØÙÙÙ ØØ±ÙØ© Ù
Ø±ÙØ± Ø§ÙØšÙØ§ÙØ§Øª .</string>
+ <string name="status_starting_up">جار٠ت؎غÙÙ Ø§ÙØ±ØšÙت...</string>
+ <string name="status_activated">Ù
ØªØµÙ ØšØŽØšÙØ© ØªÙØ±</string>
+ <string name="status_disabled">تÙ
Ø¥ÙÙØ§Ù Ø§ÙØ±ØšÙت</string>
+ <string name="status_shutting_down">جار٠اÙÙØ§Ù خدÙ
Ø© ØªÙØ±</string>
+ <string name="tor_process_starting">جار٠ت؎غÙÙ ØªÙØ±...</string>
+ <string name="tor_process_complete">ÙØ§Ù
Ù.</string>
+ <string name="menu_settings">إعدادات</string>
+ <string name="menu_log">Ø§ÙØ³Ø¬Ù</string>
+ <string name="menu_start">ؚدء</string>
+ <string name="menu_stop">تÙÙÙ</string>
+ <string name="menu_about">ØÙÙ</string>
+ <string name="main_layout_download">تØÙ
ÙÙ</string>
+ <string name="main_layout_upload">Ø±ÙØ¹</string>
+ <string name="button_about">ØÙÙ</string>
+ <string name="menu_exit">Ø®Ø±ÙØ¬</string>
+ <string name="menu_scan">ÙØØµ QR Ø§ÙØ¬Ø³Ø±</string>
+ <string name="menu_share_bridge">Ù
ØŽØ§Ø±ÙØ© QR Ø§ÙØ¬Ø³Ø±</string>
+ <string name="btn_okay">Ù
ÙØ§ÙÙ</string>
+ <string name="btn_cancel">Ø¥ÙØºØ§Ø¡</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ؚعض Ø§ÙØªÙاصÙÙ Ø¹Ù Ø§ÙØ±ØšÙت</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">عاÙ
</string>
+ <string name="pref_start_boot_title">ØŽØºÙ Ø§ÙØ±ØšÙت Ø¹ÙØ¯ ÙØªØ Ø§ÙØ¬Ùاز</string>
+ <string name="pref_start_boot_summary">ÙØ¹Ù Ø§ÙØ±ØšÙت Ù Ø§ØªØµÙ ØšØªÙØ± تÙÙØ§ØŠÙØ§Ù Ø¹ÙØ¯Ù
ا ÙØšØ¯Ø¡ Ø¬ÙØ§Ø² Ø§ÙØ£ÙدرÙÙØ¯ Ø§ÙØ®Ø§Øµ ØšÙ ØšØ§ÙØ¹Ù
Ù</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">تÙÙÙÙ ÙÙØ·Ø© Ø§ÙØ§ØªØµØ§Ù</string>
+ <string name="pref_node_configuration_summary">ÙØ°Ù Ø§ÙØ¥Ø¹Ø¯Ø§Ø¯Ø§Øª Ù
ØªÙØ¯Ù
Ø© Ù ÙØ¯ تÙÙÙ Ù
Ù ØÙ
Ø§ÙØ© ÙÙÙØªÙ</string>
+ <string name="pref_entrance_node">ÙÙØ§Ø· Ø§ÙØ¯Ø®ÙÙ</string>
+ <string name="pref_entrance_node_summary">ؚصÙ
Ø§ØªØ Ø§Ø³Ù
اء Ù
Ø³ØªØ¹Ø§Ø±Ø©Ø Ø§ÙØšÙØ¯Ø§Ù Ù Ø§ÙØ¹ÙاÙÙÙ ÙØ£ÙÙ ÙÙØ·Ø© اتصاÙ</string>
+ <string name="pref_entrance_node_dialog">أدخ٠ÙÙØ§Ø· Ø§ÙØ¯Ø®ÙÙ</string>
+ <string name="pref_allow_background_starts_title">إسÙ
Ø ÙÙØ®ÙÙÙØ© ØšØ£ÙØšØ¯Ø£</string>
+ <string name="pref_allow_background_starts_summary">إسÙ
Ø ÙØ£Ù تطؚÙ٠ؚأ٠ÙÙØ®ØšÙر Ø§ÙØ±ØšØª ؚأ٠ÙÙØ¹Ù ØªÙØ± Ù
ع Ø§ÙØ®Ø¯Ù
ات اÙÙ
رتؚطة ØšÙ</string>
+ <string name="pref_proxy_title">ؚرÙÙØ³Ù Ø§ÙØŽØšÙØ© Ø§ÙØµØ§Ø¯Ø±Ø© (Ø§Ø®ØªÙØ§Ø±Ù)</string>
+ <string name="pref_proxy_type_title">ÙÙØ¹ Ø§ÙØšØ±ÙÙØ³Ù Ø§ÙØµØ§Ø¯Ø±</string>
+ <string name="pref_proxy_type_summary">Ø§ÙØšØ±ÙتÙÙÙ٠اÙÙ
ستخدÙ
ÙØ®Ø§Ø¯Ù
Ø§ÙØšØ±ÙÙØ³Ù: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">أدخ٠ÙÙØ¹ Ø§ÙØšØ±ÙÙØ³Ù</string>
+ <string name="pref_proxy_host_title">عÙÙØ§Ù Ø§ÙØšØ±ÙÙØ³Ù Ø§ÙØµØ§Ø¯Ø±</string>
+ <string name="pref_proxy_host_summary">اسÙ
Ù
ضÙ٠خادÙ
Ø§ÙØšØ±ÙÙØ³Ù</string>
+ <string name="pref_proxy_host_dialog">أدخ٠Ù
ضÙÙ Ø§ÙØšØ±ÙÙØ³Ù</string>
+ <string name="pref_proxy_port_title">Ù
ÙÙØ° Ø§ÙØšØ±ÙÙØ³Ù Ø§ÙØµØ§Ø¯Ø±</string>
+ <string name="pref_proxy_port_summary">Ù
ÙÙØ° خادÙ
Ø§ÙØšØ±ÙÙØ³Ù</string>
+ <string name="pref_proxy_port_dialog">أدخ٠Ù
ÙÙØ° Ø§ÙØšØ±ÙÙØ³Ù</string>
+ <string name="pref_proxy_username_title">اسÙ
Ù
ستخدÙ
Ø§ÙØšØ±ÙÙØ³Ù Ø§ÙØµØ§Ø¯Ø±</string>
+ <string name="pref_proxy_username_summary">اسÙ
Ù
ستخدÙ
Ø§ÙØšØ±ÙÙØ³Ù (Ø§Ø®ØªÙØ§Ø±Ù)</string>
+ <string name="pref_proxy_username_dialog">ادخ٠اسÙ
Ù
ستخدÙ
Ø§ÙØšØ±ÙÙØ³Ù</string>
+ <string name="pref_proxy_password_title">ÙÙÙ
Ø© Ù
Ø±ÙØ± ؚرÙÙØ³Ù Ø§ÙØŽØšÙØ© Ø§ÙØµØ§Ø¯Ø±Ø©</string>
+ <string name="pref_proxy_password_summary">ÙÙÙ
Ø© Ù
Ø±ÙØ± Ø§ÙØšØ±ÙÙØ³Ù (Ø§Ø®ØªÙØ§Ø±Ù)</string>
+ <string name="pref_proxy_password_dialog">ادخ٠ÙÙÙ
Ø© Ù
Ø±ÙØ± Ø§ÙØšØ±ÙÙØ³Ù</string>
+ <string name="couldn_t_start_tor_process_">ÙÙØ¯ تعذر ؚدء ت؎غÙÙ ØªÙØ±:</string>
+ <string name="error">خطأ</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">إعدادات Ø§ÙØ¹ÙÙØ§Ù اÙÙØ§ØšÙ ÙÙØ§ØªØµØ§Ù ÙØ¯Ù٠تسؚؚت ؚخطأ!</string>
+ <string name="your_relay_settings_caused_an_exception_">إعدادات اÙÙ
رØÙات ÙØ¯Ù٠تسؚؚت ؚخطأ!</string>
+ <string name="exit_nodes">ÙÙØ§Ø· Ø§ÙØ®Ø±Ùج</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Ø§ÙØšØµÙ
Ø§ØªØ Ø§ÙØ§Ø³Ù
اء اÙÙ
Ø³ØªØ¹Ø§Ø±Ø©Ø Ø§ÙØšÙØ¯Ø§Ù Ù Ø§ÙØ¹ÙاÙÙÙ ÙØ¢Ø®Ø± ÙÙØ·Ø© اتصاÙ</string>
+ <string name="enter_exit_nodes">أدخ٠ÙÙØ§Ø· Ø§ÙØ®Ø±Ùج</string>
+ <string name="exclude_nodes">استثÙ٠اÙÙÙØ§Ø·</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ؚصÙ
Ø§ØªØ Ø§ÙØ£Ø³Ù
اء اÙÙ
Ø³ØªØ¹Ø§Ø±Ø©Ø Ø§ÙØšÙØ¯Ø§Ù Ù Ø§ÙØ¹ÙاÙÙÙ ÙÙØªÙ
Ø§Ø³ØªØ«ÙØ§ØŠÙا</string>
+ <string name="enter_exclude_nodes">أدخ٠اÙÙÙØ§Ø· اÙÙ
Ø³ØªØ«ÙØ§Ù</string>
+ <string name="strict_nodes">اÙÙÙØ§Ø· اÙÙ
؎ددة</string>
+ <string name="use_only_these_specified_nodes">استخدÙ
ÙÙØ· تÙ٠اÙÙÙØ§Ø· اÙÙ
ØØ¯Ø¯Ø©</string>
+ <string name="bridges">Ø§ÙØ¬Ø³Ùر</string>
+ <string name="use_bridges">استخدÙ
Ø§ÙØ¬Ø³Ùر</string>
+ <string name="ip_address_and_port_of_bridges">عÙÙØ§Ù Ø§ÙØ§ÙØªØ±ÙØª ٠اÙÙ
ÙÙØ° ÙÙØ¬Ø³Ùر</string>
+ <string name="enter_bridge_addresses">Ø£Ø¯Ø®Ù Ø¹ÙØ§ÙÙÙ Ø§ÙØ¬Ø³Ùر</string>
+ <string name="relays">اÙÙ
رØÙات</string>
+ <string name="relaying">ÙØ±ØÙ</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">اسÙ
Ø ÙØ¬Ùاز٠ÙÙÙÙÙ Ù
رØÙ ØºÙØ± ÙÙØ§ØŠÙ</string>
+ <string name="relay_port">Ù
ÙÙØ° اÙÙ
رØÙ</string>
+ <string name="listening_port_for_your_tor_relay">اÙÙ
ÙÙØ° اÙÙ
صغ٠ÙÙ
ÙØ±ØÙ ØªÙØ± Ø§ÙØ®Ø§Øµ ØšÙ</string>
+ <string name="enter_or_port">أدخ٠Ù
ÙÙØ° OR</string>
+ <string name="relay_nickname">Ø§ÙØ§Ø³Ù
اÙÙ
ستعار ÙÙÙ
ÙØ±ØÙ</string>
+ <string name="the_nickname_for_your_tor_relay">Ø§ÙØ§Ø³Ù
اÙÙ
ستعار ÙÙ
ÙØ±ØÙ ØªÙØ± Ø§ÙØ®Ø§Øµ ØšÙ</string>
+ <string name="enter_a_custom_relay_nickname">أدخ٠اسÙ
Ù
ستعار ÙÙÙ
ÙØ±ØÙ</string>
+ <string name="reachable_addresses">Ø§ÙØ¹ÙاÙÙÙ Ø§ÙØªÙ ÙÙ
Ù٠اÙÙØµÙ٠إÙÙÙØ§</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Ø§ÙØ¹Ù
Ù ÙØ®Ø¯Ù
Ø© Ù
Ù ÙØ±Ø§Ø¡ جدار ÙØ§Ø±Ù ØšØ³ÙØ§Ø³Ø§Øª تÙÙØ¯ÙØ©</string>
+ <string name="reachable_ports">اÙÙ
ÙØ§Ùذ Ø§ÙØªÙ ÙÙ
Ù٠اÙÙØµÙ٠إÙÙÙØ§</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Ù
ÙØ§Ùذ Ù
ÙØªÙØØ© عؚر جدار ÙØ§Ø±Ù تÙÙØ¯Ù</string>
+ <string name="enter_ports">أدخ٠اÙÙ
ÙØ§Ùذ</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">؎غ٠سج٠اÙÙdebug ( ÙÙÙ
راجعة ÙØ¬Øš استخداÙ
adb أ٠LogCat)</string>
+ <string name="project_home">اÙÙ
ÙÙØ¹ Ø§ÙØ±Ø³Ù
Ù ÙÙÙ
ØŽØ±ÙØ¹ (اÙÙ
ØŽØ§Ø±ÙØ¹):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ؚراÙ
ج Ù
Ù Ø§ÙØ·Ø±Ù Ø§ÙØ«Ø§ÙØ«:</string>
+ <string name="tor_version">ØªÙØ±: https://www.torproject.org</string>
+ <string name="libevent_version">ÙØš Ø¥ÙÙÙÙØª اÙÙØ³Ø®Ø© http://www.monkey.org/~provos/libevent/ :v2.0.21</string>
+ <string name="polipo_version">ØšÙÙÙØšÙ اÙÙØ³Ø®Ø© 1.1.9 : https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="found_existing_tor_process">Ø¹ÙØ«Ø± عÙ٠عÙ
ÙÙØ© ØªÙØ± Ø³Ø§ØšÙØ© تعÙ
Ù...</string>
+ <string name="something_bad_happened">ØØµÙ خطأ Ù
ا. Ø§ÙØØµ Ø§ÙØ³Ø¬Ù</string>
+ <string name="unable_to_read_hidden_service_name">ØºÙØ± ÙØ§Ø¯Ø± عÙÙ ÙØ±Ø§Ø¡Ø© اسÙ
Ø§ÙØ®Ø¯Ù
Ø© اÙÙ
Ø®ÙÙØ©</string>
+ <string name="unable_to_start_tor">ØºÙØ± ÙØ§Ø¯Ø± عÙ٠ؚدء ØªÙØ±:</string>
+ <string name="pref_use_persistent_notifications">دا؊Ù
ا ضع Ø§ÙØ£ÙÙÙÙØ© ÙÙ ØŽØ±ÙØ· Ø§ÙØ£Ø¯Ùات Ø¹ÙØ¯Ù
ا ÙÙÙÙ Ø§ÙØ±ØšÙت Ù
ØªØµÙØ§Ù</string>
+ <string name="pref_use_persistent_notifications_title">ØªÙØšÙÙØ§Øª دا؊Ù
Ø©</string>
+ <string name="pref_use_expanded_notifications">ÙÙ
ØšØ£ØžÙØ§Ø± Ø§ÙØªÙØšÙ٠ؚ؎ÙÙ Ù
ÙØ³Ø¹ ؚأستخداÙ
ØªÙØ±. أخرج Ù
Ù Ø§ÙØšÙد ÙØ±ÙÙ
Ø§ÙØ¢Ù ؚ٠رÙÙ
Ø§ÙØ¹ÙÙØ§Ù عÙÙ Ø§ÙØŽØšÙØ©</string>
+ <string name="pref_use_expanded_notifications_title">ØªÙØšÙÙ Ù
ÙØ³Ùع</string>
+ <string name="set_locale_title">اÙÙØºØ©</string>
+ <string name="no_internet_connection_tor">ÙØ§ ÙÙØ¬Ø¯ ارتؚاط ØšØ£ÙØ§ÙترÙÙØª: ØªÙØ± ÙÙ ÙØ¶Ø¹ اÙÙÙ٠اÙÙ
Ø€ÙØª</string>
+ <string name="pref_disable_network_title">ÙØ§ØªÙجد ØŽØšÙØ© ÙÙÙ
-Ø¢ÙÙ</string>
+ <string name="pref_disable_network_summary">ضع ØªÙØ± ÙÙ ÙØ¶Ø¹ÙØ© اÙÙÙÙ
Ø¹ÙØ¯ عدÙ
ÙØ¬Ùد Ø§ÙØ£ÙØªØ±ÙØª</string>
+ <string name="newnym">ÙÙØ¯ تØÙÙØª اÙÙ ÙÙÙØ© ØªÙØ± Ø¬Ø¯ÙØ¯Ø©</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÙØ§ ÙÙØ¬Ø¯ Ø§ØªØµØ§Ù ØšØ£ÙØŽØšÙØ©. سÙÙØªÙÙ ØªÙØ± اÙÙ ÙØ¶Ø¹ÙØ© اÙÙÙÙ
</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ØØ§Ù Ø§ÙØ¥ØªØµØ§Ù ØšØ§ÙØŽØšÙØ© Ø¬ÙØ¯. ÙØªÙ
Ø¥ÙÙØ§Ø° ØªÙØ±...</string>
+ <string name="updating_settings_in_tor_service">ØªØØ¯ÙØ« Ø§ÙØ§Ø¹Ø¯Ø§Ø¯Ø§Øª Ù٠خدÙ
ات ØªÙØ±</string>
+ <string name="pref_socks_title">ØªÙØ± سÙÙØ³</string>
+ <string name="pref_socks_summary">Ù
ÙÙØ° Ø§ÙØŽØšÙات Ø§ÙØØ§Ø³ÙØšÙØ© Ø§Ù ØšÙØ±Øª Ø§ÙØ°Ù ÙÙØ¯Ù
Ù ØªÙØ± اÙÙ ÙØØ¯Ø© Ø§ÙØ®Ø¯Ù
Ø© اÙÙØ§ØŠØšØ© Ø§ÙØšØ±ÙÙØ³Ù Ù٠سÙÙØ³. (اÙÙØ¶Ø¹ÙØ© Ø§ÙØ£ØµÙÙØ©: 9050 ا٠0 ÙÙØªØ¹Ø·ÙÙ)</string>
+ <string name="pref_socks_dialog">ØªØ±ØªÙØšØ§Øª Ù
ÙÙØ° Ø§ÙØŽØšÙات Ø§ÙØØ§Ø³ÙØšÙØ© ØšÙØ±Øª Ø§ÙØ®Ø§Øµ Øš سÙÙØ³</string>
+ <string name="pref_transport_title">Ù
ÙÙØ° Ø§ÙØŽØšÙات Ø§ÙØØ§Ø³ÙØšÙØ© ÙÙ ÙØØ¯Ø© Ø§ÙØ®Ø¯Ù
Ø© اÙÙØ§ØŠØšØ© Ø§ÙØšØ±ÙÙØ³Ù ÙÙ ØªÙØ±</string>
+ <string name="pref_transport_summary">Ù
ÙÙØ° Ø§ÙØŽØšÙات Ø§ÙØØ§Ø³ÙØšÙØ© Ø§ÙØ°Ù ÙÙØ¯Ù
Ù ØªÙØ± Ø¥ÙÙ Ø§ÙØšØ±ÙÙØ³Ù Ø§ÙØŽÙا٠(اÙÙ
ÙÙØ° 9040 ا٠0 عدÙ
اÙÙØ¯Ø±Ø©)</string>
+ <string name="pref_transport_dialog">تÙÙØŠØ© Ù
ÙÙØ° Ø§ÙØšØ±ÙÙØ³Ù Ø§ÙØŽÙاÙ</string>
+ <string name="pref_dnsport_title">Ù
ÙÙØ° Ø§ÙØŽØšÙات Ø§ÙØØ§Ø³ÙØšÙØ© ÙÙØžØ§Ù
أسÙ
اء اÙÙØ·Ø§Ùات Ø§ÙØ®Ø§Øµ Øš ØªÙØ±</string>
+ <string name="pref_dnsport_summary">Ù
ÙÙØ° Ø§ÙØŽØšÙات Ø§ÙØØ§Ø³ÙØšÙØ© Ø§Ù ØšÙØ±Øª Ø§ÙØ°Ù ÙÙØ¯Ù
Ù ØªÙØ± اÙ٠خدÙ
Ø© اسÙ
اء اÙÙØ·Ø§Ù د٠ا٠اس. (Ø§ÙØªÙØµÙØ± 5400 ا٠0 ÙØ¹Ø¯Ù
اÙÙØ¯Ø±Ø©)</string>
+ <string name="pref_dnsport_dialog">إعدادات ØšÙØ±Øª خادÙ
اسÙ
اء اÙÙØ·Ø§Ù</string>
+ <string name="pref_torrc_title">ØªØ±ØªÙØšØ§Øª خاصة ØšÙ torrc</string>
+ <string name="pref_torrc_summary">ÙÙØ®ØšØ±Ø§Ø¡ ÙÙØ· : أدخ٠أسطر Ù
ÙÙ torrc Ù
ؚا؎رةÙ</string>
+ <string name="pref_torrc_dialog">torrc خاص</string>
+ <string name="kbps">ÙÙÙÙØšÙت ÙÙ Ø§ÙØ«Ø§ÙÙØ©</string>
+ <string name="mbps">Ù
ÙØºØ§ØšÙت ÙÙ Ø§ÙØ«Ø§ÙÙØ©</string>
+ <string name="kb">ÙÙÙÙØšØ§Ùت</string>
+ <string name="mb">Ù
ÙØºØ§ØšØ§Ùت</string>
+ <string name="bridges_updated">تÙ
ØªØØ¯ÙØ« Ø§ÙØ¬Ø³Ùر</string>
+ <string name="restart_orbot_to_use_this_bridge_">Ø§ÙØ±Ø¬Ø§Ø¡ إعادة ت؎غÙÙ Ø£ÙØ±ØšÙت ÙØªÙعÙÙ Ø§ÙØªØ¹Ø¯ÙÙØ§Øª</string>
+ <string name="menu_qr">رÙ
ز ÙÙ٠آر</string>
+ <string name="bridge_mode">ÙÙ
Ø· Ø§ÙØ¬Ø³Ø±</string>
+ <string name="get_bridges_email">Ø§ÙØšØ±Ùد Ø§ÙØ¥ÙÙØªØ±ÙÙÙ</string>
+ <string name="get_bridges_web">اÙÙÙØš</string>
+ <string name="activate">ØªÙØ¹ÙÙ</string>
+ <string name="apps_mode">ÙØ¶Ø¹ اÙÙ VPN</string>
+ <string name="send_email">Ø£Ø±Ø³Ù ØšØ±ÙØ¯ اÙÙØªØ±ÙÙÙ</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ØªØ³ØªØ·ÙØ¹ Ø§ÙØØµÙ٠عÙ٠عÙÙØ§Ù جسر عؚر Ø§ÙØšØ±Ùد Ø§ÙØ¥ÙÙØªØ±ÙÙÙØ عؚر اÙÙÙØšØ Ø£Ù ؚعÙ
Ù Ù
Ø³Ø ÙÙÙÙØ¢Ø± ÙÙØ¯ خاص ؚجسر.
+إختر \"ØšØ±ÙØ¯ Ø¥ÙÙØªØ±ÙÙÙ\" Ø£Ù \"ÙÙØš\" ØšØ§ÙØ£Ø³ÙÙ ÙØ·ÙØš عÙÙØ§Ù جسر.
+
+Ù
ا Ø£Ù ØªØØµÙ عÙÙ Ø¬Ø³Ø±Ø Ø£ÙØ³Ø®Ù ÙØ£ÙصÙÙ ÙÙ Ø®Ø§ÙØ© \"Ø§ÙØ¬Ø³Ùر\" Ù٠إعدادات Ø£ÙØ±ØšÙت ÙØ£Ø¹Ø¯ Ø§ÙØªØŽØºÙÙ.</string>
+ <string name="vpn_default_world">؎اÙ
Ù (تÙÙØ§ØŠÙ)</string>
+ <string name="hidden_services">خدÙ
ات Ø®ÙÙØ©</string>
+ <string name="title_activity_hidden_services">خدÙ
ات Ø®ÙÙØ©</string>
+ <string name="menu_hidden_services">خدÙ
ات Ø®ÙÙØ©</string>
+ <string name="save">ØÙØž</string>
+ <string name="local_port">اÙÙ
ÙÙØ° اÙÙ
ØÙÙ</string>
+ <string name="onion_port">Ù
ÙÙØ° اÙÙ Onion</string>
+ <string name="name">Ø§ÙØ§Ø³Ù
</string>
+ <string name="done">تÙ
!</string>
+ <string name="invalid_port">اÙÙ
ÙÙØ° ØºÙØ± ØµØ§ÙØ</string>
+ <string name="copy_address_to_clipboard">ÙØ³Ø® Ø§ÙØ¹ÙÙØ§Ù Ø¥ÙÙ Ø§ÙØØ§ÙØžØ©</string>
+ <string name="show_auth_cookie">عرض ÙØ¹ÙØ© اÙÙ
ØµØ§Ø¯ÙØ©</string>
+ <string name="backup_service">اÙÙØ³Ø® Ø§ÙØ¥ØØªÙاط٠ÙÙØ®Ø¯Ù
Ø©</string>
+ <string name="delete_service">ØØ°Ù Ø§ÙØ®Ø¯Ù
Ø©</string>
+ <string name="backup_saved_at_external_storage">تÙ
ت عÙ
ÙÙØ© ØÙØž اÙÙØ³Ø®Ø© Ø§ÙØ¥ØØªÙØ§Ø·ÙØ© ÙÙ Ø°Ø§ÙØ±Ø© Ø§ÙØªØ®Ø²ÙÙ Ø§ÙØ®Ø§Ø±Ø¬ÙØ©</string>
+ <string name="backup_restored">تÙ
ت استعادة اÙÙØ³Ø®Ø© Ø§ÙØ¥ØØªÙØ§Ø·ÙØ©</string>
+ <string name="filemanager_not_available">تعذر Ø§ÙØ¹Ø«Ùر عÙÙ Ù
Ø¯ÙØ± اÙÙ
ÙÙØ§Øª</string>
+ <string name="restore_backup">إسترجاع ÙØ³Ø®Ø© Ø§ØØªÙØ§Ø·ÙØ©</string>
+ <string name="create_a_backup_first">ÙÙ
Ø£ÙÙØ§Ù ØšØ¥ÙØŽØ§Ø¡ ÙØ³Ø®Ø© Ø¥ØØªÙØ§Ø·ÙØ©</string>
+ <string name="name_can_t_be_empty">ÙØ§ ÙÙ
ÙÙ ØªØ±Ù Ø§ÙØ¥Ø³Ù
ÙØ§Ø±ØºØ§</string>
+ <string name="fields_can_t_be_empty">ÙØ§ ÙÙ
ÙÙ ØªØ±Ù Ø§ÙØÙÙÙ ÙØ§Ø±ØºØ©</string>
+ <string name="start_tor_again_for_finish_the_process">ÙÙ
ؚت؎غÙÙ ØªÙØ± ثاÙÙØ©Ù ÙØ¥ÙÙØ§Ø¡ Ø§ÙØ¹Ù
ÙÙØ©</string>
+ <string name="confirm_service_deletion">تأÙÙØ¯ ØØ°Ù Ø§ÙØ®Ø¯Ù
Ø©</string>
+ <string name="click_again_for_backup">ÙÙ
ؚاÙÙÙØ± ثاÙÙØ© ÙÙÙÙØ§Ù
ؚاÙÙØ³Ø® Ø§ÙØ¥ØØªÙاطÙ</string>
+ <string name="service_type">ÙÙØ¹ Ø§ÙØ®Ø¯Ù
Ø©</string>
+ <string name="auth_cookie">ÙØ¹ÙØ© اÙÙ
ØµØ§Ø¯ÙØ©</string>
+ <string name="copy_cookie_to_clipboard">ÙØ³Ø® اÙÙØ¹ÙØ© Ø¥ÙÙ Ø§ÙØØ§ÙØžØ©</string>
+ <string name="auth_cookie_was_not_configured">ÙÙ
ÙØªÙ
إعداد ÙØ¹ÙØ© اÙÙ
ØµØ§Ø¯ÙØ©</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Ø§ÙØ±Ø¬Ø§Ø¡ إعادة ت؎غÙÙ Ø£ÙØ±ØšÙت ÙØªÙعÙÙ Ø§ÙØªØ¹Ø¯ÙÙØ§Øª</string>
+ <string name="client_cookies">ÙØ¹Ùات Ø§ÙØ¹Ù
ÙÙ</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">عÙÙØ§Ù اÙÙ .onion ØºÙØ± ØµØ§ÙØ</string>
+ <string name="cookie_from_QR">اÙÙØ±Ø§Ø¡Ø© Ù
Ù٠رÙ
ز اÙÙÙ٠آر</string>
+ <string name="backup_cookie">اÙÙØ³Ø® Ø§ÙØ¥ØØªÙاط٠ÙÙÙØ¹ÙØ©</string>
+ <string name="delete_cookie">ØØ°Ù اÙÙØ¹ÙØ©</string>
+ <string name="confirm_cookie_deletion">تأÙÙØ¯ Ø¥Ø²Ø§ÙØ© اÙÙØ¹ÙØ©</string>
+ <string name="hosted_services">Ø§ÙØ®Ø¯Ù
ات اÙÙ
Ø³ØªØ¶Ø§ÙØ©</string>
+ <string name="share_as_qr">ØŽØ§Ø±Ù ÙØ±Ù
ز ÙÙ٠آر</string>
+ <string name="disable">Ø¥ÙØºØ§Ø¡</string>
+ <string name="enable">تÙ
ÙÙÙ</string>
+ <string name="consider_disable_battery_optimizations">ÙØ±Ø¬Ù تعطÙÙ ØªØØ³ÙÙØ§Øª Ø§ÙØšØ·Ø§Ø±ÙØ©</string>
+ <string name="consider_enable_battery_optimizations">ÙØ±Ø¬Ù ت؎غÙÙ ØªØØ³ÙÙØ§Øª Ø·Ø§ÙØ© Ø§ÙØšØ·Ø§Ø±ÙØ©</string>
+ <string name="app_shortcuts">Ø§ÙØªØ·ØšÙÙØ§Øª اÙÙ
ÙÙØŠØ© ÙÙØ¹ØšÙر عؚر ØªÙØ±</string>
+ <string name="testing_bridges">Ø¬Ø§Ø±Ù ÙØØµ Ø§ØªØµØ§Ù Ø§ÙØ¬Ø³Ø± ØšØŽØšÙØ© ØªÙØ± ...</string>
+ <string name="testing_bridges_success">ÙØ¬ØØª Ø§ÙØ¹Ù
ÙÙØ©. Ø¥Ù٠إعدادات Ø§ÙØ¬Ø³Ø± Ø¬ÙØ¯Ø© !</string>
+ <string name="testing_bridges_fail">ÙØŽÙت Ø§ÙØ¹Ù
ÙÙØ©. ØØ§ÙÙ ØšØ®ÙØ§Ø±Ø§Øª أخرÙ</string>
+ <string name="bridge_direct_connect">Ø§ÙØ¥ØªØµØ§Ù اÙÙ
ؚا؎ر ØšØŽØšÙØ© ØªÙØ± (Ø£ÙØ¶Ù)</string>
+ <string name="bridge_community">Ø§ÙØ¥ØªØµØ§Ù عؚر Ø®ÙØ§Ø¯Ù
اÙÙ
جتÙ
ع</string>
+ <string name="bridge_cloud">Ø§ÙØ¥ØªØµØ§Ù ع٠طرÙÙ Ø§ÙØ®ÙادÙ
Ø§ÙØ³ØØ§ØšÙØ©</string>
+ <string name="trouble_connecting">ØªÙØ§Ø¬Ù Ù
ØŽÙÙØ© ÙÙØ¥ØªØµØ§Ù Ø</string>
+ <string name="full_device_vpn">ÙÙ Ø§ÙØ¬Ùاز عؚر Ø§ÙØŽØšÙØ© Ø§ÙØ¥ÙØªØ±Ø§Ø¶ÙØ© Ø§ÙØ®Ø§ØµØ© VPN</string>
+ <string name="vpn_disabled">اÙÙ VPN ØºÙØ± Ù
ÙÙÙØ¹ÙÙ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ay/poestrings.xml b/app-mini/src/main/res/values-ay/poestrings.xml
new file mode 100644
index 00000000..417f7597
--- /dev/null
+++ b/app-mini/src/main/res/values-ay/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Yaqhippachax Tor apnaqañatakix mÀ jalakipañaw wakisi</string>
+ <string name="action_more">JUK\'AMP YATIYASKAKITA</string>
+
+ <string name="vpn_setup">Toran VPN utjirinaktuqÌm kawknïr wakichÀwinaks qhantayarakismawa</string>
+ <string name="vpn_setup_sub">Akax janiw jan uñjkay tukuykatamti, ukhamarus jark\'antatanak jalakipañanx yanapt\'Àtamwa.</string>
+ <string name="action_vpn_choose">WAKICHÃWINAK CHHIJLLAÃA</string>
+
+ <string name="hello">Kamisaki</string>
+ <string name="welcome">Jawsañatak wakt\'ayat Tor ukarux walik mantantaxa.</string>
+
+ <string name="browser_the_internet">Jichhax jan katjayasisakiw llikankxasma</string>
+ <string name="no_tracking">Jan uñjayasisa, jan k\'umiyasisa.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-ay/strings.xml b/app-mini/src/main/res/values-ay/strings.xml
new file mode 100644
index 00000000..7a206666
--- /dev/null
+++ b/app-mini/src/main/res/values-ay/strings.xml
@@ -0,0 +1,205 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_description">Orbotax proxyn mÀ wakichawipawa, llikatuq jan lunthatayasiñatakiw yaqha wakichawinakampachar yanapi. Orbotax Toratuqiw uraqpachan luratanak jañ uñjayasiñatak atamirinaktuq jark\'aqi. Torax Software Libre ukhamawa, ukampirus maynin luratanakapa, aruskipatanakapa, amuyunakap jan uñjayasiñatakiw jark\'aqi. </string>
+ <string name="status_starting_up">Orbotax qalltaskiwa...</string>
+ <string name="status_activated">Tor llikatuqir waythapitawa</string>
+ <string name="status_disabled">Orbotax jiwt\'atawa</string>
+ <string name="status_shutting_down">Tor wakichawix jist\'antasiskiwa</string>
+ <string name="tor_process_starting">Tor apnaqirix qalltayaskiwa...</string>
+ <string name="tor_process_complete">tukuyata.</string>
+ <string name="menu_settings">Mayjt\'ayaña</string>
+ <string name="menu_log">Imata</string>
+ <string name="menu_start">Qalltaña</string>
+ <string name="menu_stop">Sayt\'ayaña</string>
+ <string name="menu_about">Juk\'ampi</string>
+ <string name="main_layout_download">Apaqaña</string>
+ <string name="main_layout_upload">Apkataña</string>
+ <string name="button_about">Juk\'ampi</string>
+ <string name="menu_exit">Mistuña</string>
+ <string name="menu_scan">Jalakipañ QR waruqaña</string>
+ <string name="menu_share_bridge">Jalakipañ QR ch\'iqiyaña</string>
+ <string name="btn_okay">Iyaw saña</string>
+ <string name="btn_cancel">Janiw saña</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbotxat juk\'amp yatiñataki</string>
+ <string name="wizard_details_msg">Orbot wakichawix inakiwa ukatx Tor ukaniwa, Obfs4Proxy, BadVPN Tun2Socks, LibEvent ukhamarak Polipo. Proxy HTTP (8118) ukhamarak mÀ proxy SOCKS (9050) Tor taypin utjayi. MÀ rooteat atamirinx Orbotax Tor tuqiw taqpach llika yatiyÀwinak apayarakispawa.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Wakiskiri</string>
+ <string name="pref_start_boot_title">Orbot qhantaykas qalltaña</string>
+ <string name="pref_start_boot_summary">Android aqtaykasax Orbot, Tor justupak aqtayam.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Puriñawjanak mayjt\'ayaña</string>
+ <string name="pref_node_configuration_summary">Akanakax jan amuykay tukuñaman mayjt\'ayañatakiwa.</string>
+ <string name="pref_entrance_node">Puriñawjan mantañanaka</string>
+ <string name="pref_entrance_node_summary">Nayrïr jalakipañanakan ampar luk\'an chimpunaka, ñanqha sutinaka, markanaka, chiqawjanakapa</string>
+ <string name="pref_entrance_node_dialog">Puriñawjan mantañanak qillqantaña</string>
+ <string name="pref_allow_background_starts_title">WakichÀwinak qhiparkipstayaña</string>
+ <string name="pref_allow_background_starts_summary">Toramp kikip luratanakamp qalltañapataki, yaqha wakichÀwinakamp Orbot apnaqayam</string>
+ <string name="pref_proxy_title">Llikan uñstir proxy (munsta ukaki)</string>
+ <string name="pref_proxy_type_title">Uñstir proxy</string>
+ <string name="pref_proxy_type_summary">Uñstir yanapiri ajllt\'aña: HTTP, HTTPS, Socks4, Socks5.i</string>
+ <string name="pref_proxy_type_dialog">MÀ Proxy ajllt\'am</string>
+ <string name="pref_proxy_host_title">Uñstir proxy</string>
+ <string name="pref_proxy_host_summary">Proxy suti</string>
+ <string name="pref_proxy_host_dialog">Yanapir proxy qillqantam</string>
+ <string name="pref_proxy_port_title">Uñstir proxy apayañ thakhi</string>
+ <string name="pref_proxy_port_summary">Proxy apayañ thakhi</string>
+ <string name="pref_proxy_port_dialog">Proxy apayañ thakh qillqantam</string>
+ <string name="pref_proxy_username_title">Uñstir proxyn apnaqañ sutima</string>
+ <string name="pref_proxy_username_summary">Proxyn apnaqañ suti (munsta ukaki)</string>
+ <string name="pref_proxy_username_dialog">Proxytuqin apnaqirin sutip qillqantam</string>
+ <string name="pref_proxy_password_title">Proxy chimpu</string>
+ <string name="pref_proxy_password_summary">Proxy chimpu (munsta ukaki)</string>
+ <string name="pref_proxy_password_dialog">Proxytuqin chimpu qillqantam</string>
+ <string name="couldn_t_start_tor_process_">Torax janiw qalltkiti:</string>
+ <string name="error">Pantjata</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">¡\'Reglas de direcciones accesibles\' ukanakax pantjatawa!</string>
+ <string name="your_relay_settings_caused_an_exception_">¡Katuqir apayirinakax pantjatawa!</string>
+ <string name="exit_nodes">Puriñawjan mistuñanakapa</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Qhipïr jalakipañanakan ampar luk\'an chimpunaka, ñanqha sutinaka, markanaka, chiqawjanakapa</string>
+ <string name="enter_exit_nodes">Puriñawjan mistsuñanakap qillqantam</string>
+ <string name="exclude_nodes">Puriñawjanak uñanukuña</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Ampar luk\'an chimpunaka, ñanqha sutinaka, markanaka, chiqawjanaka, jan Tor llikar mantayañataki</string>
+ <string name="enter_exclude_nodes">Puriñawjanak uñanuqut qillqantam</string>
+ <string name="strict_nodes">Sum uñjat puriñawjanaka</string>
+ <string name="use_only_these_specified_nodes">Aka sutiñchat puriñawjanakak apnaqam</string>
+ <string name="bridges">Jalakipañanaka</string>
+ <string name="use_bridges">Jalakipañanak apnaqaña</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Tor llika manqhan yaqha mantañanak qhantayaña</string>
+ <string name="ip_address_and_port_of_bridges">IP ukanakamp jalakipañ apayañ thakhinakampi</string>
+ <string name="enter_bridge_addresses">Jalakipañanakan chiqawjanakap qillqantam</string>
+ <string name="relays">Ch\'iqiyirinaka</string>
+ <string name="relaying">Apayat ch\'iqiyaña</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Jan uñstir ch\'iqiyirïñapatak dispositivo aqtayam</string>
+ <string name="relay_port">Ch\'iqiyirin apayañ thakhipa</string>
+ <string name="listening_port_for_your_tor_relay">Tor ch\'iqiyirimatak ist\'añ thakhi</string>
+ <string name="enter_or_port">OR apayañ thakhi qillqantam</string>
+ <string name="relay_nickname">Ch\'iqiyirin ñanqha sutipa</string>
+ <string name="the_nickname_for_your_tor_relay">Tor ch\'iqiyiriman ñanqha sutip uñt\'ayiri</string>
+ <string name="enter_a_custom_relay_nickname">Ch\'iqiyirimatak mayjt\'ayat ñanqha suti qillqantam</string>
+ <string name="reachable_addresses">Kawkjanakarus purini</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Jark\'antat kamachinakampi, apnaqirjam jark\'antat taypin Tor aqtayaña</string>
+ <string name="reachable_ports">Mantkañ apayañ thakhinaka</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Jark\'antat taypin mantkañ apayañ thakhinaka</string>
+ <string name="enter_ports">Apayañ thakhinak qillqantam</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">imatanak ajllirañ qhantayaña (uñjañatakix adb jan ukax aLogCat apnaqañamawa)</string>
+ <string name="project_home">Nayrïr uñsta janja:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">3ar jaljat-Software </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Imantat apayañ thakhinak Tor llikar mÀ wakichÀwiw jist\'arañ muni %1$s. Wakichawitix uñt\'atachixa, iyaw sama.</string>
+ <string name="found_existing_tor_process">Utjir Toraw jikxatata...</string>
+ <string name="something_bad_happened">MÀ jan walt\'Àwiw utji. Qillqantayasit uñakipam</string>
+ <string name="unable_to_read_hidden_service_name">Janiw imantat yanapirin sutiman ullarañjamakÀnti</string>
+ <string name="unable_to_start_tor">Janiw Torax aqtayañjamÀkiti:</string>
+ <string name="pref_use_persistent_notifications">Orbot aqtatÀki ukjax chimpup uñstayañapuni</string>
+ <string name="pref_use_persistent_notifications_title">YatiyÀwinakax purinipuniniwa</string>
+ <string name="pref_use_expanded_notifications">Kawkja markans IP ukamp Toramp uñstani uka yatiyÀw juk\'amp uñacht\'ayaña</string>
+ <string name="pref_use_expanded_notifications_title">Phuqhat yatiyÀwinaka</string>
+ <string name="set_locale_title">Aru</string>
+ <string name="no_internet_connection_tor">Llikax janiw utjkiti; Tor ukax suyt\'atawa...</string>
+ <string name="pref_disable_network_title">Jan jiwt\'ayas suyt\'aña</string>
+ <string name="pref_disable_network_summary">Llika jan uktjki ukjax Tor suyt\'ayam</string>
+ <string name="newnym">¡Jichhax Tor sutimax yaqhÀxiwa!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Janiw llikax utjkiti. Torax suyt\'ayatawa...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Llikax khus uñstaniski. Torax aqtaskiwa...</string>
+ <string name="updating_settings_in_tor_service">Toran wakichÀwinakax mayjt\'ayaskiwa</string>
+ <string name="pref_socks_title">Toran SOCKS ukapa</string>
+ <string name="pref_socks_summary">Toran proxy SOCKS apayañ thakhipa: (nayra utt\'atatakix 9050, jiwt\'ayañatakix 0)</string>
+ <string name="pref_socks_dialog"> SOCKS apayañ thakhinak mayjt\'ayaña</string>
+ <string name="pref_transport_title">Toran TransProxy apayañ thakhipa</string>
+ <string name="pref_transport_summary">Toran Qhan Apnaqat Proxy apayañ thakh churañ munatapa (Nayra utt\'atatakix 9040, jiwt\'ayañatakix 0)</string>
+ <string name="pref_transport_dialog">TransProxyn apayañ thakhinak mayjt\'ayaña</string>
+ <string name="pref_dnsport_title">Tor DNS apayañ thakhi</string>
+ <string name="pref_dnsport_summary">Toran DNS apayañ thakhipa: (nayra utt\'atatakix 5400, jiwt\'ayañatakix 0)</string>
+ <string name="pref_dnsport_dialog">DNS apayañ thakhinak mayjt\'ayaña</string>
+ <string name="pref_torrc_title">Torrc mayjt\'ayaña</string>
+ <string name="pref_torrc_summary">YATIRINAKATAKIKI: torrc apthapitan chiqak mayjt\'ayam</string>
+ <string name="pref_torrc_dialog">Maynipachpatak Torrc kuttayaña</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Jichhaptayat jalakipañanaka</string>
+ <string name="restart_orbot_to_use_this_bridge_">Mayjt\'ayatanak aqtayañatak Orbot mayamp qhant\'ayam, amp suma</string>
+ <string name="menu_qr">QR chimpunaka</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Jawsañ apnaqirinakax Tor jark\'antañ yatipk ukjax \'Jalakipañ yanapiri\' mantañatak apnaqarakismawa. Yant\'añataki, mayjt\'ayañatakix AJLLT\'AM...</string>
+ <string name="bridge_mode">Jalakipaña</string>
+ <string name="get_bridges_email">Imaylu (Email)</string>
+ <string name="get_bridges_web">Llika janja</string>
+ <string name="activate">Qhantayaña</string>
+ <string name="apps_mode">VPN</string>
+ <string name="send_email">Qillqat apayaña</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Jalakipañan QR waruqasa, jan ukax llikatuqi, imailtuqis jalakipañ utjirinakx jikxatarakismawa. Jalakipañ thakh jikxatañatakix \'Imail\' jan ukax \'llika\' ajllt\'am.\n\n Orbotan majt\'ayañawjapan \"Jalakipañ Thakhi\" limt\'añar apkatam, ukat mayamp qalltam.</string>
+ <string name="vpn_default_world">Uraqpacha (justupaki)</string>
+ <string name="hidden_services">Imantat lurañanaka</string>
+ <string name="title_activity_hidden_services">Imantat lurañanaka</string>
+ <string name="menu_hidden_services">Imantat lurañanaka</string>
+ <string name="save">Imaña</string>
+ <string name="local_port">Akankïr apayañ thakhi</string>
+ <string name="onion_port">Onion apayañ thakhi</string>
+ <string name="name">Suti</string>
+ <string name="done">¡Tukuyata!</string>
+ <string name="invalid_port">Jan apaykay thakhi</string>
+ <string name="copy_address_to_clipboard">Utjirinak waruqañawjar imam</string>
+ <string name="show_auth_cookie"> Uñt\'ayktam uka cookie uñstayam</string>
+ <string name="backup_service">Yanapirit imat luratanakam waruqam</string>
+ <string name="delete_service">Lurañanak pichsuña</string>
+ <string name="backup_saved_at_external_storage">Imat luratanakamax yaqha yÀnakar imataxiwa</string>
+ <string name="backup_restored">Imat luratanakamax mayamp apnaqatÀxiwa</string>
+ <string name="filemanager_not_available">Imatanak apnaqirix janiw uñjañjamÀkiti</string>
+ <string name="please_grant_permissions_for_external_storage">Yaqha yÀnakar imañatak iyaw sam, amp suma</string>
+ <string name="restore_backup">Imat luratanak mayamp aqtayam</string>
+ <string name="create_a_backup_first"> Imat luratanak nayraqat uñstayam</string>
+ <string name="name_can_t_be_empty">Sutix qillqantatÀñapapuniwa</string>
+ <string name="fields_can_t_be_empty">Janiw kunas ch\'usÀñapakiti</string>
+ <string name="start_tor_again_for_finish_the_process">Tukuyañatakix Tor mayamp naktayam</string>
+ <string name="confirm_service_deletion">Lurañanakax pichsutÀniwa</string>
+ <string name="click_again_for_backup">Imat luratanak utjañapatak mayamp limt\'am</string>
+ <string name="service_type">Kunayman lurañanaka</string>
+ <string name="auth_cookie">Chiqat k\'arich uk katjir cookie</string>
+ <string name="copy_cookie_to_clipboard">Cookie waruqañawjar imam</string>
+ <string name="auth_cookie_was_not_configured">Chiqat k\'arich uk katjir cookiex janiw mayjt\'ayatÀkiti</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Mayjt\'ayatanak aqtayañatak Orbot mayamp qhant\'ayam, amp suma</string>
+ <string name="client_cookies">Apnaqirin Cookiepa</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Jan wali Onion ukan chiqawjanakapa</string>
+ <string name="cookie_from_QR">QR ukamp ullaraña</string>
+ <string name="backup_cookie">Cookien imat luratanakapa</string>
+ <string name="delete_cookie">Cookie pichsum</string>
+ <string name="confirm_cookie_deletion">Cookie pichsut mayamp uñxatam</string>
+ <string name="hosted_services">Qurpachat lurañanaka</string>
+ <string name="share_as_qr">QRjam ch\'iqiyaña</string>
+ <string name="disable">Jiwt\'ayaña</string>
+ <string name="enable">Aqtayaña</string>
+ <string name="consider_disable_battery_optimizations">Ch\'amanchir pist\'k ukjax jiwt\'añkam aqaskañapatakik amuyt\'am</string>
+ <string name="consider_enable_battery_optimizations">Ch\'amanchir pist\'k ukjax jiwt\'añkam jan aqañapatak amuyt\'am</string>
+ <string name="pref_isolate_dest">Apayañ chiqanak jark\'aqaña</string>
+ <string name="pref_isolate_dest_summary">Sapa apayañ chiqatak kunayman thakhinak apnaqaña</string>
+ <string name="no_transproxy_warning_short">UKATARAKI: Transproxy lurÀwix janiw mayampis iyaw jisxiti</string>
+ <string name="no_transproxy_warning">UKATARAKI: Qhan apnaqat proxyx janiw iyaw satÀkiti. Uka lantix Orbot wakichÀw VPN apnaqam.</string>
+ <string name="pref_connection_padding">Waythapiñ ch\'amachiri</string>
+ <string name="pref_connection_padding_summary">Yaqhip apayat uñsusirinakat jark\'aqasiñataki, waythapiñ ch\'amachir aqtayapunim. Utt\'ayata: justupacha</string>
+ <string name="pref_reduced_connection_padding">Juk\'aptayat waythapiñ ch\'amañchiri</string>
+ <string name="pref_reduced_connection_padding_summary">Ch\'amachirimp llika katuqatamp juk\'aqtayañataki, jank\'aki ch\'iqiyir waythapir jist\'antam ukatx juk\'amp juk\'a ch\'amachir wakichÀwinak apayam</string>
+ <string name="app_shortcuts">Toramp apnaqañataki wakichÀwinaka</string>
+ <string name="testing_bridges">Torar waythapir apayañ thakhix yant\'ataskiwa</string>
+ <string name="testing_bridges_success">Walikipuniwa. ¡jalakipÀwix askinjam mayjt\'ayatawa!</string>
+ <string name="testing_bridges_fail">PANTJATAWA. Yaqh yant\'am</string>
+ <string name="bridge_direct_connect">Tor ukar chiqak waykattaña (juk\'amp khusa)</string>
+ <string name="bridge_community">Yanapirinakan atamirinakapamp waythapiña</string>
+ <string name="bridge_cloud">Llikan imirinakamp waythapiña</string>
+ <string name="bridges_get_new">Machaq jalakipañanak mayiña... (yaqhanak jan walt\'kasp ukja)</string>
+ <string name="trouble_connecting">¿Waythapiykasat jan walt\'xï?</string>
+ <string name="full_device_vpn">Taqpach wakichÀwinakaw VPN ukamp apnaqatÀni</string>
+ <string name="vpn_disabled">VPN jiwt\'ayatawa</string>
+</resources>
diff --git a/app-mini/src/main/res/values-az/strings.xml b/app-mini/src/main/res/values-az/strings.xml
new file mode 100644
index 00000000..13ce69b9
--- /dev/null
+++ b/app-mini/src/main/res/values-az/strings.xml
@@ -0,0 +1,143 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_description">Pulsuz proksi tÉtbiqetmÉsi olan Orbot baÅqa tÉtbiqetmÉlÉrÉ internetdÉn daha tÉhlÃŒkÉsiz istifadÉ etmÉk imkanı verir. Orbot sizin internet trafikinizi ÅifrÉlÉmÉk ÌçÌn Tordan istifadÉ edir vÉ dÃŒnyanın hÉr yerindÉ kompÃŒterlÉrin birindÉn o birinÉ sıçramaqla bunu gizlÉdir. Tor pulsuz proqram tÉminatıdır, eyni zamanda sizin ÅÉxsi azadlıÄınız vÉ tÉhlÃŒkÉsizliyinizÉ, gizli biznes fÉaliyyÉti vÉ ÉlaqÉlÉrÉ, o cÃŒmlÉdÉn trafik analiz adlanan dövlÉt tÉhlÃŒkÉsizliyinÉ xÉlÉl gÉtirÉ bilÉcÉk ÅÉbÉkÉ nÉzarÉti formalarından mÃŒdafiÉ olunmaÄa yardım edÉn açıq ÅÉbÉkÉdir.</string>
+ <string name="status_starting_up">Orbot baÅlayır...</string>
+ <string name="status_activated">Tor ÅÉbÉkÉsinÉ baÄlandı</string>
+ <string name="status_disabled">Orbot deaktivasiya edildi</string>
+ <string name="status_shutting_down">Tor xidmÉti iÅini baÅa vurur</string>
+ <string name="tor_process_starting">Tor xidmÉti baÅlayır...</string>
+ <string name="tor_process_complete">tamamla.</string>
+ <string name="menu_settings">QuraÅdırmalar</string>
+ <string name="menu_log">Jurnal</string>
+ <string name="menu_start">BaÅla</string>
+ <string name="menu_stop">Dur</string>
+ <string name="menu_about">Haqqında</string>
+ <string name="main_layout_download">Endir</string>
+ <string name="main_layout_upload">YÃŒklÉ</string>
+ <string name="button_about">Haqqında</string>
+ <string name="menu_exit">Ãıx</string>
+ <string name="menu_scan">KörpÌQR kodu skan edin</string>
+ <string name="menu_share_bridge">KörpÃŒQR kodu paylaÅın</string>
+ <string name="btn_okay">Okey</string>
+ <string name="btn_cancel">LÉÄv et</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">BÉzi Orbot Detalları</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Æsas</string>
+ <string name="pref_start_boot_title">Android Açıldıqda Orbotu BaÅlat</string>
+ <string name="pref_start_boot_summary">Android cihazın iÅÉ baÅladıqda avtomatik olaraq Orbot baÅlansın vÉ Tor-a qoÅulsun</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">KÉsiÅmÉ Konfiqurasiyası</string>
+ <string name="pref_node_configuration_summary">Bunlar sÉnin anonimliyini azalda bilÉcÉk Étraflı seçimlÉrdir</string>
+ <string name="pref_entrance_node">GiriÅ KÉsiÅmÉlÉri</string>
+ <string name="pref_entrance_node_summary">Birinci sıçrayıŠÌçÌn barmaq izlÉri, niÅanlar, ölkÉlÉr vÉ ÃŒnvanlar</string>
+ <string name="pref_entrance_node_dialog">GiriÅ KÉsiÅmÉlÉrini ÆlavÉ et</string>
+ <string name="pref_allow_background_starts_title">Arxa fonun iÅÉ baÅlamasına icazÉ verin</string>
+ <string name="pref_allow_background_starts_summary">Qoy hÉr-hansı tÉtbiqetmÉ Orbota Tor vÉ ÉlaqÉli xidmÉtlÉri iÅÉ salmalı olduÄunu desin</string>
+ <string name="pref_proxy_title">İxrac EdilÉn ÅÉbÉkÉ Proksisi (istÉyÉ baÄlı)</string>
+ <string name="pref_proxy_type_title">İxrac EdilÉn Proksi NövÃŒ</string>
+ <string name="pref_proxy_type_summary">Proksi serveri istifadÉ etmÉk ÌçÌn protokol: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Proksi NövÌnÌ Daxil Et</string>
+ <string name="pref_proxy_host_title">İxrac EdilÉn Proksi Hostu</string>
+ <string name="pref_proxy_host_summary">Proksi Server host adı</string>
+ <string name="pref_proxy_host_dialog">Proksi Hostu Daxil Et</string>
+ <string name="pref_proxy_port_title">İxrac EdilÉn Proksi Port</string>
+ <string name="pref_proxy_port_summary">Proksi Server portu</string>
+ <string name="pref_proxy_port_dialog">Proksi portu daxil et</string>
+ <string name="pref_proxy_username_title">İxrac EdilÉn Proxy İstifadÉçi Adı</string>
+ <string name="pref_proxy_username_summary">Proksi İstifadÉçi Adı (istÉyÉ baÄlı)</string>
+ <string name="pref_proxy_username_dialog">Proksi İstifadÉçi Adı Daxil Et</string>
+ <string name="pref_proxy_password_title">İxrac EdilÉn Proksi ÅifrÉ</string>
+ <string name="pref_proxy_password_summary">Proksi ÅifrÉ (istÉyÉ baÄlı)</string>
+ <string name="pref_proxy_password_dialog">Proksi ÅifrÉ Daxil et</string>
+ <string name="couldn_t_start_tor_process_">Tor prosesi baÅlana bilmÉdi:</string>
+ <string name="error">XÉta</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">SÉnin ÆlçatanÃnvanlar seçimin istisnaya sÉbÉb oldu!</string>
+ <string name="your_relay_settings_caused_an_exception_">SÉnin keçid seçimlÉrin istisnaya sÉbÉb oldu!</string>
+ <string name="exit_nodes">KÉsiÅmÉlÉri Xaric Et</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Son sıçrayıŠÌçÌn barmaq izlÉri, niÅanlar, ölkÉlÉr vÉ ÃŒnvanlar</string>
+ <string name="enter_exit_nodes">ÃıxıŠKÉsiÅmÉlÉrini Daxil Et</string>
+ <string name="exclude_nodes">KÉsiÅmÉlÉri Xaric Et</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">İxrac ÌçÌn barmaq izlÉri, niÅanlar, ölkÉlÉr vÉ ÃŒnvanlar</string>
+ <string name="enter_exclude_nodes">İxrac KÉsiÅmÉlÉrini Daxil Et</string>
+ <string name="strict_nodes">KÉskin KÉsiÅmÉlÉr</string>
+ <string name="use_only_these_specified_nodes">*Yalnız* bu xÃŒsusi kÉsiÅmÉlÉri istifadÉ et</string>
+ <string name="bridges">KörpÃŒlÉr</string>
+ <string name="use_bridges">KörpÃŒ İstifadÉ Et</string>
+ <string name="ip_address_and_port_of_bridges">KörpÃŒlÉrin IP ÃŒnvanı vÉ portu</string>
+ <string name="enter_bridge_addresses">KörpÃŒ Ãnvanlarını Daxil et</string>
+ <string name="relays">KeçidlÉr</string>
+ <string name="relaying">KeçidlÉmÉ</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Cihazının son-keçid funksiyasını aktivlÉÅdir</string>
+ <string name="relay_port">Keçid Portu</string>
+ <string name="listening_port_for_your_tor_relay">Tor keçidin ÌçÌn portun dinlÉnmÉsi</string>
+ <string name="enter_or_port">OR port daxil et</string>
+ <string name="relay_nickname">Keçid adı</string>
+ <string name="the_nickname_for_your_tor_relay">Tor keçidin ÌçÌn ad</string>
+ <string name="enter_a_custom_relay_nickname">İlkin keçidÉ ad daxil et</string>
+ <string name="reachable_addresses">Ælçatan Ãnvanlar</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">MÉhdudlaÅmıŠsiyasÉtlÉ qoruyucu divar arxasındakı mÃŒÅtÉri kimi iÅlÉt</string>
+ <string name="reachable_ports">Ælçatan portlar</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">MÉhdudlaÅdırılmıŠqoruyucu divar arxasında Élçatan portlar</string>
+ <string name="enter_ports">Port daxil et</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">mÉhsul ÌçÌn sazlama giriÅi daxil et (baxmaq ÌçÌn adb vÉ ya aLogCat istifadÉ etmÉlisÉn)</string>
+ <string name="project_home">LayihÉ Evi(lÉri):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">XidmÉti QuraÅdırma:</string>
+ <string name="tor_version">
+Tor: https://www.torproject.org</string>
+ <string name="libevent_version">
+LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">mövcud Tor prosesi tapıldı...</string>
+ <string name="something_bad_happened">NÉ isÉ pis bir Åey oldu. GiriÅi yoxla</string>
+ <string name="unable_to_read_hidden_service_name">gizli xidmÉt adını oxumaÄı deaktivlÉÅdir</string>
+ <string name="unable_to_start_tor">Tor-un baÅlanmasını dayandır:</string>
+ <string name="pref_use_persistent_notifications">HÉmiÅÉ Orbot qoÅulduÄu hallarda niÅanı alÉtlÉt panelindÉ saxla</string>
+ <string name="pref_use_persistent_notifications_title">HÉmiÅÉ Açıq XÉbÉrdarlıqlar</string>
+ <string name="pref_use_expanded_notifications">Torla birlikdÉ Étraflı bildiriÅi göstÉrib ölkÉ vÉ IP-dÉn çıxın. </string>
+ <string name="pref_use_expanded_notifications_title">Ætraflı bildiriÅlÉr</string>
+ <string name="set_locale_title">Dil</string>
+ <string name="no_internet_connection_tor">İnternet yoxdur; Tor gözlÉyir</string>
+ <string name="pref_disable_network_title">Avto-Yuxu ÅÉbÉkÉsi Yoxdur</string>
+ <string name="pref_disable_network_summary">İnternet olmadıqda icazÉ ver Tor yatsın</string>
+ <string name="newnym">Yeni Tor oxÅarına qoÅuldun!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">İnternetlÉ ÉlaqÉ yoxdur. Tor gözlÉmÉ rejiminÉ keçir...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">İnternetlÉ ÉlaqÉ yaxÅıdır. Tor iÅ rejiminÉ keçir...</string>
+ <string name="updating_settings_in_tor_service">Tor xidmÉtindÉ quraÅdırmalar yÃŒklÉnir</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Torun tÉklif etdiyi Port SOCKS proksi iÅlÉyir (standart: 9050, yaxud söndÃŒrmÉk ÌçÌn 0) </string>
+ <string name="pref_socks_dialog">SOCKS Port Config</string>
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_summary">Torun tÉklif etdiyi Port Transparent proksi iÅlÉyir (standart: 9040, yaxud söndÃŒrmÉk ÌçÌn 0) </string>
+ <string name="pref_transport_dialog">TransProxy Port Config</string>
+ <string name="pref_dnsport_title">Tor DNS Port</string>
+ <string name="pref_dnsport_summary">Torun tÉklif etdiyi Port DNS iÅlÉyir (standart: 5400, yaxud söndÃŒrmÉk ÌçÌn 0)</string>
+ <string name="pref_dnsport_dialog">DNS Port Config</string>
+ <string name="pref_torrc_title">Torrc Custom Config</string>
+ <string name="pref_torrc_summary">YALNIZ EKSPERTLÆR: birbaÅa torrc config xÉtlÉrini daxil edin</string>
+ <string name="pref_torrc_dialog">Custom Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">KörpÃŒlÉr yenilÉndi</string>
+ <string name="restart_orbot_to_use_this_bridge_">LÃŒtfÉn, Orbotu söndÃŒrÃŒn vÉ yenidÉn yandırın ki, dÉyiÅikliklÉr tÉtbiq edilsin.</string>
+ <string name="menu_qr">QR kodlar</string>
+ <string name="bridge_mode">KörpÌ rejimi</string>
+ <string name="get_bridges_email">Emeyl</string>
+ <string name="get_bridges_web">Veb</string>
+ <string name="activate">AktivlÉÅdir</string>
+ <string name="send_email">Emeyl göndÉrin</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">KörpÃŒ ÃŒnvanını siz emeyl vÉ veb vasitÉsiylÉ, ya da körpÃŒnÃŒn QR kodunu skan etmÉklÉ ÉldÉ edÉ bilÉrsiniz. KörpÃŒ ÃŒnvanı haqda sorÄunun altında \'Email\'i, yaxud \'Web\'i seçin.\n\nÃnvanı ÉldÉ edÉndÉn sonra &amp-i nÃŒsxÉlÉyin vÉ onu Orbot quraÅdırmasındakı \"Bridges\" parametrinÉ qoyun vÉ cihazı yenidÉn yÃŒklÉyin.</string>
+ <string name="save">Saxla</string>
+ <string name="name">Ad</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">LÃŒtfÉn, Orbotu söndÃŒrÃŒn vÉ yenidÉn yandırın ki, dÉyiÅikliklÉr tÉtbiq edilsin.</string>
+ <string name="disable">SöndÌr</string>
+ <string name="enable">İÅÉ sal</string>
+</resources>
diff --git a/app-mini/src/main/res/values-be/poestrings.xml b/app-mini/src/main/res/values-be/poestrings.xml
new file mode 100644
index 00000000..8a247208
--- /dev/null
+++ b/app-mini/src/main/res/values-be/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">ЧаÑаЌ ваЌ бÑЎзе паÑÑÑбеМ ЌПÑÑ, каб ЎалезÑÑ ÐŽÐ° Tor.</string>
+ <string name="action_more">Ð ÐСÐÐÐЫЊРÐÐТÐÐÐÐÐÐ</string>
+
+ <string name="vpn_setup">ÐÑ ÐŒÐŸÐ¶Ð°Ñе МалаЎзÑÑÑ ÐºÐŸÐ¶ÐœÑ ÐŽÐ°ÐŽÐ°Ñак, каб ÑМП пÑаÑ
ПЎзÑла пÑаз пÑаз Tor, вÑкаÑÑÑÑПÑваÑÑÑ ÐœÐ°Ñ ÑбÑÐŽÐ°Ð²Ð°ÐœÑ VPN.</string>
+ <string name="vpn_setup_sub">ÐÑÑа Ме зÑПбÑÑÑ Ð²Ð°Ñ Ð°ÐœÐ°ÐœÑЌМÑÐŒ, але гÑÑа ЎапаЌПжа пÑайÑÑÑ Ð¿Ñаз бÑаМЎЌаÑÑÑÑ.</string>
+ <string name="action_vpn_choose">ÐЫÐÐ ÐЊЬ ÐÐÐÐТÐÐ</string>
+
+ <string name="hello">ÐÑÑвÑÑаММе</string>
+ <string name="welcome">СаÑÐŽÑÑМа запÑаÑаеЌ Ñ Tor ÐŽÐ»Ñ ÐŒÐ°Ð±ÑлÑМÑÑ
пÑÑлаЎ.</string>
+
+ <string name="browser_the_internet">ÐÑаглÑЎайÑе ÑМÑÑÑМÑÑ Ñак, Ñк лÑÑÑÑе паÑÑÑбМÑÐŒ вÑ.</string>
+ <string name="no_tracking">ÐÑЌа аЎÑПÑваММÑ. ÐÑÑкай ÑÑМзÑÑÑ.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-be/strings.xml b/app-mini/src/main/res/values-be/strings.xml
new file mode 100644
index 00000000..a2440c79
--- /dev/null
+++ b/app-mini/src/main/res/values-be/strings.xml
@@ -0,0 +1,205 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_description">Orbot â гÑÑа ÑÐ²Ð°Ð±ÐŸÐŽÐœÐ°Ñ Ð¿ÑагÑаЌа ÐŽÐ»Ñ Ð¿ÑПкÑÑ-злÑÑÑММÑÑ, ÑМа ЎазвалÑе ÑМÑÑÐŒ ЎаЎаÑкаЌ бПлÑÑ Ð±ÑÑпеÑМа вÑкаÑÑÑÑПÑваÑÑ ÑМÑÑÑМÑÑ-злÑÑÑММе. Orbot ÑжÑвае Tor ÐŽÐ»Ñ ÑÑÑÑÐ°Ð²Ð°ÐœÐœÑ ÑМÑÑÑМÑÑ-ÑÑаÑÑка, ÑÐºÑ Ð¿ÐŸÑÑÐŒ Ñ
аваеÑÑа паЎÑÐ°Ñ Ð¿ÐµÑаÑÑÐ»Ð°ÐœÐœÑ Ð¿Ñаз МекалÑÐºÑ ÐºÐ°ÐŒÐ¿ÑÑаÑÐ°Ñ Ñ ÑПзМÑÑ
ÑаÑÑкаÑ
плаМеÑÑ. Tor з\'ÑÑлÑеÑÑа ÑвабПЎМÑÐŒ пÑагÑаЌМÑÐŒ ЎаЎаÑкаЌ, а ÑакÑаЌа аЎкÑÑÑай ÑеÑкай, ÑÐºÐ°Ñ ÐŽÐ°Ð¿Ð°ÐŒÐ°Ð³Ð°Ðµ абаÑаМÑÑÑа аЎ ÑаÑÑÐœÐœÑ Ñ ÑеÑкаÑ
, ÑÐºÐ°Ñ Ð¿Ð°Ð³Ñажае аÑабÑÑÑай Ð²ÐŸÐ»Ñ Ñ Ð¿ÑÑваÑМÑÐŒ жÑÑÑÑ, пÑÑваÑМаÑÑÑ Ð±ÑзМеÑ-ЎзейМаÑÑÑ Ñ ÐºÐ°ÐœÑакÑаÑ, а ÑакÑаЌа ЎзÑÑжаÑМай пÑагÑаЌе бÑÑпекÑ, вÑЎПЌай Ñк
аМалÑз ÑÑаÑÑка.</string>
+ <string name="status_starting_up">Orbot запÑÑкаеÑÑа...</string>
+ <string name="status_activated">ÐаЎлÑÑÐ°ÐœÑ ÐŽÐ° ÑеÑÐºÑ Tor</string>
+ <string name="status_disabled">Orbot аЎклÑÑаМÑ</string>
+ <string name="status_shutting_down">СлÑжба Tor вÑклÑÑаеÑÑа</string>
+ <string name="tor_process_starting">ÐапÑÑкаеÑÑа клÑÐµÐœÑ Tor...</string>
+ <string name="tor_process_complete">завеÑÑаМа.</string>
+ <string name="menu_settings">ÐалаЎÑ</string>
+ <string name="menu_log">ÐÑÑМал</string>
+ <string name="menu_start">ÐÑÑк</string>
+ <string name="menu_stop">СÑПп</string>
+ <string name="menu_about">ÐÑа пÑагÑаЌÑ</string>
+ <string name="main_layout_download">СпаЌпаваÑÑ</string>
+ <string name="main_layout_upload">ÐЎпÑаÑлеММе</string>
+ <string name="button_about">ÐÑа пÑагÑаЌÑ</string>
+ <string name="menu_exit">ÐÑйÑÑе</string>
+ <string name="menu_scan">СкаМаваÑÑ QR-кПЎ ЌПÑÑа</string>
+ <string name="menu_share_bridge">ÐпÑблÑкаваÑÑ QR-кПЎ ЌПÑÑа</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">СкаÑаваÑÑ</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ÐекаÑПÑÑÑ Ð·Ð²ÐµÑÑÐºÑ Ð¿Ñа пÑагÑÐ°ÐŒÑ Orbot</string>
+ <string name="wizard_details_msg">Orbot â гÑÑа пÑагÑаЌа з аЎкÑÑÑÑÐŒ зÑÑ
ПЎМÑÐŒ кПЎаЌ, ÑÐºÐ°Ñ ÑÑÑÑЌПÑвае Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent Ñ Polipo. ЯМП пÑапаМÑе лакалÑÐœÑ HTTP- (8118) Ñ SOCKS-пÑПкÑÑ (9050) Ñ ÑеÑÐºÑ Tor. Orbot ÑакÑаЌа ЎазвалÑе Ма пÑÑлаЎаÑ
з пÑÐ°Ð²Ð°ÐŒÑ root пеÑаÑÑлаÑÑ ÑвеÑÑ ÑМÑÑÑМÑÑ-ÑÑаÑÑк пÑаз Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ÐгÑлÑМÑÑ</string>
+ <string name="pref_start_boot_title">ÐапÑÑкаÑÑ Orbot пÑÑ Ð·Ð°Ð³ÑÑзÑÑ</string>
+ <string name="pref_start_boot_summary">ÐÑÑаЌаÑÑÑМа запÑÑкаÑÑ Orbot Ñ Ð¿Ð°ÐŽÐ»ÑÑаÑÑа Ўа ÑеÑÐºÑ Tor пÑÑ Ð·Ð°Ð³ÑÑзÑÑ Ð²Ð°Ñай Android-пÑÑлаЎÑ</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ÐаМÑÑгÑÑаÑÑÑ Ð²Ñзла</string>
+ <string name="pref_node_configuration_summary">ÐÑÑа ЎаЎаÑкПвÑÑ ÐœÐ°Ð»Ð°ÐŽÑ, ÑкÑÑ ÐŒÐŸÐ³ÑÑÑ Ð·ÐŒÐµÐœÑÑÑÑ Ð²Ð°ÑÑ Ð°ÐœÐ°ÐœÑЌМаÑÑÑ</string>
+ <string name="pref_entrance_node">УваÑ
ПЎМÑÑ Ð²ÑзлÑ</string>
+ <string name="pref_entrance_node_summary">ÐЎбÑÑкÑ, пÑеÑЎаМÑÐŒÑ, кÑаÑÐœÑ Ñ Ð°ÐŽÑаÑÑ ÐŽÐ»Ñ Ð¿ÐµÑÑага ÑкПкÑ</string>
+ <string name="pref_entrance_node_dialog">УвÑЎзÑÑе ÑваÑ
ПЎМÑÑ Ð²ÑзлÑ</string>
+ <string name="pref_allow_background_starts_title">ÐазвПлÑÑÑ ÑПМавÑÑ Ð·Ð°Ð³ÑÑзкÑ</string>
+ <string name="pref_allow_background_starts_summary">ÐазвПлÑÑÑ ÐºÐŸÐ¶ÐœÐ°ÐŒÑ ÐŽÐ°ÐŽÐ°ÑÐºÑ Ð¿Ð°ÑÑабаваÑÑ Ð°ÐŽ Orbot запÑÑкаÑÑ Tor Ñ ÑкÑÑ Ð°ÐŽÐœÐŸÑÑÑÑа Ўа ÑгП ÑÑÑвÑÑÑ</string>
+ <string name="pref_proxy_title">ÐÑÑ
ÐŸÐŽÐœÑ ÑеÑÐºÐ°Ð²Ñ Ð¿ÑПкÑÑ (МеабавÑзкПва)</string>
+ <string name="pref_proxy_type_title">ТÑп пÑПкÑÑ</string>
+ <string name="pref_proxy_type_summary">ÐÑаÑакПл ÐŽÐ»Ñ Ð²ÑкаÑÑÑÑÐ°ÐœÐœÑ Ð¿ÑПкÑÑ-ÑеÑвеÑаЌ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">УвÑЎзÑÑе ÑÑп пÑПкÑÑ</string>
+ <string name="pref_proxy_host_title">ХПÑÑ Ð¿ÑПкÑÑ</string>
+ <string name="pref_proxy_host_summary">ÐÐŒÑ Ñ
аÑÑа пÑПкÑÑ-ÑеÑвеÑа</string>
+ <string name="pref_proxy_host_dialog">УвÑЎзÑÑе Ñ
ПÑÑ Ð¿ÑПкÑÑ</string>
+ <string name="pref_proxy_port_title">ÐПÑÑ Ð¿ÑПкÑÑ</string>
+ <string name="pref_proxy_port_summary">ÐПÑÑ Ð¿ÑПкÑÑ-ÑеÑвеÑа</string>
+ <string name="pref_proxy_port_dialog">УвÑЎзÑÑе пПÑÑ Ð¿ÑПкÑÑ</string>
+ <string name="pref_proxy_username_title">ÐÐŒÑ ÐºÐ°ÑÑÑÑалÑМÑка пÑПкÑÑ</string>
+ <string name="pref_proxy_username_summary">ÐÐŒÑ ÐºÐ°ÑÑÑÑалÑМÑка пÑПкÑÑ-ÑеÑвеÑа (МеабавÑзкПва)</string>
+ <string name="pref_proxy_username_dialog">УвÑЎзÑÑе ÑÐŒÑ ÐºÐ°ÑÑÑÑалÑМÑка пÑПкÑÑ</string>
+ <string name="pref_proxy_password_title">ÐаÑÐŸÐ»Ñ ÐºÐ°ÑÑÑÑалÑМÑка пÑПкÑÑ</string>
+ <string name="pref_proxy_password_summary">ÐаÑÐŸÐ»Ñ ÐºÐ°ÑÑÑÑалÑМÑка пÑПкÑÑ-ÑеÑвеÑа (МеабавÑзкПва)</string>
+ <string name="pref_proxy_password_dialog">УвÑЎзÑÑе паÑÐŸÐ»Ñ ÐºÐ°ÑÑÑÑалÑМÑка пÑПкÑÑ</string>
+ <string name="couldn_t_start_tor_process_">ÐеЌагÑÑЌа запÑÑÑÑÑÑ Tor: </string>
+ <string name="error">ÐаЌÑлка</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ÐаÑÑ ÐœÐ°Ð»Ð°ÐŽÑ ÐŽÐ°ÑÑÑпМÑÑ
аЎÑаÑÐŸÑ Ð²ÑклÑÐºÐ°Ð»Ñ Ð²ÑМÑÑак!</string>
+ <string name="your_relay_settings_caused_an_exception_">ÐаÑÑ ÐœÐ°Ð»Ð°ÐŽÑ ÑÑÑÑаМÑлÑÑаÑа вÑклÑÐºÐ°Ð»Ñ Ð²ÑМÑÑак!</string>
+ <string name="exit_nodes">ÐÑÑ
ПЎМÑÑ Ð²ÑзлÑ</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ÐЎбÑÑкÑ, пÑеÑЎаМÑÐŒÑ, кÑаÑÐœÑ Ñ Ð°ÐŽÑаÑÑ ÐŽÐ»Ñ Ð°Ð¿ÐŸÑМÑга ÑкПкÑ</string>
+ <string name="enter_exit_nodes">УвÑЎзÑÑе вÑÑ
ПЎМÑÑ Ð²ÑзлÑ</string>
+ <string name="exclude_nodes">ÐÑМÑÑÑÑ Ð²ÑзлÑ</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ÐЎбÑÑкÑ, пÑеÑЎаМÑÐŒÑ, кÑаÑÐœÑ Ñ Ð°ÐŽÑаÑÑ ÐŽÐ»Ñ Ð²ÑМÑÑкÑ</string>
+ <string name="enter_exclude_nodes">УвÑЎзÑÑе вÑМÑÑÑÑ Ð²ÑзлÑ</string>
+ <string name="strict_nodes">ÐаклаЎМÑÑ Ð²ÑзлÑ</string>
+ <string name="use_only_these_specified_nodes">ÐÑкаÑÑÑÑПÑваÑÑ *ÑПлÑкÑ* гÑÑÑÑ Ð·Ð°ÐŽÐ°ÐŽÐ·ÐµÐœÑÑ Ð²ÑзлÑ</string>
+ <string name="bridges">ÐаÑÑÑ</string>
+ <string name="use_bridges">ÐÑкаÑÑÑÑПÑваÑÑ ÐŒÐ°ÑÑÑ</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">УклÑÑÑÑÑ Ð°Ð»ÑÑÑÑМаÑÑÑМÑÑ ÑваÑ
ПЎМÑÑ Ð²ÑÐ·Ð»Ñ Ñ ÑеÑÐºÑ Tor</string>
+ <string name="ip_address_and_port_of_bridges">IP-аЎÑаÑÑ Ñ Ð¿Ð°ÑÑÑ ÐŒÐ°ÑÑПÑ</string>
+ <string name="enter_bridge_addresses">УвÑЎзÑÑе аЎÑаÑÑ ÐŒÐ°ÑÑПÑ</string>
+ <string name="relays">Ð ÑÑÑаМÑлÑÑаÑÑ</string>
+ <string name="relaying">Ð ÑÑÑаМÑлÑÑÑÑ</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ÐазвПлÑÑÑ Ð²Ð°Ñай пÑÑлаЎзе бÑÑÑ ÐœÐµÐ²ÑÑ
ПЎМÑÐŒ ÑÑÑÑаМÑлÑÑаÑаЌ</string>
+ <string name="relay_port">ÐПÑÑ ÑÑÑÑаМÑлÑÑаÑа</string>
+ <string name="listening_port_for_your_tor_relay">ÐÑаÑлÑÑ
ПÑÐ²Ð°ÐœÑ Ð¿ÐŸÑÑ ÐŽÐ»Ñ Ð²Ð°Ñага ÑÑÑÑаМÑлÑÑаÑа Tor</string>
+ <string name="enter_or_port">УвÑЎзÑÑе пПÑÑ OR</string>
+ <string name="relay_nickname">ÐÐŒÑ ÑÑÑÑаМÑлÑÑаÑа</string>
+ <string name="the_nickname_for_your_tor_relay">ÐÐŒÑ ÐŽÐ»Ñ Ð²Ð°Ñага ÑÑÑÑаМÑлÑÑаÑа Tor</string>
+ <string name="enter_a_custom_relay_nickname">УвÑЎзÑÑе каÑÑÑÑалÑМÑÑкае ÑÐŒÑ ÑÑÑÑаМÑлÑÑаÑа</string>
+ <string name="reachable_addresses">ÐаÑÑÑпМÑÑ Ð°ÐŽÑаÑÑ</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">ÐапÑÑкаÑÑ Ñк клÑÐµÐœÑ Ð·Ð° ÐŒÑжÑеÑкавÑÐŒ ÑкÑаМаЌ з абЌежавалÑМÑÐŒÑ Ð¿Ð°Ð»ÑÑÑкаЌÑ</string>
+ <string name="reachable_ports">ÐаÑÑÑпМÑÑ Ð¿Ð°ÑÑÑ</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ÐаÑÑÑ, ЎаÑÑÑпМÑÑ Ð·-за абЌежавалÑМага ÑеÑкавага ÑкÑаМа</string>
+ <string name="enter_ports">УвÑЎзÑÑе паÑÑÑ</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">УклÑÑÑÑÑ Ð²ÑМÑк жÑÑМала Ð°ÐŽÐ»Ð°ÐŽÐºÑ (паÑÑабÑе вÑкаÑÑÑÑПÑваÑÑ adb ÑÑ aLogCat ÐŽÐ»Ñ Ð¿ÑаглÑÐŽÑ)</string>
+ <string name="project_home">ХаÑМÑÑ ÑÑаÑПМка пÑаекÑа:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ÐÑагÑÐ°ÐŒÑ ÑМÑÑÑ
ÑаÑпÑаÑПÑМÑкаÑ: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">ÐаЎаÑак Ñ
ПÑа аЎкÑÑÑÑ ÑÑ
Ð°Ð²Ð°ÐœÑ Ð¿ÐŸÑÑ ÑеÑвеÑа %1$s ÑеÑÐºÑ Tor. ÐÑÑа бÑÑпеÑМа, ÐºÐ°Ð»Ñ Ð²Ñ ÐŽÐ°Ð²ÑÑаеÑе ÐŽÐ°ÐŽÐ·ÐµÐœÐ°ÐŒÑ ÐŽÐ°ÐŽÐ°ÑкÑ.</string>
+ <string name="found_existing_tor_process">Ð·ÐœÐŸÐ¹ÐŽÐ·ÐµÐœÑ ÑÑÐœÐ°Ð²Ð°Ð»Ñ Ð¿ÑаÑÑÑ Tor...</string>
+ <string name="something_bad_happened">ÐЎбÑлаÑÑ ÐœÐµÐ¹ÐºÐ°Ñ Ð¿Ð°ÐŒÑлка. ÐÑавеÑÑе жÑÑМал.</string>
+ <string name="unable_to_read_hidden_service_name">МеЌагÑÑЌа пÑаÑÑÑаÑÑ ÑÐŒÑ ÑÑ
аваМай ÑлÑжбÑ</string>
+ <string name="unable_to_start_tor">ÐеЌагÑÑЌа запÑÑÑÑÑÑ Tor:</string>
+ <string name="pref_use_persistent_notifications">ÐаÑÑÑÐŽÑ Ð°ÐŽÐ»ÑÑÑÑПÑваÑÑ ÑÐºÐŸÐœÐºÑ Ñ Ð¿Ð°ÐœÑÐ»Ñ Ð·Ð°ÐŽÐ°ÐœÐœÑÑ ÐºÐ°Ð»Ñ Orbot паЎклÑÑаМÑ</string>
+ <string name="pref_use_persistent_notifications_title">ÐÑзЌеММае апавÑÑÑÑММе пÑа пÑаÑÑ</string>
+ <string name="pref_use_expanded_notifications">ÐаказаÑÑ Ð¿Ð°ÑÑÑаМае апавÑÑÑÑММе Tor з кÑаÑМай вÑÑ
Ð°ÐŽÑ Ñ IP</string>
+ <string name="pref_use_expanded_notifications_title">ÐаÑÑÑаМÑÑ Ð°Ð¿Ð°Ð²ÑÑÑÑММÑ</string>
+ <string name="set_locale_title">ÐПва</string>
+ <string name="no_internet_connection_tor">ÐÐŽÑÑÑМÑÑае паЎклÑÑÑММе Ўа ÑМÑÑÑМÑÑÑ, Tor зМаÑ
ПЎзÑÑÑа Ñ ÑÑжÑЌе ÑакаММÑâŠ</string>
+ <string name="pref_disable_network_title">ÐÑÑазаÑÑМаММе без ÑеÑкÑ</string>
+ <string name="pref_disable_network_summary">ÐеÑавПЎзÑÑÑ Tor Ñ ÑпÑÑÑ ÑÑжÑÐŒ пÑÑ ÐœÐµÐŒÐµÐœÑ ÑМÑÑÑМÑÑÑ</string>
+ <string name="newnym">ÐÑ Ð¿ÐµÑаЌкМÑлÑÑÑ ÐœÐ° ÐœÐŸÐ²Ñ ÑÐŽÑМÑÑÑÑкаÑÐ°Ñ Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÐÑЌа паЎклÑÑÑÐœÐœÑ ÐŽÐ° ÑеÑкÑ. Tor пеÑаÑ
ПЎзÑÑÑ Ñ ÑÑжÑÐŒ ÑМÑ...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ÐаЎклÑÑÑММе Ўа ÑеÑÐºÑ ÑÑÑалÑваМа. Tor пÑаÑÑМаеÑÑа...</string>
+ <string name="updating_settings_in_tor_service">абМаÑлеММе МалаЎ Ñ ÑÑÑвÑÑе Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">ÐПÑÑ, Ма ÑкÑÐŒ Tor пÑапаМÑе ÑвПй SOCKS-пÑПкÑÑ (па зЌаÑÑаММÑ: 9050, 0 - ÐŽÐ»Ñ Ð°ÐŽÐºÐ»ÑÑÑММÑ)</string>
+ <string name="pref_socks_dialog">ÐалаЎа пПÑÑа SOCKS</string>
+ <string name="pref_transport_title">ÐПÑÑ Ð¿ÑазÑÑÑÑага пÑПкÑÑ Tor</string>
+ <string name="pref_transport_summary">ÐПÑÑ, Ма ÑкÑÐŒ Tor пÑапаМÑе ÑвПй пÑазÑÑÑÑÑ Ð¿ÑПкÑÑ (па зЌаÑÑаММÑ: 9040, 0 - ÐŽÐ»Ñ Ð°ÐŽÐºÐ»ÑÑÑММÑ)</string>
+ <string name="pref_transport_dialog">ÐалаЎа пПÑÑа пÑазÑÑÑÑага пÑПкÑÑ</string>
+ <string name="pref_dnsport_title">ÐПÑÑ DNS Tor</string>
+ <string name="pref_dnsport_summary">ÐПÑÑ, Ма ÑкÑÐŒ Tor пÑапаМÑе ÑвПй DNS (па зЌаÑÑаММÑ: 5400, 0 - ÐŽÐ»Ñ Ð°ÐŽÐºÐ»ÑÑÑММÑ)</string>
+ <string name="pref_dnsport_dialog">ÐалаЎа пПÑÑа DNS</string>
+ <string name="pref_torrc_title">ÐаÑÑÑÑалÑМÑÑкÑÑ ÐœÐ°Ð»Ð°ÐŽÑ Torrc</string>
+ <string name="pref_torrc_summary">ТÐÐЬÐÐ ÐÐЯ ÐÐСÐÐРТÐÐ: ÑМÑÑÑÑе ÐœÐ°Ð»Ð°ÐŽÑ ÐœÐ°ÑпÑПÑÑ Ñ ÑÐ°ÐŽÐºÑ Ñайла каМÑÑгÑÑаÑÑÑ torrc</string>
+ <string name="pref_torrc_dialog">ÐаÑÑÑÑалÑМÑÑÐºÑ Torrc</string>
+ <string name="kbps">кбÑÑ/Ñ</string>
+ <string name="mbps">ЌбÑÑ/Ñ</string>
+ <string name="kb">ÐÐ</string>
+ <string name="mb">ÐÐ</string>
+ <string name="bridges_updated">ÐаÑÑÑ Ð°Ð±ÐœÐŸÑлеМÑ</string>
+ <string name="restart_orbot_to_use_this_bridge_">ÐÐ°Ð»Ñ Ð»Ð°Ñка, пеÑазапÑÑÑÑÑе Orbot ÐŽÐ»Ñ ÑÑÑÑÐ¿Ñ Ð·ÐŒÐµÐœÑ Ñ ÑÑлÑ</string>
+ <string name="menu_qr">QR-кПЎÑ</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">ÐÐ°Ð»Ñ Ð²Ð°Ñа ЌабÑлÑÐœÐ°Ñ ÑеÑка акÑÑÑМа блакÑе Tor, Ð²Ñ ÐŒÐŸÐ¶Ð°Ñе вÑкаÑÑÑÑПÑваÑÑ ÐŒÐ°ÑÑÑ Tor ÐŽÐ»Ñ ÐŽÐŸÑÑÑÐ¿Ñ ÐŽÐ° ÑеÑкÑ. ÐбÑÑÑÑе аЎзÑМ з ваÑÑÑМÑÐ°Ñ ÐŽÐ»Ñ ÐœÐ°Ð»Ð°ÐŽÑ Ñ ÑÑÑÑаваММÑ:</string>
+ <string name="bridge_mode">Ð ÑжÑÐŒ ЌПÑÑа</string>
+ <string name="get_bridges_email">Ðл. пПÑÑа</string>
+ <string name="get_bridges_web">СайÑ</string>
+ <string name="activate">ÐкÑÑваÑÑÑ</string>
+ <string name="apps_mode">VPN-ÑÑжÑÐŒ</string>
+ <string name="send_email">ÐЎпÑавÑÑÑ Ð»ÑÑÑ</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ÐÑ ÐŒÐŸÐ¶Ð°Ñе аÑÑÑЌаÑÑ Ð°ÐŽÑÐ°Ñ ÐŒÐŸÑÑа па ÑлекÑÑПММай пПÑÑе, з ÑайÑа ÑÑ ÑлÑÑ
аЌ ÑÐºÐ°ÐœÐ°Ð²Ð°ÐœÐœÑ QR-кПЎа. ÐбÑÑÑÑе \"Ðл. пПÑÑа\" ÑÑ \"СайÑ\" МÑжÑй, каб запÑÑаÑÑ Ð°ÐŽÑÐ°Ñ ÐŒÐŸÑÑа.\n\nÐÑÑÑÐŒÐ°ÐœÑ Ð°ÐŽÑÐ°Ñ ÑкапÑÑйÑе Ñ ÑÑÑаÑÑе ÑгП Ñ Ð¿Ð°ÐŽÐ·ÐµÐ»Ðµ МалаЎ Orbot \"ÐаÑÑÑ\", паÑÐ»Ñ ÑагП пеÑазапÑÑÑÑÑе ЎаЎаÑак.</string>
+ <string name="vpn_default_world">Ð¡Ð²ÐµÑ (аÑÑа)</string>
+ <string name="hidden_services">СÑ
аваМÑÑ ÑлÑжбÑ</string>
+ <string name="title_activity_hidden_services">СÑ
аваМÑÑ ÑлÑжбÑ</string>
+ <string name="menu_hidden_services">СÑ
аваМÑÑ ÑлÑжбÑ</string>
+ <string name="save">ÐаÑ
аваÑÑ</string>
+ <string name="local_port">ÐакалÑÐœÑ Ð¿ÐŸÑÑ</string>
+ <string name="onion_port">Onion-пПÑÑ</string>
+ <string name="name">ÐÐŒÑ</string>
+ <string name="done">ÐаÑПва!</string>
+ <string name="invalid_port">ÐекаÑÑкÑÐœÑ Ð¿ÐŸÑÑ</string>
+ <string name="copy_address_to_clipboard">СкапÑÑваÑÑ Ð°ÐŽÑÐ°Ñ Ñ Ð±ÑÑÐµÑ Ð¿Ð°ÐŒÐµÐœÑ</string>
+ <string name="show_auth_cookie">ÐаказаÑÑ Ð°ÑÑаÑÑзÑÑÑÑÑ cookie</string>
+ <string name="backup_service">Ð ÑзеÑваваÑÑ ÑлÑжбÑ</string>
+ <string name="delete_service">ÐÑЎалÑÑÑ ÑлÑжбÑ</string>
+ <string name="backup_saved_at_external_storage">Ð ÑзеÑÐ²ÐŸÐ²Ð°Ñ ÐºÐŸÐ¿ÑÑ Ð·Ð°Ñ
аваМа Ма вПМкавÑÐŒ ÑÑ
ПвÑÑÑÑ</string>
+ <string name="backup_restored">ÐЎМПÑлеМа з ÑÑзеÑвПвай кПпÑÑ</string>
+ <string name="filemanager_not_available">Ð€Ð°Ð¹Ð»Ð°Ð²Ñ ÐŒÐµÐœÐµÐŽÐ¶Ð°Ñ ÐœÐµÐŽÐ°ÑÑÑпМÑ</string>
+ <string name="please_grant_permissions_for_external_storage">ÐайÑе ЎазвПл ÐŽÐ»Ñ ÐŽÐŸÑÑÑÐ¿Ñ ÐŽÐ° вПМкавага ÑÑ
ПвÑÑÑа</string>
+ <string name="restore_backup">ÐЎМавÑÑÑ Ð· кПпÑÑ</string>
+ <string name="create_a_backup_first">СпаÑаÑÐºÑ ÑÑваÑÑÑе ÑÑзеÑвПвÑÑ ÐºÐŸÐ¿ÑÑ</string>
+ <string name="name_can_t_be_empty">ÐÐŒÑ ÐœÐµ ЌПжа бÑÑÑ Ð¿ÑÑÑÑÐŒ</string>
+ <string name="fields_can_t_be_empty">ÐÐ°Ð»Ñ ÐœÐµ ЌПгÑÑÑ Ð±ÑÑÑ Ð¿ÑÑÑÑÐŒÑ</string>
+ <string name="start_tor_again_for_finish_the_process">ÐапÑÑÑÑÑе Tor ÑÐ·ÐœÐŸÑ ÐŽÐ»Ñ Ð·Ð°Ð²ÑÑÑÑÐœÐœÑ Ð¿ÑаÑÑÑÑ</string>
+ <string name="confirm_service_deletion">ÐаÑвеÑЎжаММе вÑÐŽÐ°Ð»ÐµÐœÐœÑ ÑлÑжбÑ</string>
+ <string name="click_again_for_backup">ÐаÑÑÑМÑÑе ÑÑÑÑ Ñаз ÐŽÐ»Ñ ÑÑзеÑваваММÑ</string>
+ <string name="service_type">ТÑп ÑлÑжбÑ</string>
+ <string name="auth_cookie">ÐÑÑаÑÑзÑÑÑÑ cookie</string>
+ <string name="copy_cookie_to_clipboard">ÐапÑÑваÑÑ cookie Ñ Ð±ÑÑÐµÑ Ð¿Ð°ÐŒÐµÐœÑ</string>
+ <string name="auth_cookie_was_not_configured">ÐÑÑаÑÑзÑÑÑÑ cookie Ме МалаЎжаМÑ</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ÐÐ°Ð»Ñ Ð»Ð°Ñка, пеÑазапÑÑÑÑÑе Orbot ÐŽÐ»Ñ ÑÑÑÑÐ¿Ñ Ð·ÐŒÐµÐœÑ Ñ ÑÑлÑ</string>
+ <string name="client_cookies">Cookies клÑеМÑа</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ÐеÑапÑаÑÐŽÐœÑ .onion-аЎÑаÑ</string>
+ <string name="cookie_from_QR">ÐÑаÑÑÑаÑÑ Ð· QR-кПЎа</string>
+ <string name="backup_cookie">Ð ÑзеÑваваÑÑ cookie</string>
+ <string name="delete_cookie">ÐÑЎалÑÑÑ cookies</string>
+ <string name="confirm_cookie_deletion">ÐаÑвеÑЎзÑÑе вÑЎалеММе cookie</string>
+ <string name="hosted_services">РазЌеÑÑаМÑÑ ÑлÑжбÑ</string>
+ <string name="share_as_qr">ÐаЎзÑлÑÑÑа пÑаз QR-кПЎ</string>
+ <string name="disable">ÐЎклÑÑÑÑÑ</string>
+ <string name="enable">УклÑÑÑÑÑ</string>
+ <string name="consider_disable_battery_optimizations">РазглеЎзÑÑе ЌагÑÑЌаÑÑÑ Ð°ÐŽÐºÐ»ÑÑÑÐœÐœÑ Ð°Ð¿ÑÑÐŒÑзаÑÑÑ Ð±Ð°ÑаÑÑÑ</string>
+ <string name="consider_enable_battery_optimizations">РазглеЎзÑÑе ЌагÑÑЌаÑÑÑ ÑклÑÑÑÐœÐœÑ Ð°Ð¿ÑÑÐŒÑзаÑÑÑ Ð±Ð°ÑаÑÑÑ</string>
+ <string name="pref_isolate_dest">ÐзалÑваÑÑ Ð°ÐŽÑаÑÑ Ð¿ÑÑзМаÑÑММÑ</string>
+ <string name="pref_isolate_dest_summary">УжÑваÑÑ ÑПзМÑÑ Ð»Ð°ÐœÑÑÐ³Ñ ÐŽÐ»Ñ ÐºÐŸÐ¶ÐœÐ°Ð³Ð° аЎÑаÑа пÑÑзМаÑÑММÑ</string>
+ <string name="no_transproxy_warning_short">ÐÐÐЯРÐÐÐÐÐÐÐ: пÑазÑÑÑÑÑ Ð¿ÑПкÑÑ Ð±ÐŸÐ»ÑÑ ÐœÐµ паЎÑÑÑЌлÑваеÑÑа</string>
+ <string name="no_transproxy_warning">ÐÐÐЯРÐÐÐÐÐÐÐ: пÑазÑÑÑÑÑ Ð¿ÑПкÑÑ Ð±ÐŸÐ»ÑÑ ÐœÐµ паЎÑÑÑЌлÑваеÑÑа. ÐаЌеÑÑ Ð³ÑÑага вÑкаÑÑÑÑПÑвайÑе VPN-ÑÑжÑÐŒ Orbot.</string>
+ <string name="pref_connection_padding">ÐÑаклаЎка злÑÑÑММÑ</string>
+ <string name="pref_connection_padding_summary">ÐаÑÑÑÐŽÑ ÑклÑÑае пÑÐ°ÐºÐ»Ð°ÐŽÐºÑ Ð·Ð»ÑÑÑÐœÐœÑ ÐŽÐ»Ñ Ð°Ð±Ð°ÑÐŸÐœÑ Ð°ÐŽ МекаÑПÑÑÑ
ÑПÑÐŒÐ°Ñ Ð°ÐœÐ°Ð»ÑÐ·Ñ ÑÑаÑÑка. ÐвÑÑайМа: аÑÑа</string>
+ <string name="pref_reduced_connection_padding">СПкÑаÑÑÐœÐœÐ°Ñ Ð¿ÑПклаЎка ÑПеЎОМеМОÑ</string>
+ <string name="pref_reduced_connection_padding_summary">РаМей заÑÑМÑе ÑÑÑÑаМÑлÑваМÑÑ Ð·Ð»ÑÑÑÐœÐœÑ Ñ Ð°ÐŽÐ¿ÑаÑлÑе ÐŒÐµÐœÑ Ð¿Ð°ÐºÐµÑÐ°Ñ Ð·Ð°Ð¿Ð°ÑÐœÐµÐœÐœÑ ÐŽÐ»Ñ Ð·ÐŒÑМÑÑÐœÐœÑ Ð°Ð±\'ÑÐŒÑ Ð¿ÐµÑаЎаÑМÑÑ
ЎаЎзеМÑÑ
Ñ Ð²ÑкаÑÑÑÑÐ°ÐœÐœÑ Ð±Ð°ÑаÑÑÑ</string>
+ <string name="app_shortcuts">ÐаЎаÑÐºÑ Ð· паЎÑÑÑЌкай Tor</string>
+ <string name="testing_bridges">ТÑÑÑаваММе злÑÑÑÐœÐœÑ Ð· Tor пÑаз ЌПÑÑâŠ</string>
+ <string name="testing_bridges_success">ÐаÑпÑÑ
Пва! ÐПÑÑ ÐœÐ°Ð»Ð°ÐŽÐ¶Ð°ÐœÑ Ð¿ÑавÑлÑМа.</string>
+ <string name="testing_bridges_fail">ÐЯÐÐÐÐÐ. ÐаÑпÑабÑйÑе ÑМÑÑ Ð²Ð°ÑÑÑМÑ.</string>
+ <string name="bridge_direct_connect">ÐаЎклÑÑÑММе МепаÑÑÑЎМа Ўа Tor (Майлепей)</string>
+ <string name="bridge_community">ÐаЎклÑÑÑММе пÑаз ÑеÑвеÑÑ ÑÑпПлÑМаÑÑÑ</string>
+ <string name="bridge_cloud">ÐаЎклÑÑÑММе пÑаз вПблаÑМÑÑ ÑеÑвеÑÑ</string>
+ <string name="bridges_get_new">ÐапÑÑаÑÑ ÐœÐŸÐ²ÑÑ ÐŒÐ°ÑÑÑ⊠(ÐºÐ°Ð»Ñ ÑÑе ÑМÑÑÑ ÐœÐµ аÑÑÑЌалаÑÑ)</string>
+ <string name="trouble_connecting">ÐÑаблеЌа з паЎклÑÑÑММеЌ?</string>
+ <string name="full_device_vpn">VPN ÐŽÐ»Ñ ÑÑÑй пÑÑлаЎÑ</string>
+ <string name="vpn_disabled">VPN аЎклÑÑаМÑ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-bg/poestrings.xml b/app-mini/src/main/res/values-bg/poestrings.xml
new file mode 100644
index 00000000..ef3a781b
--- /dev/null
+++ b/app-mini/src/main/res/values-bg/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">ÐПМÑкПга Ñе МÑжЎаеÑе ÐŸÑ ÐŒÐŸÑÑ, за Ўа ÑÑОгМеÑе ЎП ТПÑ.</string>
+ <string name="action_more">РазкажеÑе ЌО пПвеÑе</string>
+
+ <string name="vpn_setup">ÐОе ЌПжеÑе Ўа пПзвПлОÑе Ма вÑÑка пÑПгÑаЌа Ўа ЌОМе пÑез ТПÑ, ОзпПлзвайкО МаÑаÑа вгÑаЎеМа ÐЧÐ.</string>
+ <string name="vpn_setup_sub">ТПва МÑЌа Ўа ÐО МапÑавО аМПМОЌМО, МП Ñе пПЌПгМе Ўа ЌОМеÑе пÑез заÑОÑМО ÑÑеМО.</string>
+ <string name="action_vpn_choose">ÐзбеÑеÑе пÑПгÑаЌО</string>
+
+ <string name="hello">ÐÐŽÑавейÑе</string>
+ <string name="welcome">ÐПбÑе ЎПÑлО в Ð¢ÐŸÑ Ð·Ð° ЌПбОлМО ÑÑÑÑПйÑÑва.</string>
+
+ <string name="browser_the_internet">ЧеÑеÑе безÑазбПÑМП ОМÑеÑМеÑ, какÑП ÐОе ПÑакваÑе Ñе ÑÑÑбва.</string>
+ <string name="no_tracking">Ðез пÑПÑлеЎÑваМе. Ðез ÑеМзПÑа.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-bg/strings.xml b/app-mini/src/main/res/values-bg/strings.xml
new file mode 100644
index 00000000..d2cfe5e1
--- /dev/null
+++ b/app-mini/src/main/res/values-bg/strings.xml
@@ -0,0 +1,145 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">ÐÑбПÑmini</string>
+ <string name="app_description">Orbot е безплаÑМа пÑПкÑО пÑПгÑаЌа, кПÑÑП Ўава вÑзЌПжМПÑÑа Ма ÐŽÑÑгО пÑПгÑаЌО Ўа ÐžÐ·Ð¿ÐŸÐ»Ð·Ð²Ð°Ñ ÐžÐœÑеÑÐµÐœÑ Ð¿ÐŸ-ÑОгÑÑМП. Orbot ОзпПлзва Tor, за Ўа кÑОпÑОÑа ÐМÑеÑÐœÐµÑ ÑÑаÑОка О ÑлеЎ ÑПва гП ÑкÑОва каÑП пÑепÑаÑа пÑез МÑкПлкП кПЌпÑÑÑÑа пП ÑÐµÐ»ÐžÑ ÑвÑÑ. Tor е безплаÑеМ ÑПÑÑÑÐµÑ Ðž ПÑвПÑеМа ÐŒÑежа, кПÑÑП ÑО пПЌага Ўа Ñе пÑÐµÐŽÐ¿Ð°Ð·ÐžÑ ÐŸÑ ÑпОПМОÑаМе пП ÐŒÑежаÑа, кПеÑП заплаÑва ÑвПÑÑа ÑвПбПЎа О лОÑМП пÑПÑÑÑаМÑÑвП, кПМÑОЎеМÑОалМО Ð±ÐžÐ·ÐœÐµÑ ÐŸÑМПÑеМОе О вÑÑзкО, О ÐŸÑ Ð²ÐžÐŽ пÑавОÑелÑÑвеМП ÑлеЎеМе МаÑеÑеМП ÑÑаÑОк аМалОз.</string>
+ <string name="status_starting_up">ÐÑÐ±ÐŸÑ ÑÑаÑÑОÑа...</string>
+ <string name="status_activated">СвÑÑзаМ кÑÐŒ Ð¢ÐŸÑ ÐŒÑежаÑа</string>
+ <string name="status_disabled">ÐÑÐ±ÐŸÑ Ðµ ЎеакÑОвОÑаМ</string>
+ <string name="status_shutting_down">TorService ÑпОÑа</string>
+ <string name="tor_process_starting">СÑаÑÑОÑаМе Ма Ð¢ÐŸÑ ÐºÐ»ÐžÐµÐœÑ...</string>
+ <string name="tor_process_complete">завÑÑÑеМП.</string>
+ <string name="menu_settings">ÐаÑÑÑПйкО</string>
+ <string name="menu_log">ÐПг</string>
+ <string name="menu_start">СÑаÑÑ</string>
+ <string name="menu_stop">СÑПп</string>
+ <string name="menu_about">ÐÑМПÑМП</string>
+ <string name="main_layout_download">ÐзÑеглО</string>
+ <string name="main_layout_upload">ÐаÑО</string>
+ <string name="button_about">ÐÑМПÑМП</string>
+ <string name="menu_exit">ÐзÑ
ПЎ</string>
+ <string name="menu_scan">СкаМОÑай BridgeQR</string>
+ <string name="menu_share_bridge">СпПЎелО BridgeQR</string>
+ <string name="btn_okay">ÐÐ</string>
+ <string name="btn_cancel">ÐÑкажО</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ÐÑкПО ÐÑÐ±ÐŸÑ ÐŽÐµÑайлО</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ÐлавМО</string>
+ <string name="pref_start_boot_title">СÑаÑÑОÑай ÐÑÐ±ÐŸÑ Ð¿ÑО ÑÑаÑÑОÑаМе Ма ÑÑÑÑПйÑÑвПÑП</string>
+ <string name="pref_start_boot_summary">ÐвÑПЌаÑОÑМП ÑÑаÑÑОÑай ÐÑÐ±ÐŸÑ Ðž Ñе ÑвÑÑжО кÑÐŒ Ð¢ÐŸÑ ÐºÐŸÐ³Ð°ÑП ÑвПеÑП ÐМЎÑПОЎ ÑÑÑÑПйÑÑвП ÑÑаÑÑОÑа</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ÐаÑÑÑПйкО Ма node-а</string>
+ <string name="pref_node_configuration_summary">ТПва Ñа ЎПпÑлМОÑелМО МаÑÑÑПйкО, кПОÑП ÐŒÐŸÐ³Ð°Ñ ÐŽÐ° МаЌалÑÑ ÐаÑаÑа аМПМОЌМПÑÑ</string>
+ <string name="pref_entrance_node">ÐÑ
ПЎÑÑО ÑПÑкО</string>
+ <string name="pref_entrance_node_summary">ÐÑпеÑаÑÑÑО, МОкÑПве, ÐŽÑÑжавО О аЎÑеÑО за пÑÑÐ²ÐžÑ ÑкПк</string>
+ <string name="pref_entrance_node_dialog">ÐÑвеЎО вÑ
ПЎÑÑО ÑПÑкО</string>
+ <string name="pref_allow_background_starts_title">РазÑеÑО ÑОÑ
П ÑÑаÑÑОÑаМе</string>
+ <string name="pref_allow_background_starts_summary">РазÑеÑО Ма вÑÑкП пÑОлПжеМОе Ўа ОÑка ÐŸÑ Orbot Ўа ÑÑаÑÑОÑа Tor ÑÑлÑгО</string>
+ <string name="pref_proxy_title">ÐзÑ
ПЎÑÑП ÐÑежПвП ÐÑПкÑО (ÐезаЎÑлжОÑелМП)</string>
+ <string name="pref_proxy_type_title">ТОп пÑПкÑО</string>
+ <string name="pref_proxy_type_summary">ÐÑПÑПкПл за пÑПкÑО ÑÑÑвÑÑ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">ТОп Ма вÑ
ПЎÑÑП пÑПкÑО</string>
+ <string name="pref_proxy_host_title">ÐÑПкÑО Ñ
ПÑÑ</string>
+ <string name="pref_proxy_host_summary">ÐÐŽÑеÑа Ма ÐÑПкÑО СÑÑвÑÑÑÑ</string>
+ <string name="pref_proxy_host_dialog">ÐÑвеЎО пÑПкÑО Ñ
ПÑÑ</string>
+ <string name="pref_proxy_port_title">ÐПÑÑ ÐœÐ° пÑПкÑО</string>
+ <string name="pref_proxy_port_summary">ÐПÑÑа Ма ÐÑПкÑО СÑÑвÑÑÑÑ</string>
+ <string name="pref_proxy_port_dialog">ÐÑвеЎО пÑПкÑО пПÑÑ</string>
+ <string name="pref_proxy_username_title">ÐзÑ
ПЎÑÑ ÐÑПкÑО ÐПÑÑебОÑелÑкП ÐЌе</string>
+ <string name="pref_proxy_username_summary">ÐÑПкÑО ÐПÑÑебОÑелÑкП ÐЌе (ÐезаЎÑлжОÑелМП)</string>
+ <string name="pref_proxy_username_dialog">ÐÑвеЎО ÐÑПкÑО ÐПÑÑебОÑелÑкП ÐЌе</string>
+ <string name="pref_proxy_password_title">ÐзÑ
ПЎÑÑа ÐÑПкÑО ÐаÑПла</string>
+ <string name="pref_proxy_password_summary">ÐÑПкÑО ÐаÑПла (ÐезаЎÑлжОÑелМП)</string>
+ <string name="pref_proxy_password_dialog">ÐÑвеЎО ÐÑПкÑО ÐаÑПла</string>
+ <string name="couldn_t_start_tor_process_">ÐеÑÑпеÑМП ÑÑаÑÑОÑаМе Ма Ð¢ÐŸÑ Ð¿ÑПÑеÑ: </string>
+ <string name="error">ÐÑеÑка</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ТвПÑÑа ReachableAddresses МаÑÑÑПйка пÑеЎОзвОка гÑеÑка!</string>
+ <string name="your_relay_settings_caused_an_exception_">ТвПОÑе МаÑÑÑПйкО за пÑепÑаÑаМе пÑеЎОзвОкаÑ
а ОзклÑÑеМОе!</string>
+ <string name="exit_nodes">ÐзÑ
ПЎМО ÑПÑкО</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ÐÑпеÑаÑÑÑО, МОкÑПве, ÐŽÑÑжавО О аЎÑеÑО за пПÑÐ»ÐµÐŽÐœÐžÑ ÑкПк</string>
+ <string name="enter_exit_nodes">ÐÑвеЎО ОзÑ
ПЎМО ÑПÑкО</string>
+ <string name="exclude_nodes">Ðе пПлзвай Node-ве</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ÐÑпеÑаÑÑÑО, МОкÑПве, ÐŽÑÑжавО О аЎÑеÑО, кПОÑП Ўа Ме бÑÐŽÐ°Ñ Ð¿ÐŸÐ»Ð·Ð²Ð°ÐœÐž</string>
+ <string name="enter_exclude_nodes">ÐÑай</string>
+ <string name="strict_nodes">ÐаЎÑлжОÑелМО Node-we</string>
+ <string name="use_only_these_specified_nodes">ÐзпПлзвай *ÑаЌП* ОзбÑПеМОÑе node-ве</string>
+ <string name="bridges">ÐÑОЎжПве</string>
+ <string name="use_bridges">ÐзпПлзвай ÐÑОЎжПве</string>
+ <string name="ip_address_and_port_of_bridges">IP аЎÑÐµÑ Ðž пПÑÑ ÐœÐ° бÑОЎжПве</string>
+ <string name="enter_bridge_addresses">ÐÑвеЎО аЎÑеÑО Ма бÑОЎжПве</string>
+ <string name="relays">ÐÑепÑаÑаÑО(Relays)</string>
+ <string name="relaying">ÐÑепÑаÑаМе</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">РазÑеÑО ÑÑÑÑПйÑÑвПÑП ÑО Ўа бÑЎе Ме ОзÑ
ПЎеМ пÑепÑаÑаÑ</string>
+ <string name="relay_port">ÐПÑÑ Ð·Ð° ÐÑепÑаÑаМе</string>
+ <string name="listening_port_for_your_tor_relay">ÐПÑÑ Ð·Ð° ÑлÑÑаМе Ма ÑÐ²ÐŸÑ Ð¢ÐŸÑ Ð¿ÑепÑаÑаÑ</string>
+ <string name="enter_or_port">ÐÑвеЎО OR пПÑÑ</string>
+ <string name="relay_nickname">ÐÑÑÐºÐŸÑ ÐœÐ° пÑепÑаÑаÑа</string>
+ <string name="the_nickname_for_your_tor_relay">ÐÑÑÐºÐŸÑ Ð·Ð° ÑÐ²ÐŸÑ Tor пÑепÑаÑаÑ</string>
+ <string name="enter_a_custom_relay_nickname">ÐÑвеЎО пÑÑÐºÐŸÑ Ð·Ð° пÑепÑаÑаÑа</string>
+ <string name="reachable_addresses">ÐПÑÑОжОЌО аЎÑеÑО</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">СÑаÑÑОÑай каÑП ÐºÐ»ÐžÐµÐœÑ Ð·Ð°ÐŽ firewall Ñ ÑеÑÑÑОкÑОвМО пПлОÑОкО</string>
+ <string name="reachable_ports">ÐПÑÑÑпМО пПÑÑПве</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ÐПÑÑПве ЎПÑÑÑпМО заЎ firewall Ñ ÑеÑÑÑОкÑОвМО пПлОÑОкО</string>
+ <string name="enter_ports">ÐÑвеЎО пПÑÑПве</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">вклÑÑО Ð·Ð°Ð¿ÐžÑ ÐœÐ° ЎебÑг ЎПклаЎО (ÑÑÑбва Ўа пПлзваÑе aLogCat ОлО adb, за Ўа гО ÑазглежЎаÑ)</string>
+ <string name="project_home">ÐаÑалМО СÑаМОÑО Ма ÐÑПекÑОÑе:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">СПÑÑÑÐµÑ ÐœÐ° ÑÑеÑО ÑÑÑаМО: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">МаЌеÑОл ÑО ÑÑвЌеÑÑОЌ Tor пÑПекÑ...</string>
+ <string name="something_bad_happened">ÐеÑП лПÑП Ñе ÑлÑÑО. ÐÑПвеÑеÑе лПга</string>
+ <string name="unable_to_read_hidden_service_name">Ме ЌПже Ўа пÑПÑеÑе ОЌе Ма ÑкÑОÑа ÑÑлÑга</string>
+ <string name="unable_to_start_tor">Ðе ЌПже Ўа ÑÑаÑÑОÑа ТПÑ:</string>
+ <string name="pref_use_persistent_notifications">ÐОМагО пПказвай ОкПМа в ÑÑлбаÑа кПгаÑП ÐÑÐ±ÐŸÑ Ðµ ÑвÑÑзаМ</string>
+ <string name="pref_use_persistent_notifications_title">Ð£Ð²ÐµÐŽÐŸÐŒÐ»ÐµÐœÐžÑ Ð²ÐžÐœÐ°Ð³Ðž вклÑÑеМО</string>
+ <string name="pref_use_expanded_notifications">ÐПкажО ÑазÑОÑеМа ОМÑПÑЌаÑÐžÑ Ð·Ð° Tor ОзÑ
ПЎМаÑа ÐŽÑÑжава О IP в леМÑаÑа за ОзвеÑÑОÑ</string>
+ <string name="pref_use_expanded_notifications_title">РазÑОÑеМО ОзвеÑÑОÑ</string>
+ <string name="set_locale_title">ÐзОк</string>
+ <string name="no_internet_connection_tor">ÐÑЌа ОМÑеÑÐœÐµÑ Ð²ÑÑзка; Tor е в ÑежОЌ Ма ОзÑакваМе...</string>
+ <string name="pref_disable_network_title">ÐОÑпва ÐвÑПЌаÑОÑеМ РежОЌ Ма ÐзÑакваМе</string>
+ <string name="pref_disable_network_summary">СлПжО Tor в ÑежОЌ Ма ОзÑакваМе, кПгаÑП МÑЌа ОМÑеÑМеÑ</string>
+ <string name="newnym">СЌеМОÑ
Ñе ÑвПÑÑа Ð¢ÐŸÑ ÐžÐŽÐµÐœÑОÑМПÑÑ!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÐÑЌа ОМÑеÑÐœÐµÑ Ð²ÑÑзка. ÐÑеЌОМаваМе в ÑежОЌ Ма ОзÑкаваМе...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ÐПбÑа ОМÑеÑÐœÐµÑ Ð²ÑÑзка. СÑбÑжЎаМе Ма Tor...</string>
+ <string name="updating_settings_in_tor_service">ПбМПвÑваМе Ма МаÑÑÑПйкОÑе в Tor ÑÑлÑгаÑа</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">ÐПÑÑ, Ма кПйÑП Tor пÑеЎлага ÑвПеÑП SOCKS пÑПкÑО(пПЎÑазбОÑаМе: 9050 ОлО 0, за Ўа забÑаМОÑ)</string>
+ <string name="pref_socks_dialog">SOCKS Port Config</string>
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_summary">ÐПÑÑ, Ма кПйÑП Tor пÑеЎлага ÑвПеÑП Transparent пÑПкÑО пÑПкÑО(пПЎÑазбОÑаМе: 9040 ОлО 0, за Ўа забÑаМОÑ)</string>
+ <string name="pref_transport_dialog">TransProxy Port Config</string>
+ <string name="pref_dnsport_title">Tor DNS Port</string>
+ <string name="pref_dnsport_summary">ÐПÑÑ, Ма кПйÑП Tor пÑеЎлага ÑвПÑÑ DNS (пПЎÑазбОÑаМе: 5400 ОлО 0, за Ўа забÑаМОÑ)</string>
+ <string name="pref_dnsport_dialog">DNS Port Config</string>
+ <string name="pref_torrc_title">Torrc Custom Config</string>
+ <string name="pref_torrc_summary">СÐÐÐ ÐÐ ÐÐСÐÐРТÐ: вÑвеЎО ЎОÑекÑМП torrc кПМÑОгÑÑаÑОПММОÑÑ ÐºÐŸÐŽ</string>
+ <string name="pref_torrc_dialog">Ð ÑÑМП МаÑÑÑПеМ Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">ÐПÑÑПве вклÑÑеМО!</string>
+ <string name="restart_orbot_to_use_this_bridge_">ÐПлÑ, ÑеÑÑаÑÑОÑай Orbot, за Ўа влÑÐ·Ð°Ñ Ð² ЎейÑÑвОе пÑПЌеМОÑе</string>
+ <string name="menu_qr">QR ÐПЎПве</string>
+ <string name="bridge_mode">РежОЌ ЌПÑÑ</string>
+ <string name="get_bridges_email">ÐЌейл</string>
+ <string name="get_bridges_web">Уеб</string>
+ <string name="activate">ÐкÑОвОÑай</string>
+ <string name="send_email">ÐзпÑаÑО ОЌейл</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ÐÐŸÐ¶ÐµÑ ÐŽÐ° пПлÑÑÐžÑ Ð°ÐŽÑеÑа Ма ЌПÑÑ Ð¿ÐŸ ОЌейл, ОМÑеÑÐœÐµÑ ÐžÐ»Ðž каÑП ÑкаМОÑÐ°Ñ QR kod. ÐзбеÑО \'ÐЌейл\' ОлО \'ÐМÑеÑМеÑ\' пП-ЎПлÑ, за Ўа пПОÑÐºÐ°Ñ Ð°ÐŽÑÐµÑ ÐœÐ° ЌПÑÑ.\n\nÐеЎМÑж ÑПЌ пПлÑÑÐžÑ Ð°ÐŽÑеÑа гП кПпОÑай в \"ÐПÑÑПве\", в МаÑÑÑПйкОÑе Ма Orbot О ÑеÑÑаÑÑОÑай пÑОлПжеМОеÑП.</string>
+ <string name="hidden_services">СкÑОÑО ÑÑлÑгО</string>
+ <string name="title_activity_hidden_services">СкÑОÑО ÑÑлÑгО</string>
+ <string name="menu_hidden_services">СкÑОÑО ÑÑлÑгО</string>
+ <string name="save">ÐапазО</string>
+ <string name="name">ÐЌе</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ÐПлÑ, ÑеÑÑаÑÑОÑай Orbot, за Ўа влÑÐ·Ð°Ñ Ð² ЎейÑÑвОе пÑПЌеМОÑе</string>
+ <string name="disable">ÐеакÑОвОÑаМе</string>
+ <string name="enable">ÐкÑОвОÑаМе</string>
+</resources>
diff --git a/app-mini/src/main/res/values-bn-rBD/strings.xml b/app-mini/src/main/res/values-bn-rBD/strings.xml
new file mode 100644
index 00000000..4d2bc8f2
--- /dev/null
+++ b/app-mini/src/main/res/values-bn-rBD/strings.xml
@@ -0,0 +1,39 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">àŠ
àŠ°àŠ¬àŠmini</string>
+ <string name="app_description">Orbot àŠàŠàŠàŠ¿ àŠ«à§àŠ°àŠ¿ àŠªà§àаàŠà§àŠžàŠ¿ àŠ
à§àŠ¯àŠŸàŠªà§àŠ²àŠ¿àŠà§àŠ¶àŠš àŠ¯àŠŸ àŠ
àŠšà§àŠ¯àŠŸàŠšà§àН Apps àŠà§ àŠàŠ°àŠ àŠšàŠ¿àŠ°àŠŸàŠªàŠŠàŠàŠŸàŠ¬à§ àŠàŠšà§àŠàŠŸàŠ°àŠšà§àŠ àŠ¬à§àŠ¯àŠ¬àŠ¹àŠŸàŠ° àŠàŠ°àŠŸàŠ° àŠà§àŠ·àŠ®àŠ€àŠŸàŠªà§àŠ°àŠŠàŠŸàŠš àŠàаà§à¥€ Orbot àŠàŠªàŠšàŠŸàŠ° àŠàŠšà§àŠàŠŸàŠ°àŠšà§àŠ àŠà§àŠ°àŠŸàŠ«àŠ¿àŠ àŠàŠšàŠà§àŠ°àŠ¿àŠªà§àŠ àŠàŠ°àŠ€à§ àŠàа àŠ¬à§àŠ¯àŠ¬àŠ¹àŠŸàŠ° àŠàŠ¬àŠ àŠ€àŠŸàŠ°àŠªàŠ° àŠžàŠŸàŠ°àŠŸ àŠ¬àŠ¿àŠ¶à§àЬà§àа àŠàŠ®à§àŠªàŠ¿àŠàŠàŠŸàŠ°à§àа àŠžàŠ¿àŠ°àŠ¿àŠà§àа moddho diye porichalito kore gopon kore. àŠàа àŠ«à§àŠ°àŠ¿ àŠžàŠ«àŠàŠàŠ¯àŠŒà§àŠ¯àŠŸàŠ° àŠàŠ¬àŠ àŠàŠªàŠšàŠ¿ àŠà§àŠ°àŠŸàŠ«àŠ¿àŠ àŠ¬àŠ¿àŠ¶à§àвà§àŠ·àŠ£ àŠ¹àŠ¿àŠžà§àŠ¬à§ àŠªàŠ°àŠ¿àŠàŠ¿àŠ€ àŠ¬à§àНàŠà§àŠ€àŠ¿àŠàŠ€ àŠžà§àŠ¬àŠŸàŠ§à§àŠšàŠ€àŠŸ àŠ àŠà§àŠªàŠšà§àŠ¯àŠŒàŠ€àŠŸ, àŠà§àŠªàŠšà§àŠ¯àŠŒ àŠ¬àŠŸàŠ£àŠ¿àŠà§àŠ¯àŠ¿àŠ àŠàŠŸàŠ°à§àНàŠà§àŠ°àŠ® àŠàŠ¬àŠ àŠžàŠ®à§àŠªàŠ°à§àŠ, àŠàŠ¬àŠ àŠ°àŠ
ŸàŠ·à§àŠà§àаà§àŠ¯àŠŒ àŠšàŠ¿àŠ°àŠŸàŠªàŠ€à§àŠ€àŠŸ àŠ¹à§àŠ®àŠàŠ¿àŠ° àŠ®à§àŠà§ àŠªàŠ¡àŠŒà§ àŠšà§àŠàŠàŠ¯àŠŒàŠŸàŠ°à§àŠ àŠšàŠàŠ°àŠŠàŠŸàŠ°àŠ¿ àŠàŠàŠàŠ¿ àŠ«àŠ°à§àŠ® àŠ¬àŠ¿àŠ°à§àŠŠà§àŠ§à§ àŠ°àŠà§àŠ·àŠŸ àŠàŠ°àŠ€à§ àŠžàŠŸàŠ¹àŠŸàŠ¯à§àН àŠàŠ°à§ àŠ¯à§ àŠàŠàŠàŠ¿ àŠà§àŠ²àŠŸ àŠšà§àŠàŠàŠ¯àŠŒàŠŸàŠ°à§àŠ.</string>
+ <string name="status_starting_up">àŠ
àŠ°àŠ¬àŠ àŠàŠŸàŠ²à§ àŠ¹àŠà§àŠà§ . . . </string>
+ <string name="status_activated">àŠàа àŠšà§àŠàŠà§àŠŸàŠ°à§àŠà§àа àŠžàŠŸàŠ¥à§ àŠžàŠàНà§àŠà§àŠ€ àŠ¹à§à§àŠà§</string>
+ <string name="status_disabled">àŠ
àŠ°àŠ¬àŠ àŠšàŠ¿àŠ·à§àŠà§àŠ°àŠ¿à§ àŠàŠ°àŠŸ àŠ¹à§à§àŠà§</string>
+ <string name="status_shutting_down">àŠàа àŠžàŠŸàŠ°à§àŠàŠ¿àŠž àŠ¬àŠšà§àЧ àŠàŠ°àŠŸ àŠ¹àŠà§àŠà§</string>
+ <string name="tor_process_starting">àŠàа àŠà§àŠ²àŠŸà§à§àŠšà§àŠ àŠàŠŸàŠ²à§ àŠàŠ°àŠŸ àŠ¹àŠà§àŠà§</string>
+ <string name="tor_process_complete">àŠžàŠ®à§àŠªà§àаà§àŠ£</string>
+ <string name="menu_settings">àŠšàŠ¿à§àŠ® àŠ¬àŠ¿àŠšà§àŠ¯àŠŸàŠž</string>
+ <string name="menu_log">àŠ²àŠ</string>
+ <string name="menu_start">àŠ¶à§àаà§</string>
+ <string name="menu_stop">àŠ¶à§àŠ·</string>
+ <string name="menu_about">àŠ¬àŠ¿àŠžà§àŠ€àŠŸàŠ°àŠ¿àŠ€</string>
+ <string name="main_layout_download">àŠ¡àŠŸàŠàŠšàŠ²à§àŠ¡</string>
+ <string name="main_layout_upload">àŠàŠªàŠ²à§àŠ¡</string>
+ <string name="button_about">àŠ¬àŠ¿àŠžà§àŠ€àŠŸàŠ°àŠ¿àŠ€</string>
+ <string name="menu_exit">àŠªà§àŠ°àŠžà§àŠ¥àŠŸàŠš</string>
+ <string name="menu_scan">àŠ¬à§àŠ°àŠ¿àŠàŠàŠ¿àŠàŠàа àŠà§àŠ àŠàаà§àŠš</string>
+ <string name="menu_share_bridge">àŠ¬à§àŠ°àŠ¿àŠàŠàŠ¿àŠàŠàа àŠ¶à§à§àŠŸàŠ° àŠàаà§àŠš</string>
+ <string name="btn_okay">àŠ àŠ¿àŠ àŠàŠà§</string>
+ <string name="btn_cancel">àŠ¬àŠŸàŠŠ</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">àŠžàŠŸàŠ§àŠŸàŠ°àŠ£</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">àŠà§àв</string>
+ <string name="bridges">àŠ¬à§àŠ°àŠ¿àŠ</string>
+ <string name="set_locale_title">àŠàŠŸàŠ·àŠŸ</string>
+ <string name="save">àŠžàŠàаàŠà§àŠ·àŠ£ àŠàаà§àŠš</string>
+ <string name="name">Name</string>
+ <string name="disable">àŠàа àŠ
àŠà§àŠ·àŠ®</string>
+</resources>
diff --git a/app-mini/src/main/res/values-bn-rIN/strings.xml b/app-mini/src/main/res/values-bn-rIN/strings.xml
new file mode 100644
index 00000000..e832af24
--- /dev/null
+++ b/app-mini/src/main/res/values-bn-rIN/strings.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="btn_cancel">Cancel</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="name">Name</string>
+</resources>
diff --git a/app-mini/src/main/res/values-bn/strings.xml b/app-mini/src/main/res/values-bn/strings.xml
new file mode 100644
index 00000000..288474fd
--- /dev/null
+++ b/app-mini/src/main/res/values-bn/strings.xml
@@ -0,0 +1,28 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">àŠ¬àŠ¿àŠšà§àŠ¯àŠŸàŠžmini</string>
+ <string name="menu_log">àŠ²àŠ</string>
+ <string name="menu_start">àŠ¶à§àаà§</string>
+ <string name="menu_stop">àŠ¥àŠŸàŠ®à§àŠš</string>
+ <string name="menu_about">àŠžàŠ®à§àŠ¬àŠšà§àЧà§</string>
+ <string name="main_layout_download">àŠ¡àŠŸàŠàŠšàŠ²à§àŠ¡</string>
+ <string name="button_about">àŠžàŠ®à§àŠ¬àŠšà§àЧà§</string>
+ <string name="menu_exit">àŠ¬àŠšà§àЧ</string>
+ <string name="btn_cancel">àŠ¬àŠŸàŠ€àŠ¿àŠ²</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">àŠžàŠŸàŠ§àŠŸàŠ°àŠ£</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">àŠà§àв</string>
+ <string name="bridges">àŠ¬à§àŠ°àŠ¿àŠ</string>
+ <string name="set_locale_title">àŠàŠŸàŠ·àŠŸ</string>
+ <string name="get_bridges_email">àŠàŠ®à§àŠàв</string>
+ <string name="save">àŠžàŠàаàŠà§àŠ·àŠ£ àŠàаà§àŠš</string>
+ <string name="name">àŠšàŠŸàŠ®</string>
+ <string name="disable">àŠàа àŠ
àŠà§àŠ·àŠ®</string>
+</resources>
diff --git a/app-mini/src/main/res/values-brx/strings.xml b/app-mini/src/main/res/values-brx/strings.xml
new file mode 100644
index 00000000..806663f3
--- /dev/null
+++ b/app-mini/src/main/res/values-brx/strings.xml
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">à€žà¥à€à€¿à€à€à¥à€ž</string>
+ <string name="menu_exit">à€
à¥à€à€à€Ÿà€°à€²à€Ÿà€</string>
+ <string name="btn_cancel">à€šà¥à€µà€žà€¿</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="save">à€¥à€¿à€šà€Ÿ à€Šà¥à€š</string>
+</resources>
diff --git a/app-mini/src/main/res/values-bs/strings.xml b/app-mini/src/main/res/values-bs/strings.xml
new file mode 100644
index 00000000..85fe87e3
--- /dev/null
+++ b/app-mini/src/main/res/values-bs/strings.xml
@@ -0,0 +1,18 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">Postavke</string>
+ <string name="btn_cancel">OtkaÅŸi</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Osnovno</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="set_locale_title">Jezik</string>
+ <string name="activate">Aktiviraj</string>
+ <string name="save">SaÄuvaj</string>
+ <string name="name">Ime</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ca/poestrings.xml b/app-mini/src/main/res/values-ca/poestrings.xml
new file mode 100644
index 00000000..7f4028bb
--- /dev/null
+++ b/app-mini/src/main/res/values-ca/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">A vegades necessites un pont per accedir a Tor.</string>
+ <string name="action_more">Més informació</string>
+
+ <string name="vpn_setup">Podeu habilitar qualsevol aplicació perquÚ usi el Tor mitjançant la nostra VPN incorporada.</string>
+ <string name="vpn_setup_sub">No us anonimitzarà , però us ajudarà a aconseguir-ho mitjançant els tallafocs.</string>
+ <string name="action_vpn_choose">Escull aplicacions</string>
+
+ <string name="hello">Hola</string>
+ <string name="welcome">Us donem la benvinguda al Tor.</string>
+
+ <string name="browser_the_internet">Navega internet com ho esperaries.</string>
+ <string name="no_tracking">Sense rastre. Sense censura.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-ca/strings.xml b/app-mini/src/main/res/values-ca/strings.xml
new file mode 100644
index 00000000..9e20becf
--- /dev/null
+++ b/app-mini/src/main/res/values-ca/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot mini</string>
+ <string name="app_description">L\'Orbot és una aplicació de servidor intermediari gratuïta que capacita a les altres aplicacions per utilitzar internet de forma més segura. L\'Orbot utilitza Tor per xifrar les vostres comunicacions per Internet i ocultar-les fent-les saltar per una sÚrie d\'ordinadors repartits per tot el món. Tor és un programari lliure i una xarxa oberta que us ajuda a defensar-vos d\'un tipus de vigilà ncia a la xarxa que amenaça la llibertat personal i la privadesa, activitats empresarials i relacions confidencials i la seguretat en general, coneguda com anà lisi de trà nsit.</string>
+ <string name="status_starting_up">L\'Orbot s\'està iniciant...</string>
+ <string name="status_activated">Esteu connectat a la xarxa Tor</string>
+ <string name="status_disabled">L\'Orbot està desactivat</string>
+ <string name="status_shutting_down">El servei Tor s\'està desactivant</string>
+ <string name="tor_process_starting">S\'està iniciant el client Tor...</string>
+ <string name="tor_process_complete">fet.</string>
+ <string name="menu_settings">PreferÚncies</string>
+ <string name="menu_log">Registre</string>
+ <string name="menu_start">Inicia</string>
+ <string name="menu_stop">Atura</string>
+ <string name="menu_about">Quant a...</string>
+ <string name="main_layout_download">Baixada</string>
+ <string name="main_layout_upload">Pujada</string>
+ <string name="button_about">Quant a...</string>
+ <string name="menu_exit">Surt</string>
+ <string name="menu_scan">Escaneja el BridgeQR</string>
+ <string name="menu_share_bridge">Comparteix el BridgeQR</string>
+ <string name="btn_okay">D\'acord</string>
+ <string name="btn_cancel">Cancel·la</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Alguns detalls de l\'Orbot...</string>
+ <string name="wizard_details_msg">Orbot és una aplicació de codi obert que conté Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent i Polipo. Proporciona un proxy HTTP local (8118) i un proxy SOCKS (9050) a la xarxa Tor. En dispositius root Orbot també té la capacitat d\'enviar tot el trà nsit d\'Internet a través de Tor</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <string name="pref_start_boot_title">Inicia l\'Obot a l\'arrencada</string>
+ <string name="pref_start_boot_summary">Inicia l\'Orbot i connecta a Tor automà ticament quan el vostre dispositiu Android arrenca.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configuració de node</string>
+ <string name="pref_node_configuration_summary">Aquests són parà metres avançats que poden reduir el vostre anonimat</string>
+ <string name="pref_entrance_node">Node d\'entrada</string>
+ <string name="pref_entrance_node_summary">Empremtes, à lies, països i adreces pel primer salt</string>
+ <string name="pref_entrance_node_dialog">Introduïu els nodes d\'entrada</string>
+ <string name="pref_allow_background_starts_title">Permet l\'inici en rerefons</string>
+ <string name="pref_allow_background_starts_summary">Permet a qualsevol aplicació iniciar la xarxa Tor mitjançant l\'Orbot i els serveis relacionats</string>
+ <string name="pref_proxy_title">Servidor intermediari de sortida a la xarxa (opcional)</string>
+ <string name="pref_proxy_type_title">Tipus de servidor intermediari de sortida</string>
+ <string name="pref_proxy_type_summary">Protocol a utilitzar pel servidor intermediari: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Introduïu el tipus de servidor intermediari</string>
+ <string name="pref_proxy_host_title">Amfitrió del servidor intermediari de sortida</string>
+ <string name="pref_proxy_host_summary">Nom de l\'amfitrió del servidor intermediari</string>
+ <string name="pref_proxy_host_dialog">Introduïu l\'amfitrió del servidor intermediari</string>
+ <string name="pref_proxy_port_title">Port del servidor intermediari de sortida</string>
+ <string name="pref_proxy_port_summary">Port del servidor intermediari</string>
+ <string name="pref_proxy_port_dialog">Introduïu el port del servidor intermediari</string>
+ <string name="pref_proxy_username_title">Nom d\'usuari del servidor intermediari de sortida</string>
+ <string name="pref_proxy_username_summary">Nom d\'usuari del servidor intermediari (opcional)</string>
+ <string name="pref_proxy_username_dialog">Introduïu el nom d\'usuari del servidor intermediari</string>
+ <string name="pref_proxy_password_title">Contrasenya del servidor intermediari de sortida</string>
+ <string name="pref_proxy_password_summary">Contrasenya del servidor intermediari (opcional)</string>
+ <string name="pref_proxy_password_dialog">Introduïu la contrasenya del servidor intermediari</string>
+ <string name="couldn_t_start_tor_process_">No s\'ha pogut iniciar el procés Tor:</string>
+ <string name="error">Error</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Els parà metres d\'adreces accessibles han provocat una excepció.</string>
+ <string name="your_relay_settings_caused_an_exception_">Els parà metres de reemissió han causat una excepció.</string>
+ <string name="exit_nodes">Nodes de sortida</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Empremtes, à lies, països i adreces per l\'últim salt</string>
+ <string name="enter_exit_nodes">Introduïu els nodes de sortida</string>
+ <string name="exclude_nodes">Nodes per excloure</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Empremtes, à lies, països i adreces per excloure</string>
+ <string name="enter_exclude_nodes">Introduïu nodes per excloure</string>
+ <string name="strict_nodes">Nodes estrictes</string>
+ <string name="use_only_these_specified_nodes">Utilitza *només* aquests nodes especificats</string>
+ <string name="bridges">Ponts</string>
+ <string name="use_bridges">Utilitza ponts</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Activar entrades alternes a la xarxa Tor</string>
+ <string name="ip_address_and_port_of_bridges">Adreça IP i port dels ponts</string>
+ <string name="enter_bridge_addresses">Introduïu les adreces del pont</string>
+ <string name="relays">Reemissors</string>
+ <string name="relaying">Reemissió</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Activa el vostre dispositiu per ser un reemissor sense sortida</string>
+ <string name="relay_port">Port de reemissió</string>
+ <string name="listening_port_for_your_tor_relay">Port d\'escolta per la vostra reemissió de Tor</string>
+ <string name="enter_or_port">Introduïu el port OR</string>
+ <string name="relay_nickname">Ãlies del reemissor</string>
+ <string name="the_nickname_for_your_tor_relay">L\'Ã lies pel vostre reemissor de Tor</string>
+ <string name="enter_a_custom_relay_nickname">Introduïu un à lies personalitzat pel vostre reemissor</string>
+ <string name="reachable_addresses">Adreces accessibles</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">S\'executa com a client darrera d\'un tallafocs amb normes restrictives</string>
+ <string name="reachable_ports">Ports accessibles</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Ports que es poden accedir darrera d\'un tallafocs restrictiu</string>
+ <string name="enter_ports">Introduïu els ports</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">activa la sortida del registre de depuració (cal utilitzar l\'adb o l\'aLogCat per veure\'l)</string>
+ <string name="project_home">Lloc(s) web del projecte:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Programari de terceres parts:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Una aplicació vol obrir el port de servidor ocults%1$s a la xarxa Tor. Això és segur si confieu en l\'aplicació</string>
+ <string name="found_existing_tor_process">s\'ha trobat un procés Tor existent...</string>
+ <string name="something_bad_happened">Ha fallat alguna cosa. Comproveu el registre</string>
+ <string name="unable_to_read_hidden_service_name">ha estat impossible llegir el nom del servei ocult</string>
+ <string name="unable_to_start_tor">Ha estat impossible iniciar Tor:</string>
+ <string name="pref_use_persistent_notifications">Manté la icona sempre a la barra d\'eines mentre l\'Orbot està connectat</string>
+ <string name="pref_use_persistent_notifications_title">Notificacions sempre activades</string>
+ <string name="pref_use_expanded_notifications">Mostra la informació de sortida addicional del Tor amb el paÃs i la IP</string>
+ <string name="pref_use_expanded_notifications_title">Notificacions addicionals</string>
+ <string name="set_locale_title">Llengua</string>
+ <string name="no_internet_connection_tor">No s\'ha trobat cap connexió a Internet; el Tor és a l\'espera</string>
+ <string name="pref_disable_network_title">No hi ha autodesconnexió de xarxa</string>
+ <string name="pref_disable_network_summary">Posa el Tor en pausa mentre no hi ha connexió a internet</string>
+ <string name="newnym">Heu canviat a una nova identitat Tor.</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">No s\'ha trobat connectivitat a la xarxa. El Tor entra en suspensió...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">La connectivitat de la xarxa és bona. S\'està despertant el Tor...</string>
+ <string name="updating_settings_in_tor_service">S\'està actualitzant la configuració als serveis del Tor</string>
+ <string name="pref_socks_title">SOCKS Tor</string>
+ <string name="pref_socks_summary">Port que ofereix el servidor intermediari SOCKS al Tor (per defecte: 9050 or 0 per inhabilitar)</string>
+ <string name="pref_socks_dialog">Configuració del port SOCKS</string>
+ <string name="pref_transport_title">Port TransProxy del Tor</string>
+ <string name="pref_transport_summary">Port que ofereix el seu servidor intermediari transparent al Tor (per defecte: 9040 or 0 per inhabilitar)</string>
+ <string name="pref_transport_dialog">Configuració del port TransProxy</string>
+ <string name="pref_dnsport_title">Port DNS del Tor</string>
+ <string name="pref_dnsport_summary">Port que ofereix les DNS al Tor (per defecte: 5400 or 0 per inhabilitar)</string>
+ <string name="pref_dnsport_dialog">Configuració del port DNS</string>
+ <string name="pref_torrc_title">Configuració personalitzada del Torrc</string>
+ <string name="pref_torrc_summary">NOMÃS EXPERTS: Escriviu les lÃnies de configuració directa del Torrc</string>
+ <string name="pref_torrc_dialog">Torrc personalitzat</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">S\'han actualitzat els ponts</string>
+ <string name="restart_orbot_to_use_this_bridge_">Reinicieu l\'Orbot per aplicar els canvis</string>
+ <string name="menu_qr">Codis QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Si la teva xarxa mòbil boqueja activament Tor, pots utilitzar un \'Servidor pont\' com a via alternativa. SELECCIONA una de les opcions per configurar i provar.</string>
+ <string name="bridge_mode">Mode pont</string>
+ <string name="get_bridges_email">Correu-e</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Activa</string>
+ <string name="apps_mode">Mode VPN</string>
+ <string name="send_email">Envia correu-e</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Podeu obtenir un enllaç pont mitjançant el correu electrònic, el web o escanejant un codi QR. Trieu Correu-e o Web a sota per demanar una adreça.\n\nQuan tingueu un enllaç d\'aquest tipus, copieu-ho i enganxeu-ho a l\'apartat «Ponts» de la configuració de l\'Orbot i reinicieu.</string>
+ <string name="vpn_default_world">Global (auto)</string>
+ <string name="hidden_services">Serveis ocults</string>
+ <string name="title_activity_hidden_services">Serveis ocults</string>
+ <string name="menu_hidden_services">Serveis ocults</string>
+ <string name="save">Desa</string>
+ <string name="local_port">Port local</string>
+ <string name="onion_port">Port ceba</string>
+ <string name="name">Nom</string>
+ <string name="done">Fet!</string>
+ <string name="invalid_port">Port invà lid</string>
+ <string name="copy_address_to_clipboard">Copia adreça al portapapers</string>
+ <string name="show_auth_cookie">Mostrar galetes d\'autentificació</string>
+ <string name="backup_service">Servei de còpia de seguretat</string>
+ <string name="delete_service">Esborrar servei</string>
+ <string name="backup_saved_at_external_storage">Còpia de seguretat desada a emmagatzematge extern</string>
+ <string name="backup_restored">Còpia de seguretat restaurada</string>
+ <string name="filemanager_not_available">Gestor d\'arxius no disponible</string>
+ <string name="please_grant_permissions_for_external_storage">Si us plau concedeix permisos per emmagatzematge extern</string>
+ <string name="restore_backup">Restaurar còpia de seguretat</string>
+ <string name="create_a_backup_first">Crea una còpia de seguretat primer</string>
+ <string name="name_can_t_be_empty">El nom no pot estar buit</string>
+ <string name="fields_can_t_be_empty">Els camps no poden estar buits</string>
+ <string name="start_tor_again_for_finish_the_process">Torna a iniciar Tor per acabar el procés</string>
+ <string name="confirm_service_deletion">Confirma la supressió del servei</string>
+ <string name="click_again_for_backup">Feu clic novament per fer còpia de seguretat</string>
+ <string name="service_type">Tipus de servei</string>
+ <string name="auth_cookie">Auth cookie</string>
+ <string name="copy_cookie_to_clipboard">Copieu les galetes al porta-retalls</string>
+ <string name="auth_cookie_was_not_configured">No s\'ha configurat l\'Auth cookie</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Reinicieu l\'Orbot per aplicar els canvis</string>
+ <string name="client_cookies">Client cookies</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">L\'adreça .onion no és và lida</string>
+ <string name="cookie_from_QR">Llegir de QR</string>
+ <string name="backup_cookie">Backup cookie</string>
+ <string name="delete_cookie">Elimina la galeta</string>
+ <string name="confirm_cookie_deletion">Confirma la supressió de les galetes</string>
+ <string name="hosted_services">Serveis allotjats</string>
+ <string name="share_as_qr">Comparteix com a QR</string>
+ <string name="disable">Deshabilitar </string>
+ <string name="enable">Habilitar</string>
+ <string name="consider_disable_battery_optimizations">Penseu a desactivar les optimitzacions de la bateria</string>
+ <string name="consider_enable_battery_optimizations">Penseu a habilitar les optimitzacions de la bateria</string>
+ <string name="pref_isolate_dest">Aïllar adreces de destinació</string>
+ <string name="pref_isolate_dest_summary">Utilitzeu un circuit diferent per a cada adreça de destinació</string>
+ <string name="no_transproxy_warning_short">ATENCIÃ: Transproxying ja no és compatible</string>
+ <string name="no_transproxy_warning">ATENCIÃ: no s\'admet Transparent proxying. Utilitzeu les aplicacions Orbot VPN.</string>
+ <string name="pref_connection_padding">Farciment de connexió</string>
+ <string name="pref_connection_padding_summary">Activeu sempre el farciment de connexió per defensar-vos d\'algunes formes d\'anà lisi de trà nsit. Per defecte: automà tic</string>
+ <string name="pref_reduced_connection_padding">Farciment de connexió reduit</string>
+ <string name="pref_reduced_connection_padding_summary">Tanca les connexions de retransmissió abans i envia menys paquets de farciment per reduir l\'ús de dades i bateria.</string>
+ <string name="app_shortcuts">Aplicacions emprant Tor</string>
+ <string name="testing_bridges">Provant connexió pont a Tor...</string>
+ <string name="testing_bridges_success">Ãxit. Connexió pont funciona!</string>
+ <string name="testing_bridges_fail">ERROR. Prova una altra opció</string>
+ <string name="bridge_direct_connect">Connecta directament a Tor (Lo millor)</string>
+ <string name="bridge_community">Connecta mitjançant servidors de comunitat</string>
+ <string name="bridge_cloud">Connecta mitjançant servidors núvol</string>
+ <string name="bridges_get_new">Demana nous ponts (Si tot lo altra falla)</string>
+ <string name="trouble_connecting">Problemes connectant?</string>
+ <string name="full_device_vpn">Dispositiu completament VPN</string>
+ <string name="vpn_disabled">VPN desactivat</string>
+</resources>
diff --git a/app-mini/src/main/res/values-cs-rCZ/strings.xml b/app-mini/src/main/res/values-cs-rCZ/strings.xml
new file mode 100644
index 00000000..c333b4c7
--- /dev/null
+++ b/app-mini/src/main/res/values-cs-rCZ/strings.xml
@@ -0,0 +1,139 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot je bezplatnÜ proxy server, kterÜ umoÅŸÅuje bezpeÄnÄjšà pouÅŸità internetu v ostatnÃch apklikacÃch. Orbot pouÅŸÃvá Tor pro Å¡ifrovánà internetového provozu a skrÜvá se dÃky pÅedávánà provozu pÅes vÃce poÄÃtaÄů po celém svÄtÄ. Tor je bezplatnÜ software a otevÅená sÃÅ¥, která vám pomáhá chránit se pÅed sledovánÃm sÃtÄ, které ohroÅŸuje osobnà svobodu, bezpeÄnost, důvÄrné obchodnà aktivity a vztahy a pÅed státnÃm sledovánÃm, oznaÄovanÜm jako anylÜza provozu.</string>
+ <string name="status_starting_up">Orbot se spouÅ¡tÃ...</string>
+ <string name="status_activated">PÅipojen k sÃti Tor</string>
+ <string name="status_disabled">Orbot je deaktivován</string>
+ <string name="status_shutting_down">TorService se vypÃná...</string>
+ <string name="tor_process_starting">Startuji Tor klienta...</string>
+ <string name="tor_process_complete">hotovo.</string>
+ <string name="menu_settings">NastavenÃ</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Zapnout</string>
+ <string name="menu_stop">Vypnout</string>
+ <string name="menu_about">O aplikaci</string>
+ <string name="main_layout_download">Stáhnout</string>
+ <string name="main_layout_upload">Nahrát</string>
+ <string name="button_about">O aplikaci</string>
+ <string name="menu_exit">Konec</string>
+ <string name="menu_scan">Skenovat BridgeQR</string>
+ <string name="menu_share_bridge">SdÃlet BridgeQR</string>
+ <string name="btn_okay">BudiÅŸ</string>
+ <string name="btn_cancel">Zrušit</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Pár detailů o Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Obecné</string>
+ <string name="pref_start_boot_title">Spustit Orbot pÅi startu systému</string>
+ <string name="pref_start_boot_summary">Automaticky spustit Orbot a pÅipojit se k Tor po startu zaÅÃzenÃ</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfigurace uzlu (nodu)</string>
+ <string name="pref_node_configuration_summary">Tato rozÅ¡ÃÅená nastavenà mohou snÃÅŸit vaÅ¡i anonymitu</string>
+ <string name="pref_entrance_node">Vstupnà nody</string>
+ <string name="pref_entrance_node_summary">Otisky (fingerprints), pÅezdÃvky serveru (nicks), státy a adresy pro prvnà skok (hop)</string>
+ <string name="pref_entrance_node_dialog">Zadejte vstupnà nody</string>
+ <string name="pref_allow_background_starts_title">Povolit spuÅ¡tÄnà na pozadÃ</string>
+ <string name="pref_allow_background_starts_summary">Povolit vÅ¡em aplikacÃm spustit Orbot, Tor a pÅsluÅ¡nÄ sluÅŸby</string>
+ <string name="pref_proxy_title">Odchozà sÃÅ¥ová proxy (volitelné)</string>
+ <string name="pref_proxy_type_title">Typ odchozà proxy</string>
+ <string name="pref_proxy_type_summary">Protokol pro proxy server: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Zadejte typ proxy</string>
+ <string name="pref_proxy_host_title">Hostitel odchozà proxy</string>
+ <string name="pref_proxy_host_summary">Jméno hostitele proxy serveru</string>
+ <string name="pref_proxy_host_dialog">Zadejte hostitele proxy</string>
+ <string name="pref_proxy_port_title">Port odchozà proxy</string>
+ <string name="pref_proxy_port_summary">Port proxy serveru</string>
+ <string name="pref_proxy_port_dialog">Zadejte proxy port</string>
+ <string name="pref_proxy_username_title">Uşivatelské jméno odchozà proxy</string>
+ <string name="pref_proxy_username_summary">Proxy uşivatelské jméno (volitelné)</string>
+ <string name="pref_proxy_username_dialog">Zadejte Proxy uşivatelské jméno</string>
+ <string name="pref_proxy_password_title">Heslo odchozà proxy</string>
+ <string name="pref_proxy_password_summary">Proxy heslo (volitelné)</string>
+ <string name="pref_proxy_password_dialog">Zadejte Proxy heslo</string>
+ <string name="couldn_t_start_tor_process_">Nelze spustit Tor proces:</string>
+ <string name="error">Chyba</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Vaše nastavenà dostupnÜch adres (ReachableAddresses) způsobilo chybu!</string>
+ <string name="your_relay_settings_caused_an_exception_">Vaše nastavenà relace způsobilo vÜjimku!</string>
+ <string name="exit_nodes">VÜstupnà nody</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Otisky (fingerprints), pÅezdÃvky serveru (nicks), státy a adresy pro poslednà skok (hop)</string>
+ <string name="enter_exit_nodes">Zadejte vÜstupnà nody</string>
+ <string name="exclude_nodes">VylouÄené nody</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Otisky (fingerprints), pÅezdÃvky serveru (nicks), státy a adresy pro vylouÄené nody</string>
+ <string name="enter_exclude_nodes">Zadejte nody k vylouÄenÃ</string>
+ <string name="strict_nodes">Striktnà nody</string>
+ <string name="use_only_these_specified_nodes">PouÅŸÃt *pouze* tyto specifické nody</string>
+ <string name="bridges">Bridge</string>
+ <string name="use_bridges">PouÅŸÃt bridge</string>
+ <string name="ip_address_and_port_of_bridges">IP adresy a porty bridgů</string>
+ <string name="enter_bridge_addresses">Zadejte adresy bridgů</string>
+ <string name="relays">Relé</string>
+ <string name="relaying">PouÅŸÃvánà relé</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">SpuÅ¡tÄnà zaÅÃzenà jako neodchozÃho relé</string>
+ <string name="relay_port">Port relé</string>
+ <string name="listening_port_for_your_tor_relay">Naslouchánà Vašeho Tor relé</string>
+ <string name="enter_or_port">Zadejte OR port</string>
+ <string name="relay_nickname">PÅezdÃvka relé</string>
+ <string name="the_nickname_for_your_tor_relay">PÅezdÃvka VaÅ¡eho Tor relé</string>
+ <string name="enter_a_custom_relay_nickname">Zadejte klientskou pÅezdÃvku relé</string>
+ <string name="reachable_addresses">Dostupné adresy</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">BÄÅŸet jako klient za firewallem s restriktivnà politikou</string>
+ <string name="reachable_ports">Dostupné porty</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Porty dostupné za restriktivnÃm firewallem</string>
+ <string name="enter_ports">Zadejte porty</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">umoÅŸnit ladicà informace na vÜstup (musà pouÅŸÃvat adb nebo aLogCat k prohlÃÅŸenÃ)</string>
+ <string name="project_home">Domovské(á) umÃstÄnà projektu</string>
+ <string name="third_party_software">Software tÅetÃch stran:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">nalezev existujÃcà Tor procesâŠ</string>
+ <string name="something_bad_happened">Stalo se nÄco Å¡patného. Zkontrolujte log</string>
+ <string name="unable_to_read_hidden_service_name">nelze ÄÃst název skryté sluÅŸby</string>
+ <string name="unable_to_start_tor">Nelze spustit Tor:</string>
+ <string name="pref_use_persistent_notifications">VÅŸdy zobrazit ikonu ve stavovém Åádku, pokud je Orbot pÅipojen.</string>
+ <string name="pref_use_persistent_notifications_title">Notifikace vşdy zapnuté</string>
+ <string name="pref_use_expanded_notifications">Zobrazit rozÅ¡ÃÅené oznánemà s Tor vÜstupnà zemà a IP</string>
+ <string name="pref_use_expanded_notifications_title">RozÅ¡ÃÅené oznámenÃ</string>
+ <string name="set_locale_title">Jazyk</string>
+ <string name="no_internet_connection_tor">Ŝádné pÅipojenà k internetu; Tor je standby...</string>
+ <string name="pref_disable_network_title">Vypnout uspávánà sÃtÄ</string>
+ <string name="pref_disable_network_summary">Uspat Tor kdyÅŸ nenà k dispozici pÅÃstup k Internetu</string>
+ <string name="newnym">VaÅ¡e identita na Toru byla zmÄnÄna!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ŜádnÜ sÃÅ¥ovÜ provoz. Ukládám Tor k spánkuâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">SÃÅ¥ovÜ provoz v poÅádku. ProbouzÃm TorâŠ</string>
+ <string name="updating_settings_in_tor_service">aktualizuji nastavenà sluşby Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Port, na kterém Tor nabÃzà SOCKS proxy (default: 9050, 0 pro zakázánÃ)</string>
+ <string name="pref_socks_dialog">SOCKS nastavenà portu</string>
+ <string name="pref_transport_title">Tor TransProxy port</string>
+ <string name="pref_transport_summary">Port, na kterém Tor nabÃzà transparentnà proxy (default: 9040, 0 pro zakázánÃ)</string>
+ <string name="pref_transport_dialog">TransProxy nastavenà portu</string>
+ <string name="pref_dnsport_title">Tor DNS port</string>
+ <string name="pref_dnsport_summary">Port, na kterém Tor nabÃzà DNS (default: 5400, 0 pro zakázánÃ)</string>
+ <string name="pref_dnsport_dialog">DNS nastavenà portu</string>
+ <string name="pref_torrc_title">Torrc vstastnà konfigurace</string>
+ <string name="pref_torrc_summary">POUZE PRO EXPERTY: zadejte pÅÃmo Åádky nastavenà torrc</string>
+ <string name="pref_torrc_dialog">Vlastnà Torrs</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">kB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridge aktualizovány</string>
+ <string name="restart_orbot_to_use_this_bridge_">Pro projevenà zmÄn restartujte Orbot</string>
+ <string name="menu_qr">QR kódy</string>
+ <string name="bridge_mode">Bridge mód</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Aktivovat</string>
+ <string name="send_email">Pošli email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Abresu bridge můşete zÃskat emailem, na webu, nebo naskenovánÃm bridge QR kódu. Zvolte nÃÅŸe \'Email\', nebo \'Web\' pro vyşádánà adresy bridge.\n\nJakmile máte adresu, zkopÃrujte & vloÅŸte ji do poloÅŸky \"Bridge\" v nastavenà Orbot a restartujte aplikaci.</string>
+ <string name="save">UloÅŸit</string>
+ <string name="name">Jméno</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Pro projevenà zmÄn restartujte Orbot</string>
+</resources>
diff --git a/app-mini/src/main/res/values-cs/strings.xml b/app-mini/src/main/res/values-cs/strings.xml
new file mode 100644
index 00000000..5fe50ed5
--- /dev/null
+++ b/app-mini/src/main/res/values-cs/strings.xml
@@ -0,0 +1,48 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot je proxy aplikace zdarma, která umoÅŸÅuje ostatnÃm aplikacÃm pouÅŸÃvat internet bezpeÄnÄji. PouÅŸÃvá Tor pro zaÅ¡ifrovánà pÅenášenÜch dat a skrÜvá je pomocà skoků pÅes sérii poÄÃtaÄů po celém svÄtÄ. Tor je software zdarma a jeho otevÅená sÃÅ¥ pomáhá v obranÄ proti sledovánÃ, které zasahuje do osobnà svobody a soukromÃ, důvÄrnÜch obchodnÃch komunikacà a vztahů a proti státnà bezpeÄnosti zvané analÜza internetového provozu.</string>
+ <string name="status_starting_up">Orbot se spouÅ¡tÃâŠ</string>
+ <string name="status_activated">PÅipojen k sÃti Tor</string>
+ <string name="status_disabled">\"Orbot je deaktivován</string>
+ <string name="status_shutting_down">Orbot se vypÃná</string>
+ <string name="tor_process_starting">Startuji Tor klientaâŠ</string>
+ <string name="tor_process_complete">hotovo.</string>
+ <string name="menu_settings">NastavenÃ</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Zapnout</string>
+ <string name="menu_stop">Vypnout</string>
+ <string name="menu_about">O aplikaci</string>
+ <string name="main_layout_download">StahovánÃ</string>
+ <string name="main_layout_upload">NahrávánÃ</string>
+ <string name="button_about">O aplikaci</string>
+ <string name="menu_exit">Konec</string>
+ <string name="menu_scan">Skenovat QR kód bridge</string>
+ <string name="menu_share_bridge">SdÃlet QR kód bridge</string>
+ <string name="btn_cancel">Zrušit</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Detaily o Orbotu</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">HlavnÃ</string>
+ <string name="pref_start_boot_title">Spustit Orbot pÅi zapnutà zaÅÃzenÃ</string>
+ <string name="pref_start_boot_summary">Automaticky spustit Orbot a pÅipojit k Toru po zapnutÃ</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Chyba</string>
+ <string name="bridges">PÅemostÄnÃ</string>
+ <string name="set_locale_title">Jazyk</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="activate">Aktivovat</string>
+ <string name="hidden_services">Skryté Sluşby</string>
+ <string name="title_activity_hidden_services">Skryté Sluşby</string>
+ <string name="menu_hidden_services">Skryté Sluşby</string>
+ <string name="save">UloÅŸit</string>
+ <string name="name">Jméno</string>
+ <string name="done">Hotovo!</string>
+ <string name="disable">Zakázat</string>
+ <string name="enable">Zapnout</string>
+</resources>
diff --git a/app-mini/src/main/res/values-cy/strings.xml b/app-mini/src/main/res/values-cy/strings.xml
new file mode 100644
index 00000000..9bd3852d
--- /dev/null
+++ b/app-mini/src/main/res/values-cy/strings.xml
@@ -0,0 +1,46 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Mae Orbot yn cychwyn...</string>
+ <string name="status_activated">Wedi cysylltu â rhwydwaith Tor</string>
+ <string name="tor_process_starting">Yn cychwyn cleient Tor</string>
+ <string name="tor_process_complete">Wedi ei gwblhau.</string>
+ <string name="menu_settings">Gosodiadau</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Cychwyn</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">Amdanom ni</string>
+ <string name="main_layout_download">Llwytho i lawr</string>
+ <string name="main_layout_upload">Llwytho i fyny</string>
+ <string name="button_about">Amdanom ni</string>
+ <string name="menu_exit">Gadael</string>
+ <string name="btn_okay">Iawn</string>
+ <string name="btn_cancel">Diddymu</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Rhai manylion am Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Cyffredinol</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Ffurfweddiad nod</string>
+ <string name="pref_entrance_node">Nodau mynediad</string>
+ <string name="pref_entrance_node_dialog">I mewn i nodau mynediad</string>
+ <string name="pref_proxy_password_summary">Cyfrinair y Dirprwy (Dewisol)</string>
+ <string name="error">Gwall</string>
+ <string name="exit_nodes">Nodau Gadael</string>
+ <string name="enter_exit_nodes">I mewn i Nodau Gadael</string>
+ <string name="exclude_nodes">Yn eithrio Nodau</string>
+ <string name="enter_exclude_nodes">I mewn i Nodau Eithrio</string>
+ <string name="third_party_software">Meddalwedd 3ydd-parti</string>
+ <string name="set_locale_title">Iaith</string>
+ <string name="activate">Ysgogi</string>
+ <string name="hidden_services">Gwasanaethau Cudd</string>
+ <string name="title_activity_hidden_services">Gwasanaethau Cudd</string>
+ <string name="menu_hidden_services">Gwasanaethau Cudd</string>
+ <string name="save">Cadw</string>
+ <string name="name">Enw</string>
+</resources>
diff --git a/app-mini/src/main/res/values-da/strings.xml b/app-mini/src/main/res/values-da/strings.xml
new file mode 100644
index 00000000..d212aac5
--- /dev/null
+++ b/app-mini/src/main/res/values-da/strings.xml
@@ -0,0 +1,111 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot er en gratis og åben proxy-applikation, der gÞr det muligt at anvende internettet mere sikkert fra andre programmer. Orbot bruger Tor til at kryptere internettrafikken, og skjuler den ved at sende den gennem serverere, lokaliseret i hele verden. Tor er gratis og åben software, der kan hjÊlpe dig mod netvÊrksovervågning kaldet trafikanalyse, der kan true din personlige frihed, dit privatliv, handelsaktivitet og forhold.</string>
+ <string name="status_starting_up">Orbot starter op ...</string>
+ <string name="status_activated">Der er forbindelse til Tor-netvÊrket</string>
+ <string name="status_disabled">Orbot er slået fra</string>
+ <string name="status_shutting_down">TorServe lukker ned</string>
+ <string name="tor_process_starting">Starter Tor klienten...</string>
+ <string name="tor_process_complete">udfÞrt.</string>
+ <string name="menu_settings">Indstillinger</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">Om</string>
+ <string name="main_layout_download">Henter</string>
+ <string name="main_layout_upload">Sender</string>
+ <string name="button_about">Om</string>
+ <string name="menu_exit">Afslut</string>
+ <string name="menu_scan">Skan BridgeQR</string>
+ <string name="menu_share_bridge">Del BridgeQR</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Fortryd</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Nogle Orbot detaljer</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Generelt</string>
+ <string name="pref_start_boot_title">Start Orbot ved opstart</string>
+ <string name="pref_start_boot_summary">Start automatisk Orbot og forbind til Tor når din android enhed starter</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfiguration af Tor node</string>
+ <string name="pref_node_configuration_summary">Avancerede indstillinger, der kan reducere anonymiteten</string>
+ <string name="pref_entrance_node">Indgangspunkter til Tor netvÊrket</string>
+ <string name="pref_entrance_node_summary">Fingeraftryk, servernavne, lande og adresser for fÞrste hop</string>
+ <string name="pref_entrance_node_dialog">Indtast indgangspunkter</string>
+ <string name="pref_allow_background_starts_title">Tillad baggrunds starts</string>
+ <string name="pref_proxy_title">Udgående netvÊrksproxy (Valgfri)</string>
+ <string name="pref_proxy_type_title">Udgående proxy-type</string>
+ <string name="pref_proxy_type_summary">Protokol til proxy serveren: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Indtast proxy type</string>
+ <string name="pref_proxy_host_title">Udgående proxy-vÊrt</string>
+ <string name="pref_proxy_host_summary">VÊrtsnavn for proxyserver</string>
+ <string name="pref_proxy_host_dialog">Indtast proxy vÊrt</string>
+ <string name="pref_proxy_port_title">Udgående proxy-port</string>
+ <string name="pref_proxy_port_summary">Proxyserverens port</string>
+ <string name="pref_proxy_port_dialog">Indtast proxy port</string>
+ <string name="pref_proxy_username_title">Brugernavn for udgående proxy</string>
+ <string name="pref_proxy_username_summary">Proxy brugernavn (Valgfri)</string>
+ <string name="pref_proxy_username_dialog">Indtast proxy-brugernavnet</string>
+ <string name="pref_proxy_password_title">Kodeord for udgående proxy</string>
+ <string name="pref_proxy_password_summary">Adgangskode for udgående proxy (Valgfri)</string>
+ <string name="pref_proxy_password_dialog">Indtast proxy-kodeordet</string>
+ <string name="couldn_t_start_tor_process_">Kunne ikke starte Tor processen:</string>
+ <string name="error">Fejl</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Din ReachableAdresses indstilling forudsagede en fejl!</string>
+ <string name="your_relay_settings_caused_an_exception_">Dine relÊindstillinger forårsagede en fejl!</string>
+ <string name="exit_nodes">Udgangspunkter</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Fingeraftryk, servernavne, lande og adresser for det sidste hop</string>
+ <string name="enter_exit_nodes">Indtast udgangspunkter</string>
+ <string name="exclude_nodes">Ekskluder punkter</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Fingeraftryk, servernavne, lande og adresser der skal ekskluderes</string>
+ <string name="enter_exclude_nodes">Indtast noder at ekskludere</string>
+ <string name="strict_nodes">Strikte punkter</string>
+ <string name="use_only_these_specified_nodes">Brug *kun* disse specificerede punkter</string>
+ <string name="bridges">Broer</string>
+ <string name="use_bridges">Brug broer</string>
+ <string name="ip_address_and_port_of_bridges">IP adresser og porte på broer</string>
+ <string name="enter_bridge_addresses">Indtast bro-adresser</string>
+ <string name="relays">RelÊer</string>
+ <string name="relaying">RelÊfunktion</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Lad denne enhed vÊre et ikke-udgangs relÊ</string>
+ <string name="relay_port">RelÊets port</string>
+ <string name="listening_port_for_your_tor_relay">Port at dette Tor relÊ lytter på</string>
+ <string name="enter_or_port">Indtast OR port</string>
+ <string name="relay_nickname">RelÊnavn</string>
+ <string name="the_nickname_for_your_tor_relay">Kaldenavnet for dit Tor-relÊ</string>
+ <string name="enter_a_custom_relay_nickname">Indtast et valgfrit navn for relÊet</string>
+ <string name="reachable_addresses">Opnåelige adresser</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">KÞr som en klient bag en firewall med restrektive regler</string>
+ <string name="reachable_ports">Porte hvor forbindelse kan dannes</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Porte bag en restriktiv firewall hvor en forbindelse kan oprettes</string>
+ <string name="enter_ports">Indtast porte</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">aktiver fejlfindings-log til output (der skal anvendes adb eller aLogCat for at se dette)</string>
+ <string name="project_home">Projekt hjemmeside(r):</string>
+ <string name="third_party_software">Tredjeparts-software:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="found_existing_tor_process">fandt eksisterende Tor process...</string>
+ <string name="something_bad_happened">Noget slemt er sket. Check loggen</string>
+ <string name="unable_to_read_hidden_service_name">ikke i stand til at lÊse navnet på den skjulte service</string>
+ <string name="unable_to_start_tor">Kunne ikke starte Tor:</string>
+ <string name="pref_use_persistent_notifications">Vis altid ikonet i statuslinien når Orbot er forbundet til netvÊrket</string>
+ <string name="pref_use_persistent_notifications_title">Vis altid notifikationer</string>
+ <string name="set_locale_title">Sprog</string>
+ <string name="no_internet_connection_tor">Ingen internetforbindelse; Tor er på standby...</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="get_bridges_email">Mail</string>
+ <string name="activate">Aktiver</string>
+ <string name="hidden_services">Skjulte tjenester</string>
+ <string name="title_activity_hidden_services">Skjulte tjenester</string>
+ <string name="menu_hidden_services">Skjulte tjenester</string>
+ <string name="save">Gem</string>
+ <string name="name">Navn</string>
+ <string name="disable">Deaktivere</string>
+ <string name="enable">Aktiver</string>
+</resources>
diff --git a/app-mini/src/main/res/values-de-rAT/strings.xml b/app-mini/src/main/res/values-de-rAT/strings.xml
new file mode 100644
index 00000000..49c8dbc4
--- /dev/null
+++ b/app-mini/src/main/res/values-de-rAT/strings.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+</resources>
diff --git a/app-mini/src/main/res/values-de/poestrings.xml b/app-mini/src/main/res/values-de/poestrings.xml
new file mode 100644
index 00000000..052b7157
--- /dev/null
+++ b/app-mini/src/main/res/values-de/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Manchmal wird eine BrÌcke benötigt, um auf das Tor Netzwerk zugreifen zu können.</string>
+ <string name="action_more">ERZÃHL MIR MEHR</string>
+
+ <string name="vpn_setup">Sie können jede App aktivieren, um mit dem integrierten VPN-Tunnel, alles durch Tor zu leiten.</string>
+ <string name="vpn_setup_sub">Es macht dich nicht Anonym, aber es wird Dir helfen, durch Firewalls hindurch zu kommen.</string>
+ <string name="action_vpn_choose">WÃHLE APPS</string>
+
+ <string name="hello">Hallo</string>
+ <string name="welcome">Willkommen auf der Mobilen Plattform von Tor.</string>
+
+ <string name="browser_the_internet">Surfen Sie im Internet, so wie Sie es auch erwarten sollten.</string>
+ <string name="no_tracking">Keine Verfolgung. Keine Zensur.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-de/strings.xml b/app-mini/src/main/res/values-de/strings.xml
new file mode 100644
index 00000000..bf416e95
--- /dev/null
+++ b/app-mini/src/main/res/values-de/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot ist eine kostenlose Proxy-App, die es anderen Apps ermöglicht, das Internet sicherer zu nutzen. Orbot verwendet Tor, um Ihren Internetverkehr zu verschlÌsseln und versteckt ihn dann, indem er durch eine Reihe von Computern auf der ganzen Welt springt. Tor ist freie Software und ein offenes Netzwerk, das Ihnen hilft, sich gegen eine Form der NetzwerkÌberwachung zu verteidigen, die persönliche Freiheit und PrivatsphÀre, vertrauliche GeschÀftsaktivitÀten und Beziehungen sowie die staatliche Sicherheit, die als Verkehrsanalyse bezeichnet wird, bedroht.</string>
+ <string name="status_starting_up">Orbot startet âŠ</string>
+ <string name="status_activated">Verbunden mit dem Tor-Netzwerk</string>
+ <string name="status_disabled">Orbot ist Deaktiviert</string>
+ <string name="status_shutting_down">TorService wird heruntergefahren</string>
+ <string name="tor_process_starting">Tor-Programm wird gestartet âŠ</string>
+ <string name="tor_process_complete">abgeschlossen.</string>
+ <string name="menu_settings">Einstellungen</string>
+ <string name="menu_log">Protokoll</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stopp</string>
+ <string name="menu_about">Ãber</string>
+ <string name="main_layout_download">Herunterladen</string>
+ <string name="main_layout_upload">Hochladen</string>
+ <string name="button_about">Ãber</string>
+ <string name="menu_exit">Beenden</string>
+ <string name="menu_scan">BrÃŒckenQR scannen</string>
+ <string name="menu_share_bridge">BrÃŒckenQR-Code teilen</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Abbrechen</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">NÀhere Informationen zu Orbot</string>
+ <string name="wizard_details_msg">Orbot ist eine quelloffene Anwendung, die Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent und Polipo enthÀlt. Sie stellt einen lokalen HTTP-Proxy (Port: 8118) und einen SOCKS-Proxy (Port: 9050) in das Tor-Netzwerk bereit. Auf gerooteten GerÀten kann Orbot auch sÀmtliche Internetverbindungen durch Tor leiten.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Allgemein</string>
+ <string name="pref_start_boot_title">Orbot beim Systemstart ausfÃŒhren</string>
+ <string name="pref_start_boot_summary">Automatisches Starten von Orbot und Verbinden mit Tor beim Start des Android-GerÀtes</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Netzknoten-Konfiguration</string>
+ <string name="pref_node_configuration_summary">Dies sind Erweiterte Einstellungen, die Ihre AnonymitÀt beeintrÀchtigen können</string>
+ <string name="pref_entrance_node">Eingangs-Netzknoten</string>
+ <string name="pref_entrance_node_summary">FingerabdrÌcke, Spitznamen, LÀnder und Adressen fÌr den ersten Knotenpunkt</string>
+ <string name="pref_entrance_node_dialog">Eingangs-Netzknoten eingeben</string>
+ <string name="pref_allow_background_starts_title">Erlaube Starts im Hintergrund</string>
+ <string name="pref_allow_background_starts_summary">Alle Apps, Orbot mitteilen, dass es Tor und damit verbundene Dienste starten soll</string>
+ <string name="pref_proxy_title">Ausgehender Netzwerk-Proxy (Optional)</string>
+ <string name="pref_proxy_type_title">Ausgehender Vermittlungstyp</string>
+ <string name="pref_proxy_type_summary">Protokoll zur Verwendung des Proxy Servers: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Vermittlungstyp eingeben</string>
+ <string name="pref_proxy_host_title">Ausgehender Vermittlungsrechner</string>
+ <string name="pref_proxy_host_summary">Rechnername des Vermittlungsservers</string>
+ <string name="pref_proxy_host_dialog">Vermittlungsrechner eingeben</string>
+ <string name="pref_proxy_port_title">Ausgehender Proxy-Anschluss</string>
+ <string name="pref_proxy_port_summary">Anschluss des Vermittlungsservers</string>
+ <string name="pref_proxy_port_dialog">Vermittlungs-Anschluss eingeben</string>
+ <string name="pref_proxy_username_title">Ausgehender Proxy-Benutzername</string>
+ <string name="pref_proxy_username_summary">Proxy-Benutzername (Optional)</string>
+ <string name="pref_proxy_username_dialog">Proxy-Benutzernamen eingeben</string>
+ <string name="pref_proxy_password_title">Ausgehendes Proxy-Passwort</string>
+ <string name="pref_proxy_password_summary">Proxy-Passwort (Optional)</string>
+ <string name="pref_proxy_password_dialog">Proxy-Passwort eingeben</string>
+ <string name="couldn_t_start_tor_process_">Tor-Prozess konnte nicht gestartet werden:</string>
+ <string name="error">Fehler</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Ihre eingestellten ErreichbarenAdressen haben einen Ausnahmefehler verursacht!</string>
+ <string name="your_relay_settings_caused_an_exception_">Ihre Relais-Einstellungen haben einen Ausnahmefehler verursacht!</string>
+ <string name="exit_nodes">Ausgangs-Netzknoten</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">FingerabdrÌcke, Spitznamen, LÀnder und Adressen fÌr den letzten Knotenpunkt.</string>
+ <string name="enter_exit_nodes">Ausgangs-Netzknoten eingeben</string>
+ <string name="exclude_nodes">Netzknoten AusschlieÃen</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">FingerabdrÌcke, Spitznamen, LÀnder und Adressen, die ausgeschlossen werden sollen</string>
+ <string name="enter_exclude_nodes">Ausschluss-Netzknoten eingeben</string>
+ <string name="strict_nodes"> Strikte Netzknoten</string>
+ <string name="use_only_these_specified_nodes">Verwende *Nur* diese angegebenen Netzknoten</string>
+ <string name="bridges">BrÃŒcken</string>
+ <string name="use_bridges">BrÃŒcken benutzen</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Aktiviere alternative Zugangswege ins Tor-Netzwerk</string>
+ <string name="ip_address_and_port_of_bridges">IP-Adresse und Anschluss der BrÃŒcken</string>
+ <string name="enter_bridge_addresses">BrÃŒckenadressen eingeben</string>
+ <string name="relays">Relais</string>
+ <string name="relaying">Weiterleitung</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Aktivieren Sie ihr GerÀt als Nichtausgangsrelais</string>
+ <string name="relay_port">Relais-Anschluss</string>
+ <string name="listening_port_for_your_tor_relay">Anschluss, auf den Ihr Tor-Relais gehört werden soll</string>
+ <string name="enter_or_port">OR-Anschluss eingeben</string>
+ <string name="relay_nickname">Relais Spitzname</string>
+ <string name="the_nickname_for_your_tor_relay">Der Spitzname fÃŒr Dein Tor-Relais</string>
+ <string name="enter_a_custom_relay_nickname">Geben Sie ein benutzerdefinierten Relay Spitznamen ein</string>
+ <string name="reachable_addresses">Erreichbare Adressen</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Laufe als Client hinter einer Firewall mit restriktiven Richtlinien</string>
+ <string name="reachable_ports">Erreichbare AnschlÃŒsse</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">AnschlÃŒsse die hinter einer restriktiven Firewall erreichbar sind</string>
+ <string name="enter_ports">AnschlÃŒsse eingeben</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">Aktiviere Ausgabe des Fehlerprotokolls (benötigt adb oder aLogCat zur Ansicht)</string>
+ <string name="project_home">Internetseite(n) des Projektes:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Drittanbieteranwendungen:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Eine Anwendung möchte den Versteckten Server-Anschluss %1$s zum Tor-Netz öffnen. Dies ist sicher, wenn Sie der Anwendung vertrauen.</string>
+ <string name="found_existing_tor_process">bestehenden Tor-Prozess gefunden âŠ</string>
+ <string name="something_bad_happened">Etwas ist schief gelaufen. Bitte Protokoll ÃŒberprÃŒfen</string>
+ <string name="unable_to_read_hidden_service_name">Name des versteckten Dienstes kann nicht gelesen werden</string>
+ <string name="unable_to_start_tor">Tor kann nicht gestartet werden:</string>
+ <string name="pref_use_persistent_notifications">Behalte immer das Symbol in der Symbolleiste, wenn Orbot verbunden ist</string>
+ <string name="pref_use_persistent_notifications_title">AktivitÀtsanzeige</string>
+ <string name="pref_use_expanded_notifications">Zeige erweiterte Benachrichtigung mit Tor-Ausgangsland und IP an</string>
+ <string name="pref_use_expanded_notifications_title">Erweiterte Benachrichtigungen</string>
+ <string name="set_locale_title">Sprache</string>
+ <string name="no_internet_connection_tor">Keine Internetverbindung; Tor ist in Bereitschaft...</string>
+ <string name="pref_disable_network_title">Kein Automatischer Netzwerk Ruhezustand</string>
+ <string name="pref_disable_network_summary">Versetze Tor in den Ruhezustand wenn kein Internet verfÃŒgbar ist</string>
+ <string name="newnym">Sie haben zu einer Neuen Tor-IdentitÀt gewechselt!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Keine Netzwerk-Verbindung. Tor wird in den Ruhezustand versetztâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Netzwerk-Verbindung ist Gut. Tor wird aktiviert âŠ</string>
+ <string name="updating_settings_in_tor_service">Aktualisiere Einstellungen fÃŒr den Tor-Dienst</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Anschluss auf dem der SOCKS-Proxy von Tor bereitgestellt wird (Standard: 9050 oder 0 zum deaktivieren)</string>
+ <string name="pref_socks_dialog">SOCKS Anschluss-Konfiguration</string>
+ <string name="pref_transport_title">Tor TransProxy Anschluss</string>
+ <string name="pref_transport_summary">Anschluss auf dem der Transparente Proxy von Tor bereitgestellt wird (Standard: 9040 oder 0 zum deaktivieren)</string>
+ <string name="pref_transport_dialog">TransProxy Anschluss-Konfiguration</string>
+ <string name="pref_dnsport_title">Tor DNS-Anschluss</string>
+ <string name="pref_dnsport_summary">Anschluss, auf dem Tor seinen DNS bereitstellt (Standard: 5400 oder 0 zum deaktivieren)</string>
+ <string name="pref_dnsport_dialog">DNS Anschluss Konfiguration</string>
+ <string name="pref_torrc_title">Benutzerdefinierte Torrc-Konfiguration</string>
+ <string name="pref_torrc_summary">NUR FÃR EXPERTEN: torrc-Konfigurationszeilen direkt eingeben</string>
+ <string name="pref_torrc_dialog">Benutzerdefinierter Torrc</string>
+ <string name="kbps">Kbit/s</string>
+ <string name="mbps">Mbit/s</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">BrÃŒcken Aktualisiert</string>
+ <string name="restart_orbot_to_use_this_bridge_">Bitte Tor Erneut Starten um die Ãnderungen wirksam werden zu lassen</string>
+ <string name="menu_qr">QR Codes</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Wenn Ihr mobiles Netzwerk Tor blockiert, können Sie einen \"BrÌcken-Server\" als alternativen Weg verwenden. WÀhlen Sie eine der Optionen zum Konfigurieren und Testen ..,.</string>
+ <string name="bridge_mode">BrÃŒcken-Modus</string>
+ <string name="get_bridges_email">E-Mail</string>
+ <string name="get_bridges_web">Netz</string>
+ <string name="activate">Aktivieren</string>
+ <string name="apps_mode">VPN Modus</string>
+ <string name="send_email">E-Mail senden</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Sie können eine BrÌcken-Adresse per E-Mail, im Web oder per Scan eines BrÌckenQR-Codes erhalten. WÀhlen Sie unten \'E-Mail\' oder \'Web\', um eine BrÌckenadresse anzufordern.\n\nSobald Sie eine Adresse haben, fÌgen Sie diese bei den Einstellungen fÌr BrÌcken ein und starten Sie Orbot neu.</string>
+ <string name="vpn_default_world">Global (Automatisch)</string>
+ <string name="hidden_services">Versteckte Dienste</string>
+ <string name="title_activity_hidden_services">Versteckte Dienste</string>
+ <string name="menu_hidden_services">Versteckte Dienste</string>
+ <string name="save">Speichern</string>
+ <string name="local_port">Lokaler Anschluss</string>
+ <string name="onion_port">Onion Anschluss</string>
+ <string name="name">Name</string>
+ <string name="done">Fertig!</string>
+ <string name="invalid_port">UngÃŒltiger Anschluss</string>
+ <string name="copy_address_to_clipboard">Adresse in die Zwischenablage kopieren</string>
+ <string name="show_auth_cookie">Authentifikationscookie anzeigen</string>
+ <string name="backup_service">Sicherungsdienst</string>
+ <string name="delete_service">Dienst löschen</string>
+ <string name="backup_saved_at_external_storage">Sicherung auf externem Speicher gespeichert </string>
+ <string name="backup_restored">Sicherung wiederhergestellt</string>
+ <string name="filemanager_not_available">Dateimanager nicht verfÃŒgbar</string>
+ <string name="please_grant_permissions_for_external_storage">Bitte Zugriffsrechte auf externen Speicher gewÀhren</string>
+ <string name="restore_backup">Sicherung wiederherstellen</string>
+ <string name="create_a_backup_first">Erstellen Sie zuerst eine Sicherung</string>
+ <string name="name_can_t_be_empty">Name darf nicht leer sein</string>
+ <string name="fields_can_t_be_empty">Felder dÃŒrfen nicht leer sein</string>
+ <string name="start_tor_again_for_finish_the_process">Tor neu starten, um den Vorgang abzuschlieÃen</string>
+ <string name="confirm_service_deletion">Löschen des Dienst bestÀtigen</string>
+ <string name="click_again_for_backup">Zum Sichern noch einmal klicken</string>
+ <string name="service_type">Dienst-Typ</string>
+ <string name="auth_cookie">Authentifikationscookie</string>
+ <string name="copy_cookie_to_clipboard">Cookie in die Zwischenablage kopieren</string>
+ <string name="auth_cookie_was_not_configured">Es wurde kein Authentifikationscookie festgelegt</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Bitte Orbot zum Aktivieren der Ãnderungen neustarten</string>
+ <string name="client_cookies">Client Cookies</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">UngÃŒltige .onion-Adresse</string>
+ <string name="cookie_from_QR">Lese QR-Code</string>
+ <string name="backup_cookie">Cookie sichern</string>
+ <string name="delete_cookie">Cookie löschen</string>
+ <string name="confirm_cookie_deletion">Cookie-Löschung bestÀtigen</string>
+ <string name="hosted_services">Gehostete Dienste</string>
+ <string name="share_as_qr">Teile als QR-Code</string>
+ <string name="disable">Deaktivieren</string>
+ <string name="enable">Aktivieren</string>
+ <string name="consider_disable_battery_optimizations">Deaktivieren Sie die Akku-Optimierung</string>
+ <string name="consider_enable_battery_optimizations">Aktivieren Sie die Akku-Optimierung</string>
+ <string name="pref_isolate_dest">Isolierte Zieladressen</string>
+ <string name="pref_isolate_dest_summary">Verwenden Sie fÃŒr jeden Netzwerk-Kreislauf eine andere Zieladresse</string>
+ <string name="no_transproxy_warning_short">ACHTUNG: Transproxying wird nicht mehr unterstÃŒtzt</string>
+ <string name="no_transproxy_warning">ACHTUNG: Transparente Proxy-UnterstÃŒtzung wird nicht mehr unterstÃŒtzt. Verwenden Sie stattdessen Orbot Apps VPN.</string>
+ <string name="pref_connection_padding">VerbindungsauffÃŒllung</string>
+ <string name="pref_connection_padding_summary">Aktiviert immer die VerbindungsauffÃŒllung, um einige Formen der Verkehrsanalyse zu verhindern. Standard: Automatisch</string>
+ <string name="pref_reduced_connection_padding">Reduzierte VerbindungsauffÃŒllung</string>
+ <string name="pref_reduced_connection_padding_summary">SchlieÃt Relaisverbindungen frÃŒher und sendet weniger FÃŒllpakete, um die Daten und die Batterie zu reduzieren</string>
+ <string name="app_shortcuts">Tor-Aktivierte Apps</string>
+ <string name="testing_bridges">BrÃŒcken-Verbindung zu Tor wird getestet ....</string>
+ <string name="testing_bridges_success">Erfolgreich. BrÃŒcken Konfiguration ist gut!</string>
+ <string name="testing_bridges_fail">GESCHEITERT. Versuchen Sie eine andere Option</string>
+ <string name="bridge_direct_connect">Direkt mit Tor verbinden (am Besten)</string>
+ <string name="bridge_community">Verbinden Sie sich ÃŒber Community-Server</string>
+ <string name="bridge_cloud">Verbinden Sie sich ÃŒber Cloud-Server</string>
+ <string name="bridges_get_new">Fordere Neue BrÌcken an... (Wenn alles andere fehlschlÀgt)</string>
+ <string name="trouble_connecting">Probleme beim Verbinden?</string>
+ <string name="full_device_vpn">VollstÀndiger GerÀte-VPN</string>
+ <string name="vpn_disabled">VPN Deaktiviert</string>
+</resources>
diff --git a/app-mini/src/main/res/values-el/poestrings.xml b/app-mini/src/main/res/values-el/poestrings.xml
new file mode 100644
index 00000000..0676df68
--- /dev/null
+++ b/app-mini/src/main/res/values-el/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">ÎεÏικÎÏ ÏοÏÎÏ ÏÏειάζεÏÏε Όια γÎÏÏ
Ïα για Μα ÏÏηÏιΌοÏοίηÏεÏε Ïο Tor.</string>
+ <string name="action_more">Î ÎΣ ÎÎÎ¥ Î ÎΡÎΣΣÎ΀ÎΡÎ</string>
+
+ <string name="vpn_setup">ÎÏοÏείÏε Μα εΜεÏγοÏοιήÏεÏε οÏοιαΎήÏοÏε εÏαÏΌογή για Μα ÏÏηÏιΌοÏοίηÏεÏε Ïο Tor ÎŒÎÏÏ ÎµÎœÏÏ Ïο εΜÏÏΌαÏÏÎŒÎΜοÏ
VPN.</string>
+ <string name="vpn_setup_sub">ÎÏ
ÏÏ ÎžÎ± γίΜει αΜÏΜÏ
Όα, αλλά Ξα ÏÎ±Ï Î²Î¿Î·ÎžÎ®Ïει Μα ÏεÏάÏεÏε ÎŒÎÏα αÏÏ ÏείÏη ÏÏοÏÏαÏίαÏ.</string>
+ <string name="action_vpn_choose">ÎÎ ÎÎÎÎÎ ÎΊÎΡÎÎÎΩÎ</string>
+
+ <string name="hello">Îεια</string>
+ <string name="welcome">ÎαλÏÏ Î®ÏΞαÏε ÏÏο Tor για κιΜηÏÏ.</string>
+
+ <string name="browser_the_internet">ΠεÏιηγηΞείÏε ÏÏο ΎιαΎίκÏÏ
ο, ÏÏÏÏ ÎŒÏοÏείÏε Μα ÏεÏιΌÎΜεÏε ÏÏι Ξα ÎÏÏεÏε.</string>
+ <string name="no_tracking">ΧÏÏÎ¯Ï ÎµÎœÏοÏιÏÎŒÏ. ΧÏÏÎ¯Ï Î»Î¿Î³Î¿ÎºÏιÏία.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-el/strings.xml b/app-mini/src/main/res/values-el/strings.xml
new file mode 100644
index 00000000..140ae79a
--- /dev/null
+++ b/app-mini/src/main/res/values-el/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">΀ο Orbot είΜαι Όια ÎŽÏÏεάΜ εÏαÏΌογή ΌεÏολάβηÏÎ·Ï ÏοÏ
εÏιÏÏÎÏει Ïε Î¬Î»Î»ÎµÏ ÎµÏαÏΌογÎÏ ÎœÎ± ÏÏηÏιΌοÏοιοÏΜ Ïο ÎιαΎίκÏÏ
ο Όε ÏεÏιÏÏÏÏεÏη αÏÏάλεια. ΀ο Orbot ÏÏηÏιΌοÏοιεί ÏοΜ Tor για ÏηΜ κÏÏ
ÏÏογÏάÏηÏη ÏÎ·Ï ÎŽÎ¹Î±ÎŽÎ¹ÎºÏÏ
Î±ÎºÎ®Ï ÏÎ±Ï ÎºÎ¯ÎœÎ·ÏÎ·Ï ÎºÎ±Î¹ ÏÏη ÏÏ
ΜÎÏεια ÏηΜ κÏÏβει αΜαÏηΎÏΜÏÎ±Ï ÎŒÎÏÏ ÎŒÎ¹Î±Ï ÏειÏÎ¬Ï Ï
ÏολογιÏÏÏΜ Ïε Ïλο ÏοΜ κÏÏΌο. ΀ο Tor είΜαι ελεÏΞεÏο λογιÏÎŒÎ¹ÎºÏ ÎºÎ±Î¹ ÎΜα αΜοιÏÏÏ ÎŽÎ¯ÎºÏÏ
ο ÏοÏ
ÏÎ±Ï Î²Î¿Î·ÎžÎ¬ Μα ÏÏαΞείÏε εΜάΜÏια Ïε Όια ΌοÏÏή εÏιÏήÏηÏÎ·Ï ÎŽÎ¹ÎºÏÏοÏ
ÏοÏ
αÏειλεί ÏηΜ ÏÏοÏÏÏική ελεÏ
ΞεÏία και ιΎιÏÏικÏÏηÏα, εΌÏιÏÏεÏ
ÏικÎÏ ÎµÏιÏειÏηΌαÏικÎÏ ÎŽÏαÏÏηÏιÏÏηÏÎµÏ ÎºÎ±Î¹ ÏÏÎ
ÏειÏ, και ÏηΜ κÏαÏική αÏÏάλεια γΜÏÏÏή ÏÏ traffic analysis.</string>
+ <string name="status_starting_up">΀ο Orbot ΟεκιΜά</string>
+ <string name="status_activated">ΣÏ
ΜΎÎΞηκε ÏÏο ΎίκÏÏ
ο Tor</string>
+ <string name="status_disabled">\"΀ο Orbot είΜαι ÎÏεΜεÏγοÏοιηΌÎΜο</string>
+ <string name="status_shutting_down">Î Ï
ÏηÏεÏία Tor ÏεÏΌαÏίζεÏαι</string>
+ <string name="tor_process_starting">ÎκκίΜηÏη ÏοÏ
ÏελάÏη Tor...</string>
+ <string name="tor_process_complete">ολοκληÏÏΞηκε...</string>
+ <string name="menu_settings">ΡÏ
ΞΌίÏειÏ</string>
+ <string name="menu_log">ÎαÏαγÏαÏή</string>
+ <string name="menu_start">ÎκκίΜηÏη</string>
+ <string name="menu_stop">ÎιακοÏή</string>
+ <string name="menu_about">ΣÏεÏικά</string>
+ <string name="main_layout_download">ÎήÏη (ÏαÏÏÏηÏα/ÏÏΜολο)</string>
+ <string name="main_layout_upload">ÎÏοÏÏολή (ÏαÏÏÏηÏα/ÏÏΜολο)</string>
+ <string name="button_about">ΣÏεÏικά</string>
+ <string name="menu_exit">ÎΟοΎοÏ</string>
+ <string name="menu_scan">ΣάÏÏÏη BridgeQR</string>
+ <string name="menu_share_bridge">ÎοιΜή ÏÏήÏη BridgeQR</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">ÎκÏ
Ïο</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ÎεÏικÎÏ Î»ÎµÏÏοΌÎÏÎµÎ¹ÎµÏ Î³Î¹Î± Ïο Orbot</string>
+ <string name="wizard_details_msg">΀ο Orbot είΜαι Όια εÏαÏΌογή αΜοικÏÎ¿Ï Î»Î¿Î³Î¹ÏÎŒÎ¹ÎºÎ¿Ï ÏοÏ
ÏεÏιÎÏει Ïα Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent καί Polipo. ÎιαΞÎÏει ÏοÏικοÏÏ ÏληÏεΟοÏÏιοÏ
Ï ÎŽÎ¹Î±ÎºÎ¿ÎŒÎ¹ÏÏÎÏ HTTP (8118) και SOCKS (9050) για Ïο ΎίκÏÏ
ο Tor. Σε ÏÏ
ÏκεÏ
ÎÏ ÏοÏ
ÎÏοÏ
Μ ΎιαΌοÏÏÏΞεί για Ïιζική ÏÏήÏη, Ïο Orbot ÎŒÏοÏεί Μα ΌεÏαΎίΎει Ïλη ÏηΜ ΎιαΎÏ
κÏιακή κÏ
κλοÏοÏία ÎŒÎÏÏ Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ÎεΜικά</string>
+ <string name="pref_start_boot_title">ÎΜαÏΟη ÏοÏ
Orbot καÏά ÏηΜ εκκίΜηÏη</string>
+ <string name="pref_start_boot_summary">ÎÏ
ÏÏΌαÏη ÎΜαÏΟη ÏοÏ
Orbot και ÏÏΜΎεÏη ÏÏο Tor ÏÏαΜ ΟεκιΜά η Android ÏÏ
ÏκεÏ
ή ÏαÏ</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ΡÏΞΌιÏη κÏΌβοÏ
</string>
+ <string name="pref_node_configuration_summary">Îι ÏÏ
ΞΌίÏÎµÎ¹Ï Î±Ï
ÏÎÏ ÎµÎ¯ÎœÎ±Î¹ ÏÏοÏÏÏηΌÎÎœÎµÏ ÎºÎ±Î¹ ÎŒÏοÏοÏΜ Μα ΌειÏÏοÏ
Μ ÏηΜ αΜÏΜÏ
Όία ÏαÏ.</string>
+ <string name="pref_entrance_node">ÎÏΌβοι ειÏÏΎοÏ
</string>
+ <string name="pref_entrance_node_summary">ÎÏοÏÏ
ÏÏΌαÏα, ÏεÏ
ÎŽÏΜÏ
Όα, ÏÏÏÎµÏ ÎºÎ±Î¹ ΎιεÏ
ΞÏΜÏÎµÎ¹Ï Î³Î¹Î± ÏηΜ ÏÏÏÏη ÏÏΜΎεÏη</string>
+ <string name="pref_entrance_node_dialog">ÎιÏάγεÏε κÏΌβοÏ
Ï ÎµÎ¹ÏαγÏγήÏ</string>
+ <string name="pref_allow_background_starts_title">Îα εÏιÏÏÎÏοΜÏαι εκκιΜήÏÎµÎ¹Ï ÏÏο ÏαÏαÏκήΜιο</string>
+ <string name="pref_allow_background_starts_summary">Îα εÏιÏÏÎÏεÏαι Ïε οÏοιαΎήÏοÏε εÏαÏΌογή Μα Ïει ÏÏο Orbot Μα ΟεκιΜήÏει ÏοΜ Tor και ÏÏεÏικÎÏ Ï
ÏηÏεÏίεÏ</string>
+ <string name="pref_proxy_title">ÎιακοΌιÏÏÎ®Ï ÎŒÎµÏολάβηÏÎ·Ï ÎµÎŸÎµÏÏοΌÎΜÏΜ ΎεΎοΌÎΜÏΜ</string>
+ <string name="pref_proxy_type_title">΀ÏÏÎ¿Ï ÏοÏ
ΎιακοΌιÏÏή ΌεÏολάβηÏÎ·Ï ÎµÎŸÎµÏÏοΌÎΜÏΜ ΎεΎοΌÎΜÏΜ</string>
+ <string name="pref_proxy_type_summary">Î ÏÏÏÏκολλο ÏοÏ
ΎιακοΌιÏÏή ΌεÏολάβηÏηÏ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">ÎιÏάγεÏε ÏÏÏο ΎιακοΌιÏÏή ΌεÏολάβηÏηÏ</string>
+ <string name="pref_proxy_host_title">ÎιακοΌιÏÏÎ®Ï ÎŒÎµÏολάβηÏÎ·Ï ÎµÎŸÎµÏÏÏΌεΜÏΜ ΎεΎοΌÎΜÏΜ</string>
+ <string name="pref_proxy_host_summary">Hostname ÎιακοΌιÏÏή ÎεÏολάβηÏηÏ</string>
+ <string name="pref_proxy_host_dialog">ÎιÏάγεÏε ÏοΜ Ï
ÏολογιÏÏή για ÏοΜ ΎιακοΌιÏÏή ΌεÏολάβηÏηÏ</string>
+ <string name="pref_proxy_port_title">ÎÏÏα εΟεÏÏοΌÎΜÏΜ ÏοÏ
ΎιακοΌιÏÏή ΌεÏολάβηÏηÏ</string>
+ <string name="pref_proxy_port_summary">ÎÏÏα ÎιακοΌιÏÏή ÎεÏολάβηÏηÏ</string>
+ <string name="pref_proxy_port_dialog">ÎιÏάγεÏε ÏηΜ ΞÏÏα ÏοÏ
ΎιακοΌιÏÏή ΌεÏολάβηÏηÏ</string>
+ <string name="pref_proxy_username_title">ÎΜοΌα ÏÏήÏÏη για ÏοΜ ÎιακοΌιÏÏή ÎεÏολάβηÏÎ·Ï ÎµÎŸÎµÏÏÏΌεΜÏΜ ΎεΎοΌÎΜÏΜ</string>
+ <string name="pref_proxy_username_summary">ÎΜοΌα ÏÏήÏÏη για Ïο ÎιακοΌιÏÏή ÎεÏολάβηÏÎ·Ï (Î ÏοαιÏεÏικÏ)</string>
+ <string name="pref_proxy_username_dialog">ÎιÏάγεÏε Ïο ÎΜοΌα ΧÏήÏÏη για Ïο ÎιακοΌιÏÏή ÎεÏολάβηÏηÏ</string>
+ <string name="pref_proxy_password_title">ÎÏΎικÏÏ Î³Î¹Î± ÏοΜ ÎιακοΌιÏÏή ÎεÏολάβηÏÎ·Ï ÎµÎŸÎµÏÏÏΌεΜÏΜ ΎεΎοΌÎΜÏΜ</string>
+ <string name="pref_proxy_password_summary">ÎÏΎικÏÏ Î³Î¹Î± ÏοΜ ÎιακοΌιÏÏή ÎεÏολάβηÏÎ·Ï (Î ÏοαιÏεÏικÏ)</string>
+ <string name="pref_proxy_password_dialog">ÎιÏάγεÏε ÏοΜ ÎÏÎŽÎ¹ÎºÏ Î³Î¹Î± ÏοΜ ÎιακοΌιÏÏή ÎεÏολάβηÏηÏ</string>
+ <string name="couldn_t_start_tor_process_">ÎÎŽÏ
ΜαΌία εκκίΜηÏÎ·Ï ÏÎ·Ï ÎŽÎ¹ÎµÏγαÏÎ¯Î±Ï Tor:</string>
+ <string name="error">ΣÏάλΌα</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Îι ÏÏ
ΞΌίÏÎµÎ¹Ï ReachableAddresses ÏÏοκάλεÏαΜ Όια εΟαίÏεÏη!</string>
+ <string name="your_relay_settings_caused_an_exception_">Îι ÏÏ
ΞΌίÏÎµÎ¹Ï Î±ÎœÎ±ÎŒÎµÏαΎÏÏη ÏÎ±Ï ÏÏοκάλεÏαΜ Όια εΟαίÏεÏη!</string>
+ <string name="exit_nodes">ÎÏΌβοι εΟÏΎοÏ
</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ÎÏοÏÏ
ÏÏΌαÏα, ÏεÏ
ÎŽÏΜÏ
Όα, ÏÏÏÎµÏ ÎºÎ±Î¹ ΎιεÏ
ΞÏΜÏÎµÎ¹Ï ÏÎ·Ï ÏελεÏ
ÏÎ±Î¯Î±Ï ÏÏΜΎεÏηÏ</string>
+ <string name="enter_exit_nodes">ÎιÏάγεÏε κÏΌβοÏ
Ï ÎµÎŸÏΎοÏ
</string>
+ <string name="exclude_nodes">ÎΟαιÏεÏÎοι κÏΌβοι</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ÎÏοÏÏ
ÏÏΌαÏα, ÏεÏ
ÎŽÏΜÏ
Όα, ÏÏÏÎµÏ ÎºÎ±Î¹ ΎιεÏ
ΞÏΜÏÎµÎ¹Ï ÏÏÎ¿Ï ÎµÎŸÎ±Î¯ÏεÏη</string>
+ <string name="enter_exclude_nodes">ÎιÏάγεÏε ÎΟαιÏεÏÎοÏ
Ï ÎºÏΌβοÏ
Ï</string>
+ <string name="strict_nodes">ÎÏοκλειÏÏικοί κÏΌβοι</string>
+ <string name="use_only_these_specified_nodes">ΧÏήÏη *ÎŒÏΜοΜ* αÏ
ÏÏΜ ÏÏΜ ÏÏ
γκεκÏιΌÎΜÏΜ κÏΌβÏΜ</string>
+ <string name="bridges">ÎÎÏÏ
ÏεÏ</string>
+ <string name="use_bridges">ΧÏήÏη γεÏÏ
ÏÏΜ</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">ÎΜεÏγοÏοίηÏη εΜαλλακÏικÏΜ κÏΌβÏΜ ειÏÏΎοÏ
ÏÏο ΎίκÏÏ
ο Tor</string>
+ <string name="ip_address_and_port_of_bridges">ÎιεÏΞÏ
ΜÏη ÎΡ και ΞÏÏα ÏÏΜ γεÏÏ
ÏÏΜ</string>
+ <string name="enter_bridge_addresses">ÎιÏάγεÏε ÏηΜ ΎιεÏΞÏ
ΜÏη ÏÎ·Ï Î³ÎÏÏ
ÏαÏ</string>
+ <string name="relays">ÎΜαΌεÏαΎÏÏεÏ</string>
+ <string name="relaying">ÎίΜεÏαι αΜαΌεÏάΎοÏη</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ÎεÏαÏÏÎÏÏε ÏηΜ ÏÏ
ÏκεÏ
ή ÏÎ±Ï Ïε ÎΜα αΜαΌεÏαΎÏÏη Όη-εΟÏΎοÏ
</string>
+ <string name="relay_port">ÎÏÏα αΜαΌεÏάΎοÏηÏ</string>
+ <string name="listening_port_for_your_tor_relay">ÎÏÏα ακÏÏαÏÎ·Ï Î³Î¹Î± ÏοΜ αΜαΌεÏαΎÏÏη ÏαÏ</string>
+ <string name="enter_or_port">ÎιÏάγεÏε ÏηΜ ΞÏÏα OR</string>
+ <string name="relay_nickname">ΚεÏ
ÎŽÏΜÏ
Όο ÏοÏ
αΜαΌεÏαΎÏÏη</string>
+ <string name="the_nickname_for_your_tor_relay">΀ο ÏεÏ
ÎŽÏΜÏ
Όο ÏοÏ
αΜαΌεÏαΎÏÏη ÏÎ±Ï Tor</string>
+ <string name="enter_a_custom_relay_nickname">ÎιÏάγεÏε ÎΜα ÏÏοÏιΌÏΌεΜο ÏεÏ
ÎŽÏΜÏ
Όο αΜαΌεÏαΎÏÏη</string>
+ <string name="reachable_addresses">Î ÏοÏιÏÎÏ ÎŽÎ¹ÎµÏ
ΞÏΜÏειÏ</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">ÎκÏÎλεÏη ÏÏ ÏελάÏη ÏίÏÏ Î±ÏÏ ÏοίÏÎ¿Ï ÏÏοÏÏαÏÎ¯Î±Ï ÎŒÎµ ÏεÏιοÏιÏÏικÎÏ ÏολιÏικÎÏ</string>
+ <string name="reachable_ports">Î ÏοÏιÏÎÏ ÎžÏÏεÏ</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Î ÏοÏιÏÎÏ ÎžÏÏÎµÏ ÏίÏÏ Î±ÏÏ ÏεÏιοÏιÏÏÎ¹ÎºÏ ÏοίÏÎ¿Ï ÏÏοÏÏαÏίαÏ</string>
+ <string name="enter_ports">ÎιÏάγεÏε ΞÏÏεÏ</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">εΜεÏγοÏοίηÏη καÏαγÏαÏÏΜ αÏοÏÏαλΌάÏÏÏÎ·Ï (για ÏηΜ ÏÏοβολή ÏοÏ
Ï Î±ÏαιÏείÏαι ÏÏήÏη adb ή aLogCat)</string>
+ <string name="project_home">ÎÏÏοÏÎµÎ»Î¯ÎŽÎµÏ ÏοÏ
ÎÏγοÏ
:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ÎογιÏÎŒÎ¹ÎºÏ ÏÏίÏÏΜ:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">ÎάÏοια εÏαÏΌογή ÏÏοÏÏαΞεί Μα αΜοίΟει ÏηΜ κÏÏ
Ïή ΞÏÏα ΎιακοΌιÏÏή %1$sÏÏο ΎίκÏÏ
ο Tor. Î ÏÏκειÏαι για αÏÏαλή εΜÎÏγεια, εÏÏÏοΜ γΜÏÏίζεÏε ÏηΜ εÏαÏΌογή.</string>
+ <string name="found_existing_tor_process">αΜαζήÏηÏη ΎιεÏγαÏιÏΜ Tor...</string>
+ <string name="something_bad_happened">ÎάÏι ÎºÎ±ÎºÏ ÏÏ
ΜÎβη. ÎλÎγΟÏε ÏÎ¹Ï ÎºÎ±ÏαγÏαÏÎÏ</string>
+ <string name="unable_to_read_hidden_service_name">αΎÏ
ΜαΌία αΜάγΜÏÏÎ·Ï ÏοÏ
οΜÏΌαÏÎ¿Ï ÏÎ·Ï ÎºÏÏ
ÏÎ®Ï Ï
ÏηÏεÏίαÏ</string>
+ <string name="unable_to_start_tor">ÎÎŽÏ
ΜαΌία εκκίΜηÏÎ·Ï ÏοÏ
Tor:</string>
+ <string name="pref_use_persistent_notifications">Îα ΎιαÏηÏείÏαι ÏάΜÏοÏε Ïο εικοΜίΎιο ÏÏηΜ γÏαΌΌή εÏγαλείÏΜ ÏÏαΜ Ïο Orbot ÏÏ
ΜΎÎεÏαι</string>
+ <string name="pref_use_persistent_notifications_title">ÎιΎοÏοιήÏÎµÎ¹Ï ÎŽÎ¹Î±ÏκοÏÏ ÏÏΜΎεÏηÏ</string>
+ <string name="pref_use_expanded_notifications">ÎÎŒÏάΜιÏη εκÏεÏαΌÎÎœÎ·Ï ÎµÎ¹ÎŽÎ¿ÏοίηÏÎ·Ï ÎŒÎµ Ïη ÏÏÏα εΟÏΎοÏ
ÏοÏ
Tor και Ïη ΎιεÏΞÏ
ΜÏη IP</string>
+ <string name="pref_use_expanded_notifications_title">ÎÏεκÏαΌÎÎœÎµÏ ÎιΎοÏοιήÏειÏ</string>
+ <string name="set_locale_title">ÎλÏÏÏα </string>
+ <string name="no_internet_connection_tor">ÎεΜ Ï
ÏάÏÏει ÏÏΜΎεÏη ÏÏο ΎιαΎίκÏÏ
ο. Î Tor είΜαι Ïε αΜαΌοΜή...</string>
+ <string name="pref_disable_network_title">ΧÏÏÎ¯Ï ÎÏ
ÏÏΌαÏη ÎΜαÏÏολή ÎικÏÏοÏ
</string>
+ <string name="pref_disable_network_summary">ÎÎÏε Ïο Tor Ïε λειÏοÏ
Ïγία sleep ÏÏαΜ ΎεΜ Ï
ÏάÏÏει ΎιαΞÎÏιΌη ÏÏΜΎεÏη Înternet</string>
+ <string name="newnym">ÎÏεÏε αλλάΟει εÏιÏÏ
ÏÏÏ ÏηΜ ÏαÏ
ÏÏÏηÏα ÏÎ±Ï ÏÏο Tor! </string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÎεΜ Ï
ÏάÏÏει ÏÏΜΎεÏη Όε ΎίκÏÏ
ο. Î Tor ÎŒÏαίΜει Ïε καÏάÏÏαÏη αΜαΌοΜήÏ...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Î ÏÏΜΎεÏη ΎικÏÏοÏ
είΜαι καλή. ÎίΜεÏαι αÏÏÏΜιÏη ÏοÏ
Tor...</string>
+ <string name="updating_settings_in_tor_service">εΜηΌÎÏÏÏη ÏÏ
ΞΌίÏεÏΜ ÏÏηΜ Ï
ÏηÏεÏία Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">ÎÏÏα ÏοÏ
ÏÏοÏÏÎÏει ο Tor ÏÏο SOCKS proxy ÏοÏ
(ÏÏοεÏιλογή: 9050 ή 0 για αÏεΜεÏγοÏοίηÏη)</string>
+ <string name="pref_socks_dialog">ÎιάÏΞÏÏÏη ÎÏÏÎ±Ï SOCKS</string>
+ <string name="pref_transport_title">ÎÏÏα Tor TransProxy </string>
+ <string name="pref_transport_summary">ÎÏÏα ÏοÏ
ÏÏοÏÏÎÏει ο Tor ÏÏοΜ Transparent Proxy ÏοÏ
(ÏÏοεÏιλογή: 9040 ή 0 για αÏεΜεÏγοÏοίηÏη)</string>
+ <string name="pref_transport_dialog">ÎιάÏΞÏÏÏη ÎÏÏÎ±Ï TransProxy</string>
+ <string name="pref_dnsport_title">Tor ÎÏÏα DNS </string>
+ <string name="pref_dnsport_summary">ÎÏÏα ÏοÏ
ÏÏοÏÏÎÏει ο Tor ÏÏο DNS ÏοÏ
(ÏÏοεÏιλογή: 5400 ή 0 για αÏεΜεÏγοÏοίηÏη)</string>
+ <string name="pref_dnsport_dialog">ÎιάÏΞÏÏÏη ÎÏÏÎ±Ï DNS</string>
+ <string name="pref_torrc_title">Torrc Custom Config</string>
+ <string name="pref_torrc_summary">ÎÎÎÎ ÎÎÎ ÎÎÎÎÎÎΥΣ: ÏληκÏÏολογήÏÏε αÏεÏ
ÎžÎµÎ¯Î±Ï torrc config γÏαΌΌÎÏ</string>
+ <string name="pref_torrc_dialog">Î ÏοÏαÏΌογή Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Îι γÎÏÏ
ÏÎµÏ ÎµÎœÎ·ÎŒÎµÏÏΞηκαΜ</string>
+ <string name="restart_orbot_to_use_this_bridge_">ΠαÏακαλοÏΌε εÏαΜεκκιΜήÏÏε Ïο Orbot για Μα εΜεÏγοÏοιήÏεÏε ÏÎ¹Ï Î±Î»Î»Î±Î³ÎÏ</string>
+ <string name="menu_qr">ÎÏÎŽÎ¹ÎºÎµÏ QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">ÎΜ Ïο ΎίκÏÏ
ο κιΜηÏÎ®Ï ÏηλεÏÏÎœÎ¯Î±Ï ÏÎ±Ï ÎŒÏλοκάÏει εΜεÏγά Ïο Tor, ÎŒÏοÏείÏε Μα ÏÏηÏιΌοÏοιήÏεÏε Όια γÎÏÏ
Ïα για Μα ÎÏεÏε ÏÏÏÏβαÏη ÏÏο ΎίκÏÏ
ο. ÎÎ ÎÎÎÎ΀ΠÎΜαΜ αÏÏ ÏοÏ
Ï ÏαÏαÏÎ¬ÎœÏ ÏÏÏοÏ
Ï Î³ÎÏÏ
ÏÎ±Ï Î³Î¹Î± Μα εΜεÏγοÏοιήÏεÏε ÏÎ¹Ï Î³ÎÏÏ
ÏεÏ.</string>
+ <string name="bridge_mode">ÎειÏοÏ
Ïγία ÎÎÏÏ
ÏαÏ</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">ÎΜεÏγοÏοίηÏη</string>
+ <string name="apps_mode">ÎειÏοÏ
Ïγία VPN</string>
+ <string name="send_email">ΣÏείλÏε Email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ÎÏοÏείÏε Μα ÏάÏεÏε Όια ΎιεÏΞÏ
ΜÏη γÎÏÏ
ÏÎ±Ï ÎŒÎÏÏ Î·Î»ÎµÎºÏÏÎ¿ÎœÎ¹ÎºÎ¿Ï ÏαÏÏ
ÎŽÏοΌείοÏ
, ÏÏοΜ ιÏÏÏ Î® Όε Ïη ÏάÏÏÏη κÏΎικα QR γÎÏÏ
ÏαÏ. ÎÏιλÎΟÏε \'Email\' ή \'Web\' ÏαÏακάÏÏ Î³Î¹Î± Μα ζηÏήÏεÏε Όια ΎιεÏΞÏ
ΜÏη γÎÏÏ
ÏαÏ.\n\nÎÏαΜ ÎÏεÏε Όια ΎιεÏΞÏ
ΜÏη, αΜÏιγÏάÏÏε Ïο & εÏικολλήÏÏε Ïο ÏÏηΜ ÏÏοÏίΌηÏη \"Bridges\" ÏÏη ÏÏΞΌιÏη ÏοÏ
Orbot και εÏαΜεκκιΜήÏÏε.</string>
+ <string name="vpn_default_world">ΠαγκÏÏΌια (Auto)</string>
+ <string name="hidden_services">ÎÏοκÏÏ
ÏÎµÏ Ï
ÏηÏεÏιεÏ</string>
+ <string name="title_activity_hidden_services">ÎÏοκÏÏ
ÏÎµÏ Ï
ÏηÏεÏιεÏ</string>
+ <string name="menu_hidden_services">ÎÏοκÏÏ
ÏÎµÏ Ï
ÏηÏεÏιεÏ</string>
+ <string name="save">ÎÏοΞήκεÏ
Ïη</string>
+ <string name="local_port">΀οÏική ΞÏÏα</string>
+ <string name="onion_port">ÎÏÏα ÎÏεΌΌÏ
ΎιοÏ</string>
+ <string name="name">ÎΜοΌα</string>
+ <string name="done">ÎγιΜε!</string>
+ <string name="invalid_port">ÎκÏ
Ïη ΞÏÏα</string>
+ <string name="copy_address_to_clipboard">ÎΜÏιγÏαÏή ΎιÎÏ
ΞÏ
ΜÏÎ·Ï ÏÏο ÏÏÏÏειÏο</string>
+ <string name="show_auth_cookie">ÎÎŒÏάΜιÏη αΜαγΜÏÏιÏÏÎ¹ÎºÎ¿Ï cookie</string>
+ <string name="backup_service">Î¥ÏηÏεÏία ΎηΌιοÏ
ÏÎ³Î¯Î±Ï Î±ÎœÏιγÏάÏοÏ
αÏÏαλείαÏ</string>
+ <string name="delete_service">ÎιαγÏαÏή Ï
ÏηÏεÏίαÏ</string>
+ <string name="backup_saved_at_external_storage">΀ο αΜÏίγÏάÏο αÏÏÎ±Î»ÎµÎ¯Î±Ï Î±ÏοΞηκεÏΞηκε Ïε εΟÏÏεÏÎ¹ÎºÏ ÎŒÎÏο αÏοΞήκεÏ
ÏηÏ</string>
+ <string name="backup_restored">΀ο αΜÏίγÏαÏο αÏÏÎ±Î»ÎµÎ¯Î±Ï ÎµÏαΜαÏÎÏΞηκε</string>
+ <string name="filemanager_not_available">ΠΎιαÏειÏιÏÏÎ®Ï Î±ÏÏείÏΜ ΎεΜ είΜαι ΎιαΞÎÏιΌοÏ.</string>
+ <string name="please_grant_permissions_for_external_storage">ΠαÏακαλοÏΌε Μα ÏαÏαÏÏÏήÏεÏε ΎικαιÏΌαÏα για εΟÏÏεÏική αÏοΞήκεÏ
Ïη</string>
+ <string name="restore_backup">ÎÏαΜαÏοÏά αΜÏιγÏάÏοÏ
αÏÏαλείαÏ</string>
+ <string name="create_a_backup_first">ÎηΌιοÏ
ÏγήÏÏε ÏÏÏÏα ÎΜα αΜÏίγÏαÏο αÏÏÎ±Î»ÎµÎ¯Î±Ï </string>
+ <string name="name_can_t_be_empty">΀ο ÏΜοΌα ΎεΜ γίΜεÏαι Μα είΜαι κεΜÏ</string>
+ <string name="fields_can_t_be_empty">΀α ÏεΎία ΎεΜ ÎŒÏοÏεί Μα είΜαι κεΜά</string>
+ <string name="start_tor_again_for_finish_the_process">ÎΜαÏΟη ΟαΜά ÏÎ¿Ï Tor για ÏοΜ ÏεÏΌαÏιÏÎŒÏ ÏÎ·Ï ÎµÎœÎÏγειαÏ</string>
+ <string name="confirm_service_deletion">ÎÏιβεβαίÏÏη ΎιαγÏαÏÎ®Ï Ï
ÏηÏεÏίαÏ</string>
+ <string name="click_again_for_backup">ΠαÏήÏÏε ΟαΜά για Ïο αΜÏίγÏαÏο αÏÏαλείαÏ</string>
+ <string name="service_type">΀ÏÏÎ¿Ï Ï
ÏηÏεÏίαÏ</string>
+ <string name="auth_cookie">ÎΜαγΜÏÏιÏÏÎ¹ÎºÏ cookie</string>
+ <string name="copy_cookie_to_clipboard">ÎΜÏιγÏαÏή ÏÎ¿Ï cookie ÏÏο ÏÏÏÏειÏο</string>
+ <string name="auth_cookie_was_not_configured">΀ο αΜαγΜÏÏιÏÏÎ¹ÎºÏ cookie ΎεΜ ΎιαΌοÏÏÏΞηκε</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ΠαÏακαλοÏΌε εÏαΜεκκιΜήÏÏε Ïο Orbot για Μα εΜεÏγοÏοιήÏεÏε ÏÎ¹Ï Î±Î»Î»Î±Î³ÎÏ</string>
+ <string name="client_cookies">Cookies ÏελαÏÏΜ</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ÎκÏ
Ïη .onion ΎιεÏΞÏ
ΜÏη</string>
+ <string name="cookie_from_QR">ÎΜάγΜÏÏη αÏÏ QR</string>
+ <string name="backup_cookie">Cookie αΜÏίγÏαÏοÏ
αÏÏÎ±Î»ÎµÎ¯Î±Ï </string>
+ <string name="delete_cookie">ÎÏαίÏεÏη Cookie</string>
+ <string name="confirm_cookie_deletion">ÎÏιβεβαίÏÏη ΎιαγÏαÏÎ®Ï ÏÎ¿Ï cookie </string>
+ <string name="hosted_services">ΊιλοΟεΜηΌÎÎœÎµÏ Ï
ÏηÏεÏίεÏ</string>
+ <string name="share_as_qr">ÎοιΜοÏοίηÏη ÏÏ QR</string>
+ <string name="disable">ÎÏεΜεÏγοÏοίηÏη</string>
+ <string name="enable">ÎΜεÏγοÏοίηÏη</string>
+ <string name="consider_disable_battery_optimizations">ΣκÎÏη αÏεΜεÏγοÏοίηÏÎ·Ï Î²ÎµÎ»ÏιÏÏοÏοιήÏεÏΜ ÎŒÏαÏαÏίαÏ</string>
+ <string name="consider_enable_battery_optimizations">ΣκÎÏη εΜεÏγοÏοίηÏÎ·Ï Î²ÎµÎ»ÏιÏÏοÏοιήÏεÏΜ ÎŒÏαÏαÏίαÏ</string>
+ <string name="pref_isolate_dest">Îη ÎγκÏ
ÏÎ¿Ï ÏÏοοÏιÏÎŒÏÏ ÎŽÎ¹ÎµÏ
ΞÏΜÏεÏΜ</string>
+ <string name="pref_isolate_dest_summary">ΧÏηÏιΌοÏοιήÏÏε ÎΜα ΎιαÏοÏεÏÎ¹ÎºÏ ÎºÏκλÏΌα για κάΞε ΎιεÏΞÏ
ΜÏη ÏÏοοÏιÏΌοÏ</string>
+ <string name="no_transproxy_warning_short">ΠΡÎÎÎÎÎÎ ÎÎÎΣÎ: ΀ο Transproxying ΎεΜ Ï
ÏοÏÏηÏίζεÏαι ÏλÎοΜ</string>
+ <string name="no_transproxy_warning">ΠΡÎÎÎÎÎÎ ÎÎÎΣÎ: ΀ο Transparent proxying ΎεΜ Ï
ÏοÏÏηÏίζεÏαι. ΧÏήÏη Orbot ÎÏαÏΌογÏΜ VPN Î±ÎœÏ \' αÏ
ÏοÏ.</string>
+ <string name="pref_connection_padding">ΣÏΜΎεÏη αΜαÏλήÏÏÏηÏ</string>
+ <string name="pref_connection_padding_summary">ΠάΜÏα ΎίΜεÏε η ÎŽÏ
ΜαÏÏÏηÏα ÏÏΜΎεÏÎ·Ï padding για Ï
ÏεÏάÏÏιÏη εΜάΜÏια Ïε οÏιÏÎŒÎÎœÎµÏ ÎŒÎ¿ÏÏÎÏ Î±ÎœÎ¬Î»Ï
Ïη ÏÎ·Ï ÎºÏ
κλοÏοÏίαÏ. Î ÏοεÏιλογή: auto</string>
+ <string name="pref_reduced_connection_padding">ΣÏΜΎεÏη αΜαÏλήÏÏÏηÏ</string>
+ <string name="pref_reduced_connection_padding_summary">ÎλείΜει ÏοΜ ηλεκÏÏοΜÏΌο ÏÏ
ΜΎÎÏεÏΜ αÏγά και αÏοÏÏολή λιγÏÏεÏο Μα γεΌίÏει Ïα ÏακÎÏα για Μα ΌειÏÏει ΎεΎοΌÎΜÏΜ και Ïη ÏÏήÏη ÏÎ·Ï ÎŒÏαÏαÏίαÏ</string>
+ <string name="app_shortcuts">ÎΜεÏγοÏοιηΌÎÎœÎµÏ ÎµÏαÏΌογÎÏ ÎŒÎµ Ïο ΀οr</string>
+ <string name="testing_bridges">ÎοκιΌή ÏÏΜΎεÏÎ·Ï Î³ÎÏÏ
ÏÎ±Ï ÎŒÎµ Ïο Tor....</string>
+ <string name="testing_bridges_success">ÎÏιÏÏ
Ïία. ΠΎιαΌÏÏÏÏÏη ÏÎ·Ï Î³ÎÏÏ
ÏÎ±Ï ÏÎÏÏ
Ïε!</string>
+ <string name="testing_bridges_fail">ÎÎ Î΀ΥΧÎÎ. ÎοκιΌάÏÏε Όία άλλη ΎιαΌÏÏÏÏÏη</string>
+ <string name="bridge_direct_connect">ÎÏεÏ
ÎžÎµÎ¯Î±Ï ÏÏΜΎεÏη Όε Ïο ΎίκÏÏ
ο Tor (ÏÏοεÏιλογή)</string>
+ <string name="bridge_community">ΣÏΜΎεÏη ÎŒÎÏÏ ÎºÎ¿Î¹ÎœÎ¿ÏικÏΜ ΎιακοΌιÏÏÏΜ</string>
+ <string name="bridge_cloud">ΣÏΜΎεÏη ÎŒÎÏÏ cloud server</string>
+ <string name="bridges_get_new">ÎίÏηΌα ΜÎÏΜ γεÏÏ
ÏÏΜ... (ÎΜ Ïλα Ïα άλλα αÏοÏÏÏοÏ
Μ)</string>
+ <string name="trouble_connecting">Î ÏÏβληΌα ÏÏΜΎεÏηÏ;</string>
+ <string name="full_device_vpn">ΠλήÏÎ·Ï Î£Ï
ÏκεÏ
ή VPN</string>
+ <string name="vpn_disabled">΀ο VPN αÏεΜεÏγοÏοιήΞηκε</string>
+</resources>
diff --git a/app-mini/src/main/res/values-en-rGB/poestrings.xml b/app-mini/src/main/res/values-en-rGB/poestrings.xml
new file mode 100644
index 00000000..c80c7204
--- /dev/null
+++ b/app-mini/src/main/res/values-en-rGB/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Sometimes you need a bridge to get to Tor.</string>
+ <string name="action_more">TELL ME MORE</string>
+
+ <string name="vpn_setup">You can enable any app to go through Tor using our built-in VPN.</string>
+ <string name="vpn_setup_sub">This won\'t make you anonymous, but it will help get through firewalls.</string>
+ <string name="action_vpn_choose">CHOOSE APPS</string>
+
+ <string name="hello">Hello</string>
+ <string name="welcome">Welcome to Tor on mobile.</string>
+
+ <string name="browser_the_internet">Browse the Internet how you expect you should.</string>
+ <string name="no_tracking">No tracking. No censorship.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-en-rGB/strings.xml b/app-mini/src/main/res/values-en-rGB/strings.xml
new file mode 100644
index 00000000..75531ff4
--- /dev/null
+++ b/app-mini/src/main/res/values-en-rGB/strings.xml
@@ -0,0 +1,41 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot is a free proxy app that empowers other apps to use the Internet more securely. Orbot uses Tor to encrypt your Internet traffic and then hides it by bouncing through a series of computers around the world. Tor is free software and an open network that helps you defend against a form of network surveillance that threatens personal freedom and privacy, confidential business activities and relationships, and state security known as traffic analysis.</string>
+ <string name="status_starting_up">Orbot is startingâŠ</string>
+ <string name="status_activated">Connected to the Tor network</string>
+ <string name="status_disabled">Orbot is deactivated</string>
+ <string name="status_shutting_down">TorService is shutting down</string>
+ <string name="tor_process_starting">Starting Tor clientâŠ</string>
+ <string name="tor_process_complete">complete.</string>
+ <string name="menu_settings">Settings</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">About</string>
+ <string name="main_layout_download">Download</string>
+ <string name="main_layout_upload">Upload</string>
+ <string name="button_about">About</string>
+ <string name="menu_exit">Exit</string>
+ <string name="menu_scan">Scan BridgeQR</string>
+ <string name="menu_share_bridge">Share BridgeQR</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Cancel</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Some Orbot Details</string>
+ <string name="wizard_details_msg">Orbot is an open-source application that contains Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent and Polipo. It provides a local HTTP proxy (8118) and a SOCKS proxy (9050) into the Tor network. Orbot also has the ability, on rooted device, to send all internet traffic through Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Error</string>
+ <string name="bridges">Bridges</string>
+ <string name="set_locale_title">Language</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="save">Save</string>
+ <string name="name">Name</string>
+ <string name="disable">Disable</string>
+</resources>
diff --git a/app-mini/src/main/res/values-eo/strings.xml b/app-mini/src/main/res/values-eo/strings.xml
new file mode 100644
index 00000000..c00f5234
--- /dev/null
+++ b/app-mini/src/main/res/values-eo/strings.xml
@@ -0,0 +1,80 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Orbot ÅaltiÄas...</string>
+ <string name="status_activated">Konektita al Tor-reto</string>
+ <string name="status_disabled">Orbot estas malaktivigita</string>
+ <string name="tor_process_starting">ÅaltiÄas Tor-kliento...</string>
+ <string name="tor_process_complete">kompleta.</string>
+ <string name="menu_settings">Agordoj</string>
+ <string name="menu_log">Protokolo</string>
+ <string name="menu_start">Starti</string>
+ <string name="menu_stop">Halti</string>
+ <string name="menu_about">Pri</string>
+ <string name="main_layout_download">ElÅutado</string>
+ <string name="main_layout_upload">AlÅutado</string>
+ <string name="button_about">Pri</string>
+ <string name="menu_exit">Eliri</string>
+ <string name="btn_cancel">Rezigni</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Kelkaj Detaloj pri Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Äenerala</string>
+ <string name="pref_start_boot_title">Åalti Orbot dum praÅargado</string>
+ <string name="pref_start_boot_summary">AÅtomate startigi Orbot kaj konekti al Tor dum praÅargado de via Androida ilo</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Agordo de Nodoj</string>
+ <string name="pref_node_configuration_summary">Tie troviÄas progresintaj agordoj kiuj povas limigi vian anonimecon</string>
+ <string name="pref_entrance_node">Eniraj nodoj</string>
+ <string name="pref_entrance_node_summary">Fingrospuroj, kaÅnomoj, landoj kaj adresoj por la unua hopo</string>
+ <string name="pref_entrance_node_dialog">Entajpu enirajn nodojn</string>
+ <string name="pref_proxy_title">Elira prokurilo (Malnepra)</string>
+ <string name="pref_proxy_type_title">Tipo de elira prokurilo</string>
+ <string name="pref_proxy_type_summary">Protokolo uzata de la prokurilo: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Entajpu tipon de la prokurilo</string>
+ <string name="pref_proxy_host_title">Adreso de la elira prokurilo</string>
+ <string name="pref_proxy_host_summary">Adresnomo de la prokurilo</string>
+ <string name="pref_proxy_host_dialog">Entajpu adreson</string>
+ <string name="pref_proxy_port_title">Pordo de la elira prokurilo</string>
+ <string name="pref_proxy_port_summary">Pordo de la Prokurservilo</string>
+ <string name="pref_proxy_port_dialog">Entajpu la pordon</string>
+ <string name="pref_proxy_username_title">Uzantnomo de la elira prokurilo</string>
+ <string name="pref_proxy_username_summary">Uzantnomo de la prokurilo (Malnepra)</string>
+ <string name="pref_proxy_username_dialog">Entajpu uzantnomon</string>
+ <string name="pref_proxy_password_title">Pasvorto de la elira prokurilo</string>
+ <string name="pref_proxy_password_summary">Pasvorto de la prokurilo (Malnepra)</string>
+ <string name="pref_proxy_password_dialog">Entajpu pasvorton</string>
+ <string name="couldn_t_start_tor_process_">Tor-procedo ne sukcesis stariÄi:</string>
+ <string name="error">Eraro</string>
+ <string name="your_relay_settings_caused_an_exception_">Via agordo de relajso kaÅzis escepton!</string>
+ <string name="exit_nodes">Finnodoj</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Fingrospuroj, kaÅnomoj, landoj kaj adresoj por la lasta hopo</string>
+ <string name="enter_exit_nodes">Entajpu finnofojn</string>
+ <string name="use_only_these_specified_nodes">Uzi *nur* tiujn Äi nodojn</string>
+ <string name="bridges">Pontoj</string>
+ <string name="use_bridges">Uzi Pontojn</string>
+ <string name="ip_address_and_port_of_bridges">IP-adresoj kaj pordoj de pontoj</string>
+ <string name="enter_or_port">Entajpu OR-pordon</string>
+ <string name="relay_nickname">KaÅnomo de la relajso</string>
+ <string name="the_nickname_for_your_tor_relay">KaÅnomo por via Tor-relajso</string>
+ <string name="enter_a_custom_relay_nickname">Entajpu propran kaÅnomon de la relajso</string>
+ <string name="reachable_addresses">Atingeblaj adresoj</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Startigi kiel kliento malantaÅ fajromuro kun restriktaj reguloj</string>
+ <string name="reachable_ports">Atingeblaj pordoj</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Pordoj, kiuj atingeblas tra la restrikta fajromuro</string>
+ <string name="enter_ports">Entajpu pordojn</string>
+ <string name="project_home">RetpaÄaro(j) de la Projekto:</string>
+ <string name="found_existing_tor_process">trovi ekzistantan Tor-procedon...</string>
+ <string name="unable_to_read_hidden_service_name">ne eblas legi nomon de la kaÅita servo</string>
+ <string name="unable_to_start_tor">Ne eblas startigi Tor:</string>
+ <string name="set_locale_title">Lingvo</string>
+ <string name="activate">Aktivi</string>
+ <string name="save">Konservi</string>
+ <string name="name">Nomo</string>
+ <string name="done"> Farita! </string>
+</resources>
diff --git a/app-mini/src/main/res/values-es-rAR/poestrings.xml b/app-mini/src/main/res/values-es-rAR/poestrings.xml
new file mode 100644
index 00000000..53e6e635
--- /dev/null
+++ b/app-mini/src/main/res/values-es-rAR/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">aveces necesitas un puente para llegar a tor </string>
+ <string name="action_more">dime mas</string>
+
+ <string name="vpn_setup">puede habilitar cualquier aplicación para pasar por tor usando nuestra VPN incorporada</string>
+ <string name="vpn_setup_sub">esto no lo hará anónimo, pero le ayudara a atravesar los firewalls</string>
+ <string name="action_vpn_choose">elige aplicaciones</string>
+
+ <string name="hello">hola</string>
+ <string name="welcome">bienvenido a tor en el móvil</string>
+
+ <string name="browser_the_internet">navegue por Internet como espera que deberÃa hacerlo</string>
+ <string name="no_tracking">sin seguimiento. sin censura</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-es-rAR/strings.xml b/app-mini/src/main/res/values-es-rAR/strings.xml
new file mode 100644
index 00000000..f8af8019
--- /dev/null
+++ b/app-mini/src/main/res/values-es-rAR/strings.xml
@@ -0,0 +1,118 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot es una aplicación de proxy gratuita que le permite a otras aplicaciones utilizar Internet de forma segura. Tor encripta tu trafico de Internet y lo oculta rebotandolo a través de una serie de ordenadores alrededor del mundo. Tor es un software gratuito y una red abierta que te ayuda a defenderte contra una forma de vigilancia de red que amenaza la libertad personal y la privacidad, actividades confidenciales de negocios y relaciones, y la seguridad de estado conocida como análisis de trafico.</string>
+ <string name="status_starting_up">Orbot está iniciándose...</string>
+ <string name="status_activated">Conectado a la red Tor</string>
+ <string name="status_disabled">Orbot está desactivado</string>
+ <string name="status_shutting_down">El servicio de Tor se esta cerrando</string>
+ <string name="tor_process_starting">Iniciando el cliente Tor...</string>
+ <string name="tor_process_complete">completo.</string>
+ <string name="menu_settings">Configuración</string>
+ <string name="menu_log">Registro</string>
+ <string name="menu_start">Iniciar</string>
+ <string name="menu_stop">Detener</string>
+ <string name="menu_about">Acerca de</string>
+ <string name="main_layout_download">Descargar</string>
+ <string name="main_layout_upload">Subir</string>
+ <string name="button_about">Acerca de</string>
+ <string name="menu_exit">Salir</string>
+ <string name="menu_scan">Escanea código QR</string>
+ <string name="menu_share_bridge">Compartir el código QR</string>
+ <string name="btn_okay">Ok</string>
+ <string name="btn_cancel">Cancelar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Algunos detalles de Orbot</string>
+ <string name="wizard_details_msg">Orbot es una aplicación de código abierto que contiene Tor, Obfs4Proxy, BadVPN, Tun2Socks, LibEvent y Polipo. Proporciona un proxy local HTTP (8118) y un proxy SOCKS (9050) adentro de la red de Tor. Orbot también tiene la habilidad, en dispositivos ruteados, de enviar todo el trafico de Internet a través de Tor</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <string name="pref_start_boot_title">Arrancar Orbot al inicio</string>
+ <string name="pref_start_boot_summary">Inicie automáticamente Orbot y conecte Tor cuando el dispositivo android arranque.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">configuracion del nodo</string>
+ <string name="pref_node_configuration_summary">Estas son configuraciones avanzadas que pueden reducir tu anonimato</string>
+ <string name="pref_entrance_node">Nodos de entrada</string>
+ <string name="pref_entrance_node_summary">Huellas dactilares, apodos, paÃses y direcciones para el primer salto</string>
+ <string name="pref_entrance_node_dialog">Introduzca los nodos de entrada</string>
+ <string name="pref_allow_background_starts_title">Permitir inicio de fondo</string>
+ <string name="pref_allow_background_starts_summary">Deje que cualquier aplicación indique a Orbot que inicie Tor y servicios relacionados</string>
+ <string name="pref_proxy_title">red de proxy de salida (opcional)</string>
+ <string name="pref_proxy_type_title">tipo de proxy de salida</string>
+ <string name="pref_proxy_type_summary">Protocolo a utilizar para el servidor proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">introduzca el tipo de proxy</string>
+ <string name="pref_proxy_host_title">host de proxy de salida</string>
+ <string name="pref_proxy_host_summary">nombre de host del servidor proxy </string>
+ <string name="pref_proxy_host_dialog">ingresar host proxy</string>
+ <string name="pref_proxy_port_title">puerto proxy externo</string>
+ <string name="pref_proxy_port_summary">puerto del servidor proxy</string>
+ <string name="pref_proxy_port_dialog">introduzca el puerto proxy</string>
+ <string name="pref_proxy_username_title">nombre de usuario de proxy de salida</string>
+ <string name="pref_proxy_username_summary">nombre de usuario de proxy (opcional)</string>
+ <string name="pref_proxy_username_dialog">ingrese nombre de usuario de proxy</string>
+ <string name="pref_proxy_password_title">contraseña de proxy de salida</string>
+ <string name="pref_proxy_password_summary">contraseña de proxy (opcional)</string>
+ <string name="pref_proxy_password_dialog">Ingrese contraseña Proxy</string>
+ <string name="couldn_t_start_tor_process_">no se pudo iniciar Tor</string>
+ <string name="error">Error</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">La configuración de las direcciones alcanzables causó una excepción.</string>
+ <string name="your_relay_settings_caused_an_exception_">Su configuración de retransmisión provocó una excepción.</string>
+ <string name="exit_nodes">nodos de salida</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">huellas dactilares, apodos, paises y direcciones para el ultimo salto</string>
+ <string name="enter_exit_nodes">ingrese nodos de salida</string>
+ <string name="exclude_nodes">excluir nodos</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">huellas digitales, usuarios, paises y direcciones para excluir</string>
+ <string name="enter_exclude_nodes">ingrese nodos excluidos</string>
+ <string name="strict_nodes">nodos estrictos</string>
+ <string name="use_only_these_specified_nodes">utilice *solo* estos nodos especificos </string>
+ <string name="bridges">puentes</string>
+ <string name="use_bridges">usar puentes</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Habilitar entradas alternativas en la red de Tor</string>
+ <string name="ip_address_and_port_of_bridges">direccion IP y puerto de puentes</string>
+ <string name="enter_bridge_addresses">introduzca las direcciones de puente</string>
+ <string name="relays">retransmitir</string>
+ <string name="relaying">retransmision </string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Habilite su dispositivo para que sea retransmision sin salida</string>
+ <string name="relay_port">puerto de retransmision</string>
+ <string name="listening_port_for_your_tor_relay">puerto de escucha para la retransmision de Tor</string>
+ <string name="enter_or_port">entrar puerto OR</string>
+ <string name="relay_nickname">apodo de retransmision</string>
+ <string name="the_nickname_for_your_tor_relay">el apodo para tu retransmision de Tor</string>
+ <string name="enter_a_custom_relay_nickname">Introduzca un apodo de retransmisión personalizado</string>
+ <string name="reachable_addresses">direcciones alcanzables</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Ejecutar como un cliente detrás de un firewall con polÃticas restrictivas</string>
+ <string name="reachable_ports">puertos alcanzables</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Puertos accesibles detrás de un firewall restrictivo</string>
+ <string name="enter_ports">Ingresar puertos</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">habilitar registro de depuración para salida (debe usar adb o aLogCat para visualizar)</string>
+ <string name="project_home">proyecto de inicio(s):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software de terceros:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Una aplicación quiere abrir el puerto del servidor oculto %1$s a la red de tor. Esto es seguro si confÃas en la aplicación</string>
+ <string name="found_existing_tor_process">encontrado el proceso tor existente</string>
+ <string name="something_bad_happened">algo malo ha ocurrido. verifica el registro.</string>
+ <string name="unable_to_start_tor">No se puede iniciar Tor:</string>
+ <string name="set_locale_title">Idioma</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_dnsport_title">Puerto DNS Tor</string>
+ <string name="pref_dnsport_dialog">Configuración del Puerto DNS</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Activar</string>
+ <string name="save">Guardar</string>
+ <string name="name">Nombre</string>
+ <string name="disable">Deshabilitar</string>
+</resources>
diff --git a/app-mini/src/main/res/values-es/arrays.xml b/app-mini/src/main/res/values-es/arrays.xml
new file mode 100644
index 00000000..c8149515
--- /dev/null
+++ b/app-mini/src/main/res/values-es/arrays.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<resources>
+
+ <string-array name="array_hs_types">
+ <item>Usuarios</item>
+ <item>Aplicaciones</item>
+ </string-array>
+</resources>
diff --git a/app-mini/src/main/res/values-es/poestrings.xml b/app-mini/src/main/res/values-es/poestrings.xml
new file mode 100644
index 00000000..951cd44a
--- /dev/null
+++ b/app-mini/src/main/res/values-es/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">A veces necesita un puente para llegar a Tor</string>
+ <string name="action_more">CUÃNTAME MÃS</string>
+
+ <string name="vpn_setup">Puede habilitar que cualquier aplicación vaya a través de Tor usando nuestra VPN integrada.</string>
+ <string name="vpn_setup_sub">Esto no le hará anónimo, pero le ayudará a atravesar cortafuegos/firewalls.</string>
+ <string name="action_vpn_choose">ESCOGER APLICACIONES</string>
+
+ <string name="hello">Hola</string>
+ <string name="welcome">Bienvenido a Tor para móvil.</string>
+
+ <string name="browser_the_internet">Navegue por Internet de la forma en la que cree que debe.</string>
+ <string name="no_tracking">Sin rastreo. Sin censura.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-es/strings.xml b/app-mini/src/main/res/values-es/strings.xml
new file mode 100644
index 00000000..dd25a163
--- /dev/null
+++ b/app-mini/src/main/res/values-es/strings.xml
@@ -0,0 +1,207 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot es una aplicación libre de proxy (interpuesto) que faculta a otras aplicaciones para usar Internet de forma más segura. Orbot utiliza Tor para cifrar su tráfico de Internet, y luego lo oculta rebotándolo a través de una serie de computadoras por todo el mundo. Tor es software libre y una red abierta que le ayuda a defenderse contra una forma de vigilancia de red conocida como análisis de tráfico que amenaza la libertad y la privacidad personales, las actividades y relaciones comerciales confidenciales, y la seguridad de estado.</string>
+ <string name="status_starting_up">Orbot está iniciandose...</string>
+ <string name="status_activated">Conectado a la red Tor</string>
+ <string name="status_disabled">Orbot está desactivado</string>
+ <string name="status_shutting_down">TorService se está cerrando</string>
+ <string name="tor_process_starting">Iniciando cliente Tor...</string>
+ <string name="tor_process_complete">completado.</string>
+ <string name="menu_settings">Configuración</string>
+ <string name="menu_log">Registro (log)</string>
+ <string name="menu_start">Iniciar</string>
+ <string name="menu_stop">Detener</string>
+ <string name="menu_about">Acerca de</string>
+ <string name="main_layout_download">Descarga</string>
+ <string name="main_layout_upload">Subida</string>
+ <string name="button_about">Acerca de</string>
+ <string name="menu_exit">Salir</string>
+ <string name="menu_scan">Escanear QR de bridge</string>
+ <string name="menu_share_bridge">Compartir QR de bridge</string>
+ <string name="btn_okay">Aceptar</string>
+ <string name="btn_cancel">Cancelar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Algunos detalles de Orbot</string>
+ <string name="wizard_details_msg">Orbot es una aplicación de código abierto que contiene Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent y Polipo. Proporciona un proxy HTTP (8118) y un proxy SOCKS (9050) hacia el interior de la red Tor. En una maquina rooteada, Orbot también tiene la capacidad de enviar todo el tráfico de Internet a través de Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <string name="pref_start_boot_title">Iniciar Orbot en el arranque</string>
+ <string name="pref_start_boot_summary">Inicia Orbot y conecta a Tor automáticamente cuando arranca su dispositivo Android</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configuración de nodos</string>
+ <string name="pref_node_configuration_summary">¡Estas son configuraciones avanzadas que pueden reducir su anonimato! Afectan a los circuitos (túneles) que se establezcan para su propio tráfico a través de Tor; si repite tráfico ajeno estas configuraciones no afectan a esos circuitos.</string>
+ <string name="pref_entrance_node">Nodos de entrada</string>
+ <string name="pref_entrance_node_summary">Reglas de identificación de repetidores de entrada a la red Tor, mediante huellas de validación de claves (fingerprints), alias (nicks), códigos de paÃs y
+direcciones (o rangos). No prevalecen sobre las configuraciones de exclusión de nodos, y las configuraciones de bridges.</string>
+ <string name="pref_entrance_node_dialog">Introduzca nodos de entrada</string>
+ <string name="pref_allow_background_starts_title">Permitir inicios en segundo plano</string>
+ <string name="pref_allow_background_starts_summary">Deja que cualquier aplicación le diga a Orbot que inicie Tor y servicios relacionados</string>
+ <string name="pref_proxy_title">Proxy de salida a la red (opcional)</string>
+ <string name="pref_proxy_type_title">Tipo de proxy saliente</string>
+ <string name="pref_proxy_type_summary">Protocolo a usar para el servidor proxy saliente: HTTP, HTTPS, Socks4, Socks5.</string>
+ <string name="pref_proxy_type_dialog">Introduzca tipo de proxy</string>
+ <string name="pref_proxy_host_title">Servidor proxy saliente</string>
+ <string name="pref_proxy_host_summary">Nombre del servidor proxy </string>
+ <string name="pref_proxy_host_dialog">Introduzca el servidor proxy</string>
+ <string name="pref_proxy_port_title">Puerto del proxy saliente </string>
+ <string name="pref_proxy_port_summary">Puerto del servidor proxy</string>
+ <string name="pref_proxy_port_dialog">Introduzca el puerto del proxy</string>
+ <string name="pref_proxy_username_title">Nombre de usuario en el proxy de salida</string>
+ <string name="pref_proxy_username_summary">Nombre de usuario en el proxy (opcional)</string>
+ <string name="pref_proxy_username_dialog">Introduzca nombre de usuario en el proxy</string>
+ <string name="pref_proxy_password_title">Contraseña en el proxy de salida</string>
+ <string name="pref_proxy_password_summary">Contraseña en el proxy (opcional)</string>
+ <string name="pref_proxy_password_dialog">Introduzca contraseña en el proxy</string>
+ <string name="couldn_t_start_tor_process_">No se pudo iniciar el proceso de Tor: </string>
+ <string name="error">Error</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">¡Sus \'Reglas de direcciones accesibles\' han producido una excepción!</string>
+ <string name="your_relay_settings_caused_an_exception_">¡La configuración de su repetidor ha producido una excepción!</string>
+ <string name="exit_nodes">Nodos de salida</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Reglas de identificación de repetidores de salida de la red Tor, mediante huellas de validación de claves (fingerprints), alias (nicks), códigos de paÃs y direcciones (o rangos)</string>
+ <string name="enter_exit_nodes">Introduzca repetidores de salida</string>
+ <string name="exclude_nodes">ExcluÃr nodos</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Reglas de identificación de repetidores a evitar en la red Tor, mediante huellas de validación de claves (fingerprints), alias (nicks), códigos de paÃs y direcciones (o rangos)</string>
+ <string name="enter_exclude_nodes">Introduzca repetidores a evitar</string>
+ <string name="strict_nodes">Hacer estricta la exclusión de nodos (incluso si falla la comunicación)</string>
+ <string name="use_only_these_specified_nodes">Usar *sólo* estos nodos especificados</string>
+ <string name="bridges">Bridges (repetidores puente) </string>
+ <string name="use_bridges">Usar bridges</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Habilitar entradas alternativas hacia el interior de la red Tor</string>
+ <string name="ip_address_and_port_of_bridges">Direcciones IP y puertos de los bridges</string>
+ <string name="enter_bridge_addresses">Introduzca direcciones de bridge</string>
+ <string name="relays">Repetidores</string>
+ <string name="relaying">Repetición de tráfico</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Habilitar que su dispositivo no sea repetidor de salida (de la red Tor) </string>
+ <string name="relay_port">Puerto de repetidor</string>
+ <string name="listening_port_for_your_tor_relay">Puerto de escucha para su repetidor Tor</string>
+ <string name="enter_or_port">Introduzca puerto OR (Onion Routing, repositorio de repetidores)</string>
+ <string name="relay_nickname">Alias del repetidor</string>
+ <string name="the_nickname_for_your_tor_relay">El apodo que identificará a su repetidor en la red Tor</string>
+ <string name="enter_a_custom_relay_nickname">Introduzca un alias personalizado para su repetidor</string>
+ <string name="reachable_addresses">Reglas de direcciones accesibles ([accept(*)|reject] IP:port, etc.)</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Ejecutar Tor como sólo cliente detrás de un cortafuegos (firewall) con polÃticas restrictivas</string>
+ <string name="reachable_ports">Puertos accesibles</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Puertos accesibles detrás de un firewall restrictivo (80 y 443 por defecto)</string>
+ <string name="enter_ports">Introduzca puertos</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">Habilitar el registro de depuración (debug log) a la salida (debe utilizar adb o aLogCat para verlo)</string>
+ <string name="project_home">Página(s) principal(es) del proyecto:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software de terceras partes</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Una aplicación quiere abrir el puerto %1$s de servidor oculto a la red Tor. Esto es seguro si confÃa en la aplicación.</string>
+ <string name="found_existing_tor_process">Se encontró un proceso de Tor ya existente...</string>
+ <string name="something_bad_happened">Hubo algún tipo de problema. Compruebe el registro (log)</string>
+ <string name="unable_to_read_hidden_service_name">No fue posible leer el nombre del servicio oculto</string>
+ <string name="unable_to_start_tor">No fue posible iniciar Tor: </string>
+ <string name="pref_use_persistent_notifications">Mantener siempre el icono de Orbot en la barra de tareas cuando esté conectado</string>
+ <string name="pref_use_persistent_notifications_title">Notificaciones siempre activadas</string>
+ <string name="pref_use_expanded_notifications">Mostrar notificación expandida con el paÃs de salida de Tor y la IP</string>
+ <string name="pref_use_expanded_notifications_title">Notificaciones expandidas</string>
+ <string name="set_locale_title">Idioma</string>
+ <string name="no_internet_connection_tor">Sin conexión a Internet; Tor está en suspensión...</string>
+ <string name="pref_disable_network_title">Sin suspensión-automática de la red</string>
+ <string name="pref_disable_network_summary">Ponga Tor en suspensión cuando no haya Internet disponible</string>
+ <string name="newnym">¡Ha cambiado a una nueva identidad de Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">No hay conectividad de red. Poniendo a Tor a dormir...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">La conectividad de red es buena. Despertando a Tor...</string>
+ <string name="updating_settings_in_tor_service">actualizando la configuración en el servicio Tor</string>
+ <string name="pref_socks_title">SOCKS de Tor</string>
+ <string name="pref_socks_summary">Puerto sobre el que Tor ofrece su proxy SOCKS (por defecto: 9050 o 0 para deshabilitarlo)</string>
+ <string name="pref_socks_dialog">Configuración del puerto SOCKS</string>
+ <string name="pref_transport_title">Puerto de TransProxy de Tor</string>
+ <string name="pref_transport_summary">Puerto sobre el que Tor ofrece su Proxy Transparente (por defecto: 9040 o 0 para deshabilitarlo)</string>
+ <string name="pref_transport_dialog">Configuración del puerto de TransProxy</string>
+ <string name="pref_dnsport_title">Puerto DNS de Tor</string>
+ <string name="pref_dnsport_summary">Puerto sobre el que Tor ofrece su DNS (por defecto: 5400 o 0 para deshabilitarlo)</string>
+ <string name="pref_dnsport_dialog">Configuración del puerto DNS</string>
+ <string name="pref_torrc_title">Configuración personalizada de torrc</string>
+ <string name="pref_torrc_summary">SÃLO EXPERTOS: Introduzca directamente las lÃneas de configuración en el fichero torrc</string>
+ <string name="pref_torrc_dialog">torrc personalizado</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridges actualizados</string>
+ <string name="restart_orbot_to_use_this_bridge_">Por favor, reinicie Orbot para habilitar los cambios</string>
+ <string name="menu_qr">Códigos QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Si su red móvil bloquea Tor activamente, puede usar un \'Servidor Puente\' como alternativa para acceder. SELECCIONE una de las opciones a configurar y probar...</string>
+ <string name="bridge_mode">Modo bridge</string>
+ <string name="get_bridges_email">Correo electrónico</string>
+ <string name="get_bridges_web">Página web</string>
+ <string name="activate">Activar</string>
+ <string name="apps_mode">Modo VPN</string>
+ <string name="send_email">Enviar correo</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Puede obtener una dirección de bridge (repetidor puente) a través de correo electrónico, la web, o escaneando un código QR de bridge. Seleccione \'Correo\' o \'Web\' debajo para solicitar una dirección de bridge.\n\nUna vez tenga una dirección, copie y péguela en la opción \"Bridges\" de la configuración de Orbot, y reinicie.</string>
+ <string name="vpn_default_world">Global (Automático)</string>
+ <string name="hidden_services">Servicios ocultos</string>
+ <string name="title_activity_hidden_services">Servicios ocultos</string>
+ <string name="menu_hidden_services">Servicios ocultos</string>
+ <string name="save">Guardar</string>
+ <string name="local_port">Puerto local</string>
+ <string name="onion_port">Puerto onion</string>
+ <string name="name">Nombre</string>
+ <string name="done">¡Hecho!</string>
+ <string name="invalid_port">Puerto no válido</string>
+ <string name="copy_address_to_clipboard">Copiar dirección al portapapeles</string>
+ <string name="show_auth_cookie">Mostrar cookie de autentificación</string>
+ <string name="backup_service">Hacer copia de seguridad del servicio</string>
+ <string name="delete_service">Borrar servicio</string>
+ <string name="backup_saved_at_external_storage">Copia de seguridad guardada en un almacenamiento externo</string>
+ <string name="backup_restored">Copia de seguridad restaurada</string>
+ <string name="filemanager_not_available">Administrador de ficheros no disponible</string>
+ <string name="please_grant_permissions_for_external_storage">Por favor, conceda permisos para almacenamiento externo</string>
+ <string name="restore_backup">Restaurar copia de seguridad</string>
+ <string name="create_a_backup_first">Primero cree una copia de seguridad</string>
+ <string name="name_can_t_be_empty">El nombre no puede estar vacÃo</string>
+ <string name="fields_can_t_be_empty">Los campos no pueden estar vacÃos</string>
+ <string name="start_tor_again_for_finish_the_process">Inicie Tor de nuevo para finalizar el proceso</string>
+ <string name="confirm_service_deletion">Confirme el borrado del servicio</string>
+ <string name="click_again_for_backup">Pulse de nuevo para realizar copia de seguridad</string>
+ <string name="service_type">Tipo de servicio</string>
+ <string name="auth_cookie">Cookie de autentificación</string>
+ <string name="copy_cookie_to_clipboard">Copiar cookie al portapapeles</string>
+ <string name="auth_cookie_was_not_configured">La cookie de autentificación no fue configurada</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Por favor, reinicie Orbot para habilitar los cambios</string>
+ <string name="client_cookies">Cookies de cliente</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Dirección .onion no válida</string>
+ <string name="cookie_from_QR">Leer desde QR</string>
+ <string name="backup_cookie">Realizar copia de seguridad de cookie</string>
+ <string name="delete_cookie">Borrar cookie</string>
+ <string name="confirm_cookie_deletion">Confirmar borrado de cookie</string>
+ <string name="hosted_services">Servicios alojados</string>
+ <string name="share_as_qr">Compartir como QR</string>
+ <string name="disable">Deshabilitar</string>
+ <string name="enable">Habilitar</string>
+ <string name="consider_disable_battery_optimizations">Considere deshabilitar las optimizaciones de baterÃa</string>
+ <string name="consider_enable_battery_optimizations">Considere habilitar las optimizaciones de baterÃa</string>
+ <string name="pref_isolate_dest">Aislar direcciones de destino</string>
+ <string name="pref_isolate_dest_summary">Usar un circuito diferente para cada dirección de destino</string>
+ <string name="no_transproxy_warning_short">ADVERTENCIA: El proxyficado transparente ya no está soportado</string>
+ <string name="no_transproxy_warning">ADVERTENCIA: El proxyficado transparente no está soportado. Use la VPN de aplicaciones de Orbot en su lugar.</string>
+ <string name="pref_connection_padding">Relleno de la conexión</string>
+ <string name="pref_connection_padding_summary">Habilita siempre el relleno de la conexión como defensa contra algunas formas de análisis de tráfico. Predeterminado: Automático</string>
+ <string name="pref_reduced_connection_padding">Relleno de la conexión reducido</string>
+ <string name="pref_reduced_connection_padding_summary">Cierra las conexiones de repetidor más pronto y envÃa menos paquetes de relleno para reducir el uso de datos y baterÃa</string>
+ <string name="app_shortcuts">Aplicaciones habilitadas-para-Tor</string>
+ <string name="testing_bridges">Probando conexión de puente hacia Tor...</string>
+ <string name="testing_bridges_success">Exitosa. ¡La configuración del puente de red es buena!</string>
+ <string name="testing_bridges_fail">FALLIDA. Pruebe otra opción</string>
+ <string name="bridge_direct_connect">Conectar directamente a Tor (lo mejor)</string>
+ <string name="bridge_community">Conectar a través de servidores de la comunidad</string>
+ <string name="bridge_cloud">Conectar a través de servidores de la nube</string>
+ <string name="bridges_get_new">Solicitar nuevos puentes... (si todo lo demás falla)</string>
+ <string name="trouble_connecting">¿Problemas al conectar?</string>
+ <string name="full_device_vpn">VPN de dispositivo completo</string>
+ <string name="vpn_disabled">VPN deshabilitada</string>
+</resources>
diff --git a/app-mini/src/main/res/values-et/strings.xml b/app-mini/src/main/res/values-et/strings.xml
new file mode 100644
index 00000000..d986129a
--- /dev/null
+++ b/app-mini/src/main/res/values-et/strings.xml
@@ -0,0 +1,103 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot on vabalt kasutatav proxy rakendus, mis võimaldab teistel rakendustel Interneti turvalisemat kasutust. Orbot krÌpteerib ja peidab teie Internetiliikluse Tor abil paljude maailma arvutite vahel põrgatades. Tor on vaba tarkvara ja vaba võrgustik mis aitab teil kaitsta oma privaatsust, vabadust, konfidentsiaalset Àritegevust, suhteid ja riiklikku julgeolekut arvutivõrgus toimuva liikluse analÌÌsi eest.</string>
+ <string name="status_starting_up">Orbot kÀivitub...</string>
+ <string name="status_activated">Ãhendatud Tor võrgustikku</string>
+ <string name="status_disabled">Orbot deaktiveeritud</string>
+ <string name="status_shutting_down">Orbot lÌlitub vÀlja</string>
+ <string name="tor_process_starting">Tor kliendi kÀivitamine...</string>
+ <string name="tor_process_complete">valmis.</string>
+ <string name="menu_settings">Seaded</string>
+ <string name="menu_log">Logi</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stopp</string>
+ <string name="menu_about">LÀhemalt</string>
+ <string name="main_layout_download">Lae alla</string>
+ <string name="main_layout_upload">Lae ÃŒles</string>
+ <string name="button_about">LÀhemalt</string>
+ <string name="menu_exit">VÀlja</string>
+ <string name="btn_okay">Hea kÃŒll</string>
+ <string name="btn_cancel">Katkesta</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Mõned Orbot\'i detailid</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Ãldist</string>
+ <string name="pref_start_boot_title">KÀivita Orbot seadme kÀivitumisel</string>
+ <string name="pref_start_boot_summary">Automaatne Orbot kÀivitumine ja Tor kÌlge Ìhendumine seadme kÀivitumisel</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Sõlme seadistamine</string>
+ <string name="pref_node_configuration_summary">Need on seadistused edasijõudnutele ja võivad vÀhendada teie anonÌÌmsust</string>
+ <string name="pref_entrance_node">Sisendsõlmed</string>
+ <string name="pref_entrance_node_summary">SõrmejÀljed, hÌÌdnimed, riigid ja aadressid esimese hÌppe jaoks</string>
+ <string name="pref_entrance_node_dialog">Sisestage sisendsõlmed</string>
+ <string name="pref_proxy_title">VÀljuva võrgu proxy (Valikuline)</string>
+ <string name="pref_proxy_type_title">VÀljuva proxy tÌÌp</string>
+ <string name="pref_proxy_type_summary">Proxy serveri kasutamise protokoll: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Sisestage proxy tÌÌp</string>
+ <string name="pref_proxy_host_title">VÀljuva proxy seade</string>
+ <string name="pref_proxy_host_summary">Proxyserveri seadmenimi</string>
+ <string name="pref_proxy_host_dialog">Sisestage proxy seade</string>
+ <string name="pref_proxy_port_title">VÀljuva proxy port</string>
+ <string name="pref_proxy_port_summary">Proxyserveri port</string>
+ <string name="pref_proxy_port_dialog">Sisestage proxy port</string>
+ <string name="pref_proxy_username_title">VÀljuva proxy kasutajanimi</string>
+ <string name="pref_proxy_username_summary">Proxy kasutajanimi (Valikuline)</string>
+ <string name="pref_proxy_username_dialog">Sisestage proxy kasutajanimi</string>
+ <string name="pref_proxy_password_title">VÀljuva proxy salasõna</string>
+ <string name="pref_proxy_password_summary">Proxy salasõna (Valikuline)</string>
+ <string name="pref_proxy_password_dialog">Sisestage proxy salasõna</string>
+ <string name="couldn_t_start_tor_process_">Tor protsessi kÀivitamine ebaõnnestus:</string>
+ <string name="error">Viga</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Teie ReachableAddresses seadistus põhjustas ekse!</string>
+ <string name="your_relay_settings_caused_an_exception_">Teie releeseadistus põhjustas ekse!</string>
+ <string name="exit_nodes">VÀljundsõlmed</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">SõrmejÀljed, hÌÌdnimed, riigid ja aadressid viimase hÌppe jaoks</string>
+ <string name="enter_exit_nodes">Sisestage vÀljundsõlmed</string>
+ <string name="exclude_nodes">VÀlistatud sõlmed</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">SõrmejÀljed, hÌÌdnimed, riigid ja aadressid mida vÀlistada</string>
+ <string name="enter_exclude_nodes">Sisestage vÀlistatavad sõlmed</string>
+ <string name="strict_nodes">Kindlad sõlmed</string>
+ <string name="use_only_these_specified_nodes">Kasuta *ainult* neid mÀrgitud sõlmi</string>
+ <string name="bridges">Sillad</string>
+ <string name="use_bridges">Kasuta sildu</string>
+ <string name="ip_address_and_port_of_bridges">Sildade IP aadressid ja pordinumbrid</string>
+ <string name="enter_bridge_addresses">Sisestage silla aadressid</string>
+ <string name="relays">Edastajad</string>
+ <string name="relaying">Edastamine</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Luba oma seadmel hakata mitte-vÀljund edastajaks</string>
+ <string name="relay_port">Edastusport</string>
+ <string name="listening_port_for_your_tor_relay">Port mida teie Tor edastaja kuulab</string>
+ <string name="enter_or_port">Kas Enter VÃI port</string>
+ <string name="relay_nickname">Edastaja hÌÌdnimi</string>
+ <string name="the_nickname_for_your_tor_relay">Teie Tor edastaja hÌÌdnimi</string>
+ <string name="enter_a_custom_relay_nickname">Sisestage edastaja kohandatud hÌÌdnimi</string>
+ <string name="reachable_addresses">JuurdepÀÀsetavad aadressid</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">KÀivita kui piirava poliitikaga tulemÌÌri taga asuvat klienti.</string>
+ <string name="reachable_ports">JuurdepÀÀsetavad pordid</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Piirava poliitikaga tulemÌÌris avatud pordid</string>
+ <string name="enter_ports">Sisestage pordid</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">lubage vÀljastatav silumislogi (vaatamiseks peab kasutama kas adb või aLogCat utiliite) </string>
+ <string name="project_home">Projekti kodu(d):</string>
+ <string name="third_party_software">Kolmanda osapoole tarkvara:</string>
+ <string name="found_existing_tor_process">leidus töötav Tor protsess...</string>
+ <string name="something_bad_happened">Juhtus midagi halba. Kontrollige logi</string>
+ <string name="unable_to_read_hidden_service_name">ei õnnestu lugeda varjatud teenuse nime</string>
+ <string name="unable_to_start_tor">Tor kÀivitamine ebaõnnestus:</string>
+ <string name="pref_use_persistent_notifications">Ãhendatud Orbot korral nÀidata katkematult ikoonide tööriistariba</string>
+ <string name="pref_use_persistent_notifications_title">Pidevalt kuvatavad teated</string>
+ <string name="pref_disable_network_title">Pole võrgu auto-und</string>
+ <string name="pref_disable_network_summary">Pane Tor magama kui InternetiÃŒhendus puudub</string>
+ <string name="newnym">LÃŒlitusite uuele Tor identiteedile!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Interneti ÃŒhendus puudub. Panen Tori magama...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Interneti ÃŒhendus hea. Ãratan Tori ÃŒles...</string>
+ <string name="save">Salvesta</string>
+ <string name="name">Name</string>
+ <string name="disable">Keela</string>
+ <string name="enable">Luba</string>
+</resources>
diff --git a/app-mini/src/main/res/values-eu/poestrings.xml b/app-mini/src/main/res/values-eu/poestrings.xml
new file mode 100644
index 00000000..3b5d7d92
--- /dev/null
+++ b/app-mini/src/main/res/values-eu/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Batzuetan zubi bat behar duzu Tor sarera heltzeko</string>
+ <string name="action_more">KONTATU GEHIAGO</string>
+
+ <string name="vpn_setup">Edozein aplikazio Tor bidez pasatzea ahalbidetu dezakezu gure VPN-a erabiliz</string>
+ <string name="vpn_setup_sub">Honek ez zaitu anonimo bihurtuko, baina suebakietatik pasatzera lagunduko zaitu.</string>
+ <string name="action_vpn_choose">HAUTATU APLIKAZIOAK</string>
+
+ <string name="hello">Kaixo</string>
+ <string name="welcome">Ongi etorri mugikorreko Tor-era.</string>
+
+ <string name="browser_the_internet">Arakatu Internet zure ustez egin behar zenukeen erara.</string>
+ <string name="no_tracking">Jarraipenik ez. Zentsurarik ez.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-eu/strings.xml b/app-mini/src/main/res/values-eu/strings.xml
new file mode 100644
index 00000000..c0138fe6
--- /dev/null
+++ b/app-mini/src/main/res/values-eu/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot proxy aplikazio aske bat da beste aplikazioei Interneten erabilera seguruago bat egitea ahalbidetzen diena. Orbot-ek Tor erabiltzen du zure Internet trafikoa zifratzeko eta mundu osoan barrena hainbat konputagailuetatik pasatuz ezkutatzeko. Tor software askea eta sare irekia da, askatasun eta pribatutasun pertsonala, aktibitate eta erlazio komertzial konfidentzialak erasotzen dituen sare analisi moten kontra eginez babesten zaituena.</string>
+ <string name="status_starting_up">Orbot abiarazten ari da...</string>
+ <string name="status_activated">Tor sarera konektatuta</string>
+ <string name="status_disabled">Orbot desaktibatuta dago</string>
+ <string name="status_shutting_down">TorService itzaltzen ari da</string>
+ <string name="tor_process_starting">Tor bezeroa hasten...</string>
+ <string name="tor_process_complete">eginda.</string>
+ <string name="menu_settings">Ezarpenak</string>
+ <string name="menu_log">Egunkaria</string>
+ <string name="menu_start">Abiarazi</string>
+ <string name="menu_stop">Gelditu</string>
+ <string name="menu_about">Honi buruz</string>
+ <string name="main_layout_download">Jaitsiera</string>
+ <string name="main_layout_upload">Igoera</string>
+ <string name="button_about">Honi buruz</string>
+ <string name="menu_exit">Irten</string>
+ <string name="menu_scan">Eskaneatu BridgeQR</string>
+ <string name="menu_share_bridge">Partekatu BridgeQR</string>
+ <string name="btn_okay">Ados</string>
+ <string name="btn_cancel">Utzi</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbot xehetasun batzuk</string>
+ <string name="wizard_details_msg">Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent eta Polipo dituen kode irekiko aplikazio bat da Orbot. Tor sarera sartzeko HTTP proxya (8118) eta SOCKS proxya (9050) eskaintzen ditu. Rooteatutako gailuetan Orbot-ek interneteko trafiko guztia Tor bidez bidali dezake baita ere.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Orokorra</string>
+ <string name="pref_start_boot_title">Hasi Orbot abioan</string>
+ <string name="pref_start_boot_summary">Hasi Orbot automatikoki eta konektatu Tor zure Android gailua abiarazterakoan</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Nodo konfigurazioa</string>
+ <string name="pref_node_configuration_summary">Hauek zure anonimotasuna murriztu dezaketen ezarpen aurreratuak dira</string>
+ <string name="pref_entrance_node">Sarrera-nodoak</string>
+ <string name="pref_entrance_node_summary">Lehen jauzirako hatzmarka, ezizen, herrialde eta helbideak</string>
+ <string name="pref_entrance_node_dialog">Sartu sarrera-nodoak</string>
+ <string name="pref_allow_background_starts_title">Baimendu bigarren planoko abioak</string>
+ <string name="pref_allow_background_starts_summary">Baimendu edozein aplikaziok Orbot-i Tor eta dagozkion zerbitzuak abiaraztea agintzea</string>
+ <string name="pref_proxy_title">Irteera sareko proxya (Aukerazkoa)</string>
+ <string name="pref_proxy_type_title">Ireteera-proxy mota</string>
+ <string name="pref_proxy_type_summary">Proxy zerbitzariarentzako erabiltzeko protokoloak: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Sartu proxy mota</string>
+ <string name="pref_proxy_host_title">Irteera-proxy ostalaria</string>
+ <string name="pref_proxy_host_summary">Proxy zerbitzariaren ostalari-izena</string>
+ <string name="pref_proxy_host_dialog">Sartu proxy-aren ostalaria</string>
+ <string name="pref_proxy_port_title">Irteera proxy-aren ataka</string>
+ <string name="pref_proxy_port_summary">Proxy zerbitzariaren ataka</string>
+ <string name="pref_proxy_port_dialog">Sartu Proxy-aren ataka</string>
+ <string name="pref_proxy_username_title">Irteerako proxyaren erabiltzaile-izena</string>
+ <string name="pref_proxy_username_summary">Proxyaren erabiltzaile-izena (aukerazkoa)</string>
+ <string name="pref_proxy_username_dialog">Sartu proxyaren erabiltzaile-izena</string>
+ <string name="pref_proxy_password_title">Irteerako proxyaren pasahitza</string>
+ <string name="pref_proxy_password_summary">Proxyaren pasahitza (Aukerazkoa)</string>
+ <string name="pref_proxy_password_dialog">Sartu proxyaren pasahitza</string>
+ <string name="couldn_t_start_tor_process_">Ezin izan da Tor prozesua hasi:</string>
+ <string name="error">Errorea</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Zure helbide atzigarriak salbuespena sortu du!</string>
+ <string name="your_relay_settings_caused_an_exception_">Zure errele ezarpenak salbuespena sortu dute!</string>
+ <string name="exit_nodes">Irteera nodoak</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Hatzmarkak, ezizenak, herrialdeak eta helbideak azkeneko jauzirako</string>
+ <string name="enter_exit_nodes">Sartu irteera nodoak</string>
+ <string name="exclude_nodes">Baztertu nodoak</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Baztertuko diren hatzmarkak, ezizenak, herrialdeak eta helbideak</string>
+ <string name="enter_exclude_nodes">Sartu baztertzeko nodoak</string>
+ <string name="strict_nodes">Nodo hertsiak</string>
+ <string name="use_only_these_specified_nodes">Erabili *bakarrik* zehaztutako nodo hauek</string>
+ <string name="bridges">Zubiak</string>
+ <string name="use_bridges">Erabili zubiak</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Gaitu ordezko sarrerak Tor sarera</string>
+ <string name="ip_address_and_port_of_bridges">Zubien IP helbidea eta ataka</string>
+ <string name="enter_bridge_addresses">Sartu zubien helbideak</string>
+ <string name="relays">Erreleak</string>
+ <string name="relaying">Erreleatzea</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Gaitu zure gailua ez-irteerako errelea izatea</string>
+ <string name="relay_port">Errele ataka</string>
+ <string name="listening_port_for_your_tor_relay">Zure Tor errelearentzako entzuteko portua</string>
+ <string name="enter_or_port">Sartu OR ataka</string>
+ <string name="relay_nickname">Errele ezizena</string>
+ <string name="the_nickname_for_your_tor_relay">Zure Tor errelearen ezizena</string>
+ <string name="enter_a_custom_relay_nickname">Sartu errele pertsonalaren ezizena</string>
+ <string name="reachable_addresses">Helbide atzigarriak</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Exekutatu politika murriztaileak dituen suebakiaren atzean dagoen bezero gisa</string>
+ <string name="reachable_ports">Ataka atzigarriak</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Suebaki murriztailearen atzetik atzigarri diren atakak</string>
+ <string name="enter_ports">Sartu atakak</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">gaitu arazketarako egunkariak (adb edo aLogCat erabili behar da ikusteko)</string>
+ <string name="project_home">Proiektuaren etxea(k):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Hirugarrengoen softwarea:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Aplikazio batek ezkutuko zerbitzariko %1$s ataka ireki nau du Tor sarera. Segurua da aplikazioaz fidatzen bazara.</string>
+ <string name="found_existing_tor_process">aurreko Tor prozesu bat aurkitu da...</string>
+ <string name="something_bad_happened">Zerbait txarra gertatu da. Begiratu egunkarian</string>
+ <string name="unable_to_read_hidden_service_name">ezin izan da ezkutuko zerbitzuaren izena irakurri</string>
+ <string name="unable_to_start_tor">Ezin izan da Tor hasi:</string>
+ <string name="pref_use_persistent_notifications">Mantendu ikonoa tresna barran Orbot konektatuta dagoenean</string>
+ <string name="pref_use_persistent_notifications_title">Beti piztutako jakinarazpenak</string>
+ <string name="pref_use_expanded_notifications">Erakutsi hedatutako jakinarazpenak Tor irteera herrialde eta IP-arekin</string>
+ <string name="pref_use_expanded_notifications_title">Hedatutako jakinarazpenak</string>
+ <string name="set_locale_title">Hizkuntza</string>
+ <string name="no_internet_connection_tor">Ez dago Interneterako konexiorik; Tor egonean dago...</string>
+ <string name="pref_disable_network_title">Sareko lokartze automatikorik ez</string>
+ <string name="pref_disable_network_summary">Jarri Tor lotan internet atzigarri ez dagoenean</string>
+ <string name="newnym">Tor identitate berri batera aldatu duzu!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Sare konexiorik ez. Tor lotan jartzen...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Sare konexioa berreskuratu da. Tor esnatzen...</string>
+ <string name="updating_settings_in_tor_service">Tor zerbitzuaren ezarpenak eguneratzen</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Tor-ek bere SOCKS proxya eskaintzeko ataka (Lehenetsia: 9050 edo 0 desgaitzeko)</string>
+ <string name="pref_socks_dialog">SOCKS atakaren konfigurazioa</string>
+ <string name="pref_transport_title">Tor proxy gardenaren ataka</string>
+ <string name="pref_transport_summary">Tor-ek bere Proxy gardena eskaintzeko ataka (Lehenetsia: 9040 edo 0 desgaitzeko)</string>
+ <string name="pref_transport_dialog">Proxy gardenaren atakaren konfigurazioa</string>
+ <string name="pref_dnsport_title">Tor DNS ataka</string>
+ <string name="pref_dnsport_summary">Tor-ek bere DNS-a eskaintzeko ataka (Lehenetsia: 5400 edo 0 desgaitzeko)</string>
+ <string name="pref_dnsport_dialog">DNS atakaren konfigurazioa</string>
+ <string name="pref_torrc_title">Torrc konfigurazio pertsonala</string>
+ <string name="pref_torrc_summary">ADITUAK BESTERIK EZ: sartu torrc konfigurazio lerroak</string>
+ <string name="pref_torrc_dialog">Torrc pertsonalizatua</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Zubiak eguneratuta</string>
+ <string name="restart_orbot_to_use_this_bridge_">Berrabiarazi Orbot aldaketak aplikatzeko</string>
+ <string name="menu_qr">QR Kodeak</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Zure sare mugikorrak Tor nahita blokeatzen badu, \'Zubi zerbitzaria\' erabili dezakezu ordezko sarbide gisa. HAUTATU konfiguratzeko aukera bat eta probatu...</string>
+ <string name="bridge_mode">Zubi modua</string>
+ <string name="get_bridges_email">E-mail</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Aktibatu</string>
+ <string name="apps_mode">VPN modua</string>
+ <string name="send_email">Bidali E-maila</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Zubi helbide bat lortu dezakezu e-mail eta web bidez edo QR kode bat eskaneatuz. Hautatu \'E-mail\' edo \'Web\' behean zubi helbide bat eskatzeko.\n\nBehin helbide bat duzula, kopiatu eta itsatsi ezazu Orbot ezarpenetako \"Zubiak\" atalean eta berrabiarazi.</string>
+ <string name="vpn_default_world">Orokorra (Automatikoa)</string>
+ <string name="hidden_services">Ezkutuko zerbitzuak</string>
+ <string name="title_activity_hidden_services">Ezkutuko zerbitzuak</string>
+ <string name="menu_hidden_services">Ezkutuko zerbitzuak</string>
+ <string name="save">Gorde</string>
+ <string name="local_port">Ataka lokala</string>
+ <string name="onion_port">Onion ataka</string>
+ <string name="name">Izena</string>
+ <string name="done">Egina!</string>
+ <string name="invalid_port">Ataka baliogabea</string>
+ <string name="copy_address_to_clipboard">Kopiatu helbidea arbelera</string>
+ <string name="show_auth_cookie">Erakutsi autentifikazio cookie-a</string>
+ <string name="backup_service">Egin zerbitzuaren babeskopia</string>
+ <string name="delete_service">Ezabatu zerbitzua</string>
+ <string name="backup_saved_at_external_storage">Babeskopia kanpo biltegiratzean gorde da</string>
+ <string name="backup_restored">Babeskopia berrezarri da</string>
+ <string name="filemanager_not_available">Fitxategi kudeatzailea ez dago eskuragarri</string>
+ <string name="please_grant_permissions_for_external_storage">Eman kanpo biltegiratzerako baimena</string>
+ <string name="restore_backup">Berrezarri babeskopia</string>
+ <string name="create_a_backup_first">Sortu babeskopia aurretik</string>
+ <string name="name_can_t_be_empty">Izena ezin da hutsik egon</string>
+ <string name="fields_can_t_be_empty">Eremuak ezin dira hutsik egon</string>
+ <string name="start_tor_again_for_finish_the_process">Hasi Tor berriro prozesua amaitzeko</string>
+ <string name="confirm_service_deletion">Berretsi zerbitzua ezabatzea</string>
+ <string name="click_again_for_backup">Egin klik berriro babeskopiarako</string>
+ <string name="service_type">Zerbitzu mota</string>
+ <string name="auth_cookie">Autentifikazio cookie-a</string>
+ <string name="copy_cookie_to_clipboard">Kopiatu cookie-a arbelera</string>
+ <string name="auth_cookie_was_not_configured">Ez da autentifikazio cookie-a konfiguratu</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Mesedez berrabiarazi Orbot aldaketak aktibatzeko</string>
+ <string name="client_cookies">Bezero-cookie-ak</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">.onion helbide baliogabea</string>
+ <string name="cookie_from_QR">Irakurri QR-tik</string>
+ <string name="backup_cookie">Egin cookie-aren babeskopia</string>
+ <string name="delete_cookie">Ezabatu cookie-a</string>
+ <string name="confirm_cookie_deletion">Berretsi cookie-a ezabatzea</string>
+ <string name="hosted_services">Ostatatutako zerbitzuak</string>
+ <string name="share_as_qr">Partekatu QR gisa</string>
+ <string name="disable">Desgaitu</string>
+ <string name="enable">Gaitu</string>
+ <string name="consider_disable_battery_optimizations">Aztertu bateria optimizazioak desgaitzea</string>
+ <string name="consider_enable_battery_optimizations">Aztertu bateria optimizazioak gaitzea</string>
+ <string name="pref_isolate_dest">Isolatu helbide helburuak</string>
+ <string name="pref_isolate_dest_summary">Erabili zirkuitu desberdin bat helbide helburu bakoitzeko</string>
+ <string name="no_transproxy_warning_short">ABISUA: Proxy gardenak ez du euskarria jada</string>
+ <string name="no_transproxy_warning">ABISUA: Proxy gardenak ez du euskarria jada. Erabili Orbot aplikazioen VPN-a ordez.</string>
+ <string name="pref_connection_padding">Konexioaren betegarria</string>
+ <string name="pref_connection_padding_summary">Beti gaitzen du konexioaren betegarria trafikoaren azterketa motza batzuetaz babesteko. Lehenetsita: automatikoa</string>
+ <string name="pref_reduced_connection_padding">Konexioaren betegarria gutxitua</string>
+ <string name="pref_reduced_connection_padding_summary">Errelearen konexioa azkarrago ixten du eta pakete betegarri gutxiago bidaltzen ditu datu eta bateria erabilera gutxiagotzeko</string>
+ <string name="app_shortcuts">Tor-gaitutako aplikazioak</string>
+ <string name="testing_bridges">Zubiaren Tor konexioa egiaztatzen...</string>
+ <string name="testing_bridges_success">Arrakasta. Zubiaren konfigurazioa egokia da!</string>
+ <string name="testing_bridges_fail">HUTSA. Saiatu beste aukera bat</string>
+ <string name="bridge_direct_connect">Konektatu zuzenean Tor sarera (Onena)</string>
+ <string name="bridge_community">Konektatu komunitatearen zerbitzarietatik</string>
+ <string name="bridge_cloud">Konektatu hodeiko zerbitzarietatik</string>
+ <string name="bridges_get_new">Eskatu zubi berriak... (Beste guztiak huts egiten badu)</string>
+ <string name="trouble_connecting">Arazoak konektatzeko?</string>
+ <string name="full_device_vpn">Gailu osoaren VPN-a</string>
+ <string name="vpn_disabled">VPN-a desgaituta</string>
+</resources>
diff --git a/app-mini/src/main/res/values-fa/poestrings.xml b/app-mini/src/main/res/values-fa/poestrings.xml
new file mode 100644
index 00000000..12445012
--- /dev/null
+++ b/app-mini/src/main/res/values-fa/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">گاÙÛ Ø§ÙÙØ§Øª ØšØ±Ø§Û Ø§ØªØµØ§Ù ØšÙ ØŽØšÚ©Ùâ ØªÙر ÙÛØ§Ø² ØšÙ ÛÚ© ÙŸÙ Ø§Ø±ØªØšØ§Ø·Û Ø¯Ø§Ø±ÛØ¯.</string>
+ <string name="action_more">ØªÙØ¶ÛØ ØšÛØŽØªØ±</string>
+
+ <string name="vpn_setup">ØŽÙ
ا Ù
ÛâØªÙØ§ÙÛØ¯ ØšÙ Ú©Ù
Ú© VPN ساخت٠؎د٠درÙ٠اٟÙÛÚ©ÛØŽÙÙ Ù
Ø§Ø Ø§ØªØµØ§Ù ØšÙ ØŽØšÚ©ÙâÛ ØªÙØ± را ØšØ±Ø§Û ÙØ± ØšØ±ÙØ§Ù
ÙâØ§Û ÙØ¹Ø§Ù Ú©ÙÛØ¯.</string>
+ <string name="vpn_setup_sub">اÛÙ ØŽÙ
ا را ØšÛ ÙØ§Ù
Ù ÙØŽØ§Ù ÙÙ
ÛâÚ©ÙØ¯ اÙ
ا ØšÙ ØŽÙ
ا در Ø¹ØšÙØ± از ÙØ§ÛØ±ÙØ§ÙâÙØ§ Ú©Ù
Ú© Ù
ÛâÚ©ÙØ¯.</string>
+ <string name="action_vpn_choose">اٟâÙØ§ را Ø§ÙØªØ®Ø§Øš Ú©Ù</string>
+
+ <string name="hello">Ø³ÙØ§Ù
</string>
+ <string name="welcome">ØšÙ ØªÙØ± ؚر رÙÛ ØªÙÙÙ ÙÙ
Ø±Ø§Ù Ø®ÙØŽ Ø¢Ù
Ø¯ÛØ¯.</string>
+
+ <string name="browser_the_internet">ÙÙ
اÙâØ·ÙØ±Û Ú©Ù Ø¯ÙØ³Øª Ø¯Ø§Ø±ÛØ¯ اÛÙØªØ±ÙتâÚ¯Ø±Ø¯Û Ú©ÙÛØ¯.</string>
+ <string name="no_tracking">ؚدÙÙ Ø±Ø¯ÛØ§ØšÛ. ؚدÙÙ Ø³Ø§ÙØ³Ùر.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-fa/strings.xml b/app-mini/src/main/res/values-fa/strings.xml
new file mode 100644
index 00000000..b92f338f
--- /dev/null
+++ b/app-mini/src/main/res/values-fa/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Ø±ÙØšØ§Øª ÙŸÛØ§Ø²Û</string>
+ <string name="app_description">ارؚت ÛÚ© ØšØ±ÙØ§Ù
٠ٟرÙÚ©Ø³Û Ù
جاÙÛ Ø§Ø³Øª ک٠دÛگر ØšØ±ÙØ§Ù
Ù ÙØ§ را ØšÙ Ø§Ø³ØªÙØ§Ø¯Ù اÙ
٠از اÛÙØªØ±Ùت ØªÙØ§ÙÙ
ÙØ¯ Ù
Û Ú©ÙØ¯ . Ø§Ø±ØšÙØª از ØªÙØ± ØšØ±Ø§Û Ø±Ù
Ø²Ú¯Ø°Ø§Ø±Û Ú©Ø±Ø¯Ù ØªØ±Ø§ÙÛÚ© اÛÙØªØ±Ùت ØŽÙ
ا Ø§Ø³ØªÙØ§Ø¯Ù Ù
Û Ú©ÙØ¯ ٠ؚعد Ø¢Ù ÙØ§ را از طرÛ٠کاÙ
ÙŸÛÙØªØ±ÙØ§Û Ù
ØªÙØ§Ùت در ÙÙØ§Ø· Ù
ختÙÙ Ø¬ÙØ§Ù Ù
Ø®ÙÛ Ù
Û Ú©ÙØ¯. ØªÙØ± ÛÚ© ØšØ±ÙØ§Ù
Ù Ù
جاÙÛ Ù ØŽØšÚ©Ù ØšØ§Ø² است Ú©Ù ØŽÙ
ا از ØŽÙ
ا در Ù
ÙØ§ØšÙ ØªØØª ÙØžØ± ØšÙØ¯Ù در ØŽØšÚ©ÙÙ¬â ØªÙØ¯ÛØ¯ Ø¢Ø²Ø§Ø¯Û ÙØ§Û ؎خصÛÙ¬ Ø®ØµÙØµÛÙ¬ ÙØ¹Ø§ÙÛØª ÙØ§Û Ú©Ø§Ø±Û Ù Ø±Ø§ØšØ·Ù ÙØ§Û ØŽØ®ØµÛ ØšØ·ÙØ± اÙ
Ù Ù
ØØ§Ù؞ت Ù
Û Ú©ÙØ¯. </string>
+ <string name="status_starting_up">Ø§Ø±ØšÙØª Ø¯Ø±ØØ§Ù آغاز است...</string>
+ <string name="status_activated">Ù
ØªØµÙ ØšÙ ØŽØšÚ©Ù ØªÙØ±</string>
+ <string name="status_disabled">Ø§Ø±ØšÙØª ØºÛØ±Ùعا٠؎د٠است.</string>
+ <string name="status_shutting_down">سرÙÛØ³ ØªÙØ± در ØØ§Ù خاÙ
ÙØŽ ØŽØ¯Ù Ø§Ø³Øª</string>
+ <string name="tor_process_starting">ØŽØ±ÙØ¹ Ú©ÙØ§ÛÙØª ØªÙØ±...</string>
+ <string name="tor_process_complete">تÙ
اÙ
.</string>
+ <string name="menu_settings">ØªÙØžÛÙ
ات</string>
+ <string name="menu_log">ÙØ±Ùد</string>
+ <string name="menu_start">آغاز</string>
+ <string name="menu_stop">Ø§ÛØ³Øª</string>
+ <string name="menu_about">درؚارÙ</string>
+ <string name="main_layout_download">داÙÙÙØ¯</string>
+ <string name="main_layout_upload">آٟÙÙØ¯</string>
+ <string name="button_about">درؚارÙ</string>
+ <string name="menu_exit">Ø®Ø±ÙØ¬</string>
+ <string name="menu_scan">اسک٠BridgeQR</string>
+ <string name="menu_share_bridge">ا؎تراک BridgeQR</string>
+ <string name="btn_okay">ÙØšÙÙ</string>
+ <string name="btn_cancel">ÙØºÙ</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ØšØ±Ø®Û Ø¬Ø²ÛÛØ§Øª Ø¯Ø±ØšØ§Ø±Ù Ø§ÙØ±ØšÙت</string>
+ <string name="wizard_details_msg">Ø§ÙØ±ØšØ§Øª ÙØ±Ù
âØ§ÙØ²Ø§Ø±Û آزاد است ک٠؎اÙ
Ù ØªÙØ±Ø Obfs4ProxyØ BadVPN Tun2SocksØ LibEvent Ù ÙŸÙÙÛÙŸÙ Ù
ÛâØŽÙØ¯. اÛÙ ÙØ±Ù
âØ§ÙØ²Ø§Ø± ÛÚ© اÚâØªÛâØªÛâÙŸÛ ÙŸØ±Ø§Ú©Ø³Û (8118) ٠ساکس (9050) Ù
ØÙÛ Ø±ÙÛ ØŽØšÚ©Ù ØªÙØ± ÙØ±Ø§ÙÙ
Ù
ÛâÚ©ÙØ¯. ÙÙ
ÚÙÛÙ Ø§ÙØ±ØšØ§Øª Ù
ÛâØªÙØ§Ùد رÙÛ Ø¯Ø³ØªÚ¯Ø§ÙâÙØ§Û Ø±ÙØª ØŽØ¯ÙØ تÙ
اÙ
تراÙÛÚ© اÛÙØªØ±Ùت را ار ØªÙØ± Ø¹ØšÙØ± Ø¯ÙØ¯.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Ú©ÙÛ</string>
+ <string name="pref_start_boot_title">Ø§ÙØ±ØšÙت را ÙÙ
زÙ
ا٠ؚا ØšÙØª آغاز Ú©Ù</string>
+ <string name="pref_start_boot_summary">ÙÙØªÛ Ø§ÙØ¯Ø±ÙÛØ¯ ØšÙØª ØŽØ¯Ø ØšØµÙØ±Øª Ø®ÙØ¯Ú©Ø§Ø± رؚات ÙŸÛØ§Ø²Û را اجرا ٠آ٠را ØšÙ ØŽØšÚ©Ù ØªÙØ± Ù
تص٠کÙ</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ØªÙØžÛÙ
ات گرÙ</string>
+ <string name="pref_node_configuration_summary">اÛÙÙØ§ ØªÙØžÛÙ
ات ÙŸÛØŽØ±ÙØªÙ Ø§Û ÙØ³ØªÙد Ú©Ù Ù
Ù
ک٠است Ú¯Ù
ÙØ§Ù
Û ØŽÙ
ا را Ú©Ø§ÙØŽ Ø¯ÙÙØ¯</string>
+ <string name="pref_entrance_node">Ú¯Ø±Ù ÙØ§Û ÙØ±ÙدÛ</string>
+ <string name="pref_entrance_node_summary">اثراÙگ؎ت ÙØ§Ø اساÙ
Û Ù
Ø³ØªØ¹Ø§Ø±Ø Ú©ØŽÙØ±Ùا Ù Ø¢Ø¯Ø±Ø³ÙØ§Û Ø¬ÙØŽ Ø§ÙÙ</string>
+ <string name="pref_entrance_node_dialog">Ú¯Ø±Ù ÙØ§Û ÙØ±ÙØ¯Û Ø±Ø§ ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="pref_allow_background_starts_title">Ø§Ø¬Ø§Ø²Ù Ø¯Ø§Ø¯Ù ØšÙ Ø§Ø¬Ø±Ø§Û Ø§ÙŸ در ÙŸØ³âØ²Ù
ÛÙÙ</string>
+ <string name="pref_allow_background_starts_summary">ØšÙ ÙÙ
Ù ØšØ±ÙØ§Ù
Ù ÙØ§ Ø§Ø¬Ø§Ø²Ù ØšØ¯Ù ØªÙØ± ٠سرÙÛØ³ÙØ§Û Ù
Ø±ØšÙØ· ؚ٠آ٠را اجرا Ú©ÙÙØ¯</string>
+ <string name="pref_proxy_title">ÙŸØ±Ø§Ú©Ø³Û ØŽØšÚ©Ù Ø®Ø±ÙØ¬Û</string>
+ <string name="pref_proxy_type_title">ÙÙØ¹ ٟرÙکسÛ</string>
+ <string name="pref_proxy_type_summary">ÙŸØ±ÙØªÚ©Ù Ù
ÙØ±Ø¯ Ø§Ø³ØªÙØ§Ø¯Ù ØšØ±Ø§Û ÙŸØ±Ø§Ú©Ø³Û Ø³Ø±ÙØ±: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">ÙÙØ¹ ٟرÙÚ©Ø³Û Ø±Ø§ ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="pref_proxy_host_title"> ٟرÙÚ©Ø³Û Ù
ÛØ²ØšØ§Ù</string>
+ <string name="pref_proxy_host_summary">ÙØ§Ù
Ø³Ø±ÙØ± ٟرÙÚ©Ø³Û Ù
ÛØ²ØšØ§Ù </string>
+ <string name="pref_proxy_host_dialog">ÙØ§Ù
ٟرÙÚ©Ø³Û Ù
ÛØ²ØšØ§Ù را ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="pref_proxy_port_title">ÙŸÙØ±Øª ٟرÙÚ©Ø³Û Ø®Ø±ÙØ¬Û</string>
+ <string name="pref_proxy_port_summary">ÙŸÙØ±Øª Ø³Ø±ÙØ± ٟرÙکسÛ</string>
+ <string name="pref_proxy_port_dialog">ÙŸÙØ±Øª ٟرÙÚ©Ø³Û Ø±Ø§ ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="pref_proxy_username_title">ÙØ§Ù
Ú©Ø§Ø±ØšØ±Û ÙŸØ±Ø§Ú©Ø³Û Ø®Ø±ÙØ¬Û</string>
+ <string name="pref_proxy_username_summary">ÙØ§Ù
Ú©Ø§Ø±ØšØ±Û ÙŸØ±ÙکسÛ(Ø§Ø®ØªÛØ§Ø²Û)</string>
+ <string name="pref_proxy_username_dialog">ÙØ§Ù
Ú©Ø§Ø±ØšØ±Û ÙŸØ±ÙÚ©Ø³Û Ø±Ø§ ÙØ§Ø±Ø¯ ÙÙ
اÛÛØ¯</string>
+ <string name="pref_proxy_password_title">Ú©ÙÙ
Ù Ø¹ØšÙØ± ÙŸØ±Ø§Ú©Ø³Û Ø®Ø±ÙØ¬Û</string>
+ <string name="pref_proxy_password_summary">رÙ
ز Ø¹ØšÙØ± ٟرÙکسÛ(Ø§Ø®ØªÛØ§Ø±Û)</string>
+ <string name="pref_proxy_password_dialog">رÙ
ز Ø¹ØšÙØ± ٟرÙÚ©Ø³Û Ø±Ø§ ÙØ§Ø±Ø¯ ÙÙ
اÛÛØ¯</string>
+ <string name="couldn_t_start_tor_process_"> ØªÙØ± ÙØªÙاست اجرا ØŽÙØ¯:</string>
+ <string name="error">خطا</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ØªÙØžÛÙ
ات ØŽÙ
ا ØšØ±Ø§Û Ø¢Ø¯Ø±Ø³ ÙØ§ØšÙ Ø¯Ø³ØªØ±Ø³Û ØšØ§Ø¹Ø« Ø§ÛØ¬Ø§Ø¯ خطا ØŽØ¯Ù Ø§ÙØ¯ !</string>
+ <string name="your_relay_settings_caused_an_exception_">ØªÙØžÛÙ
ات رÙÙ ØŽÙ
ا Ù
ÙØ¬Øš خطا ØŽØ¯Ù Ø§ÙØ¯</string>
+ <string name="exit_nodes">Ú¯Ø±Ù ÙØ§Û Ø®Ø±ÙØ¬Û</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">اثر اÙÚ¯ØŽØªÙØ§ Ø Ø§Ø³Ø§Ù
Û Ù
ستعار Ø Ú©ØŽÙØ±Ùا Ù Ø¢Ø¯Ø±Ø³ÙØ§ ØšØ±Ø§Û Ø¢Ø®Ø±ÛÙ Ø¬ÙØŽ </string>
+ <string name="enter_exit_nodes"> Ú¯Ø±Ù ÙØ§Û Ø®Ø±ÙØ¬Û را ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="exclude_nodes">اÛÙ Ú¯Ø±Ù ÙØ§ را Ø§Ø³ØªÙØ§Ø¯Ù ÙÚ©Ù</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">اثر اÙÚ¯ØŽØªÙØ§Ø اساÙ
Û Ù
ستعار Ø Ú©ØŽÙØ±Ùا Ù Ø¢Ø¯Ø±Ø³ÙØ§ÛÛ Ú©Ù ÙØšØ§Ûد Ø§Ø³ØªÙØ§Ø¯Ù ØŽÙÙØ¯</string>
+ <string name="enter_exclude_nodes"> Ú¯Ø±Ù ÙØ§ÛÛ Ú©Ù ÙØšØ§Ûد Ø§Ø³ØªÙØ§Ø¯Ù ØŽÙÙØ¯</string>
+ <string name="strict_nodes">Ú¯Ø±Ù ÙØ§Û Ù
ØØ¯Ùد</string>
+ <string name="use_only_these_specified_nodes">ÙÙØ· * از اÛÙ Ú¯Ø±Ù ÙØ§Û Ù
؎خص ØŽØ¯Ù Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯* </string>
+ <string name="bridges">Bridges</string>
+ <string name="use_bridges">از ÙŸÙ Bridges Ú©Ù</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">ÙØ±ÙدÛâÙØ§Û جاÛگزÛÙ ØšÙ ØŽØšÚ©Ù ØªÙØ± را ÙØ¹Ø§Ù Ú©Ù</string>
+ <string name="ip_address_and_port_of_bridges">آدرس Ø¢Û ÙŸÛ Ù ÙŸÙØ±ØªÙ ÙŸÙ ÙØ§</string>
+ <string name="enter_bridge_addresses">آدرس Bridges را ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="relays">ؚازٟخ؎ Ú©ÙÙØ¯Ù ÙØ§</string>
+ <string name="relaying">Ø¯Ø±ØØ§Ù ؚازٟخ؎</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Ø¯Ø³ØªÚ¯Ø§Ù Ø®ÙØ¯ را ØšØ±Ø§Û ÛÚ© ؚازٟخ؎ Ú©ÙÙØ¯Ù ØºÛØ±-Ø®Ø±ÙØ¬Û ÙØ¹Ø§Ù Ú©ÙÛØ¯</string>
+ <string name="relay_port">ÙŸÙØ±Øª ؚازٟخ؎ Ú©ÙÙØ¯Ù</string>
+ <string name="listening_port_for_your_tor_relay"> ÙŸÙØ±Øª ØŽÙÙÙØ¯Ù ØšØ±Ø§Û ØšØ§Ø² ٟخ؎ ØªÙØ±</string>
+ <string name="enter_or_port">ÙŸÙØ±Øª OR را ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="relay_nickname">ÙØ§Ù
Ù
ستعار ؚازٟخ؎ Ú©ÙÙØ¯Ù</string>
+ <string name="the_nickname_for_your_tor_relay">ÙØ§Ù
Ù
ستعار ؚازٟخ؎ Ú©ÙÙØ¯Ù ØŽÙ
ا</string>
+ <string name="enter_a_custom_relay_nickname">ÛÚ© ÙØ§Ù
Ù
ستعار Ø¯ÙØ®ÙØ§Ù ØšØ±Ø§Û ØšØ§Ø²ÙŸØ®ØŽ Ú©ÙÙØ¯Ù ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="reachable_addresses">آدرس ÙØ§Û ÙØ§ØšÙ دسترس</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">ؚعÙÙØ§Ù ÛÚ© کارؚر ٟ؎ت دÛÙØ§Ø±Ù آت؎ ؚا Ø³ÛØ§Ø³Øª ÙØ§Û Ù
ØØ¯Ùد Ú©ÙÙØ¯Ù اجرا Ú©ÙÛØ¯</string>
+ <string name="reachable_ports">ÙŸÙØ±ØªâÙØ§Û ÙØ§ØšÙ دسترس</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ÙŸÙØ±ØªâÙØ§Û ÙØ§ØšÙ دسترس ٟ؎ت ÛÚ© ÙØ§ÛØ±ÙØ§Ù Ù
ØØ¯ÙدکÙÙØ¯Ù</string>
+ <string name="enter_ports">ÙŸÙØ±ØªâÙØ§ را ÙØ§Ø±Ø¯ Ú©ÙÛØ¯</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">ثؚت گزار؎ ا؎کا٠زداÛÛ Ø±Ø§ ØšÙ Ø®Ø±ÙØ¬Û ÙØ¹Ø§Ù Ú©Ù (ØšØ±Ø§Û ÙÙ
Ø§ÛØŽ ØšØ§ÛØ¯ از adb ÛØ§ aLogCat Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯)</string>
+ <string name="project_home">ØµÙØÙ (ÙØ§Û) اصÙÛ ÙŸØ±ÙÚÙ:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">3rd-Party-Software:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy ÙØ³Ø®ÙâÛ 0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">اٟÙÛÚ©ÛØŽÙÛ Ù
ÛâØ®ÙØ§Ùد ÙŸÙØ±Øª Ø³Ø±ÙØ± %1$s را ØšÙ ØŽØšÚ©Ù ØªÙØ± ØšÚ¯ØŽØ§ÛØ¯. در ØµÙØ±ØªÛ ک٠ؚ٠اÛÙ ØšØ±ÙØ§Ù
٠اطÙ
ÛÙØ§Ù Ø¯Ø§Ø±ÛØ¯Ø ÚÙÛÙ Ú©Ø§Ø±Û Ø§Ù
٠است.</string>
+ <string name="found_existing_tor_process">ÛÚ© ØªÙØ± Ø¯Ø±ØØ§Ù اجرا ÙŸÛØ¯Ø§ ؎د...</string>
+ <string name="something_bad_happened">Ø§ØªÙØ§Ù ØšØ¯Û Ø§ÙØªØ§Ø¯. ÙÙØ§Ûع ثؚت ؎د٠را ÚÚ© Ú©ÙÛØ¯</string>
+ <string name="unable_to_read_hidden_service_name">ÙØ§ØªÙا٠در Ø®ÙØ§ÙØ¯Ù ÙØ§Ù
سرÙÛØ³ Ù
Ø®ÙÛ</string>
+ <string name="unable_to_start_tor">ÙØ§ØªÙا٠در Ø±Ø§Ù Ø§ÙØ¯Ø§Ø²Û ØªÙØ±:</string>
+ <string name="pref_use_persistent_notifications">ÙÙØªÛ رؚات ÙŸÛØ§Ø²Û Ù
ØªØµÙ Ø§Ø³ØªØ ÙÙ
ÛØŽÙ Ø¢ÛÚ©ÙÙ Ù
Ø±ØšÙØ· را در ÙÙØ§Ø± اؚزار Ùگ٠دار.</string>
+ <string name="pref_use_persistent_notifications_title">Ø¢Ú¯Ø§ÙØ³Ø§Ø²Û ÙÙ
ÛØŽÙ Ø±ÙØŽÙ</string>
+ <string name="pref_use_expanded_notifications">ÙÙ
Ø§ÛØŽ Ø§Ø·ÙØ§Ø¹ رساÙÛ Ú¯Ø³ØªØ±Ø¯Ù ØšØ§ Ú©ØŽÙØ± Ø®Ø±ÙØ¬Û Tor Ù IP</string>
+ <string name="pref_use_expanded_notifications_title">Ø§Ø·ÙØ§Ø¹Û٠گستردÙ</string>
+ <string name="set_locale_title">زؚاÙ</string>
+ <string name="no_internet_connection_tor">ارتؚاط اÛÙØªØ±ÙØªÛ ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯; ØªÙØ± Ø¢Ù
اد٠کار است... </string>
+ <string name="pref_disable_network_title">خاÙ
ÙØŽ Ú©Ø±Ø¯Ù Ø¯Ø± ØµÙØ±Øª عدÙ
ÙØ¬Ùد ØŽØšÚ©Ù</string>
+ <string name="pref_disable_network_summary">در ØµÙØ±ØªÛ Ú©Ù ØŽØšÚ©Ù ÙØ¬Ùد ÙØ¯Ø§ØŽØªÙ ؚا؎د خاÙ
ÙØŽ ØŽÙØ¯</string>
+ <string name="newnym">ØŽÙ
ا ØšÙ ØŽÙØ§Ø³Ù Ø¬Ø¯ÛØ¯ ØªÙØ± Ù
ÙØªÙÙ ØŽØ¯ÛØ¯</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ارتؚاط ØŽØšÚ©Ù Ø§Û ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯. ØªÙØ± ØšÙ ØØ§Ùت Ø®ÙØ§Øš Ù
Û Ø±ÙØ¯</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ارتؚاط ØŽØšÚ©Ù Ø§Û Ø®ÙØš Ø§Ø³Øª. ØªÙØ± را ØšÛØ¯Ø§Ø± ÙÙ
اÛÛØ¯...</string>
+ <string name="updating_settings_in_tor_service">ØšÙ Ø±ÙØ² رساÙÛ ØªÙØžÛÙ
ات در سرÙÛØ³ Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">ÙŸÙØ±ØªÛ Ú©Ù ØªÙØ± ارا؊٠Ù
Û Ø¯ÙØ¯ SOCKS proxy رÙÛ (ÙŸÛØŽ ÙØ±Ø¶: 9050 ÛØ§ 0 ØšØ±Ø§Û ØºÛØ±Ùعا٠کردÙ)</string>
+ <string name="pref_socks_dialog">ÙŸÛÚ©Ø±ØšÙØ¯Û ÙŸÙØ±Øª SOCKS</string>
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_summary">ÙŸÙØ±ØªÛ Ú©Ù ØªÙØ± ارا؊٠Ù
Û Ø¯ÙØ¯ Transparent Proxy رÙÛ (ÙŸÛØŽ ÙØ±Ø¶: 9040 ÛØ§ 0 ØšØ±Ø§Û ØºÛØ±Ùعا٠کردÙ)</string>
+ <string name="pref_transport_dialog">ÙŸÛÚ©Ø±ØšÙØ¯Û ÙŸÙØ±Øª Transproxy</string>
+ <string name="pref_dnsport_title">ÙŸÙØ±Øª Tor DNS</string>
+ <string name="pref_dnsport_summary">ÙŸÙØ±ØªÛ Ú©Ù Tor ارا؊٠Ù
Û Ø¯ÙØ¯ Ø¢Ù DNS رÙÛ (ØšÙ Ø·ÙØ± ÙŸÛØŽ ÙØ±Ø¶: 5400 ÛØ§ 0 ØšØ±Ø§Û ØºÛØ± ÙØ¹Ø§Ù کردÙ)</string>
+ <string name="pref_dnsport_dialog">ÙŸÛÚ©Ø±ØšÙØ¯Û ÙŸÙØ±Øª DNS</string>
+ <string name="pref_torrc_title">ÙŸÛÚ©Ø±ØšÙØ¯Û Ø³ÙØ§Ø±ØŽÛ Torrc</string>
+ <string name="pref_torrc_summary">ÙÙØ· Ù
تخصصاÙ: enter direct torrc config lines</string>
+ <string name="pref_torrc_dialog">Ø³ÙØ§Ø±ØŽÛ Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridges ØšÙ Ø±ÙØ² ØŽØ¯ÙØ¯</string>
+ <string name="restart_orbot_to_use_this_bridge_">ØšØ±Ø§Û ÙØ¹Ø§Ù کرد٠تغÛÛØ±Ø§Øª ÙØ·Ùا Orbot را Ø±Ø§Ù Ø§ÙØ¯Ø§Ø²Û Ù
جدد Ú©ÙÛØ¯</string>
+ <string name="menu_qr">Ú©Ø¯ÙØ§Û QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">اگر ØŽØšÚ©Ù ÙÙ
Ø±Ø§ÙØªØ§Ù ØšÙ ØµÙØ±Øª Ù
رتؚ ØªÙØ± را Ù
Ø³Ø¯ÙØ¯ Ù
ÛâÚ©ÙØ¯Ø Ù
ÛâØªÙØ§ÙÛØ¯ از ÛÚ© «کارساز ٟٻ ؚ٠عÙÙØ§Ù راÙÛ Ø¬Ø§ÛگزÛÙ ØšØ±Ø§Û ÙØ±Ùد Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯. ØšØ±Ø§Û ÙŸÛÚ©Ø±ØšÙØ¯Û Ù ØªØ³ØªØ ÛÚ©Û Ø§Ø² گزÛÙÙâÙØ§ را Ø§ÙØªØ®Ø§Øš Ú©ÙÛØ¯âŠ</string>
+ <string name="bridge_mode">ØØ§Ùت Bridges</string>
+ <string name="get_bridges_email">اÛÙ
ÛÙ</string>
+ <string name="get_bridges_web">ÙØš</string>
+ <string name="activate">ÙØ¹Ø§Ù</string>
+ <string name="apps_mode">ØØ§Ùت VPN</string>
+ <string name="send_email">اÛÙ
ÛÙ ØšÙØ±Ø³Øª</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Ù
Û ØªÙØ§ÙÛØ¯ آدرس bridge را از طرÛ٠اÛÙ
ÛÙÙ¬ ÙØš ÛØ§ ؚا اسک٠کرد٠bridge QR code ؚدست Ø¢ÙØ±Ûد. اÛÙ
ÛÙ ÛØ§ ÙØš ٟاÛÛ٠را ØšØ±Ø§Û Ø¯Ø±Ø®ÙØ§Ø³Øª آدرس bridge Ø§ÙØªØ®Ø§Øš Ú©ÙÛØ¯.\n\n ÙÙØªÛ آدرس را Ø¯Ø§Ø±ÛØ¯ آ٠را Ú©ÙŸÛ Ú©ÙÛØ¯ ٠ؚرگرداÙÛØ¯ در اÙÙÙÛØª ÙØ§Û Bridges در ØªÙØžÛÙ
ات ارؚت ٠آ٠را Ø¯ÙØšØ§Ø±Ù Ø±Ø§Ù Ø§ÙØ¯Ø§Ø²Û Ú©ÙÛØ¯.</string>
+ <string name="vpn_default_world">Ø¬ÙØ§ÙÛ (Ø®ÙØ¯Ú©Ø§Ø±)</string>
+ <string name="hidden_services">سرÙÛØ³âÙØ§Û Ù
Ø®ÙÛ</string>
+ <string name="title_activity_hidden_services">سرÙÛØ³âÙØ§Û Ù
Ø®ÙÛ</string>
+ <string name="menu_hidden_services">سرÙÛØ³âÙØ§Û Ù
Ø®ÙÛ</string>
+ <string name="save">Ø°Ø®ÙØ±Ù</string>
+ <string name="local_port">درگا٠Ù
ØÙÛ</string>
+ <string name="onion_port">Ø¯Ø±Ú¯Ø§Ù ÙŸÛØ§Ø²Û</string>
+ <string name="name">ÙØ§Ù
</string>
+ <string name="done">Ø§ÙØ¬Ø§Ù
؎د!</string>
+ <string name="invalid_port">Ø¯Ø±Ú¯Ø§Ù ÙØ§Ù
عتؚر</string>
+ <string name="copy_address_to_clipboard">رÙÙÙØŽØª ÙØŽØ§ÙÛâÙØ§ در ØØ§ÙØžÙ Ù
ÙÙØª</string>
+ <string name="show_auth_cookie">ÙÙ
Ø§ÛØŽ Ú©ÙÚ©Û Ø§ØØ±Ø§Ø² ÙÙÛØª</string>
+ <string name="backup_service">سرÙÛØ³ ØšÚ©âØ¢ÙŸ</string>
+ <string name="delete_service">ØØ°Ù سرÙÛØ³</string>
+ <string name="backup_saved_at_external_storage">ØšÚ©âØ¢ÙŸ در Ø§ÙØšØ§Ø±Ù Ø®Ø§Ø±Ø¬Û Ø°Ø®ÛØ±Ù ؎د</string>
+ <string name="backup_restored">ØšÚ©âØ¢ÙŸ ØšØ§Ø²Ú¯Ø±Ø¯Ø§ÙØ¯Ù ؎د</string>
+ <string name="filemanager_not_available">Filemanager Ù
ÙØ¬Ùد ÙÛØ³Øª</string>
+ <string name="please_grant_permissions_for_external_storage">ÙØ·Ùا ØšÙ Ø§ÙØšØ§Ø±Ù Ø®Ø§Ø±Ø¬Û Ø§Ø¬Ø§Ø²Ù Ø¯Ø³ØªØ±Ø³Û ØšØ¯ÙÛØ¯</string>
+ <string name="restore_backup">ØšØ±Ú¯Ø±Ø¯Ø§ÙØ¯Ù ØšÚ©âØ¢ÙŸ</string>
+ <string name="create_a_backup_first">اÙÙ ÛÚ© ÙØ³Ø®Ù ØšÚ©âØ¢ÙŸ درست Ú©ÙÛØ¯</string>
+ <string name="name_can_t_be_empty">ÙØ§Ù
ÙØšØ§Ûد خاÙÛ ØšØ§ØŽØ¯</string>
+ <string name="fields_can_t_be_empty">زÙ
ÛÙÙâÙØ§ ÙØšØ§Ûد خاÙÛ ØšØ§ØŽÙØ¯</string>
+ <string name="start_tor_again_for_finish_the_process">ØšØ±Ø§Û ÙŸØ§ÛØ§Ù رÙÙØ¯ کار Ø Ø¯ÙØšØ§Ø±Ù ØªÙØ± را آغاز Ú©ÙÛØ¯</string>
+ <string name="confirm_service_deletion">ØØ°Ù سرÙÛØ³ را تاÛÛØ¯ Ú©ÙÛØ¯</string>
+ <string name="click_again_for_backup">ØšØ±Ø§Û ØšÚ©âØ¢ÙŸØ Ø¯ÙØšØ§Ø±Ù Ú©ÙÛÚ© Ú©ÙÛØ¯</string>
+ <string name="service_type">ÙÙØ¹ سرÙÛØ³</string>
+ <string name="auth_cookie">Ú©ÙÚ©Û Auth</string>
+ <string name="copy_cookie_to_clipboard">Ú©ÙŸÛ Ú©Ø±Ø¯Ù Ú©ÙÚ©Û ØšÙ Ú©ÙÛÙŸ ØšÙØ±Ø¯</string>
+ <string name="auth_cookie_was_not_configured">Ú©ÙÚ©Û Ø§ØØ±Ø§Ø² ÙÙÛØª ÙŸÛÚ©Ø±ØšÙØ¯Û ÙØŽØ¯Ù ØšÙØ¯</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ØšØ±Ø§Û Ø¯ÛØ¯Ù تغÛÛØ±Ø§ØªØ Ø§ÙØ±ØšØ§Øª را Ø¯ÙØšØ§Ø±Ù Ø±Ø§Ù Ø§ÙØ¯Ø§Ø²Û Ú©ÙÛØ¯</string>
+ <string name="client_cookies">Ú©ÙÚ©ÛâÙØ§Û Client</string>
+ <string name="onion">onion.</string>
+ <string name="invalid_onion_address">ÙØŽØ§ÙÛ ÙØ§Ù
عتؚر onion. </string>
+ <string name="cookie_from_QR">از QR ØšØ®ÙØ§Ù</string>
+ <string name="backup_cookie">ØšÚ©âØ¢ÙŸ از Ú©ÙÚ©Û</string>
+ <string name="delete_cookie">ØØ°Ù Ú©ÙÚ©Û</string>
+ <string name="confirm_cookie_deletion">تاÛÛØ¯ ØØ°Ù Ú©ÙÚ©Û</string>
+ <string name="hosted_services">سرÙÛØ³âÙØ§Û Ù
ÛØ²ØšØ§ÙÛâØŽØ¯Ù</string>
+ <string name="share_as_qr">ÙÙ
âØ±Ø³Ø§ÙÛ ØšØ§ QR</string>
+ <string name="disable">ØºÛØ±Ùعا٠کÙ</string>
+ <string name="enable">ÙØ¹Ø§Ù Ú©Ù</string>
+ <string name="consider_disable_battery_optimizations">ØºÛØ±Ùعا٠کرد٠ؚÙÛÙÙâØ³Ø§Ø²Û ØšØ§ØªØ±Û Ø±Ø§ Ù
Ø¯ÙØžØ± ÙØ±Ø§Ø± دÙÛØ¯</string>
+ <string name="consider_enable_battery_optimizations">ÙØ¹Ø§Ù کرد٠ؚÙÛÙÙâØ³Ø§Ø²Û ØšØ§ØªØ±Û Ø±Ø§ Ù
Ø¯ÙØžØ± ÙØ±Ø§Ø± دÙÛØ¯</string>
+ <string name="pref_isolate_dest">آدرسâÙØ§Û Ù
ÙØµØ¯ را Ù
جزا Ú©Ù</string>
+ <string name="pref_isolate_dest_summary">ØšØ±Ø§Û ÙØ± آدرس Ù
ÙØµØ¯ از Ù
Ø¯Ø§Ø±Û Ù
ØªÙØ§Ùت Ø§Ø³ØªÙØ§Ø¯Ù Ú©Ù</string>
+ <string name="no_transproxy_warning_short">ÙØŽØ¯Ø§Ø±: ÙŸØ±Ø§Ú©Ø³Û Ú©Ø±Ø¯Ù ØŽÙØ§Ù دÛگر ÙŸØŽØªÛØšØ§ÙÛ ÙÙ
ÛâØŽÙØ¯</string>
+ <string name="no_transproxy_warning">ÙØŽØ¯Ø§Ø±: ÙŸØ±Ø§Ú©Ø³Û Ú©Ø±Ø¯Ù ØŽÙØ§Ù ÙŸØŽØªÛØšØ§ÙÛ ÙÙ
ÛâØŽÙØ¯. از Orbot Apps VPN Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯.</string>
+ <string name="pref_connection_padding">ÙŸÙÙØ§Û ارتؚاط</string>
+ <string name="pref_connection_padding_summary">ÙÙ
ÛØŽÙ ÙØ§ÛÙâÚ¯Ø°Ø§Ø±Û Ø§Ø±ØªØšØ§Ø· را ÙØ¹Ø§Ù Ù
ÛâÚ©ÙØ¯ تا ؚا ØšØ±Ø®Û Ø§Ø² ØØ§ÙتâÙØ§Û تØÙÛ٠تراÙÛÚ© Ù
ÙØ§ØšÙÙ Ú©ÙØ¯. ÙŸÛØŽâÙØ±Ø¶: Ø®ÙØ¯Ú©Ø§Ø±</string>
+ <string name="pref_reduced_connection_padding">ÙŸÙÙØ§Û ارتؚاط Ú©Ø§ÙØŽ ÙŸÛØ¯Ø§ کرد</string>
+ <string name="pref_reduced_connection_padding_summary">اتصا٠ؚازٟخ؎âÚ©ÙÙØ¯ÙâÙØ§Û Ø§Ø±ØªØšØ§Ø·Û Ø±Ø§ Ø²ÙØ¯ØªØ± ÙØ·Ø¹ Ù
ÛâÚ©ÙØ¯ ٠ؚستÙâÙØ§Û ÙØ§ÛÙâÚ¯Ø°Ø§Ø±Û Ú©Ù
ØªØ±Û Ø§Ø±Ø³Ø§Ù Ù
ÛâÚ©ÙØ¯ تا Ø§Ø³ØªÙØ§Ø¯Ù داد٠٠Ù
ØµØ±Ù ØšØ§ØªØ±Û Ø±Ø§ Ú©Ø§ÙØŽ Ø¯ÙØ¯</string>
+ <string name="app_shortcuts">اٟâÙØ§Û ÙØ¹Ø§Ù ØŽØ¯Ù ØªÙØ³Ø· ØªÙØ±</string>
+ <string name="testing_bridges">تست Ø§ØªØµØ§Ù ÙŸÙ ØšÙ ØªÙØ±âŠ</string>
+ <string name="testing_bridges_success">ؚا Ù
ÙÙÙÛØª Ø§ÙØ¬Ø§Ù
؎د. ÙŸÛÚ©Ø±ØšÙØ¯Û ÙŸÙ Ø®ÙØš Ø§Ø³Øª!</string>
+ <string name="testing_bridges_fail">Ø§ÙØ¬Ø§Ù
ÙØŽØ¯. گزÛÙÙâÛ Ø¯ÛÚ¯Ø±Û Ø±Ø§ Ø§ÙØªØ®Ø§Øš Ú©ÙÛØ¯ </string>
+ <string name="bridge_direct_connect">اتصا٠Ù
ستÙÛÙ
ØšÙ ØªÙØ± (ØšÙØªØ±Û٠عÙ
Ùکرد)</string>
+ <string name="bridge_community">اتصا٠از طرÛÙ Ø³Ø±ÙØ±ÙØ§Û Ø¬Ø§Ù
عÙ</string>
+ <string name="bridge_cloud">اتصا٠از طرÛÙ Ø³Ø±ÙØ±ÙØ§Û Ø§ØšØ±Û</string>
+ <string name="bridges_get_new">Ø¯Ø±Ø®ÙØ§Ø³Øª ÙŸÙâÙØ§Û Ø§Ø±ØªØšØ§Ø·Û Ø¬Ø¯ÛØ¯... (اگر تÙ
اÙ
Û Ø±ÙØŽâÙØ§Û دÛگر کار ÙÚ©Ø±Ø¯ÙØ¯)</string>
+ <string name="trouble_connecting">در اتصا٠Ù
ØŽÚ©Ù Ø¯Ø§Ø±ÛØ¯Ø</string>
+ <string name="full_device_vpn">VPN ØšØ±Ø§Û ØªÙ
اÙ
دستگاÙ</string>
+ <string name="vpn_disabled">VPN ØºÛØ± ÙØ¹Ø§Ù ؎د</string>
+</resources>
diff --git a/app-mini/src/main/res/values-fi/strings.xml b/app-mini/src/main/res/values-fi/strings.xml
new file mode 100644
index 00000000..53c47265
--- /dev/null
+++ b/app-mini/src/main/res/values-fi/strings.xml
@@ -0,0 +1,146 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot on ilmainen vÀlityspalvelinsovellus, joka tarjoaa muille sovelluksille mahdollisuuden kÀyttÀÀ internetiÀ turvallisemmin. Orbot kÀyttÀÀ Toria kryptaamaan verkkoliikenteesi ja sitten piilottaa sen kierrÀttÀmÀllÀ sitÀ usean tietokoneen kautta ympÀri maailman. Tor on vapaa ohjelmisto ja avoin verkosto, jotka auttavat puolustautumaan vapautta ja yksityisyyttÀ uhkaavalta verkkovalvonnalta ja valtioiden verkonseurannalta sekÀ suojaamaan salaisia liiketoimintoja ja -yhteyksiÀ.</string>
+ <string name="status_starting_up">Orbot kÀynnistyy...</string>
+ <string name="status_activated">Yhdistetty Tor-verkkoon</string>
+ <string name="status_disabled">Orbot on poistettu kÀytöstÀ</string>
+ <string name="status_shutting_down">Tor-palvelua sammutetaan</string>
+ <string name="tor_process_starting">KÀynnistetÀÀn Tor-ohjelmaa...</string>
+ <string name="tor_process_complete">valmis.</string>
+ <string name="menu_settings">Asetukset</string>
+ <string name="menu_log">Loki</string>
+ <string name="menu_start">Aloita</string>
+ <string name="menu_stop">Lopeta</string>
+ <string name="menu_about">Tietoa</string>
+ <string name="main_layout_download">Lataa</string>
+ <string name="main_layout_upload">LÀhetÀ</string>
+ <string name="button_about">Tietoa</string>
+ <string name="menu_exit">Lopeta</string>
+ <string name="menu_scan">Skannaa sillan QR-koodi</string>
+ <string name="menu_share_bridge">Jaa sillan QR-koodi</string>
+ <string name="btn_okay">SelvÀ</string>
+ <string name="btn_cancel">Peru</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Joitakin Orbotin lisÀtietoja</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Yleiset</string>
+ <string name="pref_start_boot_title">Aloita Orbot kÀynnistettÀessÀ</string>
+ <string name="pref_start_boot_summary">KÀynnistÀ Orbot ja yhdistÀ Toriin automaattisesti, kun Anroid-laitteesi kÀynnistyy</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Tor-solmukohdan konfigurointi</string>
+ <string name="pref_node_configuration_summary">NÀmÀ ovat lisÀasetuksia, jotka voivat vÀhentÀÀ anonyymiyttÀsi</string>
+ <string name="pref_entrance_node">Tor-sisÀÀntulosolmu</string>
+ <string name="pref_entrance_node_summary">SormenjÀljet, nimimerkit, maat ja osoitteet ensimmÀiseen hyppyyn</string>
+ <string name="pref_entrance_node_dialog">Kirjoita sisÀÀntulosolmujen nimet</string>
+ <string name="pref_allow_background_starts_title">Salli taustalla kÀynnistys</string>
+ <string name="pref_allow_background_starts_summary">Salli sovellusten pyytÀÀ Orbottia kÀynnistÀmÀÀn Tor ja siihen liittyvÀt palvelut</string>
+ <string name="pref_proxy_title">LÀhtevÀn liikenteen vÀlityspalvelin (valinnainen)</string>
+ <string name="pref_proxy_type_title">LÀhtevÀn liikenteen vÀlityspalvelimen tyyppi</string>
+ <string name="pref_proxy_type_summary">VÀlityspalvelimen yhteyskÀytÀntö: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Kirjoita vÀlityspalvelintyyppi</string>
+ <string name="pref_proxy_host_title">LÀhtevÀn vÀlityspalvelimen tietokone</string>
+ <string name="pref_proxy_host_summary">VÀlityspalvelimen tietokoneen nimi</string>
+ <string name="pref_proxy_host_dialog">Kirjoita vÀlityspalvelimen tietokone</string>
+ <string name="pref_proxy_port_title">LÀhtevÀn vÀlityspalvelimen portti</string>
+ <string name="pref_proxy_port_summary">VÀlityspalvelimen portti</string>
+ <string name="pref_proxy_port_dialog">Kirjoita vÀlityspalvelimen portti</string>
+ <string name="pref_proxy_username_title">LÀhtevÀn vÀlityspalvelimen kÀyttÀjÀtunnus</string>
+ <string name="pref_proxy_username_summary">VÀlityspalvelimen kÀyttÀjÀtunnus (valinnainen)</string>
+ <string name="pref_proxy_username_dialog">Kirjoita vÀlityspalvelimen kÀyttÀjÀtunnus</string>
+ <string name="pref_proxy_password_title">LÀhtevÀn vÀlityspalvelimen salasana</string>
+ <string name="pref_proxy_password_summary">VÀlityspalvelimen salasana (valinnainen)</string>
+ <string name="pref_proxy_password_dialog">Kirjoita vÀlityspalvelimen salasana</string>
+ <string name="couldn_t_start_tor_process_">Tor-prosessin kÀynnistÀminen epÀonnistui:</string>
+ <string name="error">Virhe</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ReachableAccess-asetuksesi aiheuttivat virheen!</string>
+ <string name="your_relay_settings_caused_an_exception_">Releasetuksesi aiheuttivat virheen!</string>
+ <string name="exit_nodes">PÀÀtesolmut</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">SormenjÀljet, nimimerkit, maat ja osoitteet viimeiselle hypylle</string>
+ <string name="enter_exit_nodes">Kirjoita pÀÀtesolmut</string>
+ <string name="exclude_nodes">VÀltÀ solmuja</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">VÀltettÀvÀt sormenjÀljet, nimimerkit, maat ja osoitteet</string>
+ <string name="enter_exclude_nodes">Kirjoita vÀltettÀvÀt solmut</string>
+ <string name="strict_nodes">Tarkat solmukohdat</string>
+ <string name="use_only_these_specified_nodes">KÀytÀ *vain* nÀitÀ solmuja</string>
+ <string name="bridges">Sillat</string>
+ <string name="use_bridges">KÀytÀ siltoja</string>
+ <string name="ip_address_and_port_of_bridges">Siltojen IP-osoitteet ja portit</string>
+ <string name="enter_bridge_addresses">Kirjoita siltaosoitteet</string>
+ <string name="relays">Releet</string>
+ <string name="relaying">Releytys</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Ota laitteesi kÀyttöön vÀlireleenÀ</string>
+ <string name="relay_port">Releportti</string>
+ <string name="listening_port_for_your_tor_relay">Tor-releesi kuunteluportti</string>
+ <string name="enter_or_port">Kirjoita OR-portti</string>
+ <string name="relay_nickname">Releen kutsumanimi</string>
+ <string name="the_nickname_for_your_tor_relay">Kutsumanimi Tor-releellesi</string>
+ <string name="enter_a_custom_relay_nickname">Kirjoita oma relenimi</string>
+ <string name="reachable_addresses">Saavutettavissa olevat osoitteet</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Aja asiakkaana rajoitetun palomuurin takaa</string>
+ <string name="reachable_ports">Saavutettavissa olevat portit</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Rajoitetun palomuurin takaa saavutettavat portit</string>
+ <string name="enter_ports">Kirjoita portit</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">ota kÀyttöön virheenjÀljitysloki tulostevirtaan (kÀytÀ adb:tÀ tai aLogCat:ia tarkastellaksesi)</string>
+ <string name="project_home">Projektin kotisivu(t):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">3:n osapuolen ohjelmisto:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">löytyi olemassaoleva Tor-prosessi...</string>
+ <string name="something_bad_happened">Jotain pahaa tapahtui. Tarkista loki</string>
+ <string name="unable_to_read_hidden_service_name">piilopalvelunimen lukeminen epÀonnistui</string>
+ <string name="unable_to_start_tor">Torin kÀynnistys epÀonnistui:</string>
+ <string name="pref_use_persistent_notifications">PidÀ kuvake aina työkalupalkissa, kun Orbot on yhdistetty</string>
+ <string name="pref_use_persistent_notifications_title">Ilmoitukset aina kÀytössÀ</string>
+ <string name="pref_use_expanded_notifications">NÀytÀ laajennettu ilmoitus (Torin ulostulon maa ja IP)</string>
+ <string name="pref_use_expanded_notifications_title">Laajennetut ilmoitukset</string>
+ <string name="set_locale_title">Kieli</string>
+ <string name="no_internet_connection_tor">Ei internet-yhteyttÀ; Tor on valmiustilassa...</string>
+ <string name="pref_disable_network_title">Ei verkon automaattilepotilaa</string>
+ <string name="pref_disable_network_summary">Laita Tor nukkumaan, kun internet-yhteyttÀ ei ole saatavilla</string>
+ <string name="newnym">Vaihdoit Tor-identiteettisi uuteen!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Ei verkkoyhteyttÀ. Tor siirtyy valmiustilaan...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Verkkoyhteys toimii. HerÀtetÀÀn Tor...</string>
+ <string name="updating_settings_in_tor_service">pÀivitetÀÀn Tor-palvelun asetuksia</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Portti, jossa Torin SOCKS-vÀlityspalvelin on (oletus: 9050, 0 = poista kÀytöstÀ)</string>
+ <string name="pref_socks_dialog">SOCKS-portin valinta</string>
+ <string name="pref_transport_title">Tor TransProxyn portti</string>
+ <string name="pref_transport_summary">Portti, jossa Torin lÀpinÀkyvÀ vÀlityspalvelin on (oletus: 9040, 0 = poista kÀytöstÀ)</string>
+ <string name="pref_transport_dialog">TransProxy-portin valinta</string>
+ <string name="pref_dnsport_title">Tor DNS-portti</string>
+ <string name="pref_dnsport_summary">Portti, jossa Torin DNS on (oletus: 5400, 0 = poista kÀytöstÀ)</string>
+ <string name="pref_dnsport_dialog">DNS-portin valinta</string>
+ <string name="pref_torrc_title">Torrc:n mukautetut asetukset</string>
+ <string name="pref_torrc_summary">VAIN ASIANTUNTIJAT: syötÀ torrc:n mÀÀritysrivejÀ suoraan</string>
+ <string name="pref_torrc_dialog">Mukautettu torrc</string>
+ <string name="kbps">kilobittiÀ per sekunti</string>
+ <string name="mbps">megabittiÀ per sekunti</string>
+ <string name="kb">kt</string>
+ <string name="mb">Mt</string>
+ <string name="bridges_updated">Sillat pÀivitetty</string>
+ <string name="restart_orbot_to_use_this_bridge_">KÀynnistÀ Orbot uudelleen ottaaksesi muutokset kÀyttöön</string>
+ <string name="menu_qr">QR-koodit</string>
+ <string name="bridge_mode">Siltatila</string>
+ <string name="get_bridges_email">SÀhköposti</string>
+ <string name="get_bridges_web">Verkkosivu</string>
+ <string name="activate">Ota kÀyttöön</string>
+ <string name="send_email">LÀhetÀ sÀhköpostia</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Voit saada sillan osoitteen sÀhköpostin kautta, verkkosivulta tai skannaamalla sillan QR-koodin. Valitse \'SÀhköposti\' tai \'Verkkosivu\' alta pyytÀÀksesi sillan osoitetta.\n\nKun sinulla on osoite, kopioi & liitÀ se \"Sillat\" -kohtaan Orbotin asetuksissa ja kÀynnistÀ uudelleen.</string>
+ <string name="hidden_services">Piilopalvelut</string>
+ <string name="title_activity_hidden_services">Piilopalvelut</string>
+ <string name="menu_hidden_services">Piilopalvelut</string>
+ <string name="save">Tallenna</string>
+ <string name="name">Nimi</string>
+ <string name="done">Valmis!</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">KÀynnistÀ Orbot uudelleen ottaaksesi muutokset kÀyttöön</string>
+ <string name="disable">Poista kÀytöstÀ</string>
+ <string name="enable">Ota kÀyttöön</string>
+</resources>
diff --git a/app-mini/src/main/res/values-fr-rFR/strings.xml b/app-mini/src/main/res/values-fr-rFR/strings.xml
new file mode 100644
index 00000000..ec082972
--- /dev/null
+++ b/app-mini/src/main/res/values-fr-rFR/strings.xml
@@ -0,0 +1,140 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot est une appli libre de serveur mandataire permettant aux applis dâutiliser Internet avec une sécurité accrue. Orbot utilise Tor pour chiffrer votre trafic Internet et le cache ensuite en le relayant au travers dâordinateurs de par le monde. Tor est un logiciel libre et un réseau ouvert qui vous aide à vous défendre contre une forme de surveillance réseau qui menace la liberté personnelle et la protection des données personnelles, les activités professionnelles confidentielles et les relations, et lâanalyse du trafic des gouvernements.</string>
+ <string name="status_starting_up">Orbot démarre...</string>
+ <string name="status_activated">Connecté au réseau Tor</string>
+ <string name="status_disabled">Orbot est désactivé</string>
+ <string name="status_shutting_down">TorService est en cours dâextinction</string>
+ <string name="tor_process_starting">Démarrage du client Tor...</string>
+ <string name="tor_process_complete">terminé.</string>
+ <string name="menu_settings">ParamÚtres</string>
+ <string name="menu_log">Journal</string>
+ <string name="menu_start">Démarrer</string>
+ <string name="menu_stop">Arrêter</string>
+ <string name="menu_about">Ã propos</string>
+ <string name="main_layout_download">Télchargement</string>
+ <string name="main_layout_upload">Téléversement</string>
+ <string name="button_about">Ã propos</string>
+ <string name="menu_exit">Quitter </string>
+ <string name="menu_scan">Balayer un code QR de pont</string>
+ <string name="menu_share_bridge">Partager un code QR de pont</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">Annuler</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Quelques détails sur Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Général</string>
+ <string name="pref_start_boot_title">Démarrer Orbot à lâamorçage</string>
+ <string name="pref_start_boot_summary">Démarrer Orbot automatiquement et se connecter à Tor lors de lâamorçage de votre appareil Android</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configuration de nÅud </string>
+ <string name="pref_node_configuration_summary">Ces paramÚtres avancés peuvent réduire votre anonymat</string>
+ <string name="pref_entrance_node">NÅuds dâentrée</string>
+ <string name="pref_entrance_node_summary">Empreintes, pseudos, pays et adresses pour le premier saut</string>
+ <string name="pref_entrance_node_dialog">Saisir les nÅuds dâentrée</string>
+ <string name="pref_allow_background_starts_title">Permet des lancements en arriÚre-plan</string>
+ <string name="pref_allow_background_starts_summary">Laissez nâimporte quelle appli dire à Orbot de démarrer Tor et les services connexes</string>
+ <string name="pref_proxy_title">Mandataire pour le réseau sortant (facultatif)</string>
+ <string name="pref_proxy_type_title">Type de mandataire sortant</string>
+ <string name="pref_proxy_type_summary">Protocole à utiliser pour le mandataire : HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Saisir le type de mandataire</string>
+ <string name="pref_proxy_host_title">HÃŽte du mandataire sortant</string>
+ <string name="pref_proxy_host_summary">Nom dâhÃŽte du mandataire</string>
+ <string name="pref_proxy_host_dialog">Saisir lâhÃŽte mandataire</string>
+ <string name="pref_proxy_port_title">Port du mandataire sortant</string>
+ <string name="pref_proxy_port_summary">Port du mandataire</string>
+ <string name="pref_proxy_port_dialog">Saisir le port du mandataire</string>
+ <string name="pref_proxy_username_title">Nom dâutilisateur du mandataire sortant</string>
+ <string name="pref_proxy_username_summary">Nom dâutilisateur du mandataire (facultatif)</string>
+ <string name="pref_proxy_username_dialog">Saisir le nom dâutilisateur du mandataire</string>
+ <string name="pref_proxy_password_title">Mot de passe du mandataire sortant</string>
+ <string name="pref_proxy_password_summary">Mot de passe du mandataire (facultatif)</string>
+ <string name="pref_proxy_password_dialog">Saisir le mot de passe du mandataire</string>
+ <string name="couldn_t_start_tor_process_">Impossible de démarrer le processus Tor : </string>
+ <string name="error">Erreur</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Vos paramÚtres ReachableAddresses (adresses accessibles) ont causé une exception !</string>
+ <string name="your_relay_settings_caused_an_exception_">Vos paramÚtres de relais ont causé une exception !</string>
+ <string name="exit_nodes">NÅuds de sortie</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Empreintes, pseudos, pays et adresses pour le dernier saut</string>
+ <string name="enter_exit_nodes">Saisir les noeuds de sortie</string>
+ <string name="exclude_nodes">NÅuds à exclure</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Empreintes, pseudos, pays et adresses à exclure</string>
+ <string name="enter_exclude_nodes">Saisir les nÅuds à exclure</string>
+ <string name="strict_nodes">NÅuds stricts</string>
+ <string name="use_only_these_specified_nodes">Utiliser *uniquement * ces nÅuds spécifiés</string>
+ <string name="bridges">Ponts</string>
+ <string name="use_bridges">Utiliser des ponts</string>
+ <string name="ip_address_and_port_of_bridges">Adresse IP et port des ponts</string>
+ <string name="enter_bridge_addresses">Saisir les adresses des ponts</string>
+ <string name="relays">Relais</string>
+ <string name="relaying">Relais</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Configurez votre appareil pour être un relais de non-sortie</string>
+ <string name="relay_port">Port du relais</string>
+ <string name="listening_port_for_your_tor_relay">Port dâécoute pour votre relais Tor</string>
+ <string name="enter_or_port">Saisir le port OR</string>
+ <string name="relay_nickname">Pseudo du relais</string>
+ <string name="the_nickname_for_your_tor_relay">Le pseudo de votre relais Tor</string>
+ <string name="enter_a_custom_relay_nickname">Saisir un pseudo personnalisé pour le relais</string>
+ <string name="reachable_addresses">Adresses accessibles</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Exécuter en tant que client derriÚre un pare-feu avec des politiques restrictives</string>
+ <string name="reachable_ports">Ports accessibles</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Ports accessibles derriÚre un pare-feu restrictif</string>
+ <string name="enter_ports">Saisir les ports</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">activer le journal de débogage vers la sortie (vous devez utiliser adb ou aLogCat pour le visualiser)</string>
+ <string name="project_home">Page(s) dâaccueil du projet :</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Logiciels tiers :</string>
+ <string name="tor_version">Tor : https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21 : http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9 : https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">un processus existant de Tor a été trouvé...</string>
+ <string name="something_bad_happened">Quelque chose nâa pas été. Vérifiez le journal</string>
+ <string name="unable_to_read_hidden_service_name">impossible de lire le nom du service caché</string>
+ <string name="unable_to_start_tor">Impossible de démarrer Tor :</string>
+ <string name="pref_use_persistent_notifications">Toujours conserver lâicÃŽne dans la barre des tâches quand Orbot est connecté.</string>
+ <string name="pref_use_persistent_notifications_title">Notifications toujours actives</string>
+ <string name="pref_use_expanded_notifications">Montrer des notifications étendues avec le pays de sortie de Tor et lâIP</string>
+ <string name="pref_use_expanded_notifications_title">Notifications étendues</string>
+ <string name="set_locale_title">Langue</string>
+ <string name="no_internet_connection_tor">Pas de connexion Internet ; Tor est en attente...</string>
+ <string name="pref_disable_network_title">Pas de mise en veille automatique du réseau</string>
+ <string name="pref_disable_network_summary">Mettre Tor en veille quand aucune connexion Internet nâest disponible</string>
+ <string name="newnym">Vous avez basculé vers une nouvelle identité Torâ!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Pas de connectivité réseau. Mise au repos de Tor...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">La connectivité réseau est bonne. Réveil de Tor...</string>
+ <string name="updating_settings_in_tor_service">mise à jour des paramÚtres dans le service Tor</string>
+ <string name="pref_socks_title">SOCKS Tor</string>
+ <string name="pref_socks_summary">Port sur lequel Tor offre son mandataire SOCKS (par défaut : 9050 ou 0 pour le désactiver)</string>
+ <string name="pref_socks_dialog">Configuration du part SOCKS</string>
+ <string name="pref_transport_title">Port Transproxy de Tor</string>
+ <string name="pref_transport_summary">Port sur lequel Tor offre son mandataire transparent (par défaut : 9040 ou 0 pour le désactiver)</string>
+ <string name="pref_transport_dialog">Configuration du port TransProxy</string>
+ <string name="pref_dnsport_title">Port DNS de Tor</string>
+ <string name="pref_dnsport_summary">Port sur lequel Tor offre son DNS (par défaut : 5400 ou 0 pour le désactiver)</string>
+ <string name="pref_dnsport_dialog">Configuration du port DNS</string>
+ <string name="pref_torrc_title">Configuration personnalisée de Torrc</string>
+ <string name="pref_torrc_summary">EXPERTS SEULEMENT : saisissez les lignes de configuration de torrc direct</string>
+ <string name="pref_torrc_dialog">Personnaliser Torrc </string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">Ko</string>
+ <string name="mb">Mo</string>
+ <string name="bridges_updated">Ponts mis à jour</string>
+ <string name="restart_orbot_to_use_this_bridge_">Veuillez redémarrer Orbot pour activer les changements</string>
+ <string name="menu_qr">Codes QR</string>
+ <string name="bridge_mode">Mode pont</string>
+ <string name="get_bridges_email">Courriel</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Activer</string>
+ <string name="send_email">Envoyer un courriel</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Vous pouvez obtenir une adresse de pont par courriel, par le Web ou en balayant le code QR dâun pont. Choisissez *Courriel* ou *Web* ci-dessous pour demander une adresse de pont.\n\nUne fois que vous avez une adresse, copiez & collez-la dans le champ « Ponts » des paramÚtres dâOrbot et redémarrez.</string>
+ <string name="save">Enregistrer</string>
+ <string name="name">Name</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Veuillez redémarrer Orbot pour activer les changements</string>
+</resources>
diff --git a/app-mini/src/main/res/values-fr/poestrings.xml b/app-mini/src/main/res/values-fr/poestrings.xml
new file mode 100644
index 00000000..05d0d213
--- /dev/null
+++ b/app-mini/src/main/res/values-fr/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Il vous faut parfois utiliser un pont pour accéder à Tor.</string>
+ <string name="action_more">MâEN DIRE DAVANTAGE</string>
+
+ <string name="vpn_setup">Vous pouvez permettre à nâimporte quelle appli de passer par Tor en utilisant notre RPV intégré.</string>
+ <string name="vpn_setup_sub">Cette fonction ne vous rendra pas anonyme, mais elle vous aidera à traverser les pare-feu.</string>
+ <string name="action_vpn_choose">CHOISIR LES APPLIS</string>
+
+ <string name="hello">Bonjour</string>
+ <string name="welcome">Bienvenue sur Tor pour appareil mobile.</string>
+
+ <string name="browser_the_internet">Parcourez Internet comme vous vous attendez à le faire.</string>
+ <string name="no_tracking">Pas de suivi à la trace. Pas de censure.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-fr/strings.xml b/app-mini/src/main/res/values-fr/strings.xml
new file mode 100644
index 00000000..2c163e96
--- /dev/null
+++ b/app-mini/src/main/res/values-fr/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot est une appli libre de serveur mandataire permettant aux applis dâutiliser Internet avec une sécurité accrue. Orbot utilise Tor pour chiffrer votre trafic Internet et le cache ensuite en le relayant au travers dâordinateurs de par le monde. Tor est un logiciel libre et un réseau ouvert qui vous aide à vous défendre contre une forme de surveillance réseau qui menace la liberté personnelle et la protection des données personnelles, les activités professionnelles confidentielles et les relations, et lâanalyse du trafic des gouvernements.</string>
+ <string name="status_starting_up">Orbot démarre...</string>
+ <string name="status_activated">Connecté au réseau Tor</string>
+ <string name="status_disabled">Orbot est désactivé</string>
+ <string name="status_shutting_down">TorService est en cours dâextinction</string>
+ <string name="tor_process_starting">Démarrage du client Tor...</string>
+ <string name="tor_process_complete">terminé.</string>
+ <string name="menu_settings">ParamÚtres</string>
+ <string name="menu_log">Journal</string>
+ <string name="menu_start">Démarrer</string>
+ <string name="menu_stop">Arrêter</string>
+ <string name="menu_about">Ã propos</string>
+ <string name="main_layout_download">Télchargement</string>
+ <string name="main_layout_upload">Téléversement</string>
+ <string name="button_about">Ã propos</string>
+ <string name="menu_exit">Quitter </string>
+ <string name="menu_scan">Balayer un code QR de pont</string>
+ <string name="menu_share_bridge">Partager un code QR de pont</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">Annuler</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Quelques détails sur Orbot</string>
+ <string name="wizard_details_msg">Orbot est une application à code source ouvert incluant Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent et Polipo. Elle fournit un mandataire local HTTP (8118) et un mandataire SOCKS (9050) vers le réseau Tor. Orbot a aussi la capacité, sur un appareil débridé, dâenvoyer tout le trafic Internet par Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Général</string>
+ <string name="pref_start_boot_title">Démarrer Orbot à lâamorçage</string>
+ <string name="pref_start_boot_summary">Démarrer Orbot automatiquement et se connecter à Tor lors de lâamorçage de votre appareil Android</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configuration de nÅud </string>
+ <string name="pref_node_configuration_summary">Ces paramÚtres avancés peuvent réduire votre anonymat</string>
+ <string name="pref_entrance_node">NÅuds dâentrée</string>
+ <string name="pref_entrance_node_summary">Empreintes, pseudos, pays et adresses pour le premier saut</string>
+ <string name="pref_entrance_node_dialog">Saisir les nÅuds dâentrée</string>
+ <string name="pref_allow_background_starts_title">Permet des lancements en arriÚre-plan</string>
+ <string name="pref_allow_background_starts_summary">Laissez nâimporte quelle appli dire à Orbot de démarrer Tor et les services connexes</string>
+ <string name="pref_proxy_title">Mandataire pour le réseau sortant (facultatif)</string>
+ <string name="pref_proxy_type_title">Type de mandataire sortant</string>
+ <string name="pref_proxy_type_summary">Protocole à utiliser pour le mandataire : HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Saisir le type de mandataire</string>
+ <string name="pref_proxy_host_title">HÃŽte du mandataire sortant</string>
+ <string name="pref_proxy_host_summary">Nom dâhÃŽte du mandataire</string>
+ <string name="pref_proxy_host_dialog">Saisir lâhÃŽte mandataire</string>
+ <string name="pref_proxy_port_title">Port du mandataire sortant</string>
+ <string name="pref_proxy_port_summary">Port du mandataire</string>
+ <string name="pref_proxy_port_dialog">Saisir le port du mandataire</string>
+ <string name="pref_proxy_username_title">Nom dâutilisateur du mandataire sortant</string>
+ <string name="pref_proxy_username_summary">Nom dâutilisateur du mandataire (facultatif)</string>
+ <string name="pref_proxy_username_dialog">Saisir le nom dâutilisateur du mandataire</string>
+ <string name="pref_proxy_password_title">Mot de passe du mandataire sortant</string>
+ <string name="pref_proxy_password_summary">Mot de passe du mandataire (facultatif)</string>
+ <string name="pref_proxy_password_dialog">Saisir le mot de passe du mandataire</string>
+ <string name="couldn_t_start_tor_process_">Impossible de démarrer le processus Tor : </string>
+ <string name="error">Erreur</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Vos paramÚtres ReachableAddresses (adresses accessibles) ont causé une exception !</string>
+ <string name="your_relay_settings_caused_an_exception_">Vos paramÚtres de relais ont causé une exception !</string>
+ <string name="exit_nodes">NÅuds de sortie</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Empreintes, pseudos, pays et adresses pour le dernier saut</string>
+ <string name="enter_exit_nodes">Saisir les noeuds de sortie</string>
+ <string name="exclude_nodes">NÅuds à exclure</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Empreintes, pseudos, pays et adresses à exclure</string>
+ <string name="enter_exclude_nodes">Saisir les nÅuds à exclure</string>
+ <string name="strict_nodes">NÅuds stricts</string>
+ <string name="use_only_these_specified_nodes">Utiliser *uniquement * ces nÅuds spécifiés</string>
+ <string name="bridges">Ponts</string>
+ <string name="use_bridges">Utiliser des ponts</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Activer les entrées de remplacement vers le réseau Tor</string>
+ <string name="ip_address_and_port_of_bridges">Adresse IP et port des ponts</string>
+ <string name="enter_bridge_addresses">Saisir les adresses des ponts</string>
+ <string name="relays">Relais</string>
+ <string name="relaying">Relais</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Configurez votre appareil pour être un relais de non-sortie</string>
+ <string name="relay_port">Port du relais</string>
+ <string name="listening_port_for_your_tor_relay">Port dâécoute pour votre relais Tor</string>
+ <string name="enter_or_port">Saisir le port OR</string>
+ <string name="relay_nickname">Pseudo du relais</string>
+ <string name="the_nickname_for_your_tor_relay">Le pseudo de votre relais Tor</string>
+ <string name="enter_a_custom_relay_nickname">Saisir un pseudo personnalisé pour le relais</string>
+ <string name="reachable_addresses">Adresses accessibles</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Exécuter en tant que client derriÚre un pare-feu avec des politiques restrictives</string>
+ <string name="reachable_ports">Ports accessibles</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Ports accessibles derriÚre un pare-feu restrictif</string>
+ <string name="enter_ports">Saisir les ports</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">activer le journal de débogage vers la sortie (vous devez utiliser adb ou aLogCat pour le visualiser)</string>
+ <string name="project_home">Page(s) dâaccueil du projet :</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Logiciels tiers :</string>
+ <string name="tor_version">Tor : https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21Â : http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9 : https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8Â : https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j : http://www.openssl.org</string>
+ <string name="hidden_service_request">Une appli veut ouvrir le port %1$s du serveur caché au réseau Tor. Cela est sécuritaire si vous faites confiance à lâappli.</string>
+ <string name="found_existing_tor_process">un processus existant de Tor a été trouvé...</string>
+ <string name="something_bad_happened">Quelque chose nâa pas été. Vérifiez le journal</string>
+ <string name="unable_to_read_hidden_service_name">impossible de lire le nom du service caché</string>
+ <string name="unable_to_start_tor">Impossible de démarrer Tor :</string>
+ <string name="pref_use_persistent_notifications">Toujours conserver lâicÃŽne dans la barre des tâches quand Orbot est connecté.</string>
+ <string name="pref_use_persistent_notifications_title">Notifications toujours actives</string>
+ <string name="pref_use_expanded_notifications">Montrer des notifications étendues avec le pays de sortie de Tor et lâIP</string>
+ <string name="pref_use_expanded_notifications_title">Notifications étendues</string>
+ <string name="set_locale_title">Langue</string>
+ <string name="no_internet_connection_tor">Pas de connexion Internet ; Tor est en attente...</string>
+ <string name="pref_disable_network_title">Pas de mise en veille automatique du réseau</string>
+ <string name="pref_disable_network_summary">Mettre Tor en veille quand aucune connexion Internet nâest disponible</string>
+ <string name="newnym">Vous avez basculé vers une nouvelle identité Torâ!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Pas de connectivité réseau. Mise au repos de Tor...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">La connectivité réseau est bonne. Réveil de Tor...</string>
+ <string name="updating_settings_in_tor_service">mise à jour des paramÚtres dans le service Tor</string>
+ <string name="pref_socks_title">SOCKS Tor</string>
+ <string name="pref_socks_summary">Port sur lequel Tor offre son mandataire SOCKS (par défaut : 9050 ou 0 pour le désactiver)</string>
+ <string name="pref_socks_dialog">Configuration du part SOCKS</string>
+ <string name="pref_transport_title">Port Transproxy de Tor</string>
+ <string name="pref_transport_summary">Port sur lequel Tor offre son mandataire transparent (par défaut : 9040 ou 0 pour le désactiver)</string>
+ <string name="pref_transport_dialog">Configuration du port TransProxy</string>
+ <string name="pref_dnsport_title">Port DNS de Tor</string>
+ <string name="pref_dnsport_summary">Port sur lequel Tor offre son DNS (par défaut : 5400 ou 0 pour le désactiver)</string>
+ <string name="pref_dnsport_dialog">Configuration du port DNS</string>
+ <string name="pref_torrc_title">Configuration personnalisée de Torrc</string>
+ <string name="pref_torrc_summary">EXPERTS SEULEMENTÂ : saisissez les lignes de configuration de torrc direct</string>
+ <string name="pref_torrc_dialog">Personnaliser Torrc </string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">Ko</string>
+ <string name="mb">Mo</string>
+ <string name="bridges_updated">Ponts mis à jour</string>
+ <string name="restart_orbot_to_use_this_bridge_">Veuillez redémarrer Orbot pour activer les changements</string>
+ <string name="menu_qr">Codes QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Si votre réseau mobile bloque Tor activement, vous pouvez utiliser un serveur-pont comme moyen de remplacement. CHOISIR une des options pour configurer et testerâŠ</string>
+ <string name="bridge_mode">Mode pont</string>
+ <string name="get_bridges_email">Courriel</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Activer</string>
+ <string name="apps_mode">Mode RPV</string>
+ <string name="send_email">Envoyer un courriel</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Vous pouvez obtenir une adresse de pont par courriel, par le Web ou en balayant le code QR dâun pont. Choisissez *Courriel* ou *Web* ci-dessous pour demander une adresse de pont.\n\nUne fois que vous avez une adresse, copiez & collez-la dans le champ « Ponts » des paramÚtres dâOrbot et redémarrez.</string>
+ <string name="vpn_default_world">Mondial (Auto)</string>
+ <string name="hidden_services">Services cachés</string>
+ <string name="title_activity_hidden_services">Services cachés</string>
+ <string name="menu_hidden_services">Services cachés</string>
+ <string name="save">Enregistrer</string>
+ <string name="local_port">Port local</string>
+ <string name="onion_port">Port oignon</string>
+ <string name="name">Nom</string>
+ <string name="done">Faitâ!</string>
+ <string name="invalid_port">Port invalide</string>
+ <string name="copy_address_to_clipboard">Copier lâadresse vers le presse-papiers</string>
+ <string name="show_auth_cookie">Afficher le témoin auth</string>
+ <string name="backup_service">Service de sauvegarde</string>
+ <string name="delete_service">Supprimer le service</string>
+ <string name="backup_saved_at_external_storage">La sauvegarde a été enregistrée sur une mémoire externe</string>
+ <string name="backup_restored">La sauvegarde a été restaurée</string>
+ <string name="filemanager_not_available">Le gestionnaire de fichiers nâest pas disponible</string>
+ <string name="please_grant_permissions_for_external_storage">Veuillez accorder les droits vers la mémoire externe</string>
+ <string name="restore_backup">Restaurer la sauvegarde</string>
+ <string name="create_a_backup_first">Créer dâabord une sauvegarde</string>
+ <string name="name_can_t_be_empty">Le nom ne peut pas être vide</string>
+ <string name="fields_can_t_be_empty">Les champs ne peuvent pas être vides</string>
+ <string name="start_tor_again_for_finish_the_process">Redémarrer Tor pour terminer le processus</string>
+ <string name="confirm_service_deletion">Confirmer la suppression du service</string>
+ <string name="click_again_for_backup">Recliquer pour sauvegarder</string>
+ <string name="service_type">Type de service</string>
+ <string name="auth_cookie">Témoin auth</string>
+ <string name="copy_cookie_to_clipboard">Copier le témoin vers le presse-papiers</string>
+ <string name="auth_cookie_was_not_configured">Le témoin auth nâest pas configuré</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Veuillez redémarrer Orbot pour activer les changements</string>
+ <string name="client_cookies">Témoins du client</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Adresse .onion invalide</string>
+ <string name="cookie_from_QR">Lire dâun code QR</string>
+ <string name="backup_cookie">Sauvegarder le témoin</string>
+ <string name="delete_cookie">Supprimer le témoin</string>
+ <string name="confirm_cookie_deletion">Confirmer la suppression du témoin</string>
+ <string name="hosted_services">Services hébergés</string>
+ <string name="share_as_qr">Partager comme code QR</string>
+ <string name="disable">Désactiver</string>
+ <string name="enable">Activer</string>
+ <string name="consider_disable_battery_optimizations">Envisagez de désactiver les optimisations de la pile</string>
+ <string name="consider_enable_battery_optimizations">Envisagez dâactiver les optimisations de la pile</string>
+ <string name="pref_isolate_dest">Isoler les adresses de destination</string>
+ <string name="pref_isolate_dest_summary">Utiliser un circuit différent pour chaque adresse de destination</string>
+ <string name="no_transproxy_warning_short">AVERTISSEMENTÂ : le transrelais nâest plus pris en charge</string>
+ <string name="no_transproxy_warning">AVERTISSEMENTÂ : le relais transparent nâest plus pris en charge. Utiliser plutÃŽt le RPV pour applis dâOrbot.</string>
+ <string name="pref_connection_padding">Bourrage de la connexion</string>
+ <string name="pref_connection_padding_summary">Toujours activer le bourrage de la connexion pour se défendre contre certaines formes dâanalyse du trafic. Par défaut de : auto</string>
+ <string name="pref_reduced_connection_padding">Bourrage réduit de la connexion</string>
+ <string name="pref_reduced_connection_padding_summary">Ferme plus tÃŽt les connexions de relais et envoie moins de paquets de bourrage pour réduire les données et lâutilisation de la pile</string>
+ <string name="app_shortcuts">Applis pouvant utiliser Tor</string>
+ <string name="testing_bridges">Test de la connexion-pont vers TorâŠ</string>
+ <string name="testing_bridges_success">Réussite. La configuration du pont est bonneâ!</string>
+ <string name="testing_bridges_fail">ÃCHEC. Essayer une autre option</string>
+ <string name="bridge_direct_connect">Se connecter directement à Tor (le mieux)</string>
+ <string name="bridge_community">Se connecter par des serveurs communautaires</string>
+ <string name="bridge_cloud">Se connecter par des serveurs nuagiques</string>
+ <string name="bridges_get_new">Demander de nouveaux ponts⊠(si tout échoue)</string>
+ <string name="trouble_connecting">Des problÚmes de connexionâ?</string>
+ <string name="full_device_vpn">RPV de lâappareil entier</string>
+ <string name="vpn_disabled">Le RPV est désactivé</string>
+</resources>
diff --git a/app-mini/src/main/res/values-gl/poestrings.xml b/app-mini/src/main/res/values-gl/poestrings.xml
new file mode 100644
index 00000000..82719775
--- /dev/null
+++ b/app-mini/src/main/res/values-gl/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">A veces precisa unha ponte para chegar a Tor.</string>
+ <string name="action_more">CÃNTAME MÃIS</string>
+
+ <string name="vpn_setup">Pode activar que calquer app pase a través de Tor utilizando a nosa VPN incluÃda.</string>
+ <string name="vpn_setup_sub">Esto non a fará anónima, pero axudaralle a pasar a través dos cortalumes.</string>
+ <string name="action_vpn_choose">ESCOLLA APPS</string>
+
+ <string name="hello">Ola</string>
+ <string name="welcome">Ben vida a Tor no móbil.</string>
+
+ <string name="browser_the_internet">Navegue por internet do xeito que deberÃa ser.</string>
+ <string name="no_tracking">Sen rastrexos. Sen censura.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-gl/strings.xml b/app-mini/src/main/res/values-gl/strings.xml
new file mode 100644
index 00000000..28b1e619
--- /dev/null
+++ b/app-mini/src/main/res/values-gl/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot é unha aplicación de proxy libre que permite a outras aplicacións usar a internet dun xeito máis seguro. Orbot usa Tor para encriptar o teu tráfico de internet ocultando e rebotándoo a través dunha serie de ordenadores ao redor do mundo. Tor é software libre e unha rede aberta que axuda a defenderte contra unha forma de vixiancia na rede que ameaza a liberdade e privacidade persoal, actividades confidenciáis de negocios e relacións, e estado de seguridade coñecido como análise de tráfico.</string>
+ <string name="status_starting_up">Orbot está a se iniciar...</string>
+ <string name="status_activated">Conectado á rede Tor</string>
+ <string name="status_disabled">Orbot está desactivado</string>
+ <string name="status_shutting_down">O ServizoTor estase pechando</string>
+ <string name="tor_process_starting">Iniciando cliente Tor...</string>
+ <string name="tor_process_complete">completado.</string>
+ <string name="menu_settings">Axustes</string>
+ <string name="menu_log">Rexistro (log)</string>
+ <string name="menu_start">Iniciar</string>
+ <string name="menu_stop">Deter</string>
+ <string name="menu_about">Sobre</string>
+ <string name="main_layout_download">Descargar</string>
+ <string name="main_layout_upload">Cargar</string>
+ <string name="button_about">Sobre</string>
+ <string name="menu_exit">SaÃr </string>
+ <string name="menu_scan">Escanear BridgeQR</string>
+ <string name="menu_share_bridge">Compartir BridgeQR</string>
+ <string name="btn_okay">Aceptar</string>
+ <string name="btn_cancel">Cancelar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Algúns detalles sobre Orbot</string>
+ <string name="wizard_details_msg">Orbot é unha aplicación de código-aberto que contén a Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent e Polipo. Proporciona un proxy HTTP (8118) e un proxy SOCKS (9050) na rede Tor. Orbot tamén pode, nun dispositivo con acceso root, enviar todo o tráfico de internet a través de Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Xeral</string>
+ <string name="pref_start_boot_title">Inciar Orbot no Arranque</string>
+ <string name="pref_start_boot_summary">Iniciar Orbot automáticamente cando o seu dispositivo Android arranque</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configuración de Nodo</string>
+ <string name="pref_node_configuration_summary">Estes son axuste avanzados que poden reducir o seu anonimato</string>
+ <string name="pref_entrance_node">Nodos de Entrada</string>
+ <string name="pref_entrance_node_summary">Huellas, alias, paÃses e direccións para o primeiro salto</string>
+ <string name="pref_entrance_node_dialog">Introduzca Nodos de Entrada</string>
+ <string name="pref_allow_background_starts_title">Permitir inicio en segundo plano</string>
+ <string name="pref_allow_background_starts_summary">Permitir a calquera app dicirlle a Orbot que inicie Tor e os servizos relacionados</string>
+ <string name="pref_proxy_title">Proxy para a Rede de SaÃda (Opcional)</string>
+ <string name="pref_proxy_type_title">Tipo de Proxy de SaÃda</string>
+ <string name="pref_proxy_type_summary">Protocolo a usar para o servidor proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Introduzca Tipo de Proxy</string>
+ <string name="pref_proxy_host_title">Host de Proxy de SaÃda</string>
+ <string name="pref_proxy_host_summary">Nome do Host Proxy Servidor</string>
+ <string name="pref_proxy_host_dialog">Introduzca o Host Proxy</string>
+ <string name="pref_proxy_port_title">Porto do Proxy de SaÃda</string>
+ <string name="pref_proxy_port_summary">Porto do Servidor Proxy</string>
+ <string name="pref_proxy_port_dialog">Introduzca o porto do Proxy</string>
+ <string name="pref_proxy_username_title">Nome de usuario do Proxy de SaÃda</string>
+ <string name="pref_proxy_username_summary">Nome de Usuario do Proxy (Opcional)</string>
+ <string name="pref_proxy_username_dialog">Introduza o Nome de Usuario do Proxy</string>
+ <string name="pref_proxy_password_title">Contrasinal do Proxy de SaÃda</string>
+ <string name="pref_proxy_password_summary">Contrasinal do Proxy (Opcional)</string>
+ <string name="pref_proxy_password_dialog">Introduza Contrasinal do Proxy</string>
+ <string name="couldn_t_start_tor_process_">No se pudio inciar o proceso Tor:</string>
+ <string name="error">Erro</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">O seu axuste de ReachableAddresses causou unha excepción!</string>
+ <string name="your_relay_settings_caused_an_exception_">Os seus axustes de relay causou unha excepción!</string>
+ <string name="exit_nodes">Nodos de SaÃda</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Huellas, alias, paÃses e direccións para o último salto</string>
+ <string name="enter_exit_nodes">Introduza Nodos de SaÃda</string>
+ <string name="exclude_nodes">Excluir Nodos</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Huellas, alias, paÃses e direccións a excluÃr</string>
+ <string name="enter_exclude_nodes">Introduza Nodos ExcluÃdos</string>
+ <string name="strict_nodes">Nodos Estritos</string>
+ <string name="use_only_these_specified_nodes">Usar *só* este nodos especÃficos</string>
+ <string name="bridges">Pontes</string>
+ <string name="use_bridges">Usar Pontes</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Activar entradas alternativas a rede Tor</string>
+ <string name="ip_address_and_port_of_bridges">Dirección IP e porto das pontes</string>
+ <string name="enter_bridge_addresses">Introduza Direccións das Pontes</string>
+ <string name="relays">ReenvÃos</string>
+ <string name="relaying">ReenvÃo</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Habilite o seu dispositivo para ser un reenvÃo non de saÃda</string>
+ <string name="relay_port">Porto de ReenvÃo</string>
+ <string name="listening_port_for_your_tor_relay">Porto de Escoita do seu reenvÃo Tor</string>
+ <string name="enter_or_port">Introduza o porto OR</string>
+ <string name="relay_nickname">Alias de ReenvÃo</string>
+ <string name="the_nickname_for_your_tor_relay">Seu alias para reenvÃo de Tor</string>
+ <string name="enter_a_custom_relay_nickname">Introduza un alias personalizado de reenvÃo</string>
+ <string name="reachable_addresses">Direccións Alcanzábeis</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Executar como un cliente detrás dun firewall con polÃticas restritivas</string>
+ <string name="reachable_ports">Portos Alcanzábeis</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Portos alcanzábeis detrás dun firewall restritivo</string>
+ <string name="enter_ports">Inserir portos</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">habilitar rexistro de depuración na saÃda (debe usar adb ou aLogCat para ver)</string>
+ <string name="project_home">Páxina(s) de Inicio do Proxecto:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software de Terceiros:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Unha aplicación quere abrir o porto oculto de servidor %1$s a rede Tor. Esto é seguro se vostede confÃa na app.</string>
+ <string name="found_existing_tor_process">atopado proceso Tor existente...</string>
+ <string name="something_bad_happened">Algo malo pasou. Comprobe o rexistro</string>
+ <string name="unable_to_read_hidden_service_name">imposible ler nome de servizo oculto</string>
+ <string name="unable_to_start_tor">Incapaz de arrancar Tor</string>
+ <string name="pref_use_persistent_notifications">Mostrar sempre a icona na barra de ferramentas cando Orbot estea conectado</string>
+ <string name="pref_use_persistent_notifications_title">Notificacións Sempre Acesas</string>
+ <string name="pref_use_expanded_notifications">Mostar notificación extendida co paÃs de saÃda de Tor e IP</string>
+ <string name="pref_use_expanded_notifications_title">Notificacións extendidas</string>
+ <string name="set_locale_title">Idioma</string>
+ <string name="no_internet_connection_tor">Sen conexión a internet; Tor está a espera...</string>
+ <string name="pref_disable_network_title">Auto-Parado Sen Rede</string>
+ <string name="pref_disable_network_summary">Parar Tor cando non hai conexión a internet</string>
+ <string name="newnym">Cambiou a unha nova identidade Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Sen conexión a rede. Tor agardando...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">A conexión a rede é boa. Espertando a Tor...</string>
+ <string name="updating_settings_in_tor_service">actualizando axustes no servizo Tor</string>
+ <string name="pref_socks_title">SOCKS de Tor</string>
+ <string name="pref_socks_summary">Porto no que Tor ofrece o seu proxy SOCKS (por omisión: 9050 ou 0 para desactivar)</string>
+ <string name="pref_socks_dialog">Axuste do porto SOCKS</string>
+ <string name="pref_transport_title">Porto TransProxy de Tor</string>
+ <string name="pref_transport_summary">Porto no que Tor proporciona o Proxy Transparente (por omisión: 9040 ou 0 para desactivar)</string>
+ <string name="pref_transport_dialog">Axuste do porto TransProxy</string>
+ <string name="pref_dnsport_title">Porto DNS de Tor</string>
+ <string name="pref_dnsport_summary">Porto no que Tor ofrece o seu DNS (por omisión: 5400 ou 0 para desactivar)</string>
+ <string name="pref_dnsport_dialog">Axuste do porto DNS</string>
+ <string name="pref_torrc_title">Axuste Torrc personalizado</string>
+ <string name="pref_torrc_summary">SO PARA EXPERTAS: introducir liñas de configuración directa torrc</string>
+ <string name="pref_torrc_dialog">Torrc personalizado</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Pontes actualizadas</string>
+ <string name="restart_orbot_to_use_this_bridge_">Por favor, reinicie Orbot para activar os cambios</string>
+ <string name="menu_qr">Códigod QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Si a súa rede móbil bloquea Tor de xeito activo, pode utilizar un \'Servidor Ponte\' como modo alternativo. ESCOLL unha das opcións para configurar e probar...</string>
+ <string name="bridge_mode">Modo Ponte</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Activar</string>
+ <string name="apps_mode">Modo VPN</string>
+ <string name="send_email">Enviar correo</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Pode obter un enderezo de ponte a través de correo electrónico, na web ou escaneando o código QR de unha ponte. Escolla abaixo \'Correo-e\' ou \'Web\' para solicitar un enderezo de ponte.\n\nUnha vez teña un enderezo, cópieo e pégueo no axuste \"Pontes\" na configuración de Orbot e reinicie.</string>
+ <string name="vpn_default_world">Global (Auto)</string>
+ <string name="hidden_services">Servizos agochados</string>
+ <string name="title_activity_hidden_services">Servizos agochados</string>
+ <string name="menu_hidden_services">Servizos agochados</string>
+ <string name="save">Gardar</string>
+ <string name="local_port">Porto local</string>
+ <string name="onion_port">Porto Onion</string>
+ <string name="name">Nome</string>
+ <string name="done">Feito!</string>
+ <string name="invalid_port">Porto non válido</string>
+ <string name="copy_address_to_clipboard">Copiar enderezo ao portapapeis</string>
+ <string name="show_auth_cookie">Mostar testemuño de autorización</string>
+ <string name="backup_service">Servizo de respaldo</string>
+ <string name="delete_service">Eliminar servizo</string>
+ <string name="backup_saved_at_external_storage">Respaldo gardado en almacenamento externo</string>
+ <string name="backup_restored">Respaldo restaurado</string>
+ <string name="filemanager_not_available">Xestor de ficheiros non dispoñible</string>
+ <string name="please_grant_permissions_for_external_storage">Por favor, conceda permiso para o almacenamento externo</string>
+ <string name="restore_backup">Restaurar respaldo</string>
+ <string name="create_a_backup_first">Cree un respaldo primeiro</string>
+ <string name="name_can_t_be_empty">O nome non pode quedar baldeiro</string>
+ <string name="fields_can_t_be_empty">Os campos non poden estar baldeiros</string>
+ <string name="start_tor_again_for_finish_the_process">Inicie Tor de novo para rematar o proceso</string>
+ <string name="confirm_service_deletion">Confirme a eliminación do servizo</string>
+ <string name="click_again_for_backup">Pulse de novo para respaldar</string>
+ <string name="service_type">Tipo de servizo</string>
+ <string name="auth_cookie">Testemuño de autorización</string>
+ <string name="copy_cookie_to_clipboard">Copie o testemuño ao portapapeis</string>
+ <string name="auth_cookie_was_not_configured">Non estableceu un testemuño de autorización</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Por favor, reinicie Orbot para activar os cambios</string>
+ <string name="client_cookies">Testemuños do cliente</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Enderezo .onion non válido</string>
+ <string name="cookie_from_QR">Ler desde QR</string>
+ <string name="backup_cookie">Testemuño de respaldo</string>
+ <string name="delete_cookie">Eliminar testemuño</string>
+ <string name="confirm_cookie_deletion">Confirme a eliminación do testemuño</string>
+ <string name="hosted_services">Servizos hospedados</string>
+ <string name="share_as_qr">Compartir como QR</string>
+ <string name="disable">Inhabilitar</string>
+ <string name="enable">Activar</string>
+ <string name="consider_disable_battery_optimizations">Considere desactivar as optimizacións da baterÃa</string>
+ <string name="consider_enable_battery_optimizations">Considere activar as optimizacións da baterÃa</string>
+ <string name="pref_isolate_dest">Illar enderezos de destino</string>
+ <string name="pref_isolate_dest_summary">Utilizar un circuito diferente para cada enderezo de destino</string>
+ <string name="no_transproxy_warning_short">AVISO: xa non está soportado o Proxy Transparente</string>
+ <string name="no_transproxy_warning">AVISO: o Proxy Transparente non está soportado. Utilice Orbot VPN Apps no seu lugar.</string>
+ <string name="pref_connection_padding">Espazado da conexión</string>
+ <string name="pref_connection_padding_summary">Activar sempre un espazado na conexión para defenderse contra algúns tipos de análise de tráfico. Por omisión: auto</string>
+ <string name="pref_reduced_connection_padding">Espazado limitado da conexión</string>
+ <string name="pref_reduced_connection_padding_summary">Pecha as conexións de repetidores máis axiña e envÃa menos paquetes de espazado para reducir os datos e o uso de baterÃa</string>
+ <string name="app_shortcuts">Apps con Tor activado</string>
+ <string name="testing_bridges">Probando a conexión ponte a Tor...</string>
+ <string name="testing_bridges_success">Parabéns. A conexión da Ponte é boa!</string>
+ <string name="testing_bridges_fail">FALLO. Probe outra opción.</string>
+ <string name="bridge_direct_connect">Conectar directamente con Tor (preferido)</string>
+ <string name="bridge_community">Conectar a través de servidores da comunidade</string>
+ <string name="bridge_cloud">Conectar a través de servidores na nube</string>
+ <string name="bridges_get_new">Solicitar Novas Pontes... (si todo o anterior falla)</string>
+ <string name="trouble_connecting">Problemas ao conectar?</string>
+ <string name="full_device_vpn">VPN para todo o dispositivo</string>
+ <string name="vpn_disabled">VPN desactivada</string>
+</resources>
diff --git a/app-mini/src/main/res/values-gu-rIN/strings.xml b/app-mini/src/main/res/values-gu-rIN/strings.xml
new file mode 100644
index 00000000..67ff81c9
--- /dev/null
+++ b/app-mini/src/main/res/values-gu-rIN/strings.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="btn_cancel">રઊ àªàª°à«</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+</resources>
diff --git a/app-mini/src/main/res/values-gu/strings.xml b/app-mini/src/main/res/values-gu/strings.xml
new file mode 100644
index 00000000..f04f4533
--- /dev/null
+++ b/app-mini/src/main/res/values-gu/strings.xml
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">ઞà«àªàª¿àªàªà«àªž</string>
+ <string name="menu_log">ચà«àªàª§àª£à«</string>
+ <string name="btn_okay">બરટબર</string>
+ <string name="btn_cancel">રઊૠàªàª°à«</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="activate">ઞàªà«àª°àª¿àª¯</string>
+ <string name="save">ઞàªàªà«àª°àª¹à«</string>
+ <string name="name">ચટમ</string>
+ <string name="disable">ચિષà«àªà«àª°àª¿àª¯ àªàª°à«</string>
+</resources>
diff --git a/app-mini/src/main/res/values-he/strings.xml b/app-mini/src/main/res/values-he/strings.xml
new file mode 100644
index 00000000..8959f31c
--- /dev/null
+++ b/app-mini/src/main/res/values-he/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot ××× ××ש×× ××× ×× ×©× ××€××ÖŸ××× ××ע׊×× ××ש×××× ××ך×× ××שת×ש ×××× ××š× × ××תך ×××××. Orbot ×שת×ש ×-Tor ××× ××׊׀×× ×ת תע××ךת ×××× ××š× × ×©×× ××× ×סת×ך ×××ª× ×××׊ע×ת ××§×€×Š× ××š× ×¡×ךת ××ש××× ×ך××× ××¢×××. Tor ××× ×ª××× × ××× ××ת ×ךשת ׀ת××× ××¢××ךת ×× ××ת××× × ××€× × ×Š××š× ×©× ××¢×§× ×ךשת ×××××× ×¢× ××ך×ת ××ש×ת ×׀ך×××ת, ×€×¢×××××ת עסק××ת ×ש×××ת, ×××××× ×××× × ××××ך ××©× × ×ת×× ×ª×¢××ך×.</string>
+ <string name="status_starting_up">Orbot ×ת×××âŠ</string>
+ <string name="status_activated">××××ך ×ךשת Tor</string>
+ <string name="status_disabled">Orbot ××××</string>
+ <string name="status_shutting_down">ש×ך×ת Tor ×ת×××</string>
+ <string name="tor_process_starting">×ת××× ××§×× Tor...</string>
+ <string name="tor_process_complete">××ש××.</string>
+ <string name="menu_settings">×××ך×ת</string>
+ <string name="menu_log">××××</string>
+ <string name="menu_start">×ת××</string>
+ <string name="menu_stop">ע׊×ך</string>
+ <string name="menu_about">××××ת</string>
+ <string name="main_layout_download">××ך××</string>
+ <string name="main_layout_upload">××¢×××</string>
+ <string name="button_about">××××ת</string>
+ <string name="menu_exit">×׊×××</string>
+ <string name="menu_scan">סך××§ BridgeQR</string>
+ <string name="menu_share_bridge">שתף BridgeQR</string>
+ <string name="btn_okay">××ש×ך</string>
+ <string name="btn_cancel">×××××</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">׀ך××× ×ס××××× ×©× Orbot </string>
+ <string name="wizard_details_msg">Orbot ××× ××ש×× ××§×ך֟׀ת×× ×שך ×××× ×ת Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent ×-Polipo. ××× ×ס׀ק ××€××ÖŸ××× ××§××× ×©× HTTP (׀ת×× 8118) ×××€××ÖŸ××× SOCKS (׀ת×× 9050) ×ת×× ×š×©×ª Tor. ×-Orbot ×ש ×× ×ת ×××××ת, ×××ש×ך×× ×¢× ×ךש×ת ש×ךש, ×ש××× ×ת ×× ×ª×¢××ךת ×××× ××š× × ×××׊ע×ת Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">××××</string>
+ <string name="pref_start_boot_title">×ת×× ×ת Orbot ××××קת ×××ש×ך</string>
+ <string name="pref_start_boot_summary">×ת×× ×ת Orbot ××ת××ך ×ךשת Tor ×××××××ת ××שך ×××ש×ך × ×××§</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">×××ך×ת Node</string>
+ <string name="pref_node_configuration_summary">×§××××ת ×××ך×ת ×תק×××ת ש×××××ת ×××€××ת ×ת ××× ×× ××××ת ש××</string>
+ <string name="pref_entrance_node">Entrance Nodes</string>
+ <string name="pref_entrance_node_summary">××××¢×ת ×׊××¢, ××× ××××, ×ך׊×ת ××ת×××ת ×¢××ך ×××¢×ך ×ך×ש××</string>
+ <string name="pref_entrance_node_dialog">××× ×¡ Entrance Nodes</string>
+ <string name="pref_allow_background_starts_title">×׀שך ××€×¢×× ×ךקע</string>
+ <string name="pref_allow_background_starts_summary">×׀שך ××× ××€××ק׊×× ×××€×¢×× ××š× Orbot ×ת Tor ×ש×ך ×ש×ך×ת×× ×קש×ך××</string>
+ <string name="pref_proxy_title">ךשת ××€××ÖŸ××× ××׊×ת (ךש×ת×)</string>
+ <string name="pref_proxy_type_title">Outbound Proxy Type</string>
+ <string name="pref_proxy_type_summary">׀ך××××§×× ×ש×××ש ×¢××ך שךת ××€××ÖŸ×××: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">××× ×¡ ס×× ××€××ÖŸ×××</string>
+ <string name="pref_proxy_host_title">×××š× ×©× Outbound Proxy</string>
+ <string name="pref_proxy_host_summary">×©× ×××š× ×©× ×©×š×ª ××€××ÖŸ×××</string>
+ <string name="pref_proxy_host_dialog">××× ×¡ ×××š× ××€××ÖŸ×××</string>
+ <string name="pref_proxy_port_title">׀ת×ת ××€××ÖŸ××× ×©× Outbound</string>
+ <string name="pref_proxy_port_summary">׀ת×ת שךת ××€××ÖŸ×××</string>
+ <string name="pref_proxy_port_dialog">××× ×¡ ׀ת×ת ××€××ÖŸ×××</string>
+ <string name="pref_proxy_username_title">×©× ×שת×ש ×©× Outbound Proxy</string>
+ <string name="pref_proxy_username_summary">×©× ×שת×ש ×©× ××€××ÖŸ××× (ךש×ת×)</string>
+ <string name="pref_proxy_username_dialog">××× ×¡ ×©× ×שת×ש ×©× ××€××ÖŸ×××</string>
+ <string name="pref_proxy_password_title">ס×ס×× ×©× Outbound Proxy</string>
+ <string name="pref_proxy_password_summary">ס×ס×ת ××€××ÖŸ××× (ךש×ת×)</string>
+ <string name="pref_proxy_password_dialog">××× ×¡ ס×ס×ת ××€××ÖŸ×××</string>
+ <string name="couldn_t_start_tor_process_">××× ×׀שך×ת ××ת××× ×ª×××× Tor:</string>
+ <string name="error">ש××××</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">××××ך×ת ×©× ××ת×××ת ×× ××ש×ת ש×× ×ך×× ××ך×××!</string>
+ <string name="your_relay_settings_caused_an_exception_">×××ך×ת ×××סך ש×× ×ך×× ××ך×××!</string>
+ <string name="exit_nodes">׊××ª× ×׊×××</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">××××¢×ת ×׊××¢, ××× ××××, ×××× ×ת ××ת×××ת ×¢××ך ×× ×ת×ך ×××ך××.</string>
+ <string name="enter_exit_nodes">××× ×Š××ª× ×׊×××</string>
+ <string name="exclude_nodes">׊×ת×× ××׊×××</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">××××¢×ת ×׊××¢, ××× ××××, ×××× ×ת ××ת×××ת ×ש××××</string>
+ <string name="enter_exclude_nodes">××× ×Š×ת×× ××׊×××</string>
+ <string name="strict_nodes">׊×ת×× ×§×€×× ××</string>
+ <string name="use_only_these_specified_nodes">×שת×ש *ךק* ×׊×ת×× ×׊××× ×× ×××</string>
+ <string name="bridges">×שך××</string>
+ <string name="use_bridges">×שת×ש ××שך××</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">×׀שך ×× ×ס×ת ××××€××ת ×ת×× ×š×©×ª Tor</string>
+ <string name="ip_address_and_port_of_bridges">×ת××ת IP ×׀ת×× ×©× ×שך××</string>
+ <string name="enter_bridge_addresses">××× ×¡ ×ת×××ת ×שך</string>
+ <string name="relays">××סך××</string>
+ <string name="relaying">××ס×ך</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">×׀שך ×××ש×ך ש×× ××××ת ת×× ×ª ××סך ש××× × × ×׊×××</string>
+ <string name="relay_port">׀ת×ת ×××סך</string>
+ <string name="listening_port_for_your_tor_relay">׀ת×ת ×××× × ×¢××ך ××סך Tor ש××</string>
+ <string name="enter_or_port"> ××× ×¡ ׀ת×ת OR</string>
+ <string name="relay_nickname">××× ×× ×××סך</string>
+ <string name="the_nickname_for_your_tor_relay">×××× ×× ×××סך Tor ש××</string>
+ <string name="enter_a_custom_relay_nickname">××× ××× ×× ×¢××ך ××סך</string>
+ <string name="reachable_addresses">×ת×××ת × ××ש×ת</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">×ךץ ×××§×× ×ª×ת ×××ת ×ש ×¢× ×××× ×××ת ××××××ת</string>
+ <string name="reachable_ports">׀ת××ת × ××ש×ת</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">׀ת××ת × ××ש×ת ×××××š× ×××ת ×ש ××××××</string>
+ <string name="enter_ports">××× ×¡ ׀ת××ת</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">×׀שך ×××× × ××€×× ×ª×§××× ×× ×€×× (×××× ××שת×ש ×-adb ×× ×-aLogCat ××× ××׊××)</string>
+ <string name="project_home">××ª×š× ×׀ך×××§×:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ת××× ×-׊×-×׳: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">××ש×× ×š××Š× ×׀ת×× ×€×ª×× ×©× ×©×š×ª × ×¡×ª×š %1$s ×× ×š×©×ª Tor. ×× ×××× ×× ××ª× ×××× ×××ש××.</string>
+ <string name="found_existing_tor_process">× ××Š× ×ª×××× Tor ×§×××âŠ</string>
+ <string name="something_bad_happened">×ש×× ×š×¢ ×תך×ש. ××××§ ×ת ×××××</string>
+ <string name="unable_to_read_hidden_service_name">×× ××× × ××ª× ×קך×× ×©× ×©× ×©×ך×ת × ×¡×ª×š</string>
+ <string name="unable_to_start_tor">×× ×ס××× ××ת××× ×ת Tor:</string>
+ <string name="pref_use_persistent_notifications">×ש××ך ת××× ×ת ××××§×× ×סך×× ×××× ×ש××ך××× ××××ך</string>
+ <string name="pref_use_persistent_notifications_title">×תך××ת ת×××-×€××¢×</string>
+ <string name="pref_use_expanded_notifications">×ך×× ×תך×× ××ך××ת ×¢× ×××× ×ª ×׊××× ×-IP ×׊××× ×©× Tor</string>
+ <string name="pref_use_expanded_notifications_title">×תך××ת ××ך×××ת</string>
+ <string name="set_locale_title">ש׀×</string>
+ <string name="no_internet_connection_tor">××× ××××ך ×××× ××š× ×; ת×ך ××ת××...</string>
+ <string name="pref_disable_network_title">××× ×©×× × ×××××××ת ×©× ×š×©×ª</string>
+ <string name="pref_disable_network_summary">××× ×ת Tor ××שך ××× ××××ך ×××× ××š× ×</string>
+ <string name="newnym">×××׀ת ×× ×××ת Tor ××ש×!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">××× ××××ך ×ךשת. ×××× ×ת Tor....</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">×××××ך ×¢××× ×××. ××¢×ך ×ת Tor...</string>
+ <string name="updating_settings_in_tor_service">××¢××× ×××ך×ת Tor ×××ש×ך</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">׀ת×× ×שך Tor ×׊××¢ ×ת ××€××ÖŸ×××× SOCKS ש×× ×¢××× (×ך×ךת ××××: 9050 ×× 0 ××× ××ש××ת)</string>
+ <string name="pref_socks_dialog">ת׊×ךת ׀ת××ת SOCKS</string>
+ <string name="pref_transport_title">׀ת×ת Tor TransProxy</string>
+ <string name="pref_transport_summary">׀ת×× ×שך Tor ×׊××¢ ×ת ××€××ÖŸ×××× ×שק××£ ש×× ×¢××× (×ך×ךת ××××: 9040 ×× 0 ××× ××ש××ת)</string>
+ <string name="pref_transport_dialog">ת׊×ךת ׀ת××ת TransProxy</string>
+ <string name="pref_dnsport_title">׀ת×ת DNS ×©× Tor</string>
+ <string name="pref_dnsport_summary">׀ת×× ×שך Tor ×׊××¢ ×ת ×-DNS ש×× ×¢××× (×ך×ךת ××××: 5400 ×× 0 ××× ××ש××ת)</string>
+ <string name="pref_dnsport_dialog">ת׊××š× ×©× ×€×ª×ת DNS</string>
+ <string name="pref_torrc_title">ת׊××š× ××ת××ת ××ש×ת ×©× Torrc</string>
+ <string name="pref_torrc_summary">×××××× ××××: ××× ×¡ ש×ך×ת ת׊×ךת torrc ×ש×ך</string>
+ <string name="pref_torrc_dialog">Torrc ××ת×× ××ש×ת</string>
+ <string name="kbps">×§\"×/ש</string>
+ <string name="mbps">×\"×/ש</string>
+ <string name="kb">×§\"×</string>
+ <string name="mb">×\"×</string>
+ <string name="bridges_updated">×שך×× ×¢×××× ×</string>
+ <string name="restart_orbot_to_use_this_bridge_">×× × ××€×¢× ×××ש ×ת Orbot ××× ××׀שך ×ת ×ש×× ××××</string>
+ <string name="menu_qr">×§××× QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">×× ×€×¢×××ת ×ךשת ×× ×××ת ש×× ××ס×ת ×ת Tor, ××ª× ×××× ××שת×ש ×\'שךת ×שך\' ×××š× ××××€×ת ××××× ×¡. ××ך ××ת ××׀שך×××ת ××× ×××××ך ××××××...</string>
+ <string name="bridge_mode">××Š× ×שך</string>
+ <string name="get_bridges_email">×××\"×</string>
+ <string name="get_bridges_web">×תך</string>
+ <string name="activate">××€×¢×</string>
+ <string name="apps_mode">××Š× VPN</string>
+ <string name="send_email">ש×× ×××\"×</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">××ª× ×××× ××ש×× ×ת××ת ×שך ×××׊ע×ת ×××\"×, ×ךשת ×× ×¢\"× ×¡×š×קת ×§×× QR ×©× ×שך. ××ך \'×××\"×\' ×× \'ךשת\' ×××× ××× ××קש ×ת××ת ×שך.\n\n×ך××¢ ש×ש ×× ×ת××ת, ×עתק ×××××§ ×××ª× ×ת×× ×××¢××€× \"×שך××\" ××××ך×ת Orbot ×××€×¢× ×××ש.</string>
+ <string name="vpn_default_world">×¢×××× (×××××××)</string>
+ <string name="hidden_services">ש×ך×ת×× × ×¡×ª×š××</string>
+ <string name="title_activity_hidden_services">ש×ך×ת×× × ×¡×ª×š××</string>
+ <string name="menu_hidden_services">ש×ך×ת×× × ×¡×ª×š××</string>
+ <string name="save">ש××ך ×ת</string>
+ <string name="local_port">׀ת×× ××§×××ת</string>
+ <string name="onion_port">׀ת×ת ×׊×</string>
+ <string name="name">ש×</string>
+ <string name="done">×סת×××!</string>
+ <string name="invalid_port">׀ת×× ×× ×ª×§×€×</string>
+ <string name="copy_address_to_clipboard">×עתק ×ת××ת ×××× ×¢×š×××</string>
+ <string name="show_auth_cookie">×ך×× ×¢××××ת ××××ת</string>
+ <string name="backup_service">××× ×©×ך×ת</string>
+ <string name="delete_service">×××§ ש×ך×ת</string>
+ <string name="backup_saved_at_external_storage">××××× × ×©×ך ×××ס×× ××׊×× ×</string>
+ <string name="backup_restored">××××× ×©×××ך</string>
+ <string name="filemanager_not_available">×× ×× ×§×׊×× ××× × ××××</string>
+ <string name="please_grant_permissions_for_external_storage">×× × ××¢× ×§ ×ךש××ת ×¢××ך ××ס×× ××׊×× ×</string>
+ <string name="restore_backup">ש××ך ×××××</string>
+ <string name="create_a_backup_first">׊×ך ××××× ×ª××××</string>
+ <string name="name_can_t_be_empty">×©× ××× × ×××× ××××ת ך××§</string>
+ <string name="fields_can_t_be_empty">ש××ת ××× × ×××××× ××××ת ך××§××</string>
+ <string name="start_tor_again_for_finish_the_process">××€×¢× ×ת Tor ש×× ××× ×ס××× ×ת ×ת××××</string>
+ <string name="confirm_service_deletion">×שך ×××קת ש×ך×ת</string>
+ <string name="click_again_for_backup">×××¥ ש×× ××××××</string>
+ <string name="service_type">ס×× ×©×ך×ת</string>
+ <string name="auth_cookie">×¢××××ת ××××ת</string>
+ <string name="copy_cookie_to_clipboard">×עתק ×¢××××× ×××× ×¢×š×××</string>
+ <string name="auth_cookie_was_not_configured">×¢××××ת ××××ת ×× ××××ך×</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">×× × ××€×¢× ×××ש ×ת Orbot ××× ××׀שך ×ת ×ש×× ××××</string>
+ <string name="client_cookies">×¢××××ת ××§××</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">×ת××ת .onion ×× ×ª×§×€×</string>
+ <string name="cookie_from_QR">×§×š× ×ת×× QR</string>
+ <string name="backup_cookie">××× ×¢×××××</string>
+ <string name="delete_cookie">×××§ ×¢×××××</string>
+ <string name="confirm_cookie_deletion">×שך ×××קת ×¢×××××</string>
+ <string name="hosted_services">ש×ך×ת×× ×××ך×××</string>
+ <string name="share_as_qr">שתף ×ת×ך QR</string>
+ <string name="disable">×ש×ת</string>
+ <string name="enable">×׀שך</string>
+ <string name="consider_disable_battery_optimizations">שק×× ××ש××ת ×××××× ×¡××××</string>
+ <string name="consider_enable_battery_optimizations">שק×× ××׀שך ×××××× ×¡××××</string>
+ <string name="pref_isolate_dest">×××× ×ת×××ת ××¢×</string>
+ <string name="pref_isolate_dest_summary">×שת×ש ×××¢×× ×©×× × ××× ×ת××ת ××¢×</string>
+ <string name="no_transproxy_warning_short">×××ך×: ××€××ÖŸ××× ×©×§××£ ××× × × ×ª×× ××תך</string>
+ <string name="no_transproxy_warning">×××ך×: ××€××ÖŸ××× ×©×§××£ ××× × × ×ª××. ×שת×ש ×-VPN ×©× Orbot ×××§××.</string>
+ <string name="pref_connection_padding">ך××€×× ××××ך</string>
+ <string name="pref_connection_padding_summary">×׀שך ת××× ×š××€×× ××××ך ××× ×××× ××€× × ×Š×ך×ת ×ס××××ת ×©× × ×ת×× ×ª×¢××ך×. ×ך×ךת ××××: ×××××××</string>
+ <string name="pref_reduced_connection_padding">×××€×ת ך××€×× ××××ך</string>
+ <string name="pref_reduced_connection_padding_summary">ס××ך ×××××š× ××סך ×××§×× ××תך ×ש××× ×€××ת ×××××ת ××××¢ ך××€×× ××× ×××€××ת ש×××ש ×©× × ×ª×× ×× ×ס××××.</string>
+ <string name="app_shortcuts">××ש×××× ×××׀שך×ÖŸTor</string>
+ <string name="testing_bridges">×××× ××××ך ×שך ×× Tor...</string>
+ <string name="testing_bridges_success">×׊×××. ת׊×ךת ××שך ××××!</string>
+ <string name="testing_bridges_fail">× ×ש×. × ×¡× ×׀שך×ת ××ךת</string>
+ <string name="bridge_direct_connect">×ת××ך ×ש×ך×ת ×× Tor (××× ×××)</string>
+ <string name="bridge_community">×ת××ך ×××׊ע×ת ×©×š×ª× ×§××××</string>
+ <string name="bridge_cloud">×ת××ך ×××׊ע×ת ×©×š×ª× ×¢× ×</string>
+ <string name="bridges_get_new">×קש ×שך×× ××ש××... (×× ×× ×ש×ך × ×ש×)</string>
+ <string name="trouble_connecting">××¢×ת ×ת××ך×ת?</string>
+ <string name="full_device_vpn">VPN ××ש×ך ×××</string>
+ <string name="vpn_disabled">VPN ××ש×ת</string>
+</resources>
diff --git a/app-mini/src/main/res/values-hi/poestrings.xml b/app-mini/src/main/res/values-hi/poestrings.xml
new file mode 100644
index 00000000..894e1e4e
--- /dev/null
+++ b/app-mini/src/main/res/values-hi/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">à€à€à¥-à€à€à¥ à€à€ªà€à¥ Tor à€à¥ à€²à€¿à€ à€¬à¥à€°à€¿à€ à€à¥ à€à€°à¥à€°à€€ à€¹à¥</string>
+ <string name="action_more">à€®à¥à€à¥ à€à€° à€¬à€€à€Ÿà€à€ </string>
+
+ <string name="vpn_setup">à€à€ª à€à€¿à€žà¥ à€à¥ à€
à€ªà¥à€ª à€à¥ à€à¥à€° à€à¥ à¥à€°à€¿à€¯ à€žà€à¥à€·à€® à€à¥à€° à€žà€à€€à¥à€ à€¹à¥à€ à€¹à€®à€Ÿà€°à¥ à€¬à€¿à€²à¥à€-à€à€š à€µà¥.à€ªà¥.à€à€š à€Šà¥à€µà€Ÿà€°à€Ÿà¥€ </string>
+ <string name="vpn_setup_sub">à€¯à€¹ à€à€ªà€à¥ à€à¥à€®à€šà€Ÿà€® à€šà€¹à¥à€ à€¬à€šà€Ÿ à€ªà€Ÿà€à€à€Ÿ, à€²à¥à€à€¿à€š à€à€žà¥ à€«à€Ÿà€¯à€°à€µà¥à€² à€à¥ à€®à€Ÿà€§à¥à€¯à€® à€žà¥ à€ªà¥à€°à€Ÿà€ªà¥à€€ à€à€°à€šà¥ à€®à¥à€ à€®à€Šà€Š à€®à€¿à€²à¥à€à¥à¥€</string>
+ <string name="action_vpn_choose">à€à€ªà¥à€²à€¿à€à¥à€¶à€š à€à¥à€šà€šà¥</string>
+
+ <string name="hello">à€šà€®à€žà¥à€€à¥</string>
+ <string name="welcome">à€®à¥à€¬à€Ÿà€à€² à€ªà€° à€à¥à€° à€®à¥à€ à€à€ªà€à€Ÿ à€žà¥à€µà€Ÿà€à€€ à€¹à¥à¥€ </string>
+
+ <string name="browser_the_internet">à€à€à€à€°à€šà¥à€ à€¬à¥à€°à€Ÿà€à€à€Œ à€à€°à¥à€ à€à€¿ à€à€ª à€à¥ à€
à€ªà¥à€à¥à€·à€Ÿ à€à¥à€žà¥ à€à€°à¥à€</string>
+ <string name="no_tracking">à€à¥à€°à¥à€à€¿à€à€ à€šà€¹à¥à€à¥€ à€à¥à€ à€žà¥à€à€žà€°à€¶à€¿à€ª à€šà€¹à¥à€</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-hi/strings.xml b/app-mini/src/main/res/values-hi/strings.xml
new file mode 100644
index 00000000..e85f9f9c
--- /dev/null
+++ b/app-mini/src/main/res/values-hi/strings.xml
@@ -0,0 +1,207 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">à€à€°à€¬à¥à€</string>
+ <string name="app_description">à€à€°à€¬à¥à€ à€à€¿ à€
à€šà¥à€¯ à€à¥à€·à¥à€§à€Ÿ à€à¥ à€¶à€à¥à€€à€¿ à€ªà¥à€°à€Šà€Ÿà€š à€
à€§à€¿à€ à€žà¥à€°à€à¥à€·à€¿à€€ à€°à¥à€ª à€žà¥ à€à€à€à€°à€šà¥à€ à€à€Ÿ à€à€ªà€¯à¥à€ à€à€°à€šà¥ à€à¥ à€²à€¿à€ à€à€ à€®à¥à€à¥à€€ à€ªà¥à€°à¥à€à¥à€žà¥ app à€¹à¥à¥€ à€à€°à€¬à¥à€ à€
à€ªà€šà¥ à€à€à€à€°à€šà¥à€ à€¯à€Ÿà€€à€Ÿà€¯à€Ÿà€€ à€à€šà¥à€à¥à€°à€¿à€ªà¥à€ à€à€°à€šà¥ à€à¥ à€²à€¿à€ à€à¥ à€à€Ÿ à€à€ªà€¯à¥à€ à€à€°à€€à€Ÿ à€¹à¥ à€à€° à€«à€¿à€° à€Šà¥à€šà€¿à€¯à€Ÿ à€à€° à€à¥ à€à€à€ªà¥à€¯à¥à€à€° à€à¥ à€à€ à€¶à¥à€°à¥à€à€à€²à€Ÿ à€à¥ à€®à€Ÿà€§à¥à€¯à€® à€žà¥ à€à€à€² à€Šà¥à€µà€Ÿà€°à€Ÿ à€¯à€¹ à€à¥à€ªà€Ÿà€€à€Ÿ à€¹à¥à¥€ à€à¥ à€®à¥à€«à¥à€€ à€žà¥à€«à¥à€à€µà¥à€¯à€° à€à€° à€à€ à€à¥à€²à€Ÿ à€šà¥à€à€µà€°à¥à€ à€®à¥à€ à€®à€Šà€Š à€à€°à€€à€Ÿ à€¹à¥ à€à€¿ à€à€ª à€šà¥à€à€µà€°à¥à€ à€šà€¿à€à€°à€Ÿà€šà¥ à€à€Ÿ à€à€ à€°à¥à€ª à€¹à¥ à€à€¿ à€µà¥à€¯à€à¥à€€à€¿à€à€€ à€žà¥à€µà€€à€
à€€à¥à€°à€€à€Ÿ à€à€° à€à¥à€ªà€šà¥à€¯à€€à€Ÿ, à€à¥à€ªà€šà¥à€¯ à€µà¥à€¯à€Ÿà€µà€žà€Ÿà€¯à€¿à€ à€à€€à€¿à€µà€¿à€§à€¿à€¯à¥à€ à€à€° à€°à€¿à€¶à¥à€€à¥, à€à€° à€°à€Ÿà€à¥à€¯ à€žà¥à€°à€à¥à€·à€Ÿ à€¯à€Ÿà€€à€Ÿà€¯à€Ÿà€€ à€µà€¿à€¶à¥à€²à¥à€·à€£ à€à¥ à€°à¥à€ª à€®à¥à€ à€à€Ÿà€šà€Ÿ à€à€Ÿà€€à€Ÿ à€¹à¥ à€à¥ à€à€¿à€²à€Ÿà€« à€à¥ à€°à€à¥à€·à€Ÿ à€à¥ à€²à€¿à€ à€§à€®à€à€Ÿà€€à€Ÿ à€¹à¥à¥€</string>
+ <string name="status_starting_up">à€à€°à€¬à¥à€ à€¶à¥à€°à¥ à€¹à¥ à€°à€¹à€Ÿ à€¹à¥
+</string>
+ <string name="status_activated">à€€à¥à€° à€šà¥à€à€µà€°à¥à€ à€žà¥ à€à¥à¥à€Ÿ </string>
+ <string name="status_disabled">à€à€°à€¬à¥à€ à€šà€¿à€·à¥à€à¥à€°à€¿à€¯ à€¹à¥</string>
+ <string name="status_shutting_down">à€€à¥à€° à€žà€°à¥à€µà€¿à€ž à€¬à€à€§ à€¹à¥ à€°à€¹à€Ÿ à€¹à¥ </string>
+ <string name="tor_process_starting">à€€à¥à€° à€à¥à€²à€Ÿà€à€à€ à€¶à¥à€°à¥ à€¹à¥ à€°à€¹à€Ÿ à€¹à¥ </string>
+ <string name="tor_process_complete">à€ªà¥à€°à¥à€£</string>
+ <string name="menu_settings">à€žà¥à€à€¿à€à€à¥à€ž</string>
+ <string name="menu_log">à€¯à€Ÿà€€à¥à€°à€Ÿ à€Šà¥à€šà€¿à€à¥</string>
+ <string name="menu_start">à€ªà¥à€°à€Ÿà€°à€à€</string>
+ <string name="menu_stop">à€µà€¿à€°à€Ÿà€®</string>
+ <string name="menu_about">à€¬à€Ÿà€°à¥ à€®à¥à€</string>
+ <string name="main_layout_download">à€¡à€Ÿà€à€šà€²à¥à€¡</string>
+ <string name="main_layout_upload">à€
à€ªà€²à¥à€¡</string>
+ <string name="button_about">à€¬à€Ÿà€°à¥ à€®à¥à€</string>
+ <string name="menu_exit">à€šà€¿à€à€Ÿà€ž</string>
+ <string name="menu_scan">à€žà¥à€à¥à€š à€¬à¥à€°à€¿à€ à€à¥à€¯à¥à€à€°</string>
+ <string name="menu_share_bridge">à€¶à¥à€¯à€° à€¬à¥à€°à€¿à€ QR</string>
+ <string name="btn_okay">à€ à¥à€ à€¹à¥</string>
+ <string name="btn_cancel">à€°à€Šà¥à€Š à€à€°à¥à€ </string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">à€à¥à€ à€à€°à€¬à¥à€ à€µà€¿à€µà€°à€£</string>
+ <string name="wizard_details_msg">à€à€°à€¬à¥à€ à€à€ à€à€ªà€š-à€žà¥à€°à¥à€ž à€à€ªà¥à€²à€¿à€à¥à€¶à€š à€¹à¥ à€à€¿à€žà€®à¥à€ à€à¥à€°, à€à€¬à€«à¥à€ž 4 à€ªà¥à€°à¥à€à¥à€žà¥, à€¬à¥à€¡ à€µà¥à€ªà¥à€à€š à€à¥à€š 2 à€à€žà¥à€à¥à€ž, à€²à€¿à€¬à€µà¥à€µà¥à€à€ à€à€° à€ªà¥à€²à¥à€ªà¥ à€¶à€Ÿà€®à€¿à€² à€¹à¥à€à¥€ à€¯à€¹ à€à¥ à€šà¥à€ à€šà¥à€à€µà€°à¥à€ à€®à¥à€ à€à€ à€žà¥à€¥à€Ÿà€šà¥à€¯ HTTP à€ªà¥à€°à¥à€à¥à€žà¥ (8118) à€à€° à€à€ à€žà¥à€à¥à€ž à€ªà¥à€°à¥à€à¥à€žà¥ (9050) à€ªà¥à€°à€Šà€Ÿà€š à€à€°à€€à€Ÿ à€¹à¥à¥€ à€à€°à€¬à¥à€ à€à¥ à€à¥ à€à¥à€·à€®à€€à€Ÿ à€¹à¥, à€°à¥à€ à€¡à€¿à€µà€Ÿà€à€ž à€ªà€°, à€à¥ à€à¥ à€®à€Ÿà€§à¥à€¯à€® à€žà¥ à€žà€à¥ à€à€à€à€°à€šà¥à€ à€à¥à€°à¥à€«à€¿à€ à€à¥à€à€šà¥ à€à¥ à€²à€¿à€</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">à€žà€®à€šà¥à€¯ </string>
+ <string name="pref_start_boot_title">à€¬à¥à€ à€ªà€° Orbot à€¶à¥à€°à¥</string>
+ <string name="pref_start_boot_summary">à€žà¥à€µà€à€Ÿà€²à€¿à€€ à€°à¥à€ª à€žà¥ à€à€°à€¬à¥à€ à€ªà¥à€°à€Ÿà€°à€à€ à€à€°à¥à€ à€à€° à€à¥à€° à€žà¥ à€à€šà¥à€à¥à€ à€à€°à¥à€ à€à€¬ à€à€ªà€à€Ÿ à€à€à€¡à¥à€°à¥à€à€¡ à€¡à€¿à€µà€Ÿà€à€ž à€¬à¥à€ à€à€°à€€à€Ÿ à€¹à¥</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">à€šà¥à€¡ à€à¥à€šà¥à€«à€Œà€¿à€à€°à¥à€¶à€š</string>
+ <string name="pref_node_configuration_summary">à€¯à¥ à€à€šà¥à€šà€€ à€žà¥à€à€¿à€à€à¥à€ž à€¹à¥à€ à€à¥ à€à€ªà€à¥ à€à¥à€®à€šà€Ÿà€®à¥ à€à¥ à€à€® à€à€° à€žà€à€€à¥ à€¹à¥à€</string>
+ <string name="pref_entrance_node">à€ªà¥à€°à€µà¥à€¶ à€šà¥à€¡à¥à€ž</string>
+ <string name="pref_entrance_node_summary">à€«à€¿à€à€à€°à€ªà¥à€°à€¿à€à€à¥à€ž, à€à€šà€¿à€à¥à€ž, à€Šà¥à€¶à¥à€ à€à€° à€ªà¥à€°à€¥à€® à€¹à¥à€ª à€à¥ à€ªà€€à¥</string>
+ <string name="pref_entrance_node_dialog">à€ªà¥à€°à€µà¥à€¶ à€šà¥à€¡à¥à€ž à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="pref_allow_background_starts_title">à€ªà¥à€·à¥à€ à€à¥à€®à€¿ à€à¥ à€
à€šà¥à€®à€€à€¿ à€Šà¥à€ à€ªà¥à€°à€Ÿà€°à€à€</string>
+ <string name="pref_allow_background_starts_summary">à€à€¿à€žà¥ à€à¥ à€à€ª à€à¥ à€à€°à¥à€¬à¥à€ à€à¥ à€à¥ à€à€° à€žà€à€¬à€à€§à€¿à€€ à€žà¥à€µà€Ÿà€à€ à€à¥ à€¶à¥à€°à¥ à€à€°à€šà¥ à€Šà¥à€</string>
+ <string name="pref_proxy_title">à€à€à€à€¬à€Ÿà€à€à€¡ à€šà¥à€à€µà€°à¥à€ à€ªà¥à€°à¥à€à¥à€žà¥ (à€µà¥à€à€²à¥à€ªà€¿à€)</string>
+ <string name="pref_proxy_type_title">à€à€à€à€¬à€Ÿà€à€à€¡ à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à€à€Ÿà€°</string>
+ <string name="pref_proxy_type_summary">à€ªà¥à€°à¥à€à¥à€žà¥ à€žà€°à¥à€µà€° à€à¥ à€²à€¿à€ à€à€ªà€¯à¥à€ à€ªà¥à€°à¥à€à¥à€à¥à€²: à€à€à€à¥à€à¥à€ªà¥, à€¹à€€à¥à€€à€ªà€, à€žà¥à€à¥à€žà¥ª , à€žà¥à€à¥à€à¥«</string>
+ <string name="pref_proxy_type_dialog">à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à€à€Ÿà€° à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="pref_proxy_host_title">à€à€à€à€¬à€Ÿà€à€à€¡ à€ªà¥à€°à¥à€à¥à€žà¥ à€¹à¥à€žà¥à€</string>
+ <string name="pref_proxy_host_summary">à€ªà¥à€°à¥à€à¥à€žà¥ à€žà€°à¥à€µà€° à€¹à¥à€žà¥à€à€šà€Ÿà€®</string>
+ <string name="pref_proxy_host_dialog">à€ªà¥à€°à¥à€à¥à€žà¥ à€¹à¥à€žà¥à€ à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="pref_proxy_port_title">à€à€à€à€¬à€Ÿà€à€à€¡ à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à¥à€</string>
+ <string name="pref_proxy_port_summary">à€ªà¥à€°à¥à€à¥à€žà¥ à€žà€°à¥à€µà€° à€ªà¥à€°à¥à€</string>
+ <string name="pref_proxy_port_dialog">à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à¥à€ à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="pref_proxy_username_title">à€à€à€à€¬à€Ÿà€à€à€¡ à€ªà¥à€°à¥à€à¥à€žà¥ à€à€ªà€¯à¥à€à€à€°à¥à€€à€Ÿ à€šà€Ÿà€®</string>
+ <string name="pref_proxy_username_summary">à€ªà¥à€°à¥à€à¥à€žà¥ à€à€ªà€¯à¥à€à€à€°à¥à€€à€Ÿ à€šà€Ÿà€® (à€µà¥à€à€²à¥à€ªà€¿à€)</string>
+ <string name="pref_proxy_username_dialog">à€ªà¥à€°à¥à€à¥à€žà¥ à€à€ªà€¯à¥à€à€à€°à¥à€€à€Ÿ à€šà€Ÿà€® à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="pref_proxy_password_title">à€à€à€à€¬à€Ÿà€à€à€¡ à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà€Ÿà€žà€µà€°à¥à€¡</string>
+ <string name="pref_proxy_password_summary">à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà€Ÿà€žà€µà€°à¥à€¡ (à€µà¥à€à€²à¥à€ªà€¿à€)</string>
+ <string name="pref_proxy_password_dialog">à€ªà¥à€°à¥à€£ à€ªà€Ÿà€°à€Šà€°à¥à€¶à¥ à€ªà¥à€°à€à¥à€žà¥à€¯à€à€ à€žà¥à€ à€à€°à€šà€Ÿ ...</string>
+ <string name="couldn_t_start_tor_process_">à€€à¥à€° à€ªà¥à€°à€à¥à€°à€¿à€¯à€Ÿ à€¶à¥à€°à¥ à€šà€¹à¥à€ à€à€¿à€¯à€Ÿ à€à€Ÿ à€žà€à€Ÿ:</string>
+ <string name="error">à€€à¥à€°à¥à€à€¿</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">à€à€ªà€à¥ à€ªà€¹à¥à€à€à€šà¥ à€¯à¥à€à¥à€¯ à€à€¡à¥à€°à¥à€ž à€žà¥à€à€¿à€à€à¥à€ž à€šà¥ à€
à€ªà€µà€Ÿà€Š à€à€€à¥à€ªà€šà¥à€š à€à€¿à€¯à€Ÿ!</string>
+ <string name="your_relay_settings_caused_an_exception_">à€à€ªà€à¥ à€°à€¿à€²à¥ à€žà¥à€à€¿à€à€à¥à€ž à€šà¥ à€à€ à€
à€ªà€µà€Ÿà€Š à€à€Ÿ à€à€Ÿà€°à€£ à€¬à€šà€Ÿ à€Šà€¿à€¯à€Ÿ!</string>
+ <string name="exit_nodes">à€¬à€Ÿà€¹à€° à€šà€¿à€à€²à¥à€ à€šà¥à€¡à¥à€ž</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">à€à€à€¿à€°à¥ à€¹à¥à€ª à€à¥ à€²à€¿à€ à€«à€Œà€¿à€à€à€°à€ªà¥à€°à€¿à€à€, à€šà€¿à€à€ž, à€Šà¥à€¶ à€à€° à€ªà€€à¥</string>
+ <string name="enter_exit_nodes">à€¬à€Ÿà€¹à€° à€šà€¿à€à€²à¥à€ à€šà¥à€¡ à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="exclude_nodes">à€šà¥à€¡à¥à€ž à€šà€¿à€à€Ÿà€²à¥à€</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">à€«à€Œà€¿à€à€à€°à€ªà¥à€°à€¿à€à€, à€šà€¿à€à€²à¥à€ž, à€Šà¥à€¶ à€à€° à€ªà€€à¥ à€à¥ à€¬à€Ÿà€¹à€° à€à€°à€šà¥ à€à¥ à€²à€¿à€</string>
+ <string name="enter_exclude_nodes">à€¬à€¹à€¿à€·à¥à€à¥à€€ à€šà¥à€¡à¥à€ž à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="strict_nodes">à€žà€à¥à€€ à€šà¥à€¡à¥à€ž</string>
+ <string name="use_only_these_specified_nodes">* à€à¥à€µà€² * à€à€š à€šà€¿à€°à¥à€Šà€¿à€·à¥à€ à€šà¥à€¡à¥à€ž à€à€Ÿ à€à€ªà€¯à¥à€ à€à€°à¥à€</string>
+ <string name="bridges">à€ªà¥à€²</string>
+ <string name="use_bridges">à€ªà¥à€² à€à€Ÿ à€à€ªà€¯à¥à€ à€à€°à¥à€</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">à€à¥à€°à¥ à€šà¥à€à€µà€°à¥à€ à€®à¥à€ à€µà¥à€à€²à¥à€ªà€¿à€ à€ªà¥à€°à€µà¥à€¶ à€Šà¥à€µà€Ÿà€° à€žà€à¥à€·à€® à€à€°à¥à€</string>
+ <string name="ip_address_and_port_of_bridges">à€à€à€ªà¥ à€ªà€€à€Ÿ à€à€° à€ªà¥à€² à€à€Ÿ à€¬à€à€Šà€°à€à€Ÿà€¹</string>
+ <string name="enter_bridge_addresses">à€¬à¥à€°à€¿à€ à€ªà€€à¥ à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="relays">à€°à€¿à€²à¥</string>
+ <string name="relaying">à€°à€¿à€²à¥à€à€à€</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">à€
à€ªà€šà¥ à€¡à€¿à€µà€Ÿà€à€ž à€à¥ à€à¥à€°-à€¬à€Ÿà€¹à€° à€šà€¿à€à€²à¥à€ à€°à€¿à€²à¥ à€¹à¥à€šà¥ à€à¥ à€²à€¿à€ à€žà€à¥à€·à€® à€à€°à¥à€</string>
+ <string name="relay_port">à€°à€¿à€²à¥ à€ªà¥à€°à¥à€</string>
+ <string name="listening_port_for_your_tor_relay">à€à€ªà€à¥ à€à¥ à€°à€¿à€²à¥ à€à¥ à€²à€¿à€ à€ªà¥à€°à¥à€ à€žà¥à€šà€šà€Ÿ</string>
+ <string name="enter_or_port">à€Šà€°à¥à€ à€à€°à¥à€ à€¯à€Ÿ à€¬à€à€Šà€°à€à€Ÿà€¹</string>
+ <string name="relay_nickname">à€°à€¿à€²à¥ à€à€ªà€šà€Ÿà€®</string>
+ <string name="the_nickname_for_your_tor_relay">à€à€ªà€à¥ à€à¥ à€°à€¿à€²à¥ à€à¥ à€²à€¿à€ à€à€ªà€šà€Ÿà€®</string>
+ <string name="enter_a_custom_relay_nickname">à€à€ à€à€žà¥à€à€® à€°à€¿à€²à¥ à€à€ªà€šà€Ÿà€® à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="reachable_addresses">à€ªà€¹à¥à€à€ à€¯à¥à€à¥à€¯ à€ªà€€à¥</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">à€ªà¥à€°à€€à€¿à€¬à€à€§à€Ÿà€€à¥à€®à€ à€šà¥à€€à€¿à€¯à¥à€ à€à¥ à€žà€Ÿà€¥ à€«à€Œà€Ÿà€¯à€°à€µà¥à€² à€à¥ à€ªà¥à€à¥ à€à€ à€à¥à€²à€Ÿà€à€à€ à€à¥ à€°à¥à€ª à€®à¥à€ à€à€²à€Ÿà€à€</string>
+ <string name="reachable_ports">à€ªà€¹à¥à€à€ à€¯à¥à€à¥à€¯ à€¬à€à€Šà€°à€à€Ÿà€¹</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">à€ªà¥à€°à€€à€¿à€¬à€à€§à€Ÿà€€à¥à€®à€ à€«à€Œà€Ÿà€¯à€°à€µà¥à€² à€à¥ à€ªà¥à€à¥ à€¬à€à€Šà€°à€à€Ÿà€¹ à€€à€ à€ªà€¹à¥à€à€ à€¯à¥à€à¥à€¯</string>
+ <string name="enter_ports">à€¬à€à€Šà€°à€à€Ÿà€¹à¥à€ à€à¥ à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">à€¡à¥à€¬à€ à€²à¥à€ à€à€à€à€ªà¥à€ à€à¥ à€žà€à¥à€·à€® à€à€°à¥à€ (à€Šà¥à€à€šà¥ à€à¥ à€²à€¿à€ à€à€¡à¥à€¬à¥ à€¯à€Ÿ à€à€à¥à€à€à¥à€ à€à€Ÿ à€à€ªà€¯à¥à€ à€à€°à€šà€Ÿ à€à€Ÿà€¹à€¿à€)</string>
+ <string name="project_home">à€ªà¥à€°à¥à€à¥à€à¥à€ à€¹à¥à€®(à€à€ž)::</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">à€€à¥à€€à¥à€¯-à€ªà€à¥à€·-à€žà¥à€«à€Œà¥à€à€µà¥à€¯à€°:</string>
+ <string name="tor_version">à€€à¥à€° : https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">à€ªà¥à€²à¥à€ªà¥ v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">à€à€ à€à€ª Tor à€šà¥à€à€µà€°à¥à€ à€ªà€° %1$sà€à€¿à€ªà€Ÿ à€žà€°à¥à€µà€° à€ªà¥à€°à¥à€ à€à¥à€²à€šà€Ÿ à€à€Ÿà€¹à€€à€Ÿ à€¹à¥à¥€ à€¯à€Šà€¿ à€à€ª à€à€ª à€ªà€° à€µà€¿à€¶à¥à€µà€Ÿà€ž à€à€°à€€à¥ à€¹à¥à€, à€€à¥ à€¯à€¹ à€žà¥à€°à€à¥à€·à€¿à€€ à€¹à¥</string>
+ <string name="found_existing_tor_process">à€®à¥à€à¥à€Šà€Ÿ à€€à¥à€° à€ªà¥à€°à€à¥à€°à€¿à€¯à€Ÿ à€ªà€Ÿà€¯à€Ÿ ...</string>
+ <string name="something_bad_happened">à€à¥à€ à€¬à¥à€°à€Ÿ à€¹à¥ à€à€¯à€Ÿà¥€ à€²à¥à€ à€à¥ à€à€Ÿà€à€ à€à€°à¥à€</string>
+ <string name="unable_to_read_hidden_service_name">à€à€¿à€ªà¥ à€¹à¥à€ à€žà¥à€µà€Ÿ à€à€Ÿ à€šà€Ÿà€® à€ªà€¢à€Œà€šà¥ à€®à¥à€ à€
à€žà€®à€°à¥à€¥</string>
+ <string name="unable_to_start_tor">à€à¥ à€¶à¥à€°à¥ à€à€°à€šà¥ à€®à¥à€ à€
à€žà€®à€°à¥à€¥:</string>
+ <string name="pref_use_persistent_notifications">à€à€°à€¬à¥à€ à€à€šà¥à€à¥à€ à€¹à¥à€šà¥ à€ªà€° à€à¥à€²à€¬à€Ÿà€° à€®à¥à€ à€¹à€®à¥à€¶à€Ÿ à€à€à€à€š à€°à€à¥à€</string>
+ <string name="pref_use_persistent_notifications_title">à€¹à€®à¥à€¶à€Ÿ à€à¥ à€žà¥à€à€šà€Ÿà€à€</string>
+ <string name="pref_use_expanded_notifications">à€€à¥à€° à€à€à¥à€à€¿à€ à€Šà¥à€¶ à€à€° à€à€à€ªà¥ à€à¥ à€žà€Ÿà€¥ à€µà€¿à€žà¥à€€à€Ÿà€°à€¿à€€ à€žà¥à€à€šà€Ÿ à€Šà€¿à€à€Ÿà€à€</string>
+ <string name="pref_use_expanded_notifications_title">à€µà€¿à€žà¥à€€à€Ÿà€°à€¿à€€ à€žà¥à€à€šà€Ÿà€à€</string>
+ <string name="set_locale_title">à€à€Ÿà€·à€Ÿ</string>
+ <string name="no_internet_connection_tor">à€à¥à€ à€à€à€à€°à€šà¥à€ à€à€šà¥à€à¥à€¶à€š à€šà€¹à¥à€; à€€à¥à€° à€žà¥à€à¥à€à€¡à€¬à€Ÿà€¯ à€ªà€° à€¹à¥ ...</string>
+ <string name="pref_disable_network_title">à€à¥à€ à€šà¥à€à€µà€°à¥à€ à€à€à¥-à€žà¥à€²à¥à€ª à€šà€¹à¥à€</string>
+ <string name="pref_disable_network_summary">à€à€¬ à€à¥à€ à€à€à€à€°à€šà¥à€ à€à€ªà€²à€¬à¥à€§ à€šà€¹à¥à€ à€¹à¥ à€€à¥ à€€à¥à€° à€à¥ à€žà¥à€à€</string>
+ <string name="newnym">à€à€ªà€šà¥ à€à€ à€šà€ à€à¥à€°à¥ à€ªà€¹à€à€Ÿà€š à€à¥ à€¬à€Šà€² à€Šà€¿à€¯à€Ÿ à€¹à¥!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">à€à¥à€ à€šà¥à€à€µà€°à¥à€ à€à€šà¥à€à¥à€à€¿à€µà€¿à€à¥ à€šà€¹à¥à€ à€à¥ à€à¥ à€žà¥à€šà¥ à€à¥ à€²à€¿à€ à€¡à€Ÿà€²à€šà€Ÿ ...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">à€šà¥à€à€µà€°à¥à€ à€à€šà¥à€à¥à€à€¿à€µà€¿à€à¥ à€
à€à¥à€à€Ÿ à€¹à¥ à€à€Ÿà€à¥ à€à¥à€° à€
à€ª ...</string>
+ <string name="updating_settings_in_tor_service">à€à¥à€° à€žà¥à€µà€Ÿ à€®à¥à€ à€žà¥à€à€¿à€à€ à€
à€ªà€¡à¥à€ à€à€°à€šà€Ÿ</string>
+ <string name="pref_socks_title">à€à¥à€° à€žà¥à€à¥à€ž</string>
+ <string name="pref_socks_summary">à€ªà¥à€°à¥à€ à€à€ž à€à¥ à€ªà€° à€
à€ªà€šà¥ à€žà¥à€à¥à€ž à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à€Šà€Ÿà€š à€à€°à€€à€Ÿ à€¹à¥ (à€¡à€¿à€«à€Œà¥à€²à¥à€: 9050 à€¯à€Ÿ à€
à€à¥à€·à€® à€à€°à€šà¥ à€à¥ à€²à€¿à€ 0)</string>
+ <string name="pref_socks_dialog">à€žà¥à€à¥à€ž à€ªà¥à€°à¥à€ à€à¥à€šà¥à€«à€Œà€¿à€</string>
+ <string name="pref_transport_title">à€€à¥à€° à€à¥à€°à€Ÿà€à€žà€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à¥à€</string>
+ <string name="pref_transport_summary">à€ªà¥à€°à¥à€ à€à€ž à€à¥ à€ªà€° à€
à€ªà€šà¥ à€ªà€Ÿà€°à€Šà€°à¥à€¶à¥ à€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à€Šà€Ÿà€š à€à€°à€€à€Ÿ à€¹à¥ (à€¡à€¿à€«à€Œà¥à€²à¥à€: 9040 à€¯à€Ÿ à€
à€à¥à€·à€® à€à€°à€šà¥ à€à¥ à€²à€¿à€ 0)</string>
+ <string name="pref_transport_dialog">à€à¥à€°à€Ÿà€à€žà€ªà¥à€°à¥à€à¥à€žà¥ à€ªà¥à€°à¥à€ à€à¥à€šà¥à€«à€Œà€¿à€</string>
+ <string name="pref_dnsport_title">à€à¥à€°à¥ à€¡à¥à€à€šà€à€ž à€ªà¥à€°à¥à€</string>
+ <string name="pref_dnsport_summary">à€ªà¥à€°à¥à€ à€à€ž à€à¥à€° à€ªà€° à€
à€ªà€šà¥ à€¡à¥à€à€šà€à€ž à€ªà¥à€°à€Šà€Ÿà€š à€à€°à€€à€Ÿ à€¹à¥ (à€¡à€¿à€«à€Œà¥à€²à¥à€: 5400 à€¯à€Ÿ à€
à€à¥à€·à€® à€à€°à€šà¥ à€à¥ à€²à€¿à€ 0)</string>
+ <string name="pref_dnsport_dialog">à€¡à¥à€šà€ž à€ªà¥à€°à¥à€ à€à¥à€šà¥à€«à€Œà€¿à€</string>
+ <string name="pref_torrc_title">à€à¥à€°à€°à€ à€à€žà¥à€à€® à€à¥à€šà¥à€«à€Œà€¿à€</string>
+ <string name="pref_torrc_summary">à€à¥à€µà€² à€µà€¿à€¶à¥à€·à€à¥à€: à€ªà¥à€°à€€à¥à€¯à€à¥à€· à€à¥à€°à¥à€ à€à¥à€šà¥à€«à€Œà€¿à€ à€²à€Ÿà€à€šà¥à€ à€Šà€°à¥à€ à€à€°à¥à€</string>
+ <string name="pref_torrc_dialog">à€à€žà¥à€à€® à€à¥à€°à€°à€</string>
+ <string name="kbps">à€à¥à€¬à¥à€ªà¥à€à€ž</string>
+ <string name="mbps">à€à€®à€¬à¥à€ªà¥à€à€ž</string>
+ <string name="kb">à€à€¬</string>
+ <string name="mb">à€®à€¬ </string>
+ <string name="bridges_updated">à€ªà¥à€² à€
à€ªà€¡à¥à€à¥à€¡ </string>
+ <string name="restart_orbot_to_use_this_bridge_">à€ªà€°à€¿à€µà€°à¥à€€à€š à€žà€à¥à€·à€® à€à€°à€šà¥ à€à¥ à€²à€¿à€ Orbot à€ªà¥à€šà€ à€ªà¥à€°à€Ÿà€°à€à€ à€à€°à¥à€</string>
+ <string name="menu_qr">QR à€à¥à€¡</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">à€¯à€Šà€¿ à€à€ªà€à€Ÿ à€®à¥à€¬à€Ÿà€à€² à€šà¥à€à€µà€°à¥à€ à€žà€à¥à€°à€¿à€¯ à€°à¥à€ª à€žà¥ à€à¥ à€à¥ à€¬à¥à€²à¥à€ à€à€°à€€à€Ÿ à€¹à¥, à€€à¥ à€à€ª \'à€ªà¥à€² à€žà€°à¥à€µà€°\' à€à¥ à€à€ à€µà¥à€à€²à¥à€ªà€¿à€ à€€à€°à¥à€à¥ à€žà¥ à€à€ªà€¯à¥à€ à€à€° à€žà€à€€à¥ à€¹à¥à€à¥€ à€à¥à€šà¥à€«à€Œà€¿à€à€° à€à€° à€ªà€°à¥à€à¥à€·à€£ à€à€°à€šà¥ à€à¥ à€²à€¿à€ à€µà€¿à€à€²à¥à€ªà¥à€ à€®à¥à€ à€žà¥ à€à€ à€à€Ÿ à€à€¯à€š à€à€°à¥à€ ..,ी</string>
+ <string name="bridge_mode">à€¬à¥à€°à€¿à€ à€®à¥à€¡</string>
+ <string name="get_bridges_email">à€à€®à¥à€²</string>
+ <string name="get_bridges_web">à€µà¥à€¬</string>
+ <string name="activate">à€žà€à¥à€°à€¿à€¯</string>
+ <string name="apps_mode">à€µà¥à€ªà¥à€à€š à€®à¥à€¡</string>
+ <string name="send_email">à€à€®à¥à€² à€à¥à€à¥à€</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">à€à€ª à€à€®à¥à€², à€µà¥à€¬ à€à¥ à€®à€Ÿà€§à¥à€¯à€® à€žà¥ à€¯à€Ÿ à€à€ à€ªà¥à€² à€à¥à€¯à¥à€à€° à€à¥à€¡ à€à¥ à€žà¥à€à¥à€š à€à€°à€à¥ à€à€ à€ªà¥à€² à€à€Ÿ à€ªà€€à€Ÿ à€®à€¿à€² à€žà€à€€à¥ à€¹à¥à¥€ à€à€ à€ªà¥à€² à€à€Ÿ à€ªà€€à€Ÿ à€
à€šà¥à€°à¥à€§ à€à€°à€šà¥ à€à¥ à€²à€¿à€ \'à€à€®à¥à€²\' à€¯à€Ÿ \'à€µà¥à€¬\' à€šà¥à€à¥ à€à€Ÿ à€à€¯à€š à€à€°à¥à€à¥€ à€à€ à€¬à€Ÿà€° à€à€¬ à€à€ª à€à€ à€ªà€€à€Ÿ à€¹à¥, à€à¥à€ªà¥ à€à€° à€¯à€¹ Orbot à€à¥ à€žà¥à€à€¿à€à€ à€à€° à€ªà¥à€šà€ à€à€°à€à€ à€®à¥à€ \"à€ªà¥à€²\" à€µà€°à¥à€¯à€€à€Ÿ à€®à¥à€ à€ªà¥à€žà¥à€ à€à€°à¥à€à¥€</string>
+ <string name="vpn_default_world">à€à¥à€²à¥à€¬à€² (à€à€à¥)</string>
+ <string name="hidden_services">à€¹à€¿à€¡à€š à€žà¥à€µà€Ÿà€à€</string>
+ <string name="title_activity_hidden_services">à€¹à€¿à€¡à€š à€žà¥à€µà€Ÿà€à€</string>
+ <string name="menu_hidden_services">à€¹à€¿à€¡à€š à€žà¥à€µà€Ÿà€à€</string>
+ <string name="save">à€¬à€à€Ÿà€šà€Ÿ</string>
+ <string name="local_port">à€žà¥à€¥à€Ÿà€šà¥à€¯ à€ªà¥à€°à¥à€</string>
+ <string name="onion_port">à€
à€šà€¿à€¯à€š à€ªà¥à€°à¥à€</string>
+ <string name="name">à€šà€Ÿà€®</string>
+ <string name="done">à€à€¿à€¯à€Ÿ à€¹à¥à€!</string>
+ <string name="invalid_port">à€
à€®à€Ÿà€šà¥à€¯ à€ªà¥à€°à¥à€</string>
+ <string name="copy_address_to_clipboard">à€à¥à€²à€¿à€ªà€¬à¥à€°à¥à€¡ à€à¥ à€ªà€€à€Ÿ à€à¥à€ªà¥ à€à€°à¥à€</string>
+ <string name="show_auth_cookie">Auth à€à¥à€à¥ à€Šà€¿à€à€Ÿà€à€</string>
+ <string name="backup_service">à€¬à¥à€à€
à€ª à€žà¥à€µà€Ÿ</string>
+ <string name="delete_service">à€žà¥à€µà€Ÿ à€¹à€à€Ÿà€à€</string>
+ <string name="backup_saved_at_external_storage">à€¬à€Ÿà€¹à¥à€¯ à€žà€à€à¥à€°à€¹à€£ à€®à¥à€ à€¬à¥à€à€
à€ª à€žà€¹à¥à€à€Ÿ à€à€¯à€Ÿ</string>
+ <string name="backup_restored">à€¬à¥à€à€
à€ª à€à¥ à€ªà¥à€šà€°à¥à€žà¥à€¥à€Ÿà€ªà€¿à€€ à€à€¿à€¯à€Ÿ à€à€¯à€Ÿ</string>
+ <string name="filemanager_not_available">à€«à€Ÿà€à€²à€®à¥à€šà¥à€à€° à€à€ªà€²à€¬à¥à€§ à€šà€¹à¥à€ à€¹à¥</string>
+ <string name="please_grant_permissions_for_external_storage">à€à¥à€ªà€¯à€Ÿ à€¬à€Ÿà€¹à€°à¥ à€žà€à€à¥à€°à€¹à€£ à€à¥ à€²à€¿à€ à€
à€šà¥à€®à€€à€¿ à€Šà¥à€</string>
+ <string name="restore_backup">à€¬à¥à€à€
à€ª à€¬à€¹à€Ÿà€²</string>
+ <string name="create_a_backup_first">à€ªà€¹à€²à¥ à€¬à¥à€à€
à€ª à€¬à€šà€Ÿà€à€</string>
+ <string name="name_can_t_be_empty">à€šà€Ÿà€® à€°à€¿à€à¥à€€ à€šà€¹à¥à€ à€¹à¥ à€žà€à€€à€Ÿ</string>
+ <string name="fields_can_t_be_empty">à€«à€Œà¥à€²à¥à€¡ à€°à€¿à€à¥à€€ à€šà€¹à¥à€ à€¹à¥ à€žà€à€€à¥</string>
+ <string name="start_tor_again_for_finish_the_process">à€ªà¥à€°à€à¥à€°à€¿à€¯à€Ÿ à€à¥ à€à€€à¥à€® à€à€°à€šà¥ à€à¥ à€²à€¿à€ Tor à€ªà¥à€š: à€ªà¥à€°à€Ÿà€°à€à€ à€à€°à¥à€</string>
+ <string name="confirm_service_deletion">à€žà¥à€µà€Ÿ à€¹à€à€Ÿà€šà¥ à€à¥ à€ªà¥à€·à¥à€à€¿ à€à€°à¥à€</string>
+ <string name="click_again_for_backup">à€¬à¥à€à€
à€ª à€à¥ à€²à€¿à€ à€«à€¿à€° à€žà¥ à€à¥à€²à€¿à€ à€à€°à¥à€</string>
+ <string name="service_type">à€žà¥à€µà€Ÿ à€ªà¥à€°à€à€Ÿà€°</string>
+ <string name="auth_cookie">Auth à€à¥à€à¥</string>
+ <string name="copy_cookie_to_clipboard">à€à¥à€²à€¿à€ªà€¬à¥à€°à¥à€¡ à€ªà€° à€à¥à€à¥ à€à¥à€ªà¥ à€à€°à¥à€</string>
+ <string name="auth_cookie_was_not_configured">Auth à€à¥à€à¥ à€à¥à€šà¥à€«à€Œà€¿à€à€° à€šà€¹à¥à€ à€à¥ à€à€ à€¥à¥</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">à€ªà€°à€¿à€µà€°à¥à€€à€š à€žà€à¥à€·à€® à€à€°à€šà¥ à€à¥ à€²à€¿à€ Orbot à€ªà¥à€šà€ à€ªà¥à€°à€Ÿà€°à€à€ à€à€°à¥à€</string>
+ <string name="client_cookies">à€à¥à€²à€Ÿà€à€à€ à€à¥à€à¥à€à€Œ</string>
+ <string name="onion">.à€
à€šà€¿à€¯à€š </string>
+ <string name="invalid_onion_address">à€
à€®à€Ÿà€šà¥à€¯ .à€
à€®à€Ÿà€šà¥à€¯ à€ªà€€à€Ÿà€ªà€€à€Ÿ</string>
+ <string name="cookie_from_QR">QR à€žà¥ à€ªà€¢à€Œà¥à€</string>
+ <string name="backup_cookie">à€¬à¥à€à€
à€ª à€à¥à€à¥</string>
+ <string name="delete_cookie">à€à¥à€à¥ à€¹à€à€Ÿà€à€</string>
+ <string name="confirm_cookie_deletion">à€à¥à€à¥ à€¹à€à€Ÿà€šà¥ à€à¥ à€ªà¥à€·à¥à€à€¿ à€à€°à¥à€</string>
+ <string name="hosted_services">à€¹à¥à€žà¥à€à¥à€¡ à€žà€°à¥à€µà€¿à€žà¥à€ž</string>
+ <string name="share_as_qr">QR à€à¥ à€°à¥à€ª à€®à¥à€ à€¶à¥à€¯à€° à€à€°à¥à€</string>
+ <string name="disable">à€
à€à¥à€·à€®</string>
+ <string name="enable">à€žà€à¥à€·à€® à€à€°à¥à€</string>
+ <string name="consider_disable_battery_optimizations">à€¬à¥à€à€°à¥ à€à€ªà¥à€à€¿à€®à€Ÿà€à€à€Œà¥à€¶à€š à€à¥ à€
à€à¥à€·à€® à€à€°à€šà¥ à€ªà€° à€µà€¿à€à€Ÿà€° à€à€°à¥à€</string>
+ <string name="consider_enable_battery_optimizations">à€¬à¥à€à€°à¥ à€à€ªà¥à€à€¿à€®à€Ÿà€à€à€Œà¥à€¶à€š à€à¥ à€žà€à¥à€·à€® à€à€°à€šà¥ à€ªà€° à€µà€¿à€à€Ÿà€° à€à€°à¥à€</string>
+ <string name="pref_isolate_dest">à€à€à€€à€µà¥à€¯ à€ªà€€à¥ à€
à€²à€ à€à€°à¥à€</string>
+ <string name="pref_isolate_dest_summary">à€ªà¥à€°à€€à¥à€¯à¥à€ à€à€à€€à€µà¥à€¯ à€ªà€€à¥ à€à¥ à€²à€¿à€ à€à€ à€
à€²à€ à€žà€°à¥à€à€¿à€ à€à€Ÿ à€à€ªà€¯à¥à€ à€à€°à¥à€</string>
+ <string name="no_transproxy_warning_short">à€à¥à€€à€Ÿà€µà€šà¥: à€à¥à€°à€Ÿà€à€žà€ªà¥à€°à¥à€à¥à€žà€¿à€à€ à€
à€¬ à€žà€®à€°à¥à€¥à€¿à€€ à€šà€¹à¥à€ à€¹à¥</string>
+ <string name="no_transproxy_warning">à€à¥à€€à€Ÿà€µà€šà¥: à€ªà€Ÿà€°à€Šà€°à¥à€¶à¥ à€ªà¥à€°à¥à€à¥à€žà¥à€¿à€à€ à€žà€®à€°à¥à€¥à€¿à€€ à€šà€¹à¥à€ à€¹à¥à¥€ Orbot Apps VPN à€à€Ÿ à€à€ªà€¯à¥à€ à€à€žà€à¥ à€¬à€à€Ÿà€¯</string>
+ <string name="pref_connection_padding">à€à€šà¥à€à¥à€¶à€š à€ªà¥à€¡à€¿à€à€</string>
+ <string name="pref_connection_padding_summary">à€à¥à€°à¥à€«à€¿à€ à€µà€¿à€¶à¥à€²à¥à€·à€£ à€à¥ à€à¥à€ à€°à¥à€ªà¥à€ à€žà¥ à€¬à€à€Ÿà€µ à€à¥ à€²à€¿à€ à€¹à€®à¥à€¶à€Ÿ à€à€šà¥à€à¥à€¶à€š à€ªà¥à€¡à€¿à€à€ à€žà€à¥à€·à€® à€à€°à€€à€Ÿ à€¹à¥à¥€ à€¡à€¿à€«à€Œà¥à€²à¥à€: à€à€à¥</string>
+ <string name="pref_reduced_connection_padding">à€à€® à€à€šà¥à€à¥à€¶à€š à€ªà¥à€¡à€¿à€à€</string>
+ <string name="pref_reduced_connection_padding_summary">à€à€²à¥à€Š à€¹à¥ à€°à€¿à€²à¥ à€à€šà¥à€à¥à€¶à€š à€¬à€à€Š à€à€° à€Šà¥à€€à€Ÿ à€¹à¥ à€à€° à€¡à¥à€à€Ÿ à€à€° à€¬à¥à€à€°à¥ à€à€ªà€¯à¥à€ à€à¥ à€à€® à€à€°à€šà¥ à€à¥ à€²à€¿à€ à€à€® à€ªà¥à€¡à€¿à€à€ à€ªà¥à€à¥à€ à€à¥à€à€€à€Ÿ à€¹à¥</string>
+ <string name="app_shortcuts">Tor-à€žà€à¥à€·à€® à€à€ªà¥à€ž</string>
+ <string name="testing_bridges">Tor à€žà¥ à€¬à¥à€°à€¿à€ à€à€šà¥à€à¥à€¶à€š à€à€Ÿ à€ªà€°à¥à€à¥à€·à€£ ....</string>
+ <string name="testing_bridges_success">à€žà€«à€²à€€à€Ÿà¥€ à€ªà¥à€² à€µà€¿à€šà¥à€¯à€Ÿà€ž à€
à€à¥à€à€Ÿ à€¹à¥!</string>
+ <string name="testing_bridges_fail">à€
à€šà¥à€€à¥à€€à¥à€°à¥à€£ à€¹à¥à€šà€Ÿà¥€ à€Šà¥à€žà€°à¥ à€µà€¿à€à€²à¥à€ª à€à€Ÿ à€ªà¥à€°à€¯à€Ÿà€ž à€à€°à¥à€</string>
+ <string name="bridge_direct_connect">à€žà¥à€§à¥ à€à¥à€° à€žà¥ à€à€šà¥à€à¥à€ à€à€°à¥à€ (à€žà€°à¥à€µà€¶à¥à€°à¥à€·à¥à€ )</string>
+ <string name="bridge_community">à€žà€Ÿà€®à¥à€Šà€Ÿà€¯à€¿à€ à€žà€°à¥à€µà€° à€à¥ à€®à€Ÿà€§à¥à€¯à€® à€žà¥ à€à€šà¥à€à¥à€ à€à€°à¥à€</string>
+ <string name="bridge_cloud">à€à¥à€²à€Ÿà€à€¡ à€žà€°à¥à€µà€° à€žà¥ à€à¥à€¡à€Œà¥à€</string>
+ <string name="bridges_get_new">à€šà€ à€¬à¥à€°à€¿à€ à€à€Ÿ à€
à€šà¥à€°à¥à€§ ... (à€¯à€Šà€¿ à€žà€¬ à€à¥à€ à€µà€¿à€«à€² à€°à€¹à€€à€Ÿ à€¹à¥)</string>
+ <string name="trouble_connecting">à€à€šà¥à€à¥à€ à€à€°à€šà¥ à€®à¥à€ à€žà€®à€žà¥à€¯à€Ÿ?</string>
+ <string name="full_device_vpn">à€ªà¥à€°à¥à€£ à€¡à€¿à€µà€Ÿà€à€ž VPN</string>
+ <string name="vpn_disabled">à€µà¥à€ªà¥à€à€š à€
à€à¥à€·à€® à€à€¿à€¯à€Ÿ à€à€¯à€Ÿ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-hr-rHR/strings.xml b/app-mini/src/main/res/values-hr-rHR/strings.xml
new file mode 100644
index 00000000..ab067581
--- /dev/null
+++ b/app-mini/src/main/res/values-hr-rHR/strings.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="menu_settings">Postavke</string>
+ <string name="menu_about">O</string>
+ <string name="button_about">O</string>
+ <string name="menu_exit">Izlaz</string>
+ <string name="btn_cancel">Odustani</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">OpÄenito</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Greška</string>
+</resources>
diff --git a/app-mini/src/main/res/values-hr/strings.xml b/app-mini/src/main/res/values-hr/strings.xml
new file mode 100644
index 00000000..deb23402
--- /dev/null
+++ b/app-mini/src/main/res/values-hr/strings.xml
@@ -0,0 +1,140 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot je besplatna proxy aplikacija koja omoguÄuje ostalim aplikacijama da koriste internet sigurnije. Orbot koristi Tor za enkripciju VaÅ¡eg Internet prometa, a zatim ga skriva Å¡aljuÄi ga kroz seriju raÄunala diljem svijeta. Tor je besplatan software i otvorena mreÅŸa koja pomaÅŸe u borbi protiv nadzora mreÅŸe koji ugroÅŸava osobne slobode i privatnost, povjerljive poslovne aktivnosti i odnose, te pomaÅŸe u borbi protiv analize prometa.</string>
+ <string name="status_starting_up">Orbot se pokreÄe...</string>
+ <string name="status_activated">Spojen na Tor mreÅŸu</string>
+ <string name="status_disabled">Orbot je deaktiviran</string>
+ <string name="status_shutting_down">TorService se gasi</string>
+ <string name="tor_process_starting">PokreÄem Tor klijent...</string>
+ <string name="tor_process_complete">gotovo.</string>
+ <string name="menu_settings">Postavke</string>
+ <string name="menu_log">Dnevnik</string>
+ <string name="menu_start">PoÄetak</string>
+ <string name="menu_stop">Zaustavi</string>
+ <string name="menu_about">O</string>
+ <string name="main_layout_download">Preuzimanje</string>
+ <string name="main_layout_upload">Slanje</string>
+ <string name="button_about">O</string>
+ <string name="menu_exit">Izlaz</string>
+ <string name="menu_scan">Skeniraj BridgeQR</string>
+ <string name="menu_share_bridge">Podijeli BridgeQR</string>
+ <string name="btn_okay">U redu</string>
+ <string name="btn_cancel">Odustani</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Detalji o Orbot-u</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">OpÄenito</string>
+ <string name="pref_start_boot_title">Pokreni Orbot pri pokretanju</string>
+ <string name="pref_start_boot_summary">Automatski pokreni Orbot i poveÅŸi Tor kad se Android ureÄaj pokrene</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfiguracija Ävora</string>
+ <string name="pref_node_configuration_summary">Ovo su napredne postavke koje mogu smanjiti Vašu anonimnost</string>
+ <string name="pref_entrance_node">Ulazni Ävorovi</string>
+ <string name="pref_entrance_node_summary">Otisci prstiju, nadimci, drÅŸave i adrese za prvi skok</string>
+ <string name="pref_entrance_node_dialog">Unesi Ulazne Ävorove</string>
+ <string name="pref_allow_background_starts_title">Dozvoli pokretanja u pozadini</string>
+ <string name="pref_allow_background_starts_summary">Dopusti bilo kojoj aplikaciji da kaÅŸe Orbot-u da pokrene Tor i povezane usluge</string>
+ <string name="pref_proxy_title">Izlazni MreÅŸni Proxy (Opcionalno)</string>
+ <string name="pref_proxy_type_title">Vrsta Izlaznog Proxy-a</string>
+ <string name="pref_proxy_type_summary">Protokol koji se koristi za proxy server: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Unesi Tip Proxyj-a</string>
+ <string name="pref_proxy_host_title">DomaÄin Izlaznog Proxy-a</string>
+ <string name="pref_proxy_host_summary">Ime domaÄina Proxy PosluÅŸitelja</string>
+ <string name="pref_proxy_host_dialog">Unesi DomaÄina Proxy-a</string>
+ <string name="pref_proxy_port_title">Port Izlaznog Proxy-a</string>
+ <string name="pref_proxy_port_summary">Port Proxy PosluÅŸitelja</string>
+ <string name="pref_proxy_port_dialog">Unesite port za proxy.</string>
+ <string name="pref_proxy_username_title">Proxy izlazno korisniÄko ime</string>
+ <string name="pref_proxy_username_summary">Proxy korisniÄko ime (Opcionalno)</string>
+ <string name="pref_proxy_username_dialog">Unesite Proxy korisniÄko ime</string>
+ <string name="pref_proxy_password_title">Proxy izlazna lozinka</string>
+ <string name="pref_proxy_password_summary">Proxy lozinka (Opcionalno)</string>
+ <string name="pref_proxy_password_dialog">Unesite Proxy lozinku</string>
+ <string name="couldn_t_start_tor_process_">Nije moguÄe zapoÄeti Tor proces:</string>
+ <string name="error">Greška</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Vaše ReachableAddresses postavke su uzrokovale iznimku!</string>
+ <string name="your_relay_settings_caused_an_exception_">Vaše postavke releja su uzrokovale iznimku!</string>
+ <string name="exit_nodes">Izlazni Ävorovi</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Otisci prstiju, nadimci, drÅŸave i adrese za zadnji skok</string>
+ <string name="enter_exit_nodes">Unesi Izlazne Ävorove</string>
+ <string name="exclude_nodes">Nemoj UkljuÄiti Ävorove</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Otisci prstiju, nadimci, drÅŸave i adrese koje ne treba ukljuÄiti</string>
+ <string name="enter_exclude_nodes">Unesi Ävorove koje treba iskljuÄiti</string>
+ <string name="strict_nodes">Striktni Ävorovi</string>
+ <string name="use_only_these_specified_nodes">Koristi *samo* ove navedene Ävorove</string>
+ <string name="bridges">Mostovi</string>
+ <string name="use_bridges">Koristi Mostove</string>
+ <string name="ip_address_and_port_of_bridges">IP adresa i port mostova</string>
+ <string name="enter_bridge_addresses">Unesi Adrese Mostova</string>
+ <string name="relays">Releji</string>
+ <string name="relaying">Prenošenje</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">OmoguÄite svom ureÄaju da bude ne-izlazni relej</string>
+ <string name="relay_port">Relej Port</string>
+ <string name="listening_port_for_your_tor_relay">Port za slušanje Vašeg Tor releja</string>
+ <string name="enter_or_port">Unesi OR port</string>
+ <string name="relay_nickname">Nadimak releja</string>
+ <string name="the_nickname_for_your_tor_relay">Nadimak za Vaš Tor relej</string>
+ <string name="enter_a_custom_relay_nickname">Unesi prilagoÄeni nadimak releja</string>
+ <string name="reachable_addresses">Dostupne Adrese</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Pokreni kao klijent iza firewall-a sa restriktivnim pravilima</string>
+ <string name="reachable_ports">Dostupni portovi</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Portovi dostupni iza restriktivnog firewall-a</string>
+ <string name="enter_ports">Unesi portove</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">omoguÄi izlaznost dnevnika o otkrivanju greÅ¡ke (mora koristiti adb ili aLogCat za pregled)</string>
+ <string name="project_home">Dom(ovi) Projekta:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software treÄe strane:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">pronaÄeni postojeÄi Tor procesi...</string>
+ <string name="something_bad_happened">Nešto loše se dogodilo. Provjerite dnevnik</string>
+ <string name="unable_to_read_hidden_service_name">nije moguÄe proÄitati ime skrivene usluge</string>
+ <string name="unable_to_start_tor">Nije moguÄe pokrenuti Tor:</string>
+ <string name="pref_use_persistent_notifications">Uvjek drÅŸi ikonu na alatnoj traci kad je Orbot spojen</string>
+ <string name="pref_use_persistent_notifications_title">Obavijesti o stalnoj pokrenutosti</string>
+ <string name="pref_use_expanded_notifications">Prikaşi proširene obavijesti s Tor izlaznom drşavom i IP-em</string>
+ <string name="pref_use_expanded_notifications_title">Proširene obavijesti</string>
+ <string name="set_locale_title">Jezik</string>
+ <string name="no_internet_connection_tor">Nema internet veze; Tor je u stanju pripravnosti...</string>
+ <string name="pref_disable_network_title">Nema mreÅŸnog auto-spavanja</string>
+ <string name="pref_disable_network_summary">Stavi Tor na spavanje kad internet nije dostupan</string>
+ <string name="newnym">Prebacili ste se na nov Tor identitet!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Nema mreÅŸne povezivosti. Stavljam Tor na spavanje...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">MreÅŸan povezanost je dobra. Budim Tor...</string>
+ <string name="updating_settings_in_tor_service">aÅŸuriram postavke u Tor usluzi</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Port na kojem Tor pruÅŸa svoj SOCKS proxy (zadano: 9050, 0 za onemoguÄavanje)</string>
+ <string name="pref_socks_dialog">Konfiguracija SOCKS porta </string>
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_summary">Port na kojem Tor pruÅŸa Transparentni Proxy (zadano: 9040, 0 za onemoguÄivanje)</string>
+ <string name="pref_transport_dialog">Konfiguracija TransProxy porta</string>
+ <string name="pref_dnsport_title">Tor DNS Port</string>
+ <string name="pref_dnsport_summary">Port na kojem Tor pruÅŸa DNS (zadano 5400, 0 za onemoguÄivanje)</string>
+ <string name="pref_dnsport_dialog">Postavljanje DNS porta</string>
+ <string name="pref_torrc_title">Torrc prilagoÄena konfiguracija</string>
+ <string name="pref_torrc_summary">SAMO ZA STRUÄNJAKE: unesite direktno torrc konfiguracijske linije</string>
+ <string name="pref_torrc_dialog">PrilagoÄeni Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Mostova aÅŸurirano</string>
+ <string name="restart_orbot_to_use_this_bridge_">Ponovno pokrenite Orbot da bi omoguÄili promjene</string>
+ <string name="menu_qr">QR kodovi</string>
+ <string name="bridge_mode">NaÄin rada Most</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Aktiviraj</string>
+ <string name="send_email">Pošalji email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">MoÅŸete dobiti adrese mostova kroz email, web ili skeniranjem QR koda. Odaberite \'Email\' ili \'Web\' niÅŸe da zatraÅŸite adresu mosta.\n\nJednom kad imate adresu, kopirajte i zalijepite ju u \"Mostovi\" postavku Orbot-a i ponovno ga pokrenite.</string>
+ <string name="save">Spremi</string>
+ <string name="name">Ime</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Ponovno pokrenite Orbot da bi omoguÄili promjene</string>
+</resources>
diff --git a/app-mini/src/main/res/values-hu/poestrings.xml b/app-mini/src/main/res/values-hu/poestrings.xml
new file mode 100644
index 00000000..07b12111
--- /dev/null
+++ b/app-mini/src/main/res/values-hu/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Néha szÃŒksége lehet HÃdra a Tor-hoz.</string>
+ <string name="action_more">SZERETNÃK TÃBBET TUDNI</string>
+
+ <string name="vpn_setup">Gyakorlatilag bármilyen alkalmazást keresztÃŒl vezethet a Tor-on a beépÃtett VPN miatt.</string>
+ <string name="vpn_setup_sub">Ez nem teszi anonimmá, de segÃthet átjutni a tűzfalakon.</string>
+ <string name="action_vpn_choose">ALKALMAZÃSOK VÃLASZTÃSA</string>
+
+ <string name="hello">Helló</string>
+ <string name="welcome">Ãdvözli a Tor a mobilon.</string>
+
+ <string name="browser_the_internet">Böngésszen az interneten, ahogy szeretne.</string>
+ <string name="no_tracking">Nincs követés. Nincs cenzorálás.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-hu/strings.xml b/app-mini/src/main/res/values-hu/strings.xml
new file mode 100644
index 00000000..b7d126be
--- /dev/null
+++ b/app-mini/src/main/res/values-hu/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Az Orbot egy ingyenes proxy alkalmazás, ami képessé tesz alkalmazásokat, hogy biztonságosabban használhassák az internetet. Az Orbot Tor-t használ, hogy titkosÃtsa az internetforgalmadat és elrejtse azáltal, hogy pattogtatja számÃtógépek sorozatain keresztÃŒl a világ körÃŒl. A Tor ingyenes szoftver és nyitott hálózat, ami segÃt megvédeni a hálózati felÃŒgyelettÅl, ami fenyegeti a személyi szabadságot és magánéletet, a bizalmas céges tevékenységeket és kapcsolatokat, és állambiztonság cÃmén a forgalomelemzéstÅl.</string>
+ <string name="status_starting_up">Az Orbot indul...</string>
+ <string name="status_activated">Csatlakozva a Tor hálózathoz</string>
+ <string name="status_disabled">Az Orbot deaktiválva</string>
+ <string name="status_shutting_down">A TorService leáll</string>
+ <string name="tor_process_starting">A Tor kliens indÃtása...</string>
+ <string name="tor_process_complete">kész.</string>
+ <string name="menu_settings">BeállÃtások</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">IndÃtás</string>
+ <string name="menu_stop">LeállÃtás</string>
+ <string name="menu_about">Névjegy</string>
+ <string name="main_layout_download">Letöltés</string>
+ <string name="main_layout_upload">Feltöltés</string>
+ <string name="button_about">Névjegy</string>
+ <string name="menu_exit">Kilépés</string>
+ <string name="menu_scan">BridgeQR szkennelése</string>
+ <string name="menu_share_bridge">BridgeQR megosztása</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">Mégsem</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Néhány Orbot adat</string>
+ <string name="wizard_details_msg">Az Orbot egy nyilt forráskódú alkalmazás ami Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent és Polipo alkalmazásokat tartalmaz. Helyi HTTP proxyt (8118) és SOCKS proxyt (9050) biztosÃt a Tor hálózatba. Az Orbot továbbá képes arra, hogy rootolt eszközön a teljes internet forgalmat keresztÃŒl kÃŒldje a Tor-on.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Ãltalános</string>
+ <string name="pref_start_boot_title">Az Orbot indÃtása rendszerindÃtáskor</string>
+ <string name="pref_start_boot_summary">Automatikusan elindÃtja az Orbot-ot és csatlakozik a hálózathoz, amikor az Android eszköz betölt</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Csomópont konfiguráció</string>
+ <string name="pref_node_configuration_summary">Ezek haladó beállÃtások, amelyek csökkenthetik a névtelenséged.</string>
+ <string name="pref_entrance_node">BelépŠcsomópontok</string>
+ <string name="pref_entrance_node_summary">Ujjlenyomatok, becenevek, országok és cÃmek az elsÅ ugráshoz</string>
+ <string name="pref_entrance_node_dialog">BelépŠcsomópontok megadása</string>
+ <string name="pref_allow_background_starts_title">Háttérbeli indulások engedélyezése</string>
+ <string name="pref_allow_background_starts_summary">Bármely alkalmazás közölheti az Orbot-tal, hogy indÃtsa a Tor-t és a kapcsolódó szolgáltatásokat</string>
+ <string name="pref_proxy_title">KimenŠhálózati proxy (választható)</string>
+ <string name="pref_proxy_type_title">Proxy tÃpus</string>
+ <string name="pref_proxy_type_summary">A Proxy szerver által használandó protokoll: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Add meg a proxy tÃpusát</string>
+ <string name="pref_proxy_host_title">KimenÅ proxy hoszt</string>
+ <string name="pref_proxy_host_summary">Proxy szerver állomásneve</string>
+ <string name="pref_proxy_host_dialog">Add meg a proxy hosztot</string>
+ <string name="pref_proxy_port_title">Proxy port</string>
+ <string name="pref_proxy_port_summary">Proxy szerver port</string>
+ <string name="pref_proxy_port_dialog">Add meg a proxy portját</string>
+ <string name="pref_proxy_username_title">KimenŠproxy felhasználónév</string>
+ <string name="pref_proxy_username_summary">Proxy felhasználónév (választható)</string>
+ <string name="pref_proxy_username_dialog">Add meg a proxy felhasználónevet</string>
+ <string name="pref_proxy_password_title">KimenŠproxy jelszó</string>
+ <string name="pref_proxy_password_summary">Proxy jelszó (választható)</string>
+ <string name="pref_proxy_password_dialog">Add meg a proxy jelszót</string>
+ <string name="couldn_t_start_tor_process_">Nem indÃtható el a Tor folyamat:</string>
+ <string name="error">Hiba</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Az elérhetÅ cÃmeid beállÃtásai kivételt okoztak!</string>
+ <string name="your_relay_settings_caused_an_exception_">Az átjátszód beállÃtásai kivételt okoztak!</string>
+ <string name="exit_nodes">Kilépési csomópontok</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Ujjlenyomatok, becenevek, országok és cÃmek az utolsó ugráshoz</string>
+ <string name="enter_exit_nodes">Kilépési csomópontok megadása</string>
+ <string name="exclude_nodes">Csomópontok kizárása</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Kizárandó ujjlenyomatok, becenevek, országok és cÃmek</string>
+ <string name="enter_exclude_nodes">Add meg a kizárandó csomópontokat</string>
+ <string name="strict_nodes">Szigorú csomópontok</string>
+ <string name="use_only_these_specified_nodes">*Csak* ezeknek a megadott csomópontoknak a használata</string>
+ <string name="bridges">Hidak</string>
+ <string name="use_bridges">Hidak használata</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">A Tor hálózat bejáratok váltogatásának engedélyezése </string>
+ <string name="ip_address_and_port_of_bridges">A hidak IP cÃme és portja</string>
+ <string name="enter_bridge_addresses">Add meg a hÃd cÃmeit</string>
+ <string name="relays">Ãtjátszók</string>
+ <string name="relaying">Ãtjátszás</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Engedélyezd az eszközödnek, hogy nem-átjátszó elosztó legyen</string>
+ <string name="relay_port">Ãtjátszó port</string>
+ <string name="listening_port_for_your_tor_relay">Hallgató port a Tor átjátszódnak</string>
+ <string name="enter_or_port">Enter VAGY port</string>
+ <string name="relay_nickname">Ãtjátszó becenév</string>
+ <string name="the_nickname_for_your_tor_relay">A Tor átjátszód beceneve</string>
+ <string name="enter_a_custom_relay_nickname">Adj meg egy egyedi átjátszó becenevet</string>
+ <string name="reachable_addresses">ElérhetÅ cÃmek</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Futtatás kliensként egy tűzfal mögÌl, korlátozó rendelkezésekkel</string>
+ <string name="reachable_ports">ElérhetŠportok</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">A tűzfal mögött elérhetŠportok</string>
+ <string name="enter_ports">Add meg a portokat</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">a hibakeresési napló engedélyezése a kimenetre (adb -t vagy aLogCat -t kell használni a megtekintéshez)</string>
+ <string name="project_home">Projekt honlap(ok):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">3. fél szoftver:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Egy app egy rejtett szerver portot %1$s nyitna a Tor hálózatra. Ez biztonságos, ha megbÃzik az appban.</string>
+ <string name="found_existing_tor_process">létezŠTor folyamat találva...</string>
+ <string name="something_bad_happened">Valami rossz történt. Nézd meg a naplót.</string>
+ <string name="unable_to_read_hidden_service_name">nem olvasható a rejtett szolgáltatás neve</string>
+ <string name="unable_to_start_tor">A Tor indÃtása sikertelen:</string>
+ <string name="pref_use_persistent_notifications">Mindig tartsa az ikont az eszköztáron, ha az Orbot csatlakoztatva van.</string>
+ <string name="pref_use_persistent_notifications_title">Mindig-bekapcsolt értesÃtések</string>
+ <string name="pref_use_expanded_notifications">Mutassa a bÅvÃtett értesÃtést a Tor kilépÅ országgal és IP-vel</string>
+ <string name="pref_use_expanded_notifications_title">BÅvÃtett értesÃtések</string>
+ <string name="set_locale_title">Nyelv</string>
+ <string name="no_internet_connection_tor">Nincs internetkapcsolat; Tor készenlétben...</string>
+ <string name="pref_disable_network_title">Nincs hálózati auto-alvás</string>
+ <string name="pref_disable_network_summary">A Tor alvó módba helyezése, ha internet nem elérhetÅ</string>
+ <string name="newnym">Ãj Tor identitásra váltottál!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Nincs hálózati kapcsolat. Tor alvó állapotba helyezése...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">A hálózati kapcsolat jó. Tor felébresztése...</string>
+ <string name="updating_settings_in_tor_service">a Tor szolgáltatás beállÃtásainak frissÃtése</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Port amelyen a Tor a SOCKS proxyt biztosÃtja (alapértelmezett: 9050 vagy 0 a tiltáshoz)</string>
+ <string name="pref_socks_dialog">SOCKS port konfiguráció</string>
+ <string name="pref_transport_title">Tor TransProxy port</string>
+ <string name="pref_transport_summary">Port, amelyen a Tor a transzparens proxyt ajánl (alapértelmezett: 9040 vagy 0 a tiltáshoz)</string>
+ <string name="pref_transport_dialog">TransProxy port konfiguráció</string>
+ <string name="pref_dnsport_title">Tor DNS port</string>
+ <string name="pref_dnsport_summary">Port, amelyen a Tor a saját DNS-t ajánlja (alapértelmezett: 5400 vagy 0 a letiltáshoz)</string>
+ <string name="pref_dnsport_dialog">DNS port konfiguráció</string>
+ <string name="pref_torrc_title">Torrc egyedi konfiguráció</string>
+ <string name="pref_torrc_summary">CSAK SZAKÃRTÅKNEK: torrc konfigurációs sorok közvetlen beÃrása</string>
+ <string name="pref_torrc_dialog">Egyedi Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Hidak frissÃtve</string>
+ <string name="restart_orbot_to_use_this_bridge_">Kérlek indÃtsd újra az Orbot-ot a változások engedélyezéséhez</string>
+ <string name="menu_qr">QR kódok</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Ha a mobil hálózata aktÃvan blokkolja a Tor-t, akkor választhatja a \'HÃd szerver\'-t, mint alternatÃv utat. VÃLASSZON egyet a lehetÅségek közÃŒl és tesztelje....</string>
+ <string name="bridge_mode">HÃd mód</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Aktiválás</string>
+ <string name="apps_mode">VPN Mód</string>
+ <string name="send_email">Email kÌldése</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Kaphatsz egy hÃd-cÃmet emailen, weben keresztÃŒl vagy a hÃd QR kódjának beszkennelésével. Válaszd az \'Email\'-t vagy a \'Web\'-et alább a hÃd-cÃm kéréséhez.\n\nAmikor már van egy cÃmed, másold & illeszd be \"Hidak\" preferenciákba az Orbot beállÃtásaiban és indÃtsd újra.</string>
+ <string name="vpn_default_world">Globális (Auto)</string>
+ <string name="hidden_services">Rejtett szolgáltatások</string>
+ <string name="title_activity_hidden_services">Rejtett szolgáltatások</string>
+ <string name="menu_hidden_services">Rejtett szolgáltatások</string>
+ <string name="save">Mentés</string>
+ <string name="local_port">Helyi Port</string>
+ <string name="onion_port">Onion Port</string>
+ <string name="name">Név</string>
+ <string name="done">Kész!</string>
+ <string name="invalid_port">Ãrvénytelen Port</string>
+ <string name="copy_address_to_clipboard">CÃm másolása vágólapra</string>
+ <string name="show_auth_cookie">AzonosÃtó sÃŒti megjelenÃtése</string>
+ <string name="backup_service">MentŠszolgáltatás</string>
+ <string name="delete_service">Szolgáltatás Törlése</string>
+ <string name="backup_saved_at_external_storage">KÌlsŠtárhelyre mentve</string>
+ <string name="backup_restored">Mentés visszaállÃtva</string>
+ <string name="filemanager_not_available">FájlkezelÅ nem elérhetÅ</string>
+ <string name="please_grant_permissions_for_external_storage">KérjÌk adjon jogosultságot a kÌlsŠtárhelyhez</string>
+ <string name="restore_backup">Mentés visszaállÃtása</string>
+ <string name="create_a_backup_first">KészÃtsen elÅbb egy mentést</string>
+ <string name="name_can_t_be_empty">A név nem lehet Ìres</string>
+ <string name="fields_can_t_be_empty">A mezÅk nem lehetnek ÃŒresek</string>
+ <string name="start_tor_again_for_finish_the_process">IndÃtsa el a Tor-t még egyszer a befejezéshez</string>
+ <string name="confirm_service_deletion">Szolgáltatás törlés jóváhagyása</string>
+ <string name="click_again_for_backup">Kattintson még egyszer a mentéshez</string>
+ <string name="service_type">Szolgáltatás tÃpus</string>
+ <string name="auth_cookie">AzonosÃtó sÃŒti</string>
+ <string name="copy_cookie_to_clipboard">SÌti másolása vágólapra</string>
+ <string name="auth_cookie_was_not_configured">AzonosÃtó sÃŒti nem konfigurált</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Kérlek indÃtsd újra az Orbot-ot a változások engedélyezéséhez</string>
+ <string name="client_cookies">Kliens sÃŒtik</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Ãrvénytelen .onion cÃm</string>
+ <string name="cookie_from_QR">Olvasás QR-ból</string>
+ <string name="backup_cookie">SÌti mentése</string>
+ <string name="delete_cookie">SÌti törlése</string>
+ <string name="confirm_cookie_deletion">SÌti törlés jóváhagyása</string>
+ <string name="hosted_services">Futtatott szolgáltatások</string>
+ <string name="share_as_qr">Megosztás QR-ként</string>
+ <string name="disable">Kikapcsol</string>
+ <string name="enable">Engedélyezés</string>
+ <string name="consider_disable_battery_optimizations">Vegye fontolóra az akkumulátor optimalizálás tiltását</string>
+ <string name="consider_enable_battery_optimizations">Vegye fontolóra az akkumulátor optimalizálás engedélyezését</string>
+ <string name="pref_isolate_dest">CélcÃm elszigetelése</string>
+ <string name="pref_isolate_dest_summary">Másik áramkör használata minden célcÃmhez</string>
+ <string name="no_transproxy_warning_short">FIGYELEM: A Transproxying már nem támogatott</string>
+ <string name="no_transproxy_warning">FIGYELEM: A transzparens proxyzásmár nem támogatott. Használja az Orbot App VPN-t helyette.</string>
+ <string name="pref_connection_padding">Kapcsolat kitöltés</string>
+ <string name="pref_connection_padding_summary">Mindig engedélyezi a kapcsolat kitöltést, hogy megvédjen a hálózati analÃzistÅl. Alapértelmezés: auto </string>
+ <string name="pref_reduced_connection_padding">Csökkentett kapcsolat kitöltés</string>
+ <string name="pref_reduced_connection_padding_summary">Hamarabb lezárja a relé kapcsolatokat, és kevesebb kitöltŠcsomagot kÌld a csökkentett adat és akkumulátor használat érdekében</string>
+ <string name="app_shortcuts">Tor-engedélyezett Alkalmazások</string>
+ <string name="testing_bridges">A hÃd Tor-hoz csatlakozásának tesztelése....</string>
+ <string name="testing_bridges_success">Sikeres. A hÃd konfiguráció megfelelÅ!</string>
+ <string name="testing_bridges_fail">SIKERTELEN: Próbáljon meg másik beállÃtást</string>
+ <string name="bridge_direct_connect">Csatlakozás közvetlenÌl a Tor-hoz (Legjobb)</string>
+ <string name="bridge_community">Csatlakozás közösségi szervereken keresztÌl</string>
+ <string name="bridge_cloud">Csatlakozás felhÅszervereken keresztÃŒl</string>
+ <string name="bridges_get_new">Ãj hidak kérése... (ha más nem segÃtett)</string>
+ <string name="trouble_connecting">Probléma a csatlakozással?</string>
+ <string name="full_device_vpn">Teljes KészÌlék VPN</string>
+ <string name="vpn_disabled">VPN Letiltva</string>
+</resources>
diff --git a/app-mini/src/main/res/values-hy-rAM/strings.xml b/app-mini/src/main/res/values-hy-rAM/strings.xml
new file mode 100644
index 00000000..808f972e
--- /dev/null
+++ b/app-mini/src/main/res/values-hy-rAM/strings.xml
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="menu_about">Õա՜ին</string>
+ <string name="button_about">Õա՜ին</string>
+ <string name="menu_exit">ÔµÕ¬Ö</string>
+ <string name="btn_cancel">Õ¥Õ²Õ¡ÖÕ¯Õ¥Õ¬</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">ÕÕÕ¡Õ¬</string>
+ <string name="save">ÕÕ¡Õ°Õ¥Õ¬</string>
+ <string name="name">Ô±Õ¶ÕžÖÕ¶</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ia/strings.xml b/app-mini/src/main/res/values-ia/strings.xml
new file mode 100644
index 00000000..c8208c36
--- /dev/null
+++ b/app-mini/src/main/res/values-ia/strings.xml
@@ -0,0 +1,21 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">Configurationes</string>
+ <string name="menu_about">Circa</string>
+ <string name="button_about">Circa</string>
+ <string name="menu_exit">Sortir</string>
+ <string name="btn_cancel">Cancellar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Error</string>
+ <string name="set_locale_title">Linguage</string>
+ <string name="save">Salveguardar</string>
+ <string name="name">Nomine</string>
+</resources>
diff --git a/app-mini/src/main/res/values-id/strings.xml b/app-mini/src/main/res/values-id/strings.xml
new file mode 100644
index 00000000..7dda908a
--- /dev/null
+++ b/app-mini/src/main/res/values-id/strings.xml
@@ -0,0 +1,143 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot adalah aplikasi proxy gratis yang membuat aplikasi-aplikasi lainnya dapat terkoneksi dengan internet secara aman. Orbot menggunakan Tor untuk mengenkripsi hubungan internet anda dan menyalurkannya melewati berbagai komputer di seluruh dunia. Tor adalah software gratis dan suatu network terbuka, yang membantu anda menghindari pengawasan network yang mengancam kebebasan pribadi dan privasi, aktivitas bisnis rahasia dan relasi, serta keamanan negara yang dikenal dengan analisa traffic.</string>
+ <string name="status_starting_up">Orbot sedang dimulai...</string>
+ <string name="status_activated">Tersambung ke Jaringan Tor</string>
+ <string name="status_disabled">Orbot telah dibatalkan</string>
+ <string name="status_shutting_down">TorService dimatikan</string>
+ <string name="tor_process_starting">Memulai klien Tor...</string>
+ <string name="tor_process_complete">selesai.</string>
+ <string name="menu_settings">Pengaturan</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Mulai</string>
+ <string name="menu_stop">Berhenti</string>
+ <string name="menu_about">Tentang</string>
+ <string name="main_layout_download">Unduh</string>
+ <string name="main_layout_upload">Unggah</string>
+ <string name="button_about">Tentang</string>
+ <string name="menu_exit">Keluar</string>
+ <string name="menu_scan">Pindai BridgeQR</string>
+ <string name="menu_share_bridge">Bagikan BridgeQR</string>
+ <string name="btn_okay">Oke</string>
+ <string name="btn_cancel">Batal</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Beberapa Rincian Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Umum</string>
+ <string name="pref_start_boot_title">Mulai Orbot saat Boot</string>
+ <string name="pref_start_boot_summary">Secara otomatis memulai Orbot dan menghubungkan dengan Tor ketika perangkat Android anda boot</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfigurasi Simpul</string>
+ <string name="pref_node_configuration_summary">Itu adalah pengaturan lanjutan yang dapat mengurangi anonimitas anda</string>
+ <string name="pref_entrance_node">Simpul Masuk</string>
+ <string name="pref_entrance_node_summary">Sidik jari, alias, negara dan alamat untuk loncatan pertama</string>
+ <string name="pref_entrance_node_dialog">Masukkan Simpul Masuk</string>
+ <string name="pref_allow_background_starts_title">Ijinkan Latar Belakang Berjalan</string>
+ <string name="pref_allow_background_starts_summary">Biarkan aplikasi apapun memberitahu Orbot untuk memulai Tor dan layanan yang terkait</string>
+ <string name="pref_proxy_title">Outbound Proxy Jaringan (Opsional)</string>
+ <string name="pref_proxy_type_title">Outbound Jenis Proxy</string>
+ <string name="pref_proxy_type_summary">Protokol yang digunakan untuk server proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Masukkan Jenis Proxy</string>
+ <string name="pref_proxy_host_title">Outbound Host Proxy</string>
+ <string name="pref_proxy_host_summary">Nama host Server Proxy</string>
+ <string name="pref_proxy_host_dialog">Masukkan Host Proxy</string>
+ <string name="pref_proxy_port_title">Outbound Port Proxy</string>
+ <string name="pref_proxy_port_summary">Port Server Proxy</string>
+ <string name="pref_proxy_port_dialog">Masukkan port Proxy</string>
+ <string name="pref_proxy_username_title">Outbound Nama Pengguna Proxy</string>
+ <string name="pref_proxy_username_summary">Nama Pengguna Proxy (Opsional)</string>
+ <string name="pref_proxy_username_dialog">Masukkan Nama Pengguna Proxy</string>
+ <string name="pref_proxy_password_title">Outbound Sandi Proxy</string>
+ <string name="pref_proxy_password_summary">Sandi Proxy (Opsional)</string>
+ <string name="pref_proxy_password_dialog">Masukkan Sandi Proxy</string>
+ <string name="couldn_t_start_tor_process_">Tidak dapat memulai proses Tor:</string>
+ <string name="error">Kesalahan</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Pengaturan ReachableAddresses anda menyebabkan kesalahan!</string>
+ <string name="your_relay_settings_caused_an_exception_">Pengaturan relay anda menyebabkan kesalahan!</string>
+ <string name="exit_nodes">Node Keluar</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">fingerprints, nama, negara dan alamat untuk hop terakhir</string>
+ <string name="enter_exit_nodes">Memasuki Node Keluar</string>
+ <string name="exclude_nodes">Node pengecualian</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Pengecualian fingerprints,nama, negara dan alamat</string>
+ <string name="enter_exclude_nodes">Memasuki Node Pengecualian</string>
+ <string name="strict_nodes">Node Terlarang</string>
+ <string name="use_only_these_specified_nodes">Pakai *hanya* spesifik node</string>
+ <string name="bridges">Bridges</string>
+ <string name="use_bridges">Pakai Bridges</string>
+ <string name="ip_address_and_port_of_bridges">Alamat IP dan port bridges</string>
+ <string name="enter_bridge_addresses">Memasuki Alamat Bridge</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Sedang me-Relay</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Nyalakan perangkat anda menjadi non-exit relay</string>
+ <string name="relay_port">Port Relay</string>
+ <string name="listening_port_for_your_tor_relay">Port mendengarkan untuk TOR relay anda</string>
+ <string name="enter_or_port">Memasuki OR port</string>
+ <string name="relay_nickname">Nama Relay</string>
+ <string name="the_nickname_for_your_tor_relay">sebuah nama untuk Tor Relay anda</string>
+ <string name="enter_a_custom_relay_nickname">Masukkan nama relay</string>
+ <string name="reachable_addresses">Addresses Terjangkau</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Jalankan sebagai client dibalik firewall dengan ketentuan ketat</string>
+ <string name="reachable_ports">Ports terjangkau</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Port terjangkau dibalik firewall ketat</string>
+ <string name="enter_ports">Memasuki ports</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">nyalakan debug log untuk output (harus menggunakan adb atau aLogCat untuk menampilkan)</string>
+ <string name="project_home">Beranda Projek:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android https://guardianproject.info/apps/orbot/</string>
+ <string name="third_party_software">Perangkat Lunak Pihak Ke-3:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">menemukan proses Tor yang ada...</string>
+ <string name="something_bad_happened">Sesuatu yang buruk terjadi. Periksa log</string>
+ <string name="unable_to_read_hidden_service_name">tidak dapat membaca nama layanan tersembunyi</string>
+ <string name="unable_to_start_tor">Tidak dapat memulai Tor:</string>
+ <string name="pref_use_persistent_notifications">Selalu pelihara icon dalam toolbar ketika Orbot terhubung</string>
+ <string name="pref_use_persistent_notifications_title">Pemberitahuan Selalu-Hidup</string>
+ <string name="pref_use_expanded_notifications">Tampilkan notifikasi melebar dengan negara dan IP keluar Tor</string>
+ <string name="pref_use_expanded_notifications_title">Notifikasi Melebar</string>
+ <string name="set_locale_title">Bahasa</string>
+ <string name="no_internet_connection_tor">Tidak ada koneksi internet; Tor sedang standby...</string>
+ <string name="pref_disable_network_title">Auto-Tidur Tidak Ada Jaringan</string>
+ <string name="pref_disable_network_summary">Menempatkan Tor untuk tidur ketika tidak ada internet yang tersedia</string>
+ <string name="newnym">Anda telah beralih ke identitas Tor baru!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Tidak ada jaringan terhubung. Menidurkan Tor...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Jaringan terhubung baik. Memanggil Tor...</string>
+ <string name="updating_settings_in_tor_service">memperbarui setting pada layanan Tor</string>
+ <string name="pref_socks_title">SOCKS Tor</string>
+ <string name="pref_socks_summary">Port tempat proxy SOCKS Tor aktif (standar: 9050 atau 0 untuk mematikan)</string>
+ <string name="pref_socks_dialog">Konfigurasi Port SOCKS</string>
+ <string name="pref_transport_title">Port TransProxy Tor</string>
+ <string name="pref_transport_summary">Port tempat Proxy Transparan Tor aktif (standar: 9040 atau 0 untuk mematikan)</string>
+ <string name="pref_transport_dialog">Konfigurasi Port TransProxy</string>
+ <string name="pref_dnsport_title">Port DNS Tor</string>
+ <string name="pref_dnsport_summary">Port tempat DNS Tor aktif (standar: 5400 atau 0 untuk mematikan)</string>
+ <string name="pref_dnsport_dialog">Konfigurasi Port DNS</string>
+ <string name="pref_torrc_title">Konfigurasi Torrc</string>
+ <string name="pref_torrc_summary">HANYA UNTUK AHLI: masukkan baris konfigurasi direct Torrc</string>
+ <string name="pref_torrc_dialog">Torrc Custom</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridge Telah Diperbarui</string>
+ <string name="restart_orbot_to_use_this_bridge_">Silakan start ulang Orbot untuk mengaktifkan perubahan</string>
+ <string name="menu_qr">Kode QR</string>
+ <string name="bridge_mode">Mode Bridge</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Laman</string>
+ <string name="activate">Aktivasi</string>
+ <string name="send_email">Kirim Email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Anda bisa mendapatkan alamat bridge melalui email, halaman web atau dengan memindai kode QR bridge tersebut. Pilih \'Email\' atau \'Laman\' di bawah untuk meminta alamat bridge. Setelah anda mendapatkannya, salin lalu tempel di pilihan \"Bridges\" pada setting Orbot lalu start ulang.</string>
+ <string name="save">Simpan</string>
+ <string name="name">Nama</string>
+ <string name="done">Selesai!</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Silakan start ulang Orbot untuk mengaktifkan perubahan</string>
+ <string name="disable">Non Aktifkan</string>
+ <string name="enable">Aktifkan</string>
+</resources>
diff --git a/app-mini/src/main/res/values-in-rID/poestrings.xml b/app-mini/src/main/res/values-in-rID/poestrings.xml
new file mode 100644
index 00000000..25f89793
--- /dev/null
+++ b/app-mini/src/main/res/values-in-rID/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Kadang Anda memerlukan sebuah bridge untuk dapat terhubung ke Tor. </string>
+ <string name="action_more">BERITAHU SAYA LEBIH BANYAK</string>
+
+ <string name="vpn_setup">Anda dapat membuat setiap app terhubung melalui Tor dengan memakai VPN terintegrasi dari kami. </string>
+ <string name="vpn_setup_sub">Ini tidak akan membuat Anda anonim, tapi akan membantu untuk dapat menembus firewall.</string>
+ <string name="action_vpn_choose">PILIH APPS</string>
+
+ <string name="hello">Halo</string>
+ <string name="welcome">Selamat datang ke Tor versi mobile.</string>
+
+ <string name="browser_the_internet">Jelajah Internet sesuai dengan keinginan Anda. </string>
+ <string name="no_tracking">Tidak terlacak. Tanpa sensor. </string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-in-rID/strings.xml b/app-mini/src/main/res/values-in-rID/strings.xml
new file mode 100644
index 00000000..02e0ecd9
--- /dev/null
+++ b/app-mini/src/main/res/values-in-rID/strings.xml
@@ -0,0 +1,138 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot adalah aplikasi proxy gratis yang membuat aplikasi-aplikasi lainnya dapat terkoneksi dengan internet secara aman. Orbot menggunakan Tor untuk mengenkripsi hubungan internet Anda dan menyalurkannya melewati berbagai komputer di seluruh dunia. Tor adalah software gratis dan layanan terbuka, yang membantu Anda menghindari pengawasan jaringan yang mengancam kebebasan pribadi dan privasi, aktivitas bisnis rahasia dan relasi, serta keamanan negara yang dikenal dengan analisis traffic.</string>
+ <string name="status_starting_up">Orbot sedang memulai...</string>
+ <string name="status_activated">Tersambung ke jaringan Tor</string>
+ <string name="status_disabled">Orbot telah dibatalkan</string>
+ <string name="status_shutting_down">TorService sedang dimatikan</string>
+ <string name="tor_process_starting">Memulai klien Tor...</string>
+ <string name="tor_process_complete">selesai.</string>
+ <string name="menu_settings">Pengaturan</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Mulai</string>
+ <string name="menu_stop">Berhenti</string>
+ <string name="menu_about">Tentang</string>
+ <string name="main_layout_download">Unduh</string>
+ <string name="main_layout_upload">Unggah</string>
+ <string name="button_about">Tentang</string>
+ <string name="menu_exit">Keluar</string>
+ <string name="menu_scan">Pindai BridgeQR</string>
+ <string name="menu_share_bridge">Bagikan BridgeQR</string>
+ <string name="btn_okay">Oke</string>
+ <string name="btn_cancel">Batal</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Beberapa Rincian Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Umum</string>
+ <string name="pref_start_boot_title">Mulai Orbot saat Boot</string>
+ <string name="pref_start_boot_summary">Secara otomatis memulai Orbot dan menghubungkan dengan Tor ketika perangkat Android anda boot</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfigurasi Simpul</string>
+ <string name="pref_node_configuration_summary">Itu adalah pengaturan lanjutan yang dapat mengurangi anonimitas anda</string>
+ <string name="pref_entrance_node">Simpul Masuk</string>
+ <string name="pref_entrance_node_summary">Sidik jari, alias, negara dan alamat untuk loncatan pertama</string>
+ <string name="pref_entrance_node_dialog">Masukkan Simpul Masuk</string>
+ <string name="pref_allow_background_starts_title">Izinkan Memulai di Latar Belakang</string>
+ <string name="pref_allow_background_starts_summary">Biarkan aplikasi lain memberitahu Orbot untuk memulai Tor dan layanan terkait</string>
+ <string name="pref_proxy_title">Outbound Proxy Jaringan (Opsional)</string>
+ <string name="pref_proxy_type_title">Outbound Jenis Proxy</string>
+ <string name="pref_proxy_type_summary">Protokol yang digunakan untuk server proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Masukkan Jenis Proxy</string>
+ <string name="pref_proxy_host_title">Outbound Host Proxy</string>
+ <string name="pref_proxy_host_summary">Nama host Server Proxy</string>
+ <string name="pref_proxy_host_dialog">Masukkan Host Proxy</string>
+ <string name="pref_proxy_port_title">Outbound Port Proxy</string>
+ <string name="pref_proxy_port_summary">Port Server Proxy</string>
+ <string name="pref_proxy_port_dialog">Masukkan port Proxy</string>
+ <string name="pref_proxy_username_title">Outbound Nama Pengguna Proxy</string>
+ <string name="pref_proxy_username_summary">Nama Pengguna Proxy (Opsional)</string>
+ <string name="pref_proxy_username_dialog">Masukkan Nama Pengguna Proxy</string>
+ <string name="pref_proxy_password_title">Outbound Sandi Proxy</string>
+ <string name="pref_proxy_password_summary">Sandi Proxy (Opsional)</string>
+ <string name="pref_proxy_password_dialog">Masukkan Sandi Proxy</string>
+ <string name="couldn_t_start_tor_process_">Tidak dapat memulai proses Tor:</string>
+ <string name="error">Kesalahan</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Pengaturan ReachableAddresses anda menyebabkan kesalahan!</string>
+ <string name="your_relay_settings_caused_an_exception_">Pengaturan relay anda menyebabkan kesalahan!</string>
+ <string name="exit_nodes">Node Keluar</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">fingerprints, nama, negara dan alamat untuk hop terakhir</string>
+ <string name="enter_exit_nodes">Memasuki Node Keluar</string>
+ <string name="exclude_nodes">Node pengecualian</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Pengecualian fingerprints,nama, negara dan alamat</string>
+ <string name="enter_exclude_nodes">Memasuki Node Pengecualian</string>
+ <string name="strict_nodes">Node Terlarang</string>
+ <string name="use_only_these_specified_nodes">Pakai *hanya* spesifik node</string>
+ <string name="bridges">Bridges</string>
+ <string name="use_bridges">Pakai Bridges</string>
+ <string name="ip_address_and_port_of_bridges">Alamat IP dan port bridges</string>
+ <string name="enter_bridge_addresses">Memasuki Alamat Bridge</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Sedang me-Relay</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Nyalakan perangkat anda menjadi non-exit relay</string>
+ <string name="relay_port">Port Relay</string>
+ <string name="listening_port_for_your_tor_relay">Port mendengarkan untuk TOR relay anda</string>
+ <string name="enter_or_port">Memasuki OR port</string>
+ <string name="relay_nickname">Nama Relay</string>
+ <string name="the_nickname_for_your_tor_relay">sebuah nama untuk Tor Relay anda</string>
+ <string name="enter_a_custom_relay_nickname">Masukkan nama relay</string>
+ <string name="reachable_addresses">Addresses Terjangkau</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Jalankan sebagai client dibalik firewall dengan ketentuan ketat</string>
+ <string name="reachable_ports">Ports terjangkau</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Port terjangkau dibalik firewall ketat</string>
+ <string name="enter_ports">Memasuki ports</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">nyalakan debug log untuk output (harus menggunakan adb atau aLogCat untuk menampilkan)</string>
+ <string name="project_home">Beranda Projek:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android https://guardianproject.info/apps/orbot/</string>
+ <string name="third_party_software">Perangkat Lunak Pihak Ke-3:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">menemukan proses Tor yang ada...</string>
+ <string name="something_bad_happened">Sesuatu yang buruk terjadi. Periksa log</string>
+ <string name="unable_to_read_hidden_service_name">tidak dapat membaca nama layanan tersembunyi</string>
+ <string name="unable_to_start_tor">Tidak dapat memulai Tor:</string>
+ <string name="pref_use_persistent_notifications">Selalu pelihara icon dalam toolbar ketika Orbot terhubung</string>
+ <string name="pref_use_persistent_notifications_title">Pemberitahuan Selalu-Hidup</string>
+ <string name="pref_use_expanded_notifications">Tampilkan notifikasi melebar dengan negara dan IP keluar Tor</string>
+ <string name="pref_use_expanded_notifications_title">Notifikasi Melebar</string>
+ <string name="set_locale_title">Bahasa</string>
+ <string name="no_internet_connection_tor">Tidak ada koneksi internet; Tor sedang standby...</string>
+ <string name="pref_disable_network_title">Auto-Tidur Tidak Ada Jaringan</string>
+ <string name="pref_disable_network_summary">Menempatkan Tor untuk tidur ketika tidak ada internet yang tersedia</string>
+ <string name="newnym">Anda telah beralih ke identitas Tor baru!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Tidak ada jaringan terhubung. Menidurkan Tor...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Jaringan terhubung baik. Memanggil Tor...</string>
+ <string name="updating_settings_in_tor_service">memperbarui setting pada layanan Tor</string>
+ <string name="pref_socks_title">SOCKS Tor</string>
+ <string name="pref_socks_summary">Port tempat proxy SOCKS Tor aktif (standar: 9050 atau 0 untuk mematikan)</string>
+ <string name="pref_socks_dialog">Konfigurasi Port SOCKS</string>
+ <string name="pref_transport_title">Port TransProxy Tor</string>
+ <string name="pref_transport_summary">Port tempat Proxy Transparan Tor aktif (standar: 9040 atau 0 untuk mematikan)</string>
+ <string name="pref_transport_dialog">Konfigurasi Port TransProxy</string>
+ <string name="pref_dnsport_title">Port DNS Tor</string>
+ <string name="pref_dnsport_summary">Port tempat DNS Tor aktif (standar: 5400 atau 0 untuk mematikan)</string>
+ <string name="pref_dnsport_dialog">Konfigurasi Port DNS</string>
+ <string name="pref_torrc_title">Konfigurasi Torrc</string>
+ <string name="pref_torrc_summary">HANYA UNTUK AHLI: masukkan baris konfigurasi direct Torrc</string>
+ <string name="pref_torrc_dialog">Torrc Custom</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridge Telah Diperbarui</string>
+ <string name="restart_orbot_to_use_this_bridge_">Silakan start ulang Orbot untuk mengaktifkan perubahan</string>
+ <string name="menu_qr">Kode QR</string>
+ <string name="bridge_mode">Mode Bridge</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Laman</string>
+ <string name="activate">Aktivasi</string>
+ <string name="send_email">Kirim Email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Anda bisa mendapatkan alamat bridge melalui email, halaman web atau dengan memindai kode QR bridge tersebut. Pilih \'Email\' atau \'Laman\' di bawah untuk meminta alamat bridge. Setelah anda mendapatkannya, salin lalu tempel di pilihan \"Bridges\" pada setting Orbot lalu start ulang.</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Silakan start ulang Orbot untuk mengaktifkan perubahan</string>
+</resources>
diff --git a/app-mini/src/main/res/values-in/strings.xml b/app-mini/src/main/res/values-in/strings.xml
new file mode 100644
index 00000000..2026ca19
--- /dev/null
+++ b/app-mini/src/main/res/values-in/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Orbot sedang dimulaiâŠ</string>
+ <string name="status_activated">Tersambung ke Jaringan Tor</string>
+ <string name="status_disabled">Orbot telah dibatalkan</string>
+ <string name="status_shutting_down">Orbot sedang dimatikan</string>
+ <string name="menu_settings">Pengaturan</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_about">Mengenai</string>
+ <string name="button_about">Mengenai</string>
+ <string name="menu_exit">Keluar</string>
+ <string name="btn_cancel">Batal</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Umum</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Kesalahan</string>
+</resources>
diff --git a/app-mini/src/main/res/values-is/poestrings.xml b/app-mini/src/main/res/values-is/poestrings.xml
new file mode 100644
index 00000000..ee298b25
--- /dev/null
+++ b/app-mini/src/main/res/values-is/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Stundum eru brÜr nauðsynlegar til að tengjast Tor.</string>
+ <string name="action_more">SEGIÃ MÃR MEIRA</string>
+
+ <string name="vpn_setup">Ãú getur stillt hvaða forrit sem er á að fara à gegnum Tor með ßvà að nota innbyggt VPN.</string>
+ <string name="vpn_setup_sub">Ãetta mun ekki gera ßig nafnlausan, en mun hjálpa til við að komast à gegnum eldveggi.</string>
+ <string name="action_vpn_choose">VELDU FORRIT</string>
+
+ <string name="hello">Halló</string>
+ <string name="welcome">Velkomin à Tor-vafrann á snjalltÊki.</string>
+
+ <string name="browser_the_internet">Flakkaðu um internetið eins og ßér finnst á ßú Êttir að gera.</string>
+ <string name="no_tracking">Engar njósnir. Engin ritskoðun.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-is/strings.xml b/app-mini/src/main/res/values-is/strings.xml
new file mode 100644
index 00000000..abc9b055
--- /dev/null
+++ b/app-mini/src/main/res/values-is/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot er frjálst og ókeypis millißjónsforrit (proxy) sem gerir öðrum forritum kleift að nota veraldarvefinn á öruggari hátt. Orbot notar Tor til að dulkóða umferð ßÃna á netinu og felur hana svo með að hoppa à gegnum fjölda tölva um allan heim. Tor er frjáls hugbúnaður og opið net sem aðstoðar ßig við að verjast eftirliti á netinu sem vinnur gegn frelsi einkalÃfsins og friðhelgi; vinnur gegn viðkvÊmum viðskiptamálum og samböndum og ßeirri tegund rÃkisöryggis sem ßekkt er sem umferðargreining.</string>
+ <string name="status_starting_up">Orbot er að rÊsa...</string>
+ <string name="status_activated">Tengdur við Tor netið</string>
+ <string name="status_disabled">Orbot er óvirkt</string>
+ <string name="status_shutting_down">TorService er að slökkva á sér</string>
+ <string name="tor_process_starting">Kveiki á Tor notandaforriti...</string>
+ <string name="tor_process_complete">lokið.</string>
+ <string name="menu_settings">Stillingar</string>
+ <string name="menu_log">Atvikaskráning</string>
+ <string name="menu_start">RÊsa</string>
+ <string name="menu_stop">Stöðva</string>
+ <string name="menu_about">Um hugbúnaðinn</string>
+ <string name="main_layout_download">Sótt gögn</string>
+ <string name="main_layout_upload">Send gögn</string>
+ <string name="button_about">Um hugbúnaðinn</string>
+ <string name="menu_exit">HÊtta</string>
+ <string name="menu_scan">Skanna BridgeQR</string>
+ <string name="menu_share_bridge">Deila BridgeQR</string>
+ <string name="btn_okay">Ã lagi</string>
+ <string name="btn_cancel">HÊtta við</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Fáein nánari atriði um Orbot</string>
+ <string name="wizard_details_msg">Orbot er opinn og frjáls hugbúnaður sem inniheldur Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent og Polipo. Ãað sér um að útbúa staðvÊran HTTP-millißjón (8118) og SOCKS-millißjón (9050) inn á Tor-netið. Orbot getur einnig, á tÊkjum með rótaraðgangi, sent alla internetumferð à gegnum Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Almennt</string>
+ <string name="pref_start_boot_title">Virkja Orbot à rÊsingu</string>
+ <string name="pref_start_boot_summary">Sjálfvirkt rÊsa Orbot og tengja Tor ßegar Android-tÊkið ßitt rÊsist</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Stillingar aðgangspunkts</string>
+ <string name="pref_node_configuration_summary">Ãetta eru Ãtarlegri stillingar sem geta minnkað nafnleysið ßitt</string>
+ <string name="pref_entrance_node">Inngangspunktar</string>
+ <string name="pref_entrance_node_summary">Fingraför, gÊlunöfn, lönd og heimilisföng fyrir fyrsta hoppið</string>
+ <string name="pref_entrance_node_dialog">Settu inn inngangspunkta</string>
+ <string name="pref_allow_background_starts_title">Leyfa rÊsingu à bakgrunni</string>
+ <string name="pref_allow_background_starts_summary">Láta hvaða forrit sem er segja Orbot að rÊsa Tor og skyldar ßjónustur</string>
+ <string name="pref_proxy_title">Millißjónn á útleið (valfrjálst)</string>
+ <string name="pref_proxy_type_title">Gerð millißjóns á útleið</string>
+ <string name="pref_proxy_type_summary">Samskiptamáti til að nota fyrir millißjón: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Settu inn gerð millißjóns</string>
+ <string name="pref_proxy_host_title">Vélarheiti millißjóns á útleið</string>
+ <string name="pref_proxy_host_summary">Vélarheiti millißjóns</string>
+ <string name="pref_proxy_host_dialog">Settu inn vélarheiti millißjóns</string>
+ <string name="pref_proxy_port_title">Gátt millißjóns á útleið</string>
+ <string name="pref_proxy_port_summary">Gátt millißjóns</string>
+ <string name="pref_proxy_port_dialog">Settu inn gátt á millißjóni</string>
+ <string name="pref_proxy_username_title">Notandanafn fyrir millißjón á útleið</string>
+ <string name="pref_proxy_username_summary">Notandanafn á millißjóni (valfrjálst)</string>
+ <string name="pref_proxy_username_dialog">Settu inn notandanafn á millißjóni</string>
+ <string name="pref_proxy_password_title">Lykilorð fyrir millißjón á útleið</string>
+ <string name="pref_proxy_password_summary">Lykilorð á millißjóni (valfrjálst)</string>
+ <string name="pref_proxy_password_dialog">Settu inn lykilorð á millißjóni</string>
+ <string name="couldn_t_start_tor_process_">Gat ekki kveikt á Tor-ferli:</string>
+ <string name="error">Villa</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Stillingar ßÃnar á ReachableAddresses framkölluðu kerfisfrávik!</string>
+ <string name="your_relay_settings_caused_an_exception_">Stillingar ßÃnar á endurvarpi (relay) framkölluðu kerfisfrávik!</string>
+ <string name="exit_nodes">Ãtgangspunktar</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Fingraför, gÊlunöfn, lönd og heimilisföng fyrir sÃðasta hoppið</string>
+ <string name="enter_exit_nodes">Settu inn útgangspunkta</string>
+ <string name="exclude_nodes">Ãtiloka punkta</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Fingraför, gÊlunöfn, lönd og heimilisföng til að útiloka</string>
+ <string name="enter_exclude_nodes">Settu inn punkta sem á að útiloka</string>
+ <string name="strict_nodes">ÃfrávÃkjanlegir punktar</string>
+ <string name="use_only_these_specified_nodes">Nota *aðeins* ßessa tilteknu punkta</string>
+ <string name="bridges">BrÜr</string>
+ <string name="use_bridges">Nota brÜr</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Virkjaðu varaleiðir inn á Tor-netið</string>
+ <string name="ip_address_and_port_of_bridges">IP-vistfang og brúargáttir</string>
+ <string name="enter_bridge_addresses">Settu inn vistföng fyrir brÜr</string>
+ <string name="relays">Endurvarpar</string>
+ <string name="relaying">Endurvörpun</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Leyfa tÊkinu ßÃnu að vera útgangslaus endurvarpi</string>
+ <string name="relay_port">Endurvörpunargátt</string>
+ <string name="listening_port_for_your_tor_relay">Hlustunargátt fyrir Tor-endurvarpann ßinn</string>
+ <string name="enter_or_port">Settu inn OR-gátt</string>
+ <string name="relay_nickname">GÊlunafn endurvörpunar</string>
+ <string name="the_nickname_for_your_tor_relay">Viðurnefni fyrir Tor-endurvarpið ßitt</string>
+ <string name="enter_a_custom_relay_nickname">Settu inn sérsniðið viðurnefni á endurvarp</string>
+ <string name="reachable_addresses">Vistföng sem nÊst Ã</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Keyra sem biðlari á bakvið eldvegg með hamlandi skilyrðum</string>
+ <string name="reachable_ports">Gáttir sem nÊst Ã</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Gáttir sem nÊst à á bakvið hamlandi eldvegg</string>
+ <string name="enter_ports">Settu inn gáttir</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">virkja gerð villuskráningar á úttaki (verður að nota adb eða aLogCat til að skoða)</string>
+ <string name="project_home">Heimili verkefnisins:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Hugbúnaður frá 3ja aðila:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Forrit vill opna földu vefgáttina %1$s inn á Tor-netið. Ãetta er öruggt ef ßú treystir forritinu.</string>
+ <string name="found_existing_tor_process">fann annað Tor-ferli...</string>
+ <string name="something_bad_happened">Eitthvað slÊmt gerðist. Athugaðu atvikakráninguna</string>
+ <string name="unable_to_read_hidden_service_name">get ekki lesið heiti földu ßjónustunnar</string>
+ <string name="unable_to_start_tor">Get ekki rÊst Tor:</string>
+ <string name="pref_use_persistent_notifications">Alltaf hafa táknmynd à verkfÊrastiku ßegar Orbot er tengt</string>
+ <string name="pref_use_persistent_notifications_title">Alltaf-á tilkynningar</string>
+ <string name="pref_use_expanded_notifications">Birta útflettar tilkynningar varðandi Tor-útgangsland og IP-vistfang</string>
+ <string name="pref_use_expanded_notifications_title">Ãtflettar tilkynningar</string>
+ <string name="set_locale_title">Tungumál</string>
+ <string name="no_internet_connection_tor">Engin tenging við netið; Tor er à biðstöðu...</string>
+ <string name="pref_disable_network_title">Engin sjálfvirk svÊfing netkerfis</string>
+ <string name="pref_disable_network_summary">SvÊfa Tor ßegar engin internettenging er til staðar</string>
+ <string name="newnym">Ãú ert komin með nÜtt Tor-auðkenni!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Engin tenging við netið. Tor verður svÊft...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Tenging við netið er góð. Tor verður vakið upp...</string>
+ <string name="updating_settings_in_tor_service">uppfÊri stillingar à Tor ßjónustu</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Gátt sem Tor bÜður SOCKS millißjón á (sjálfgefið: 9050 eða 0 til að gera óvirkt)</string>
+ <string name="pref_socks_dialog">Stilling á SOCKS-gátt</string>
+ <string name="pref_transport_title">Gátt fyrir Tor TransProxy</string>
+ <string name="pref_transport_summary">Gátt sem Tor bÜður gegnsÊja millißjónsbeiningu á (sjálfgefið: 9040 eða 0 til að gera óvirkt)</string>
+ <string name="pref_transport_dialog">Uppsetning gáttar fyrir gegnsÊja millißjónabeiningu (TransProxy)</string>
+ <string name="pref_dnsport_title">Tor DNS-gátt</string>
+ <string name="pref_dnsport_summary">Gátt sem Tor bÜður DNS á (sjálfgefið: 5400 eða 0 til að gera óvirkt)</string>
+ <string name="pref_dnsport_dialog">Stilling á DNS-gátt</string>
+ <string name="pref_torrc_title">Sérsniðnar stillingar Torrc</string>
+ <string name="pref_torrc_summary">AÃEINS SÃRFRÃÃINGAR: sláðu inn stillingarlÃnur beint à torrc</string>
+ <string name="pref_torrc_dialog">Sérsniðið Torrc</string>
+ <string name="kbps">kb/sek</string>
+ <string name="mbps">mb/sek</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">BrÜr uppfÊrðar</string>
+ <string name="restart_orbot_to_use_this_bridge_">EndurrÊstu Orbot til að breytingarnar taki gildi</string>
+ <string name="menu_qr">QR-kóðar</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Ef farsÃmanetið ßitt er virkt à að loka á Tor, geturðu notað \'Brúarßjón\' sem varaleið inn. VELDU einn af valkostunum til að setja upp og prófa...</string>
+ <string name="bridge_mode">Brúar-hamur</string>
+ <string name="get_bridges_email">Tölvupóstur</string>
+ <string name="get_bridges_web">Vefur</string>
+ <string name="activate">Virkja</string>
+ <string name="apps_mode">VPN-hamur</string>
+ <string name="send_email">Senda tölvupóst</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Ãú getur fengið vistfang brúar sent à gegnum tölvupóst, vefinn eða með að skanna QR-kóða fyrir brú. Veldu \'Tölvupóstur\' eða \'Vefur\' fyrir neðan til að óska eftir vistfangi brúar.\n\nÃegar ßú kominn með vistfang, afritaðu & lÃmdu ßað inn à stillingar fyrir \'BrÜr\' à kjörstillingum Orbot og endurrÊstu sÃðan.</string>
+ <string name="vpn_default_world">VÃðvÊrt (sjálfvirkt)</string>
+ <string name="hidden_services">Faldar ßjónustur</string>
+ <string name="title_activity_hidden_services">Faldar ßjónustur</string>
+ <string name="menu_hidden_services">Faldar ßjónustur</string>
+ <string name="save">Vista</string>
+ <string name="local_port">StaðvÊr gátt</string>
+ <string name="onion_port">Onion-gátt</string>
+ <string name="name">Heiti</string>
+ <string name="done">Lokið!</string>
+ <string name="invalid_port">Ãgild gátt</string>
+ <string name="copy_address_to_clipboard">Afrita vistfang yfir á klippispjald</string>
+ <string name="show_auth_cookie">Birta auðkenningar-vefköku</string>
+ <string name="backup_service">Ãryggisafritunarßjónusta</string>
+ <string name="delete_service">Eyða ßjónustu</string>
+ <string name="backup_saved_at_external_storage">Ãryggisafrit var vistað à ytri gagnageymslu</string>
+ <string name="backup_restored">Ãryggisafrit var endurheimt</string>
+ <string name="filemanager_not_available">Skráastjóri ekki tiltÊkur</string>
+ <string name="please_grant_permissions_for_external_storage">Gefðu heimild til að nota ytri gagnageymslu</string>
+ <string name="restore_backup">Endurheimta úr öryggisafriti</string>
+ <string name="create_a_backup_first">Gerðu fyrst öryggisafrit</string>
+ <string name="name_can_t_be_empty">Nafnið má ekki vera autt</string>
+ <string name="fields_can_t_be_empty">Gagnasvið mega ekki vera auð</string>
+ <string name="start_tor_again_for_finish_the_process">RÊstu Tor aftur til að ljúka ferlinu</string>
+ <string name="confirm_service_deletion">Staðfestu eyðingu á ßjónustu</string>
+ <string name="click_again_for_backup">Smelltu aftur fyrir öryggisafrit</string>
+ <string name="service_type">Tegund ßjónustu</string>
+ <string name="auth_cookie">Auðkenningar-vefkaka</string>
+ <string name="copy_cookie_to_clipboard">Afrita vefköku á klippispjald</string>
+ <string name="auth_cookie_was_not_configured">Auðkenningar-vefkaka var ekki stillt</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">EndurrÊstu Orbot til að breytingarnar taki gildi</string>
+ <string name="client_cookies">Vefkökur forritsins</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Ãgilt .onion vistfang</string>
+ <string name="cookie_from_QR">Lesa úr QR-kóða</string>
+ <string name="backup_cookie">Ãryggisafrit af vefköku</string>
+ <string name="delete_cookie">Eyða vefköku</string>
+ <string name="confirm_cookie_deletion">Staðfestu eyðingu vefköku</string>
+ <string name="hosted_services">HÜstar ßjónustur</string>
+ <string name="share_as_qr">Deila sem QR-kóða</string>
+ <string name="disable">Gera óvirkt</string>
+ <string name="enable">Virkja</string>
+ <string name="consider_disable_battery_optimizations">Ãhugaðu að gera bestun fyrir rafhlöðu óvirka</string>
+ <string name="consider_enable_battery_optimizations">Ãhugaðu að virkja bestun fyrir rafhlöðu</string>
+ <string name="pref_isolate_dest">Einangra markvistfang</string>
+ <string name="pref_isolate_dest_summary">Nota mismunandi rás fyrir hvert markvistfang</string>
+ <string name="no_transproxy_warning_short">AÃVÃRUN: GegnsÊ millißjónabeining er ekki lengur studd.</string>
+ <string name="no_transproxy_warning">AÃVÃRUN: GegnsÊ millißjónabeining er ekki studd. Notaðu à staðinn VPN fyrir forrit à Orbot.</string>
+ <string name="pref_connection_padding">Bólstrun tengingar (padding)</string>
+ <string name="pref_connection_padding_summary">Virkjar alltaf bólstrun tengingar (padding) til varnar gegn ákveðnum gerðum umferðargreiningar. Sjálfgefið: sjálfvirkt</string>
+ <string name="pref_reduced_connection_padding">Minnkuð bólstrun tengingar (padding)</string>
+ <string name="pref_reduced_connection_padding_summary">Lokar tengingum við endurvarpa fyrr og sendir fÊrri pakka til að bólstra tengingu (padding) svo gagnamagn og rafhlöðunotkun sé sem minnst</string>
+ <string name="app_shortcuts">Tor-virkjuð forrit</string>
+ <string name="testing_bridges">Prófa brúartengingu við Tor....</string>
+ <string name="testing_bridges_success">Tókst. Uppsetning brúar virkar!</string>
+ <string name="testing_bridges_fail">MISTÃKST. Reyndu annan valkost</string>
+ <string name="bridge_direct_connect">Tengjast beint við Tor (best)</string>
+ <string name="bridge_community">Tengjast à gegnum ßjóna meðlima</string>
+ <string name="bridge_cloud">Tengjast à gegnum ßjóna à tölvuskÜjum</string>
+ <string name="bridges_get_new">Biðja um nÜjar brÜr... (ef allt annað bregst)</string>
+ <string name="trouble_connecting">Vandamál við tengingu?</string>
+ <string name="full_device_vpn">Fullt VPN á tÊkinu</string>
+ <string name="vpn_disabled">VPN óvirkt</string>
+</resources>
diff --git a/app-mini/src/main/res/values-it/poestrings.xml b/app-mini/src/main/res/values-it/poestrings.xml
new file mode 100644
index 00000000..594716c9
--- /dev/null
+++ b/app-mini/src/main/res/values-it/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Talvolta Ú necessario un bridge per usare Tor.</string>
+ <string name="action_more">DIMMI DI PIÃ</string>
+
+ <string name="vpn_setup">Puoi permettere a qualsiasi app di usare Tor con la nostra VPN integrata.</string>
+ <string name="vpn_setup_sub">Ciò non ti renderà anonimo, ma ti aiuterà a superare i firewall.</string>
+ <string name="action_vpn_choose">SCEGLI LE APP</string>
+
+ <string name="hello">Ciao</string>
+ <string name="welcome">Benvenuto su Tor per smartphone</string>
+
+ <string name="browser_the_internet">Naviga in internet come ti aspetti che debba essere.</string>
+ <string name="no_tracking">Nessun tracciamento. Nessuna censura.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-it/strings.xml b/app-mini/src/main/res/values-it/strings.xml
new file mode 100644
index 00000000..ac115146
--- /dev/null
+++ b/app-mini/src/main/res/values-it/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot Ú un\'applicazione proxy che permette alle altre applicazioni di accedere a internet in maniera più sicura. Orbot usa Tor per cifrare il traffico internet e lo nasconde poi facendolo rimbalzare attraverso una serie di computer attorno al mondo. Tor Ú un software libero e una rete aperta che aiuta a difendersi da una forma di sorveglianza della rete conosciuta come analisi del traffico. Quest\'ultima minaccia libertà e privacy personale, attività commerciali riservate, rapporti interpersonali, e persino la sicurezza di stato.</string>
+ <string name="status_starting_up">Orbot Ú in esecuzione...</string>
+ <string name="status_activated">Connesso alla rete Tor</string>
+ <string name="status_disabled">Orbot Ú disattivato</string>
+ <string name="status_shutting_down">TorService si sta spegnendo</string>
+ <string name="tor_process_starting">Avvio client Tor...</string>
+ <string name="tor_process_complete">completa.</string>
+ <string name="menu_settings">Impostazioni</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Avvia</string>
+ <string name="menu_stop">Ferma</string>
+ <string name="menu_about">Info</string>
+ <string name="main_layout_download">Download</string>
+ <string name="main_layout_upload">Upload</string>
+ <string name="button_about">Info</string>
+ <string name="menu_exit">Esci</string>
+ <string name="menu_scan">Scansiona BridgeQR</string>
+ <string name="menu_share_bridge">Condividi BridgeQR</string>
+ <string name="btn_okay">Ok</string>
+ <string name="btn_cancel">Annulla</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Alcuni dettagli su Orbot</string>
+ <string name="wizard_details_msg">Orbot é un\'applicazione open source che contiene Tor, Obfs4proxy, BadVPN, Tun2Socks, LibEvent e Polipo. Esso fornisce un proxy HTTP locale (8118) e un proxy SOCKS (9050) per la rete Tor. Orbot permette anche, nei dispositivi rootati, di inviare tutto il traffico tramite Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Generale</string>
+ <string name="pref_start_boot_title">Avvia Orbot al boot</string>
+ <string name="pref_start_boot_summary">Avvia automaticamente Orbot e connetti Tor quando il dispositivo Android viene avviato</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configurazione nodo</string>
+ <string name="pref_node_configuration_summary">Questi sono parametri di configurazione avanzati che possono ridurre il vostro anonimato</string>
+ <string name="pref_entrance_node">Nodi di entrata</string>
+ <string name="pref_entrance_node_summary">Identificativi, nicknames, paesi ed indirizzi del primo hop</string>
+ <string name="pref_entrance_node_dialog">Inserisci nodi di entrata</string>
+ <string name="pref_allow_background_starts_title">Permetti Avvii in Background</string>
+ <string name="pref_allow_background_starts_summary">Permetti a qualsiasi app di comunicare ad Orbot di avviare Tor e servizi relativi</string>
+ <string name="pref_proxy_title">Proxy di Rete in Uscita (Facoltativo)</string>
+ <string name="pref_proxy_type_title">Tipo proxy</string>
+ <string name="pref_proxy_type_summary">Protocolli da utilizzare per i server proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Inserisci tipo proxy</string>
+ <string name="pref_proxy_host_title">Host proxy</string>
+ <string name="pref_proxy_host_summary">Hostname server proxy</string>
+ <string name="pref_proxy_host_dialog">Inserire l\'host del proxy</string>
+ <string name="pref_proxy_port_title">Porta proxy</string>
+ <string name="pref_proxy_port_summary">Porta del server proxy</string>
+ <string name="pref_proxy_port_dialog">Inserire la porta del proxy</string>
+ <string name="pref_proxy_username_title">Nome Utente del Proxy in Uscita</string>
+ <string name="pref_proxy_username_summary">Nome Utente del Proxy (Facoltativo)</string>
+ <string name="pref_proxy_username_dialog">Inserisci Nome Utente del Proxy</string>
+ <string name="pref_proxy_password_title">Password del Proxy in Uscita</string>
+ <string name="pref_proxy_password_summary">Password del Proxy (Facoltativo)</string>
+ <string name="pref_proxy_password_dialog">Inserisci Password Proxy</string>
+ <string name="couldn_t_start_tor_process_">Impossibile avviare il processo Tor:</string>
+ <string name="error">Errore</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">La tua configurazione dell\'indirizzo raggiungibile ha causato un\'eccezione!</string>
+ <string name="your_relay_settings_caused_an_exception_">La configurazione del tuo relay ha causato un\'eccezione!</string>
+ <string name="exit_nodes">Nodi di uscita</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Identificatori, nicknames, paesi ed indirizzi per l\'ultimo hop</string>
+ <string name="enter_exit_nodes">Inserire i nodi d\'uscita</string>
+ <string name="exclude_nodes">Escludere i nodi</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Identificatori, nicknames, paesi ed indirizzi da escludere</string>
+ <string name="enter_exclude_nodes">Inserire i nodi da escludere</string>
+ <string name="strict_nodes">Nodi specifici</string>
+ <string name="use_only_these_specified_nodes">Utilizza *solo* i nodi specificati</string>
+ <string name="bridges">Bridge</string>
+ <string name="use_bridges">Utilizza i bridge</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Attiva entrate alternate nella rete Tor</string>
+ <string name="ip_address_and_port_of_bridges">Indirizzo IP e porta dei bridge</string>
+ <string name="enter_bridge_addresses">Inserire gli indirizzi dei bridge</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Relaying</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Abilita il tuo dispositivo per essere un relay non di uscita</string>
+ <string name="relay_port">Porta del relay</string>
+ <string name="listening_port_for_your_tor_relay">Porta in ascolto per il proprio Tor relay</string>
+ <string name="enter_or_port">Inserire la porta OR</string>
+ <string name="relay_nickname">Nickname del relay</string>
+ <string name="the_nickname_for_your_tor_relay">Il nickname per il proprio relay Tor</string>
+ <string name="enter_a_custom_relay_nickname">Inserire un nickname personalizzato per il relay</string>
+ <string name="reachable_addresses">Indirizzo raggiungibile</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Esegui come un client dietro un firewall con politiche restrittive</string>
+ <string name="reachable_ports">Porte raggiungibili</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Porte raggiungibili dietro un firewall restrittivo</string>
+ <string name="enter_ports">Inserisci porte</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">abilita i log di debug in output (richiede l\'uso di adb o aLogCat per esser visualizzato)</string>
+ <string name="project_home">Home progetto:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software di terze parti:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Un\'app vuole aprire la porta %1$s del server nascosto alla rete Tor. Ã un\'azione sicura se ti fidi dell\'app.</string>
+ <string name="found_existing_tor_process">trovato un processo Tor esistente...</string>
+ <string name="something_bad_happened">E\' accaduto un evento indesiderato. Controllare i log.</string>
+ <string name="unable_to_read_hidden_service_name">Impossibile leggere il nome del servizio nascosto.</string>
+ <string name="unable_to_start_tor">Impossibile avviare Tor:</string>
+ <string name="pref_use_persistent_notifications">Mantieni sempre l\'icona nella barra degli strumenti quando Orbot Ú connesso.</string>
+ <string name="pref_use_persistent_notifications_title">Notifiche sempre attive</string>
+ <string name="pref_use_expanded_notifications">Visualizza notifica espansa con nazione e ip dell\'nodo d\'uscita Tor</string>
+ <string name="pref_use_expanded_notifications_title">Espandi notifiche</string>
+ <string name="set_locale_title">Lingua</string>
+ <string name="no_internet_connection_tor">Nessuna connessione ad internet; Tor Ú in standby...</string>
+ <string name="pref_disable_network_title">impedire spegnimento automatico della rete</string>
+ <string name="pref_disable_network_summary">Stand-by di Tor quando non c\'Ú un collegamento a internet disponibile</string>
+ <string name="newnym">Sei passato a una nuova identità Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Nessuna connettività di rete. Mettendo Tor a riposo...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Connettività di rete buona. Svegliando Tor...</string>
+ <string name="updating_settings_in_tor_service">aggiornamento impostazioni nel servizio Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Porta sulla quale Tor offre il proxy SOCKS (default: 9050 o 0 per disabilitare)</string>
+ <string name="pref_socks_dialog">Configurazione Porta SOCKS</string>
+ <string name="pref_transport_title">Porta TransProxy Tor</string>
+ <string name="pref_transport_summary">Porta sulla quale Tor offre il Proxy Trasparente (default: 9040 o 0 per disabilitare)</string>
+ <string name="pref_transport_dialog">Configurazione Porta TransProxy</string>
+ <string name="pref_dnsport_title">Porte Tor DNS</string>
+ <string name="pref_dnsport_summary">Porta sulla quale Tor offre i DNS (default: 5400 o 0 per disabilitare)</string>
+ <string name="pref_dnsport_dialog">Configurazione porte DNS</string>
+ <string name="pref_torrc_title">Configurazioni personalizzate di Torrc</string>
+ <string name="pref_torrc_summary">SOLO ESPERTI: inserisci direttamente configurazioni torrc</string>
+ <string name="pref_torrc_dialog">Torrc personalizzate</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridge attivati</string>
+ <string name="restart_orbot_to_use_this_bridge_">Per favore riavvia Orbot per rendere effettive le modifiche</string>
+ <string name="menu_qr">Codici QR</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Se la tua rete mobile blocca attivamente Tor, puoi usare un \'Server Bridge\' come via alternativa. SELEZIONA una delle opzioni per configurare e testare...</string>
+ <string name="bridge_mode">Modalità Bridge</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Attiva</string>
+ <string name="apps_mode">Modalità VPN</string>
+ <string name="send_email">Invia email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Tu poi ricevere un indirizzo bridge via email, web o scansionando un codice QR. Seleziona \'Email\' o \'Web\' per richiedere un indirizzo bridge.\n\nUna volta che hai un indirizzo, copialo & incollalo nell\'opzione \"Bridges\" delle impostazioni di Orbot e riavvialo.</string>
+ <string name="vpn_default_world">Globale (Auto)</string>
+ <string name="hidden_services">Servizi nascosti</string>
+ <string name="title_activity_hidden_services">Servizi nascosti</string>
+ <string name="menu_hidden_services">Servizi nascosti</string>
+ <string name="save">Salva</string>
+ <string name="local_port">Porta locale</string>
+ <string name="onion_port">Porta onion</string>
+ <string name="name">Nome</string>
+ <string name="done">Fatto!</string>
+ <string name="invalid_port">Porta non valida</string>
+ <string name="copy_address_to_clipboard">Copia l\'indirizzo negli appunti</string>
+ <string name="show_auth_cookie">Mostra cookie di autenticazione</string>
+ <string name="backup_service">Servizio di backup</string>
+ <string name="delete_service">Elimina il servizio</string>
+ <string name="backup_saved_at_external_storage">Backup salvato nell\'archiviazione esterna</string>
+ <string name="backup_restored">Backup ripristinato</string>
+ <string name="filemanager_not_available">Filemanager non disponibile</string>
+ <string name="please_grant_permissions_for_external_storage">Consenti l\'autorizzazione per l\'archiviazione esterna</string>
+ <string name="restore_backup">Ripristina backup</string>
+ <string name="create_a_backup_first">Prima crea un backup</string>
+ <string name="name_can_t_be_empty">Il nome non può essere vuoto</string>
+ <string name="fields_can_t_be_empty">I campi non possono essere vuoti</string>
+ <string name="start_tor_again_for_finish_the_process">Riavvia Tor per finire il processo</string>
+ <string name="confirm_service_deletion">Conferma l\'eliminazione del servizio</string>
+ <string name="click_again_for_backup">Clicca ancora per eseguire il backup</string>
+ <string name="service_type">Tipo di servizio</string>
+ <string name="auth_cookie">Cookie autenticazione</string>
+ <string name="copy_cookie_to_clipboard">Copia cookie negli appunti</string>
+ <string name="auth_cookie_was_not_configured">Cookie di autenticazione non configurato</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Per favore riavvia Orbot per rendere effettive le modifiche</string>
+ <string name="client_cookies">Cookie del client</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Indirizzo .onion non valido</string>
+ <string name="cookie_from_QR">Leggi da QR</string>
+ <string name="backup_cookie">Backup cookie</string>
+ <string name="delete_cookie">Elimina cookie</string>
+ <string name="confirm_cookie_deletion">Conferma eliminazione cookie</string>
+ <string name="hosted_services">Servizi ospitati</string>
+ <string name="share_as_qr">Condividi come QR</string>
+ <string name="disable">Disabilita</string>
+ <string name="enable">Abilità </string>
+ <string name="consider_disable_battery_optimizations">Considera la disattivazione dell\'ottimizzazione della batteria</string>
+ <string name="consider_enable_battery_optimizations">Considera l\'attivazione dell\'ottimizzazione della batteria</string>
+ <string name="pref_isolate_dest">Isola gli indirizzi di destinazione</string>
+ <string name="pref_isolate_dest_summary">Usa un circuito diverso per ogni indirizzo di destinazione</string>
+ <string name="no_transproxy_warning_short">ATTENZIONE: Transproxying non più supportato</string>
+ <string name="no_transproxy_warning">ATTENZIONE: proxy trasparenti non supportati. Usa la VPN App di Orbot piuttosto.</string>
+ <string name="pref_connection_padding">Connessione allungata (padding)</string>
+ <string name="pref_connection_padding_summary">Attiva sempre la \"connessione allungata\" per difesa contro alcune forme di analisi del traffico. Predefinito: auto</string>
+ <string name="pref_reduced_connection_padding">Connessione allungata ridotta</string>
+ <string name="pref_reduced_connection_padding_summary">Chiudi prima le connessioni dei relay e invia meno pacchetti allungati per ridurre utilizzo di dati e batteria</string>
+ <string name="app_shortcuts">App abilitate a Tor</string>
+ <string name="testing_bridges">Test della connessione bridge verso Tor...</string>
+ <string name="testing_bridges_success">Successo. La configurazione bridge Ú corretta!</string>
+ <string name="testing_bridges_fail">FALLITO. Prova un\'altra opzione</string>
+ <string name="bridge_direct_connect">Connettiti direttamente a Tor (Migliore)</string>
+ <string name="bridge_community">Connettiti tramite i server comunitari</string>
+ <string name="bridge_cloud">Connettiti tramite i server cloud</string>
+ <string name="bridges_get_new">Richiedi nuovi bridge... (se gli altri falliscono)</string>
+ <string name="trouble_connecting">Problemi nel connetterti?</string>
+ <string name="full_device_vpn">VPN intero dispositivo</string>
+ <string name="vpn_disabled">VPN Disabilitata</string>
+</resources>
diff --git a/app-mini/src/main/res/values-iw/poestrings.xml b/app-mini/src/main/res/values-iw/poestrings.xml
new file mode 100644
index 00000000..bd2a440e
--- /dev/null
+++ b/app-mini/src/main/res/values-iw/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">××€×¢××× ××ª× ×Š×š×× ×שך ××× ××ת××ך ×× Tor.</string>
+ <string name="action_more">ס׀ך ×× ×¢××</string>
+
+ <string name="vpn_setup">××ª× ×××× ××׀שך ×× ××ש×× ×©××× ××¢××ך ××š× Tor ×¢\"× ×©×××ש ×-VPN ××××× × ×©×× ×.</string>
+ <string name="vpn_setup_sub">×× ×× ×××€×× ×××ª× ×××××× ×, ××× ×× ××¢××ך ×× ××¢××ך ××š× ××××ת ×ש.</string>
+ <string name="action_vpn_choose">××ך ××ש××××</string>
+
+ <string name="hello">ש×××</string>
+ <string name="welcome">×ך×× ××× ×× Tor ×× ×××.</string>
+
+ <string name="browser_the_internet">××€××£ ×××× ××š× × ××€× ×©××ª× ××Š×€× ×©××ª× ×Š×š××.</string>
+ <string name="no_tracking">××× ××¢×§×. ××× ×Š× ××ך×.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-iw/strings.xml b/app-mini/src/main/res/values-iw/strings.xml
new file mode 100644
index 00000000..5f5946ab
--- /dev/null
+++ b/app-mini/src/main/res/values-iw/strings.xml
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot ××× × ××€××ק׊××ת ׀ך××§×¡× ××× ××ת ×××׀שךת ×××€××ק׊××ת ××ך×ת ××שת×ש ×××× ××š× × ×××××. Orbot × ×¢×ךת ×-Tor ××× ××׊׀×× ×ת תע××ךת ×××× ××š× × ×©×× ×××ס×××ª× ×××׊ע××ª× × ×ת××× ××š× ×ס׀ך ××ש××× ×ך××× ××¢×××. Tor ××× ×ª××× × ××׀ש×ת ×ךשת ׀ת××× ××ס××עת ×× ××ת××× × ××€× × ×¡×××× ×ס××××× ×©× ×××Š×¢× × ×××ך ×××¢×§× ××ך ךשת ×××× ××š× × ×××××××× ×¢× ×׀ך×××ת, ×××ך×ת ×××ש×ת, ×€×¢×××××ת עסק××ת ××עך××ת ××ס×× ×ש×××ת.</string>
+ <string name="status_starting_up">Orbot ×ת×××âŠ</string>
+ <string name="status_activated">××××ך ×ךשת Tor</string>
+ <string name="status_disabled">Orbot ××××</string>
+ <string name="tor_process_starting">×ת××× ××§×× Tor...</string>
+ <string name="tor_process_complete">××ש××.</string>
+ <string name="menu_settings">×××ך×ת</string>
+ <string name="menu_log">ך×ש××</string>
+ <string name="menu_start">×ת××</string>
+ <string name="menu_stop">ע׊×ך</string>
+ <string name="menu_about">××××ת</string>
+ <string name="main_layout_download">××ך××</string>
+ <string name="main_layout_upload">××¢×××</string>
+ <string name="button_about">××××ת</string>
+ <string name="menu_exit">×׊×××</string>
+ <string name="menu_scan">סך××§ BridgeQR</string>
+ <string name="menu_share_bridge">שתף BridgeQR</string>
+ <string name="btn_okay">××ש×ך</string>
+ <string name="btn_cancel">×××××</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">׀ך××× ×ס××××× ×©× Orbot </string>
+ <string name="wizard_details_msg">Orbot ××× ××€××ק׊××ת ×§×× ×€×ª×× ×××××ת ×ת Tor, LibEvent ×-Polipo. ××× ×ת××ך ×ךשת Tor ×××׊ע×ת שךת ׀ך××§×¡× HTTP ××§××× (8118) ×שךת ׀ך××§×¡× SOCKS (×€××š× 9050). Orbot ××××× ×× ×סף ×¢× ×ךש××ת ך×× ×× ×ª× ×ת ×× ×ª×¢××ךת ×××× ××š× × ×©× ×××ש×ך ××š× Tor ××ך×ךת ××××.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">××××</string>
+ <string name="pref_start_boot_title">×ת×× ×ת Orbot ××××קת ×××ש×ך</string>
+ <string name="pref_start_boot_summary">×ת×× ×ת Orbot ××ת××ך ×ךשת Tor ×××××××ת ××שך ×××ש×ך × ×××§</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">×××ך×ת Node</string>
+ <string name="pref_node_configuration_summary">×§××××ת ×××ך×ת ×תק×××ת ש×××××ת ×××€××ת ×ת ××× ×× ××××ת ש××</string>
+ <string name="pref_entrance_node">Entrance Nodes</string>
+ <string name="pref_entrance_node_summary">××××¢×ת ×׊××¢, ××× ××××, ×ך׊×ת ××ת×××ת ×¢××ך ×××¢×ך ×ך×ש××</string>
+ <string name="pref_entrance_node_dialog">××× ×¡ Entrance Nodes</string>
+ <string name="pref_proxy_type_title">Outbound Proxy Type</string>
+ <string name="pref_proxy_type_summary">׀ך××××§×× ×©×××ש ×שךת ׀ך×קס×: HTTP, HTTPS, Socks4,Socks5</string>
+ <string name="pref_proxy_type_dialog">ס×× ×׀ך×קס×</string>
+ <string name="pref_proxy_host_title">×××š× ×©× Outbound Proxy</string>
+ <string name="pref_proxy_host_summary">×©× ×××š× ×©×š×ª ׀ך×קס×</string>
+ <string name="pref_proxy_host_dialog">××× ×¡ ×××š× ×€×š×קס×</string>
+ <string name="pref_proxy_port_title">×€××š× ×©× Outbound Proxy</string>
+ <string name="pref_proxy_port_summary">×€××š× ×©×š×ª ׀ך×קס×</string>
+ <string name="pref_proxy_port_dialog">××× ×¡ ×€××š× ×©× ×€×š×קס×</string>
+ <string name="pref_proxy_username_title">×©× ×שת×ש ×©× Outbound Proxy</string>
+ <string name="pref_proxy_username_summary">×©× ×שת×ש ׀ך××§×¡× (ךש×ת)</string>
+ <string name="pref_proxy_username_dialog">××× ×©× ×שת×ש ׀ך×קס×</string>
+ <string name="pref_proxy_password_title">ס×ס×× ×©× Outbound Proxy</string>
+ <string name="pref_proxy_password_summary">ס×ס×ת ׀ך××§×¡× (ךש×ת)</string>
+ <string name="pref_proxy_password_dialog">××× ×¡×ס×ת ׀ך×קס×</string>
+ <string name="couldn_t_start_tor_process_">××× ×׀שך×ת ××ת××× ×ª×××× Tor:</string>
+ <string name="error">ש××××</string>
+ <string name="exit_nodes">׊××ª× ×׊×××</string>
+ <string name="enter_exit_nodes">××× ×Š××ª× ×׊×××</string>
+ <string name="exclude_nodes">׊×ת×× ××׊×××</string>
+ <string name="enter_exclude_nodes">××× ×Š×ת×× ××׊×××</string>
+ <string name="strict_nodes">׊×ת×× ×§×€×× ××</string>
+ <string name="use_only_these_specified_nodes">×שת×ש *ךק* ×׊×ת×× ×׊××× ×× ×××</string>
+ <string name="bridges">×שך××</string>
+ <string name="use_bridges">×שת×ש ××שך××</string>
+ <string name="ip_address_and_port_of_bridges">×ת××ת ×-IP ××׊××× ×©× ××שך××</string>
+ <string name="enter_bridge_addresses">××× ×¡ ×ת×××ת ×שך</string>
+ <string name="relays">××סך××</string>
+ <string name="relaying">××ס×ך</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">×׀שך ×××ש×ך ש×× ××××ת ת×× ×ª ××סך ש××× × × ×׊×××</string>
+ <string name="relay_port">×€××š× ×××סך</string>
+ <string name="listening_port_for_your_tor_relay">×€××š× ××××× ×¢××ך Tor relay</string>
+ <string name="enter_or_port"> ××× ×¡ ×׊××ת OR</string>
+ <string name="relay_nickname">××× ×× ×××סך</string>
+ <string name="the_nickname_for_your_tor_relay">×××× ×× ×××סך Tor ש××</string>
+ <string name="enter_a_custom_relay_nickname">××× ××× ×× ×¢××ך ××סך</string>
+ <string name="reachable_addresses">×ת×××ת ××××©× ××</string>
+ <string name="reachable_ports">×€×ך××× ××××©× ××</string>
+ <string name="enter_ports">××× ×€×ך×××</string>
+ <string name="project_home">××ª×š× ×׀ך×××§×:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ת××× ×-׊×-×׳: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">× ××Š× ×ª×××× Tor ×§×××âŠ</string>
+ <string name="something_bad_happened">×ש×× ×š×¢ ×תך×ש. ××××§ ×ת ×××××</string>
+ <string name="unable_to_read_hidden_service_name">×× ×ס××× ×קך×× ×©× ×©×ך×ת × ×¡×ª×š</string>
+ <string name="unable_to_start_tor">×× ×ס××× ××ת××× ×ת Tor:</string>
+ <string name="pref_use_persistent_notifications">×ש××ך ת××× ×ת ××××§×× ×סך×× ×××× ×ש××ך××× ××××ך</string>
+ <string name="set_locale_title">ש׀×</string>
+ <string name="no_internet_connection_tor">××× ××××ך ×××× ××š× ×; ת×ך ××ת××...</string>
+ <string name="pref_disable_network_summary">××× ×ת Tor ××שך ××× ××××ך ×××× ××š× ×</string>
+ <string name="newnym">×××׀ת ×× ×××ת Tor ××ש×!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">××× ××××ך ×ךשת. ×××× ×ת Tor....</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">×××××ך ×¢××× ×××. ××¢×ך ×ת Tor...</string>
+ <string name="updating_settings_in_tor_service">××¢××× ×××ך×ת Tor ×××ש×ך</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_dialog">×××ך×ת SOCKS Port </string>
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_dialog">×××ךת ××€××š× ×©× TransProxy</string>
+ <string name="pref_dnsport_title">Tor DNS Port</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="menu_qr">×§×× QR</string>
+ <string name="get_bridges_email">×××\"×</string>
+ <string name="get_bridges_web">×תך</string>
+ <string name="activate">××€×¢×</string>
+ <string name="send_email">ש×× ×××\"×</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ja/poestrings.xml b/app-mini/src/main/res/values-ja/poestrings.xml
new file mode 100644
index 00000000..dd236cac
--- /dev/null
+++ b/app-mini/src/main/res/values-ja/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Torãšæ¥ç¶ããã«ã¯ãããªããžã䜿ãå¿
èŠããããããããªãã</string>
+ <string name="action_more">ãã£ãšè©³ãã</string>
+
+ <string name="vpn_setup">å
èµVPNãå©çšããŠãå
šãŠã®ã¢ããªã¯Torãä»ããŠãããã«ã¢ã¯ã»ã¹ã§ããŸãã</string>
+ <string name="vpn_setup_sub">å®å
šãªå¿åæ§ã§ã¯ãªããããã¡ã€ã¢ãŠã©ãŒã«ãæŠãæããã«ã¯åœ¹ç«ã¡ãŸãã</string>
+ <string name="action_vpn_choose">ã¢ããªãéžæ</string>
+
+ <string name="hello">ããã«ã¡ã¯</string>
+ <string name="welcome">ã¢ãã€ã«ç Tor ãžãããã</string>
+
+ <string name="browser_the_internet">æåŸ
ãããšããã«ã€ã³ã¿ãŒãããããã©ãŠãºããŸãããã</string>
+ <string name="no_tracking">远跡ããŸãããæ€åããŸããã</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-ja/strings.xml b/app-mini/src/main/res/values-ja/strings.xml
new file mode 100644
index 00000000..1c77cf96
--- /dev/null
+++ b/app-mini/src/main/res/values-ja/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbotã¯ä»ã®ã¢ããªãã€ã³ã¿ãŒããããããå®å
šã«äœ¿ãããšãå¯èœã«ããããªãŒã®ãããã·ã¢ããªã§ããOrbotã§ã¯ãTorãçšããŠããªãã®ç«¯æ«ã®ãã©ãã£ãã¯ãæå·åããäžçäžã®ã³ã³ãã¥ãŒã¿ãŒãäžç¶ããããšã§ããã®ãã©ãã£ãã¯ãé ããŸããTorã¯ããªãŒã®ãœãããŠã§ã¢ãšãªãŒãã³ãªãããã¯ãŒã¯ã§ããããŠãŒã¶ãŒã®èªç±ãšãã©ã€ãã·ãŒãè
ããç£èп޻åããæ©å¯ã®ããžãã¹æŽ»åãåœå®¶ã«ãããã©ãã£ãã¯åæãã身ãå®ãããšãå©ããŠãããŸãã</string>
+ <string name="status_starting_up">Orbotãéå§ãããŠããŸã...</string>
+ <string name="status_activated">Torãããã¯ãŒã¯ã«æ¥ç¶ããŠããŸã</string>
+ <string name="status_disabled">\"Orbotãè§£é€ãããŸãã</string>
+ <string name="status_shutting_down">TorServiceãçµäºããŠããŸã</string>
+ <string name="tor_process_starting">Torã¯ã©ã€ãšã³ããéå§ããŠããŸã...</string>
+ <string name="tor_process_complete">å®äº</string>
+ <string name="menu_settings">èšå®</string>
+ <string name="menu_log">å±¥æŽ</string>
+ <string name="menu_start">ã¹ã¿ãŒã</string>
+ <string name="menu_stop">忢</string>
+ <string name="menu_about">æ
å ±</string>
+ <string name="main_layout_download">ããŠã³ããŒã</string>
+ <string name="main_layout_upload">ã¢ããããŒã</string>
+ <string name="button_about">ã«ã€ããŠ</string>
+ <string name="menu_exit">çµäº</string>
+ <string name="menu_scan">ããªããžQRãã¹ãã£ã³</string>
+ <string name="menu_share_bridge">ããªããžQRãå
±æ</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">ãã£ã³ã»ã«</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbot詳现</string>
+ <string name="wizard_details_msg">Orbot ã¯TorãObfs4ProxyãBadVPN Tun2SocksãLibEventãPolipoãå«ããªãŒãã³ãœãŒã¹ã¢ããªã§ããããŒã«ã«HTTPãããã· (8118) ãš SOCKSãããã· (9050) ãTorãããã¯ãŒã¯ã«æ¥ç¶ããŸããrootåããã端æ«ã§ã¯Orbotã¯å
šãŠã®éä¿¡ãTorãéããŠè¡ãããšãã§ããŸãã</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">äžè¬</string>
+ <string name="pref_start_boot_title">èµ·åæã«Orbotãå®è¡ãã</string>
+ <string name="pref_start_boot_summary">Android端æ«ã®èµ·åæã«Orbotãèªåå®è¡</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ããŒãèšå®</string>
+ <string name="pref_node_configuration_summary">ãæ³šæãå
é²èšå®ãå¿åã¬ãã«ãçž®å°ããŸã</string>
+ <string name="pref_entrance_node">å
¥ãå£ããŒã</string>
+ <string name="pref_entrance_node_summary">æåã®ãããã®ããã®ããžã¿ã«æçŽãããã¯ããŒã ãåœãšIPã¢ãã¬ã¹</string>
+ <string name="pref_entrance_node_dialog">å
¥ãå£ããŒããå
¥å</string>
+ <string name="pref_allow_background_starts_title">ããã¯ã°ã©ãŠã³ãã®éå§ãèš±å¯</string>
+ <string name="pref_allow_background_starts_summary">OrbotãTorãšé¢é£ãµãŒãã¹ãéå§ããããã«ãä»»æã®ã¢ããªã«äŒããŸã</string>
+ <string name="pref_proxy_title">倿¹åãããã¯ãŒã¯ãããã· (ãªãã·ã§ã³)</string>
+ <string name="pref_proxy_type_title">倿¹åãããã·ã®çš®é¡</string>
+ <string name="pref_proxy_type_summary">HTTP,HTTPS,Socks4,Socks5ã§äœ¿çšãããããã³ã«</string>
+ <string name="pref_proxy_type_dialog">ãããã·ã®çš®é¡ãå
¥åããŠãã ãã</string>
+ <string name="pref_proxy_host_title">倿¹åãããã·ã®ãã¹ã</string>
+ <string name="pref_proxy_host_summary">ãããã·ãµãŒãã®ãã¹ãå</string>
+ <string name="pref_proxy_host_dialog">ããã¯ã·ããã¹ããå
¥å</string>
+ <string name="pref_proxy_port_title">倿¹åãããã·ã®ããŒã</string>
+ <string name="pref_proxy_port_summary">ãããã·ãµãŒãã®ããŒã</string>
+ <string name="pref_proxy_port_dialog">ãããã·ã®ããŒããå
¥åããŠãã ãã</string>
+ <string name="pref_proxy_username_title">倿¹åãããã·ã®ããŒã</string>
+ <string name="pref_proxy_username_summary">ãããã·ãŠãŒã¶ãŒå (ãªãã·ã§ã³)</string>
+ <string name="pref_proxy_username_dialog">ãããã·ã®ãŠãŒã¶ãŒåãå
¥åããŠãã ãã</string>
+ <string name="pref_proxy_password_title">倿¹åãããã·ã®ãã¹ã¯ãŒã</string>
+ <string name="pref_proxy_password_summary">ãããã·ã®ãã¹ã¯ãŒã (ãªãã·ã§ã³)</string>
+ <string name="pref_proxy_password_dialog">ãããã·ã®ãã¹ã¯ãŒããå
¥åããŠãã ãã</string>
+ <string name="couldn_t_start_tor_process_">Torããã»ã¹ã®èµ·åã«å€±æ:</string>
+ <string name="error">ãšã©ãŒ</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ããªãã®ReachableAddressesèšå®ã«ããäŸå€ãçºçããŸãã!</string>
+ <string name="your_relay_settings_caused_an_exception_">ããªãã®ãªã¬ãŒèšå®ã«ããäŸå€ãçºçããŸãã!</string>
+ <string name="exit_nodes">åºå£ããŒã</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">æåŸã®ãããã®ããã®ããžã¿ã«æçŽãããã¯ããŒã ãåœãšIPã¢ãã¬ã¹</string>
+ <string name="enter_exit_nodes">åºå£ããŒããå
¥å</string>
+ <string name="exclude_nodes">é€å€ããŒã</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">é€å€ããããžã¿ã«æçŽãããã¯ããŒã ãåœãšIPã¢ãã¬ã¹</string>
+ <string name="enter_exclude_nodes">é€å€ããŒããå
¥å</string>
+ <string name="strict_nodes">StrictããŒã</string>
+ <string name="use_only_these_specified_nodes">ããã«æå®ããããŒãã®ã¿ã䜿çš</string>
+ <string name="bridges">ããªããž</string>
+ <string name="use_bridges">ããªããžã䜿ã</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Torãããã¯ãŒã¯ãžã®ä»£æ¿å
¥å£ãæå¹å</string>
+ <string name="ip_address_and_port_of_bridges">ããªããžã®IPã¢ãã¬ã¹ãšããŒã</string>
+ <string name="enter_bridge_addresses">ããªããžã®ã¢ãã¬ã¹ãå
¥å</string>
+ <string name="relays">ãªã¬ãŒ</string>
+ <string name="relaying">ãªã¬ãŒäž</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ãã®ç«¯æ«ãéåºå£ãªã¬ãŒã«ãã</string>
+ <string name="relay_port">ãªã¬ãŒãããŒã</string>
+ <string name="listening_port_for_your_tor_relay">ãã®Torãªã¬ãŒã®ãªã¹ãã³ã°ããŒã</string>
+ <string name="enter_or_port">ORããŒããå
¥å</string>
+ <string name="relay_nickname">ãªã¬ãŒã®ããã¯ããŒã </string>
+ <string name="the_nickname_for_your_tor_relay">ãã®Torãªã¬ãŒã®ããã¯ããŒã </string>
+ <string name="enter_a_custom_relay_nickname">ãªã¬ãŒã®ã«ã¹ã¿ã ããã¯ããŒã ãå
¥å</string>
+ <string name="reachable_addresses">å°éå¯èœã¢ãã¬ã¹</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">å¶éèšå®ã®ãã¡ã€ã¢ãŠã©ãŒã«ãéããŠã¯ã©ã€ã¢ã³ããšããŠå®è¡</string>
+ <string name="reachable_ports">å°éå¯èœããŒã</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">å¶éèšå®ã®ãã¡ã€ã¢ãŠã©ãŒã«ãéããŠå°éå¯èœãªããŒã</string>
+ <string name="enter_ports">ããŒããå
¥å</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">ãããã°ãã°ã®åºåãæå¹å(é²èЧã«ã¯adbãaLogCatãå¿
èŠ)</string>
+ <string name="project_home">ãããžã§ã¯ãã®ããŒã :</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">第äžè
補ã®ãœãããŠã§ã¢</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">ã¢ããªãéå
¬éãµãŒããŒããŒã %1$s ãTorãããã¯ãŒã¯ã«éæŸããããšããŠããŸããä¿¡é Œã§ããã¢ããªã§ããã°ããã¯å®å
šã§ãã</string>
+ <string name="found_existing_tor_process">Torããã»ã¹ãçºèŠ</string>
+ <string name="something_bad_happened">äœããèµ·ãããŸããããã°ã確èªããŠãã ããã</string>
+ <string name="unable_to_read_hidden_service_name">hidden serviceã®ååèªèŸŒäžèœ</string>
+ <string name="unable_to_start_tor">Torãå®è¡ã§ããŸããã§ãã</string>
+ <string name="pref_use_persistent_notifications">Orbotãæ¥ç¶äžã¯ã¢ã€ã³ã³ãåžžã«ããŒã«ããŒã«è¡šç€º</string>
+ <string name="pref_use_persistent_notifications_title">éç¥ãåžžã«æå¹å</string>
+ <string name="pref_use_expanded_notifications">æ¡åŒµéç¥ã§ãTorã®åºå£ã®åœãšIPã衚瀺ããŸã</string>
+ <string name="pref_use_expanded_notifications_title">æ¡åŒµéç¥</string>
+ <string name="set_locale_title">èšèª</string>
+ <string name="no_internet_connection_tor">ã€ã³ã¿ãŒãããæ¥ç¶ãªããTorã¯åŸ
æ©äžã§ã...</string>
+ <string name="pref_disable_network_title">ãããã¯ãŒã¯ãªãæãªãŒãã¹ãªãŒã</string>
+ <string name="pref_disable_network_summary">ãããæ¥ç¶ããªãæ Tor ãã¹ãªãŒãããã</string>
+ <string name="newnym">æ°ã㪠Tor ã®èº«å
ã«åãæ¿ããŸããã</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ãããã¯ãŒã¯æ¥ç¶ããããŸãããTorã¯ã¹ãªãŒãããŸãâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ãããã¯ãŒã¯æ¥ç¶ã¯è¯å¥œã§ããTorãæå¹ã«ããŸãâŠ</string>
+ <string name="updating_settings_in_tor_service">TorãµãŒãã¹ã®èšå®ãæŽæ°äž</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">TorãSOCKSãããã·ãæäŸããããŒã (ããã©ã«ã: 9050ã0ã«ãããšç¡å¹)</string>
+ <string name="pref_socks_dialog">SOCKS ããŒãèšå®</string>
+ <string name="pref_transport_title">Torééãããã·ããŒã</string>
+ <string name="pref_transport_summary">Torãééãããã·ãæäŸããããŒã (ããã©ã«ã: 9040ã0ã«ãããšç¡å¹)</string>
+ <string name="pref_transport_dialog">ééãããã·ããŒãèšå®</string>
+ <string name="pref_dnsport_title">Tor DNS ããŒã</string>
+ <string name="pref_dnsport_summary">TorãDNSãæäŸããããŒã (ããã©ã«ã: 5400ã0ã«ãããšç¡å¹)</string>
+ <string name="pref_dnsport_dialog">DNS ããŒãèšå®</string>
+ <string name="pref_torrc_title">Torrc ã«ã¹ã¿ã èšå®</string>
+ <string name="pref_torrc_summary">äžçŽè
å®¶ã®ã¿: çŽæ¥torrcèšå®è¡ãå
¥åããŸã</string>
+ <string name="pref_torrc_dialog">Torrcãã«ã¹ã¿ã </string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">ããªããžãæŽæ°ããŸãã</string>
+ <string name="restart_orbot_to_use_this_bridge_">倿Žãæå¹ã«ããã«ã¯Orbotãåèµ·åããŠãã ãã</string>
+ <string name="menu_qr">QRã³ãŒã</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">ã¢ãã€ã«ãããã¯ãŒã¯ãé »ç¹ã«Torããããã¯ããå Žåãå¥ã®æ¹æ³ãšã㊠\'ããªããžãµãŒããŒ\'ã䜿çšããããšãã§ããŸãããªãã·ã§ã³ãïŒã€éžæããŠãèšå®ãšãã¹ããè¡ã£ãŠãã ããã</string>
+ <string name="bridge_mode">ããªããž ã¢ãŒã</string>
+ <string name="get_bridges_email">ã¡ãŒã«</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">ã¢ã¯ãã£ãå</string>
+ <string name="apps_mode">VPN ã¢ãŒã</string>
+ <string name="send_email">ã¡ãŒã«éä¿¡</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ããªãã¯ãã¡ãŒã«ããŠã§ããä»ããŠããŸãã¯ããªããžQRã³ãŒããã¹ãã£ã³ããŠããªããžã¢ãã¬ã¹ãååŸããããšãã§ããŸããããªããžã¢ãã¬ã¹ãèŠæ±ãããããäžã®ãã¡ãŒã«ããŸãã¯ããŠã§ãããéžæããŠãã ããã\n\nã¢ãã¬ã¹ãå
¥æãããããããOrbotèšå®ã®ãããªããžãèšå®ã«ã³ããŒ& 貌ãä»ãããŠãOrbotãåèµ·åããŸãã</string>
+ <string name="vpn_default_world">äžçäž (èªå)</string>
+ <string name="hidden_services">Hidden Services</string>
+ <string name="title_activity_hidden_services">Hidden Services</string>
+ <string name="menu_hidden_services">Hidden Services</string>
+ <string name="save">ä¿å</string>
+ <string name="local_port">ããŒã«ã«ããŒã</string>
+ <string name="onion_port">Onion ããŒã</string>
+ <string name="name">åå</string>
+ <string name="done">å®äº</string>
+ <string name="invalid_port">ç¡å¹ãªããŒã</string>
+ <string name="copy_address_to_clipboard">ã¢ãã¬ã¹ãã¯ãªããããŒãã«ã³ããŒ</string>
+ <string name="show_auth_cookie">Cookie èªèšŒãé衚瀺</string>
+ <string name="backup_service">ããã¯ã¢ãããµãŒãã¹</string>
+ <string name="delete_service">ãµãŒãã¹ãåé€</string>
+ <string name="backup_saved_at_external_storage">ããã¯ã¢ããã¯å€éšèšæ¶è£
眮ã«ä¿åãããŸãã</string>
+ <string name="backup_restored">ããã¯ã¢ãããã埩å
</string>
+ <string name="filemanager_not_available">該åœãã¡ã€ã«ã»ãããŒãžã£ãŒãªã</string>
+ <string name="please_grant_permissions_for_external_storage">å€éšèšæ¶ãžã®ã¢ã¯ã»ã¹èš±å¯ãäžããŠäžããã</string>
+ <string name="restore_backup">ããã¯ã¢ããã®åŸ©æ§</string>
+ <string name="create_a_backup_first">æåã«ãããã¯ã¢ãããäœæããŠäžãã</string>
+ <string name="name_can_t_be_empty">ååã¯ãã©ã³ã¯ã®ãŸãŸã«ã§ããŸãã</string>
+ <string name="fields_can_t_be_empty">ãã£ãŒã«ãã空ã«ããŠããããšã¯ã§ããŸãã</string>
+ <string name="start_tor_again_for_finish_the_process">ããã»ã¹ãå®äºããã«ã¯ãTorãåèµ·åããŠäžããã</string>
+ <string name="confirm_service_deletion">ãµãŒãã¹åé€ã確èª</string>
+ <string name="click_again_for_backup">ããã¯ã¢ããäœæã«åã¯ãªãã¯</string>
+ <string name="service_type">ãµãŒãã¹ã¿ã€ã</string>
+ <string name="auth_cookie">Cookie èªèšŒ</string>
+ <string name="copy_cookie_to_clipboard">Cookie ãã¯ãªããããŒãã«ã³ããŒ</string>
+ <string name="auth_cookie_was_not_configured">Authã¯ãããŒã¯èšå®ãããŸããã§ãã</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">倿Žãæå¹ã«ããã«ã¯Orbotãåèµ·åããŠãã ãã</string>
+ <string name="client_cookies">ã¯ã©ã€ã¢ã³ã Cookie</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ç¡å¹ãª .onion ã¢ãã¬ã¹</string>
+ <string name="cookie_from_QR">QRã³ãŒãããèªã¿åã</string>
+ <string name="backup_cookie">Cookie ãããã¯ã¢ãã</string>
+ <string name="delete_cookie">Cookie ãåé€</string>
+ <string name="confirm_cookie_deletion">ã¯ãããŒåé€ã確èª</string>
+ <string name="hosted_services">ãã¹ãåãµãŒãã¹</string>
+ <string name="share_as_qr">QR ã§ã·ã§ã¢</string>
+ <string name="disable">ç¡å¹</string>
+ <string name="enable">æå¹</string>
+ <string name="consider_disable_battery_optimizations">黿± æé©åãç¡å¹ã«ããããšãèå¯ãã</string>
+ <string name="consider_enable_battery_optimizations">黿± æé©åãæå¹ã«ããããšãèå¯ãã</string>
+ <string name="pref_isolate_dest">å®å
ã¢ãã¬ã¹ãåé¢ãã</string>
+ <string name="pref_isolate_dest_summary">å®å
ã¢ãã¬ã¹ããšã«å¥ã®ãµãŒããããå©çšãã</string>
+ <string name="no_transproxy_warning_short">èŠåïŒééçãããã·ã¯ãã¯ããµããŒããããŠããŸããã</string>
+ <string name="no_transproxy_warning">èŠåïŒééçãããã·ã¯ãµããŒããããŠããŸããã代ããã«Orbotã®ã¢ããªVPNãå©çšããŠäžããã</string>
+ <string name="pref_connection_padding">éä¿¡é£èªå</string>
+ <string name="pref_connection_padding_summary">ããçš®ã®ãã©ããã¯åæããé²è¡ããããã«ãåžžã«éä¿¡é£èªåãæå¹ã«ããŸããããã©ã«ãïŒèªåç</string>
+ <string name="pref_reduced_connection_padding">æžãããéä¿¡é£èªå</string>
+ <string name="pref_reduced_connection_padding_summary">ããŒã¿ãšé»åæ¶è²»ãæžããããã«ããªã¬ãŒæ¥ç¶ãæ©ãã«éãéä¿¡é£èªåãå°ãªãã«å©çšããŸã</string>
+ <string name="app_shortcuts">Torãæå¹åãããã¢ããª</string>
+ <string name="testing_bridges">Torãžã®ããªããžæ¥ç¶ãæ€æ»äž...</string>
+ <string name="testing_bridges_success">æåããŸãããããªããžèšå®ã¯æ£ããã</string>
+ <string name="testing_bridges_fail">倱æããŸãããå¥ã®ãªãã·ã§ã³ã詊ããŠãã ãã</string>
+ <string name="bridge_direct_connect">Tor ã«çŽæ¥æ¥ç¶ãã (ãã¹ã)</string>
+ <string name="bridge_community">ã³ãã¥ããã£ãŒãµãŒããŒãä»ããŠæ¥ç¶ãã</string>
+ <string name="bridge_cloud">ã¯ã©ãŠããµãŒããŒãä»ããŠæ¥ç¶ãã</string>
+ <string name="bridges_get_new">æ°ããããªããžããªã¯ãšã¹ããã...ïŒææªã®å Žåã«ïŒ</string>
+ <string name="trouble_connecting">æ¥ç¶ã«åé¡ããããŸããã?</string>
+ <string name="full_device_vpn">ãã«ããã€ã¹ VPN</string>
+ <string name="vpn_disabled">VPN ãç¡å¹</string>
+</resources>
diff --git a/app-mini/src/main/res/values-kn-rIN/strings.xml b/app-mini/src/main/res/values-kn-rIN/strings.xml
new file mode 100644
index 00000000..49c8dbc4
--- /dev/null
+++ b/app-mini/src/main/res/values-kn-rIN/strings.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+</resources>
diff --git a/app-mini/src/main/res/values-kn/strings.xml b/app-mini/src/main/res/values-kn/strings.xml
new file mode 100644
index 00000000..5d222dbb
--- /dev/null
+++ b/app-mini/src/main/res/values-kn/strings.xml
@@ -0,0 +1,17 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">à²à²°à³à²¬à³à²à³</string>
+ <string name="menu_about">ಬà²à³à²à³</string>
+ <string name="button_about">ಬà²à³à²à³</string>
+ <string name="btn_cancel">Cancel</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="set_locale_title">à²à²Ÿà²·à³</string>
+ <string name="name">Name</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ko/strings.xml b/app-mini/src/main/res/values-ko/strings.xml
new file mode 100644
index 00000000..2e4f3848
--- /dev/null
+++ b/app-mini/src/main/res/values-ko/strings.xml
@@ -0,0 +1,142 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbotì ë€ë¥ž ì±ìŽ ìží°ë·ì ë ìì íê² ìŽì©í ì ìëë¡ ëì죌ë ë¬Žë£ íë¡ì ì±ì
ëë€. Orbotì Tor륌 ìŽì©íì¬ ì¬ë¬ë¶ì ìží°ë· ížëíœì ìížííê³ ì ìžê³ì ì°ê²°ë 컎íší°ë¥Œ ê±°ì³ì ìšê¹ëë€. Torë ë¬Žë£ ìíížìšìŽìŽë©Žì ê°ë°© ë€ížìí¬ë¡ì ì¬ë¬ë¶ì ê°ìžì ìì , ì¬ìí, ìë°í ì¬ì
íë, êŽê³, êµê° ì볎륌 ìííë ë€ížìí¬ ê°ììž ížëíœ ë¶ììŒë¡ë¶í° 볎íží©ëë€.</string>
+ <string name="status_starting_up">Orbot ìì ì€âŠ</string>
+ <string name="status_activated">Tor ë€ížìí¬ì ì°ê²°ëš</string>
+ <string name="status_disabled">OrbotìŽ ë¹íì±íëìŽ ììµëë€</string>
+ <string name="status_shutting_down">í 륎 ìë¹ì€ê° ì¢
ë£ëë ì€ì
ëë€</string>
+ <string name="tor_process_starting">Tor íŽëŒìŽìžíž ìì ì€âŠ</string>
+ <string name="tor_process_complete">ìë£.</string>
+ <string name="menu_settings">ì€ì </string>
+ <string name="menu_log">ë¡ê·ž</string>
+ <string name="menu_start">ìì</string>
+ <string name="menu_stop">ì€ì§</string>
+ <string name="menu_about">ì 볎</string>
+ <string name="main_layout_download">ë€ìŽë¡ë</string>
+ <string name="main_layout_upload">ì
ë¡ë</string>
+ <string name="button_about">ì 볎</string>
+ <string name="menu_exit">ì¢
ë£</string>
+ <string name="menu_scan">ëžëŠ¿ì§ QRìœë ì€ìºíêž°</string>
+ <string name="menu_share_bridge">ëžëŠ¿ì§ QRìœë ê³µì íêž°</string>
+ <string name="btn_okay">íìž</string>
+ <string name="btn_cancel">ì·šì</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbotì ëí ëªëª ììžì¬í</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ìŒë°</string>
+ <string name="pref_start_boot_title">ë¶í
í Orbot ìì</string>
+ <string name="pref_start_boot_summary">ìëë¡ìŽë ì¥ì¹ê° ììí ë ìëì ìŒë¡ Orbotì ììíê³ Torì ì°ê²°í©ëë€</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ë
žë ì€ì </string>
+ <string name="pref_node_configuration_summary">ê·íì ìµëª
ì±ì ê°ììí¬ ì ìë ê³ êž ì€ì ìŽ ììµëë€.</string>
+ <string name="pref_entrance_node">ì
구 ë
žë</string>
+ <string name="pref_entrance_node_summary">첫ë²ì§ž Hopì ìííê±°í늰íž, ë³ì¹, ëëŒì 죌ì</string>
+ <string name="pref_entrance_node_dialog">ì
구 ë
žë ì
ë ¥</string>
+ <string name="pref_allow_background_starts_title">백귞ëŒìŽëìì ìì íì©</string>
+ <string name="pref_allow_background_starts_summary">몚ë ìŽí늬ìŒìŽì
ìŽ Orbotì Tor륌 ììíê³ êŽë š ìë¹ì€ë¥Œ ììí ì ìëë¡ ì§ìíëê²ì íëœí©ëë€.</string>
+ <string name="pref_proxy_title">ìžë¶ ë€ížìí¬ íë¡ì (ì í)</string>
+ <string name="pref_proxy_type_title">ìžë¶ íë¡ì ì í</string>
+ <string name="pref_proxy_type_summary">íë¡ì ìë²ë¥Œ ìí ì¬ì©ëë íë¡í ìœ : HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">íë¡ì íì ì
ë ¥</string>
+ <string name="pref_proxy_host_title">ìžë¶ íë¡ì ížì€íž</string>
+ <string name="pref_proxy_host_summary">íë¡ì ìë² ížì€ížë€ì
</string>
+ <string name="pref_proxy_host_dialog">íë¡ì ížì€íž ì
ë ¥</string>
+ <string name="pref_proxy_port_title">ìžë¶ íë¡ì í¬íž</string>
+ <string name="pref_proxy_port_summary">ìë² í¬íž ì
ë ¥</string>
+ <string name="pref_proxy_port_dialog">íë¡ì í¬íž ì
ë ¥</string>
+ <string name="pref_proxy_username_title">ìžë¶ íë¡ì ì¬ì©ìëª
</string>
+ <string name="pref_proxy_username_summary">íë¡ì ì¬ì©ìëª
(ì í)</string>
+ <string name="pref_proxy_username_dialog">íë¡ì ì¬ì©ìëª
ì
ë ¥</string>
+ <string name="pref_proxy_password_title">ìžë¶ íë¡ì ë¹ë°ë²íž</string>
+ <string name="pref_proxy_password_summary">íë¡ì ë¹ë°ë²íž (ì í)</string>
+ <string name="pref_proxy_password_dialog">íë¡ì ë¹ë°ë²íž ì
ë ¥</string>
+ <string name="couldn_t_start_tor_process_">Tor íë¡ìžì€ ìì ë¶ê°ë¥: </string>
+ <string name="error">ì€ë¥</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ê·íì ReachableAddress ì€ì ì ììžë¥Œ ë°ìì쌰ìµëë€!</string>
+ <string name="your_relay_settings_caused_an_exception_">ê·íì ì€ê³ìë² ì€ì ì ììžë¥Œ ë°ìì쌰ìµëë€!</string>
+ <string name="exit_nodes">ì¶êµ¬ ë
žë</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ë§ì§ë§ Hopì ìííê±°í늰íž, ë³ì¹, ëëŒì 죌ì</string>
+ <string name="enter_exit_nodes">ì¶êµ¬ ë
žë ì
ë ¥</string>
+ <string name="exclude_nodes">ì°šëší ë
žë</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ì°šëší íê±°í늰íž, ë³ì¹, ëëŒì 죌ì</string>
+ <string name="enter_exclude_nodes">ì°šëší ë
žë ì
ë ¥</string>
+ <string name="strict_nodes">ë
žë ì í</string>
+ <string name="use_only_these_specified_nodes">ìŽ í¹ì í ë
žë*ë§* ì¬ì©í©ëë€.</string>
+ <string name="bridges">ì€ê³ìë²</string>
+ <string name="use_bridges">ì€ê³ìë² ì¬ì©</string>
+ <string name="ip_address_and_port_of_bridges">ì€ê³ìë²ì IP 죌ìì </string>
+ <string name="enter_bridge_addresses">ì€ê²ìë² ì£Œì ì
ë ¥</string>
+ <string name="relays">ì€ê³ìë²</string>
+ <string name="relaying">ì€ê³</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ê·íì ì¥ì¹ë¥Œ ì¶êµ¬ê° ìë ì€ê³ìë²ë¡ íì±í</string>
+ <string name="relay_port">ì€ê³ í¬íž</string>
+ <string name="listening_port_for_your_tor_relay">ê·íì Tor ì€ê³ìë²ë¥Œ ìí Listening í¬íž</string>
+ <string name="enter_or_port">OR í¬íž ì
ë ¥</string>
+ <string name="relay_nickname">ì€ê³ìë² ë³ëª
</string>
+ <string name="the_nickname_for_your_tor_relay">ê·íì ì€ê³ìë²ë¥Œ ìí ë³ëª
</string>
+ <string name="enter_a_custom_relay_nickname">ììì ì€ê³ìë² ë³ëª
ì ì
ë ¥</string>
+ <string name="reachable_addresses">ëë¬ ê°ë¥í 죌ì</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">ì격í ì ì±
ì ê°ì§ ë°©í벜 ë€ìì íŽëŒìŽìžíž ê°ë</string>
+ <string name="reachable_ports">ëë¬ ê°ë¥í í¬íž</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ì격í ë°©í벜 ë€ìì ì ê·Œ ê°ë¥í í¬íž</string>
+ <string name="enter_ports">í¬íž ì
ë ¥</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">ëë²ê·ž ë¡ê·ž ì¶ë ¥ íì±í (볎Ʞ ìíŽìë adbë aLogCatì ì¬ì©íŽìŒ íš)</string>
+ <string name="project_home">íë¡ì íž í íìŽì§:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">3rd-Party-Software: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">졎ì¬íê³ ìë Tor íë¡ìžì€ ë°ê²¬</string>
+ <string name="something_bad_happened">ìŽë€ ëì ê²ìŽ ë°ì. ë¡ê·ž íìžíìžì.</string>
+ <string name="unable_to_read_hidden_service_name">íë ìë¹ì€ ìŽëŠì ìœì ì ìì</string>
+ <string name="unable_to_start_tor">Tor ìì ë¶ê°ë¥</string>
+ <string name="pref_use_persistent_notifications">OrbotìŽ ì°ê²°ëìì ë íŽë°ì ììŽìœ 볎ìŽêž°</string>
+ <string name="pref_use_persistent_notifications_title">íì ìŒì§ ì늌</string>
+ <string name="pref_use_expanded_notifications">ì¶êµ¬ ë° IP ì 볎ì늌 볎ìŽêž°</string>
+ <string name="pref_use_expanded_notifications_title">íì¥ ì늌</string>
+ <string name="set_locale_title">ìžìŽ</string>
+ <string name="no_internet_connection_tor">ìží°ë· ì°ê²°ìëš; ëêž°ì€ì
ëë€...</string>
+ <string name="pref_disable_network_title">ë€ížìí¬ê° ìì ëì ìë ì¬ëŠœ</string>
+ <string name="pref_disable_network_summary">ìží°ë·ìŽ ë¶ê°ë¥íë€ë©Ž Tor륌 ì¬ëŠœ 몚ëë¡ ëììì€</string>
+ <string name="newnym">ìë¡ìŽ Tor ì ììŒë¡ ì íëììµëë€!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ë€ížìí¬ì ì°ê²°ëìŽ ìì§ ììµëë€. í 륎륌 ì ìêž° 몚ëë¡ ë³ê²œí©ëë€...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ë€ížìí¬ì ì°ê²°ëììµëë€. í 륎륌 ë€ì 깚ìëë€...</string>
+ <string name="updating_settings_in_tor_service">í 륎 ìë¹ì€ì ì€ì ì ì
ë°ìŽíž ì€ì
ëë€</string>
+ <string name="pref_socks_title">í 륎 SOCKS</string>
+ <string name="pref_socks_summary">SOCKS íë¡ì륌 ë°ì í¬íž (Ʞ볞: 9050 / 0ì ë¹íì±í)</string>
+ <string name="pref_socks_dialog">SOCKS í¬íž ì€ì </string>
+ <string name="pref_transport_title">í 륎 í¬ëª
íë¡ì í¬íž</string>
+ <string name="pref_transport_summary">í¬ëª
íë¡ìì ì¬ì©í í¬íž (Ʞ볞: 9040 / 0ì ë¹íì±í)</string>
+ <string name="pref_transport_dialog">í¬ëª
íë¡ì í¬íž ì€ì </string>
+ <string name="pref_dnsport_title">í 륎 DNS í¬íž</string>
+ <string name="pref_dnsport_summary">í 륎 DNS륌 ì ê³µí í¬íž (Ʞ볞: 5400 / 0ì ë¹íì±í)</string>
+ <string name="pref_dnsport_dialog">DNS í¬íž ì€ì </string>
+ <string name="pref_torrc_title">ì¬ì©ì ì§ì Torrc 구ì±</string>
+ <string name="pref_torrc_summary">ì ë¬žê° ì ì©: torrc êµ¬ì± ì€ì ì§ì ì
ë ¥í©ëë€</string>
+ <string name="pref_torrc_dialog">ëë§ì Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">ëžëŠ¿ì§ê° ì
ë°ìŽížëììµëë€</string>
+ <string name="restart_orbot_to_use_this_bridge_">ë³ê²œì ìë£íë €ë©Ž Orbotì ì¬ììíìžì</string>
+ <string name="menu_qr">QR ìœë</string>
+ <string name="bridge_mode">ëžëŠ¿ì§ ëªšë</string>
+ <string name="get_bridges_email">ìŽë©ìŒ</string>
+ <string name="get_bridges_web">ì¹</string>
+ <string name="activate">íì±í</string>
+ <string name="send_email">ìŽë©ìŒ 볎ëŽêž°</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ëžëŠ¿ì§ ì£Œì륌 ìŽë©ìŒìŽë QRìœë륌 íµíŽ ì»ì ì ììµëë€. ìëì \"ìŽë©ìŒ\"ìŽë \"ì¹\"ì í°ì¹íŽ ëžëŠ¿ì§ ì£Œì륌 ìì²íìžì.\n\n죌ì륌 ì»ìë€ë©Ž, ì€ì ì \"ëžëŠ¿ì§\" í목ì ë³µì¬ & ë¶ì¬ë£êž°í ë€ Orbotì ì¬ììíìžì.</string>
+ <string name="save">ì ì¥</string>
+ <string name="name">Name</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ë³ê²œì ìë£íë €ë©Ž Orbotì ì¬ììíìžì</string>
+ <string name="disable">ë¹íì±í</string>
+ <string name="enable">íì±í</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ky/strings.xml b/app-mini/src/main/res/values-ky/strings.xml
new file mode 100644
index 00000000..f63feabf
--- /dev/null
+++ b/app-mini/src/main/res/values-ky/strings.xml
@@ -0,0 +1,21 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">ЫÑаÑÑППлПÑ</string>
+ <string name="menu_stop">ТПкÑПП</string>
+ <string name="menu_about">ÐÑПгÑаЌЌа жөМүМЎө</string>
+ <string name="button_about">ÐÑПгÑаЌЌа жөМүМЎө</string>
+ <string name="menu_exit">ЧÑгÑÑ</string>
+ <string name="btn_cancel">ÐйМÑÑ</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">ÐаÑа</string>
+ <string name="set_locale_title">ТОл</string>
+ <string name="save">СакÑПП</string>
+ <string name="name">ÐÑÑ-жөМү</string>
+</resources>
diff --git a/app-mini/src/main/res/values-lt-rLT/strings.xml b/app-mini/src/main/res/values-lt-rLT/strings.xml
new file mode 100644
index 00000000..49c8dbc4
--- /dev/null
+++ b/app-mini/src/main/res/values-lt-rLT/strings.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+</resources>
diff --git a/app-mini/src/main/res/values-lt/poestrings.xml b/app-mini/src/main/res/values-lt/poestrings.xml
new file mode 100644
index 00000000..46d57c84
--- /dev/null
+++ b/app-mini/src/main/res/values-lt/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Kartais reikia tilto, kad prieiti prie Tor.</string>
+ <string name="action_more">SUÅœINOTI DAUGIAU</string>
+
+ <string name="vpn_setup">Galite leisti bet kokiai programÄlei siųsti duomenis per Tor besinaudojant mÅ«sų VPN.</string>
+ <string name="vpn_setup_sub">Tai nepadarys jÅ«sų anonimu/-e, bet padÄs apeiti ugniasienes.</string>
+ <string name="action_vpn_choose">PASIRINKTI PROGRAMÄLES</string>
+
+ <string name="hello">Sveiki</string>
+ <string name="welcome">Sveiki atvykÄ Ä¯ Tor ant mobiliųjų prietaisų.</string>
+
+ <string name="browser_the_internet">NarÅ¡ykite internetÄ
, kaip jÅ«s tikitÄs, kad turÄtumÄte.</string>
+ <string name="no_tracking">Jokio sekimo. Jokios cenzūros.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-lt/strings.xml b/app-mini/src/main/res/values-lt/strings.xml
new file mode 100644
index 00000000..24ffde66
--- /dev/null
+++ b/app-mini/src/main/res/values-lt/strings.xml
@@ -0,0 +1,45 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot yra tarpinÄ (proxy) programÄlÄ, kuri leidÅŸia kitoms programÄlÄms naudotis internetu ÅŸymiai saugiau. Orbot naudoja Tor, taip uÅŸÅ¡ifruodama interneto srautÄ
ir jį paslepia Å¡okinÄdama tarp daugybÄs kompiuterių adresų iÅ¡ viso pasaulio. Tor yra nemokama programa bei atviras tinklas, kuris leidÅŸia apsisaugoti nuo tinklo stebÄjimų, kurie kelia grÄsmÄ asmeninei laisvei ir privatumui, konfidencialumui, taip leidÅŸianti iÅ¡vengti tinklo srauto analizavimo.</string>
+ <string name="status_starting_up">PaleidÅŸiama OrbotâŠ</string>
+ <string name="status_activated">Prisijungta prie Tor tinklo</string>
+ <string name="status_disabled">Orbot išjungtas</string>
+ <string name="status_shutting_down">TorService išjungiamas</string>
+ <string name="tor_process_starting">PaleidÅŸiamas Tor klientas...</string>
+ <string name="tor_process_complete">baigta.</string>
+ <string name="menu_settings">Nustatymai</string>
+ <string name="menu_log">Åœurnalas</string>
+ <string name="menu_start">PradÄti</string>
+ <string name="menu_stop">Baigti</string>
+ <string name="menu_about">Apie</string>
+ <string name="main_layout_download">Parsiuntimas</string>
+ <string name="main_layout_upload">Išsiuntimas</string>
+ <string name="button_about">Apie</string>
+ <string name="menu_exit">Išeiti</string>
+ <string name="menu_scan">Nuskaityti tilto QR kodÄ
</string>
+ <string name="menu_share_bridge">Dalintis tilto QR kodu</string>
+ <string name="btn_okay">Gerai</string>
+ <string name="btn_cancel">Atsisakyti</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbot detalÄs</string>
+ <string name="wizard_details_msg">Orbot yra atviro kodo programÄlÄ, kuri susideda iÅ¡ Tor, Obfs4Proxy, BadVPN, Tun2Socks, LibEvent ir Polipo. Ji leidÅŸia jungtis prie Tor tinklo per HTTP (8118) ir SOCKS (9050) tarpinius serverius. Orbot taip pat leidÅŸia perkelti visÄ
tinklo srautÄ
per Tor tinklÄ
, jeigu turite root/supernaudotojo privilegijas.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Bendra</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Klaida</string>
+ <string name="bridges">Tinklų tiltai</string>
+ <string name="set_locale_title">Kalba</string>
+ <string name="get_bridges_email">El. paštas</string>
+ <string name="activate">Aktyvuoti</string>
+ <string name="save">Įrašyti</string>
+ <string name="name">Vardas</string>
+ <string name="backup_restored">AtsarginÄ kopija atkurta</string>
+ <string name="disable">Išjungti</string>
+ <string name="enable">Įjungti</string>
+</resources>
diff --git a/app-mini/src/main/res/values-lv/strings.xml b/app-mini/src/main/res/values-lv/strings.xml
new file mode 100644
index 00000000..5196b05e
--- /dev/null
+++ b/app-mini/src/main/res/values-lv/strings.xml
@@ -0,0 +1,144 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot ir starpniekserveru bezmaksas lietotne, kas sniedz iespÄju citÄm lietotnÄm droÅ¡Äk lietot internetu. Orbot izmanto Tor, lai Å¡ifrÄtu JÅ«su interneta datplÅ«smu, tad to paslÄpj, pÄrsÅ«tot to caur daudziem datoriem visÄ pasaulÄ. Tor ir bezmaksas programmatÅ«ra un atvÄrts tÄ«kls, kas palÄ«dz Jums aizsargÄties pret tÄ«kla uzraudzÄ«bas veidu - datplÅ«smas analÄ«zi -, ar kuras palÄ«dzÄ«bu tiek apdraudÄta personiskÄ brÄ«vÄ«ba un privÄtums, konfidenciÄlas lietišķas darbÄ«bas un attiecÄ«bas, kÄ arÄ« valsts drošība. </string>
+ <string name="status_starting_up">Orbot startÄ...</string>
+ <string name="status_activated">Izveidots savienojums ar tīklu Tor</string>
+ <string name="status_disabled">Orbot ir deaktivÄts</string>
+ <string name="status_shutting_down">TorService izslÄdzas</string>
+ <string name="tor_process_starting">StartÄ Tor klientu...</string>
+ <string name="tor_process_complete">pabeidz.</string>
+ <string name="menu_settings">Iestatījumi</string>
+ <string name="menu_log">ÅœurnÄls</string>
+ <string name="menu_start">StartÄt</string>
+ <string name="menu_stop">ApturÄt</string>
+ <string name="menu_about">Par</string>
+ <string name="main_layout_download">LejupielÄde</string>
+ <string name="main_layout_upload">AugÅ¡upielÄde</string>
+ <string name="button_about">Par</string>
+ <string name="menu_exit">Iziet</string>
+ <string name="menu_scan">SkenÄt BridgeQR</string>
+ <string name="menu_share_bridge">Koplietot BridgeQR</string>
+ <string name="btn_okay">Labi</string>
+ <string name="btn_cancel">Atcelt</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">VairÄk informÄcijas par Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">VispÄrÄ«gi</string>
+ <string name="pref_start_boot_title">StartÄt Orbot, kad ielÄdÄjas</string>
+ <string name="pref_start_boot_summary">AutomÄtiski startÄt Orbot, un veidot savienojumu ar Tor, kad JÅ«su Android ierÄ«ce ielÄdÄjas</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Mezglu konfigurÄcija</string>
+ <string name="pref_node_configuration_summary">Å ie it lietpratÄ«gie iestatÄ«jumi, kuri var samazinÄt JÅ«su anonimitÄti</string>
+ <string name="pref_entrance_node">Ieejas mezgli</string>
+ <string name="pref_entrance_node_summary">Ciparvirknes, segvÄrdi, valstis un adreses pirmajam lÄkumam</string>
+ <string name="pref_entrance_node_dialog">Ievadiet ieejas mezglus</string>
+ <string name="pref_allow_background_starts_title">Ä»aut sÄkÅ¡anos fonÄ</string>
+ <string name="pref_allow_background_starts_summary">NorÄdÄ«t visÄm lietotnÄm uzdot Orbot palaist Tor un saistÄ«tos pakalpojumus.</string>
+ <string name="pref_proxy_title">TÄ«kla ÄrejoÅ¡ais starpnieks (neobligÄts)</string>
+ <string name="pref_proxy_type_title">ÄrvÄrstÄ starpnieka tips</string>
+ <string name="pref_proxy_type_summary">Starpnieka serverim izmantojamais protokols: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Ievadiet starpnieka tipu</string>
+ <string name="pref_proxy_host_title">ÄrvÄrstÄ starpnieka viesotÄjs</string>
+ <string name="pref_proxy_host_summary">Starpniekservera mitinÄtÄjvÄrds</string>
+ <string name="pref_proxy_host_dialog">Ievadiet starpnieka viesotÄju</string>
+ <string name="pref_proxy_port_title">ÄrvÄrstÄ starpnieka ports</string>
+ <string name="pref_proxy_port_summary">Starpniekservera ports</string>
+ <string name="pref_proxy_port_dialog">Ievadiet starpnieka portu</string>
+ <string name="pref_proxy_username_title">ÄrvÄrstÄ starpnieka lietotÄjvÄrds</string>
+ <string name="pref_proxy_username_summary">Starpnieka lietotÄjvÄrds (neobligÄts)</string>
+ <string name="pref_proxy_username_dialog">IevadÄ«t starpnieka lietotÄjvardu</string>
+ <string name="pref_proxy_password_title">ÄrvÄrstÄ starpnieka parole</string>
+ <string name="pref_proxy_password_summary">Starpnieka parole (neobligÄti)</string>
+ <string name="pref_proxy_password_dialog">Ievadīt starpnieka paroli</string>
+ <string name="couldn_t_start_tor_process_">NeizdevÄs palaist Tor\'a procesu:</string>
+ <string name="error">KČūda</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">JÅ«su ReachableAddresses iestatÄ«jumi izraisÄ«ja izÅÄmuma stÄvokli!</string>
+ <string name="your_relay_settings_caused_an_exception_">JÅ«su retranslatora iestatÄ«jumi izraisÄ«ja izÅÄmuma situÄciju!</string>
+ <string name="exit_nodes">Izejas mezgli</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">PÄdÄjÄ lÄkuma ciparvirknes, segvÄrdi, valstis un adreses</string>
+ <string name="enter_exit_nodes">Ievadiet izejas mezglus</string>
+ <string name="exclude_nodes">NeiekÄŒautie mezgli</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">IzslÄdzamÄs ciparvirknes, segvÄrdi, valstis un adreses</string>
+ <string name="enter_exclude_nodes">Ievadīt NeiekČaujamos mezglus</string>
+ <string name="strict_nodes">Precīzie mezgli</string>
+ <string name="use_only_these_specified_nodes">Izmantojiet *vienÄ«gi* Å¡os norÄdÄ«tos mezglus</string>
+ <string name="bridges">Tilti</string>
+ <string name="use_bridges">Lietot tiltus</string>
+ <string name="ip_address_and_port_of_bridges">Tiltu ports un IP addrese</string>
+ <string name="enter_bridge_addresses">Ievadiet tiltu adreses</string>
+ <string name="relays">Retranslatori</string>
+ <string name="relaying">RetranslÄÅ¡ana</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">IespÄjot JÅ«su iekÄrtu par bezapstÄjas retranslatoru</string>
+ <string name="relay_port">Retranslatora ports</string>
+ <string name="listening_port_for_your_tor_relay">JÅ«su Tor retranslatora klausīšanÄs ports</string>
+ <string name="enter_or_port">Ievadiet OR portu</string>
+ <string name="relay_nickname">Retranslatora segvÄrds</string>
+ <string name="the_nickname_for_your_tor_relay">JÅ«su Tor\'a retranslatora segvÄrds</string>
+ <string name="enter_a_custom_relay_nickname">Ievadiet brÄ«vi izraudzÄ«tu rertranslatora segvÄrdu</string>
+ <string name="reachable_addresses">SasniedzamÄs adreses</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">IzpildÄ«t kÄ klientprogrammu aiz ugunsmÅ«ra, kurÅ¡ nodroÅ¡ina ierobeÅŸojoÅ¡u kÄrtÄ«bu</string>
+ <string name="reachable_ports">Sasniedzamie porti</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Porti, kuri sasniedzami otrpus ierobeşojoša ugunsmūra</string>
+ <string name="enter_ports">Ievadiet portus</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">iespÄjot atkČūdoÅ¡anas ÅŸurnÄlu izvadei (jÄlieto adb vai aLogCat , lai skatÄ«tu)</string>
+ <string name="project_home">Projekta mÄjas:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Trešo personu programmatūra:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">Atrada esošu Tor procesu...</string>
+ <string name="something_bad_happened">Nav labi. PÄrbaudiet ÅŸurnÄlu</string>
+ <string name="unable_to_read_hidden_service_name">NespÄj lasÄ«t slÄpta pakalpojuma nosaukumu</string>
+ <string name="unable_to_start_tor">Nevar startÄt Tor:</string>
+ <string name="pref_use_persistent_notifications">VienmÄr paturÄt ikonu rÄ«kjoslÄ, kad Orbot ir savienots</string>
+ <string name="pref_use_persistent_notifications_title">VienmÄr ieslÄgtie paziÅojumi</string>
+ <string name="pref_use_expanded_notifications">RÄdÄ«t paplaÅ¡inÄtus paziÅojumus, kur norÄdÄ«ts IP un Tor izejas valsts</string>
+ <string name="pref_use_expanded_notifications_title">PaplaÅ¡inÄti paziÅojumi</string>
+ <string name="set_locale_title">Valoda</string>
+ <string name="no_internet_connection_tor">Nav interneta savienojuma; Tor ir gaidstÄvÄ...</string>
+ <string name="pref_disable_network_title">Neizmantot tÄ«kla automÄtiskÄ miega reÅŸÄ«mu</string>
+ <string name="pref_disable_network_summary">Kad nav interneta, pÄrslÄgt Tor\'u uz miega reÅŸÄ«mu</string>
+ <string name="newnym">JÅ«s pÄrslÄdzÄties uz jaunu Tor\'a identitÄti!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Nav tīkla savienojuma. Tor\'am iestata miega reşīmu...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Labs tÄ«kla savienojums. AktivizÄ Tor\'u...</string>
+ <string name="updating_settings_in_tor_service">atjaunina Tor pakalpojuma iestatījumus </string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Ports, uz kura Tor piedÄvÄ savu SOCKS starpniekserveri (noklusÄjumvÄrtÄ«ba: 9050 vai 0 lai atspÄjotu)</string>
+ <string name="pref_socks_dialog">SOCKS Port Config</string>
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_summary">Ports, uz kura Tor piedÄvÄ savu Transparent starpniekserveri (noklusÄjumvÄrtÄ«ba: 9040 vai 0 lai atspÄjotu)</string>
+ <string name="pref_transport_dialog">TransProxy Port Config</string>
+ <string name="pref_dnsport_title">Tor DNS Ports</string>
+ <string name="pref_dnsport_summary">Ports, uz kura Tor piedÄvÄ savu DNS (noklusÄjumvÄrtÄ«ba: 5400 vai 0 lai atspÄjotu)</string>
+ <string name="pref_dnsport_dialog">DNS Port konfigurÄÅ¡ana</string>
+ <string name="pref_torrc_title">Torrc pielÄgota konfigurÄÅ¡ana</string>
+ <string name="pref_torrc_summary">VIENĪGI EKSPERTIEM: tieÅ¡i ievadÄ«t torrc konfigurÄÅ¡anas rindas</string>
+ <string name="pref_torrc_dialog">PielÄgot Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Tilti ir atjauninÄti</string>
+ <string name="restart_orbot_to_use_this_bridge_">LÅ«dzu pÄrstartÄjiet Orbot, lai iespÄjotu izmaiÅas</string>
+ <string name="menu_qr">QR kodi</string>
+ <string name="bridge_mode">Tiltu reşīms</string>
+ <string name="get_bridges_email">E-pasts</string>
+ <string name="get_bridges_web">Tīmeklis</string>
+ <string name="activate">AktivizÄt</string>
+ <string name="send_email">Nosūtīt e-pastu</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">JÅ«s varat saÅemt tiltu adreses e-pastÄ, tÄ«meklÄ« vai skenÄjot tiltu QR kodu. ZemÄk atlasiet âE-pastsâ vai âTÄ«meklisâ, lai pieprasÄ«tu tiltu adreses. Kad esat saÅÄmis adreses, tad tÄs iekopÄjiet un ielÄ«mÄjiet Orbot iestatÄ«jumu preferencÄs âTiltiâ un pÄrstartÄjiet.</string>
+ <string name="hidden_services">SlÄptie pakalpojumi</string>
+ <string name="title_activity_hidden_services">SlÄptie pakalpojumi</string>
+ <string name="menu_hidden_services">SlÄptie pakalpojumi</string>
+ <string name="save">SaglabÄt</string>
+ <string name="name">VÄrds</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">LÅ«dzu pÄrstartÄjiet Orbot, lai iespÄjotu izmaiÅas</string>
+ <string name="disable">AtspÄjot</string>
+</resources>
diff --git a/app-mini/src/main/res/values-mk/poestrings.xml b/app-mini/src/main/res/values-mk/poestrings.xml
new file mode 100644
index 00000000..d553557e
--- /dev/null
+++ b/app-mini/src/main/res/values-mk/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">ÐÐŸÐœÐµÐºÐŸÐ³Ð°Ñ Ðµ пПÑÑебеМ ЌПÑÑ ÐŽÐ° ЎПÑЎеÑе ЎП Tor.</string>
+ <string name="action_more">ÐÐÐÐ ÐÐ ÐÐÐÐÐÐ</string>
+
+ <string name="vpn_setup">ÐПжеÑе Ўа ПвПзЌПжОÑе ÑекПÑа аплОкаÑОÑа Ўа кПЌÑМОÑОÑа пÑÐµÐºÑ Tor кПÑОÑÑеÑÑО гП вгÑÐ°ÐŽÐµÐœÐžÐŸÑ VPN.</string>
+ <string name="vpn_setup_sub">Ðва МеЌа Ўа ве МапÑавО аМПМОЌМО, МП Ñе вО пПЌПгМе Ўа пПЌОМеÑе МОз заÑÑОÑМОÑе ÑОЎПвО.</string>
+ <string name="action_vpn_choose">ÐÐÐÐÐ Ð ÐÐÐÐÐÐЊÐÐ</string>
+
+ <string name="hello">ÐÐŽÑавП</string>
+ <string name="welcome">ÐПбÑеЎПÑЎПвÑе Ма Tor Ма ЌПбОлеМ.</string>
+
+ <string name="browser_the_internet">ÐÑелОÑÑÑваÑÑе Ма ÐМÑеÑÐœÐµÑ ÐŸÐœÐ°ÐºÐ° какП ÑÑП ПÑекÑваÑе Ўека ÑÑеба.</string>
+ <string name="no_tracking">ÐеЌа ÑлеЎеÑе. ÐеЌа ÑеМзÑÑа.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-mk/strings.xml b/app-mini/src/main/res/values-mk/strings.xml
new file mode 100644
index 00000000..9f28c462
--- /dev/null
+++ b/app-mini/src/main/res/values-mk/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot е ÑлПбПЎМа пÑПкÑО аплОкаÑОÑа кПÑа ОЌ ПвПзЌПжÑва Ма ÐŽÑÑгОÑе аплОкаÑОО Ўа гП кПÑОÑÑÐ°Ñ ÐМÑеÑМеÑÐŸÑ Ð¿ÐŸÐ±ÐµÐ·Ð±ÐµÐŽÐœÐŸ. Orbot кПÑОÑÑО Tor за еМкÑОпÑОÑаÑе Ма ОМÑеÑÐœÐµÑ ÑППбÑаÑаÑПÑ, а пПÑПа гП ÑПкÑОва О гП пПÑÑкПкМÑва пÑÐµÐºÑ ÑеÑОÑа кПЌпÑÑÑеÑО МОз ÑÐµÐ»ÐžÐŸÑ ÑвеÑ. Tor е ÑлПбПЎеМ ÑПÑÑÐ²ÐµÑ Ðž ПÑвПÑеМа ÐŒÑежа ÐºÐŸÑ Ð²Ðž пПЌага Ўа Ñе ПЎбаÑМОÑе ПЎ ÑПÑЌО Ма ÐœÐ°ÐŽÐ·ÐŸÑ ÐœÐ° ÐŒÑежаÑа ÐºÐŸÑ ÐžÐŒ Ñе закаМÑва Ма ваÑаÑа лОÑМа ÑлПбПЎа О пÑОваÑМПÑÑ, ЎПвеÑлОвОÑе ЎелПвМО акÑОвМПÑÑО О ПЎМПÑО, О ÐŽÑжавМаÑа безбеЎМПÑÑ Ð¿ÐŸÐ·ÐœÐ°Ñа какП аМалОза Ма ÑППбÑаÑаÑПÑ.</string>
+ <string name="status_starting_up">ÐÑÐ±ÐŸÑ Ñе ÑÑаÑÑÑва...</string>
+ <string name="status_activated">ÐПвÑзаМ Ма ÐŒÑежаÑа Ма Tor</string>
+ <string name="status_disabled">ÐÑÐ±ÐŸÑ Ðµ ЎеакÑОвОÑаМ</string>
+ <string name="status_shutting_down">Tor-СеÑвОÑÐŸÑ Ñе ОÑклÑÑÑва</string>
+ <string name="tor_process_starting">СÑаÑÑÑваÑе Ма Tor клОеМÑПÑ...</string>
+ <string name="tor_process_complete">завÑÑеМП.</string>
+ <string name="menu_settings">ÐПÑÑавкО</string>
+ <string name="menu_log">ÐМевМОк</string>
+ <string name="menu_start">ÐапПÑМО</string>
+ <string name="menu_stop">ÐапÑО</string>
+ <string name="menu_about">Ðа</string>
+ <string name="main_layout_download">ÐÑезеЌО</string>
+ <string name="main_layout_upload">ÐÑОкаÑО</string>
+ <string name="button_about">Ðа</string>
+ <string name="menu_exit">Ðзлез</string>
+ <string name="menu_scan">СкеМОÑÐ°Ñ QR Ма ЌПÑÑ</string>
+ <string name="menu_share_bridge">СпПЎелО QR Ма ЌПÑÑ</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">ÐÑкажО</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ÐÐµÐºÐŸÐ»ÐºÑ ÐŽÐµÑалО за Orbot</string>
+ <string name="wizard_details_msg">Orbot e аплОкаÑОÑа ÑП ПÑвПÑеМ кПЎ кПÑа ÑПЎÑжО Tor Obfs4Proxy, BadVPN Tun2Socks, LibEvent О Polipo. ÐвПзЌПжÑва лПкалеМ HTTP пÑПкÑО (8118) О SOCKS пÑПкÑО (9050) вП Tor ÐŒÑежаÑа. Orbot ОÑÑП Ñака ОЌа ЌПжМПÑÑ, Ма ÑÑеЎ ÑП root пÑОÑÑап, Ўа гП ОÑпÑаÑа ÑÐµÐ»ÐžÐŸÑ ÐžÐœÑеÑÐœÐµÑ ÑППбÑаÑÐ°Ñ Ð¿ÑÐµÐºÑ Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ÐпÑÑП</string>
+ <string name="pref_start_boot_title">СÑаÑÑÑÐ²Ð°Ñ Ð³ÐŸ Orbot Ма бÑÑОÑаÑе</string>
+ <string name="pref_start_boot_summary">ÐвÑПЌаÑÑкО ÑÑаÑÑÑваÑÑе гП Orbot О пПвÑзеÑе гП Tor кПга ваÑÐžÐŸÑ Android ÑÑеЎ Ñе Ñе ÑÑаÑÑÑва</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ÐÑОлагПЎÑваÑе Ма ÑазПл</string>
+ <string name="pref_node_configuration_summary">Ðва Ñе МапÑеЎМО пПÑÑавÑваÑа кПО ÐŒÐŸÐ¶Ð°Ñ ÐŽÐ° Ñа ÐœÐ°ÐŒÐ°Ð»Ð°Ñ Ð²Ð°ÑаÑа аМПМОЌМПÑÑ</string>
+ <string name="pref_entrance_node">ÐлезМО ÑазлО</string>
+ <string name="pref_entrance_node_summary">ÐÑпеÑаÑПÑО ПЎ пÑÑÑО, пÑекаÑО, ÐŽÑжавО О аЎÑеÑО за пÑÐ²ÐžÐŸÑ ÑкПк.</string>
+ <string name="pref_entrance_node_dialog">ÐМеÑеÑе влезМО ÑазлО</string>
+ <string name="pref_allow_background_starts_title">ÐПзвПлО пПзаЎОМÑкП ÑÑаÑÑÑваÑе</string>
+ <string name="pref_allow_background_starts_summary">ÐПзвПлО бОлП кПÑа аплОкаÑОÑа Ўа ÐŒÑ ÐºÐ°Ð¶Ðµ Ма Orbot Ўа гП ÑÑаÑÑÑва Tor О ÑеÑвОÑОÑе пПвÑзаМО ÑП МегП</string>
+ <string name="pref_proxy_title">ÐзлезеМ пÑПкÑО Ма ÐŒÑежаÑа (МезаЎПлжОÑелМП)</string>
+ <string name="pref_proxy_type_title">ТОп Ма ОзлезеМ пÑПкÑО</string>
+ <string name="pref_proxy_type_summary">ÐÑПÑПкПл за кПÑОÑÑеÑе Ма пÑПкÑО-ÑеÑвеÑ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">ÐМеÑеÑе гП ÑÐžÐ¿ÐŸÑ ÐœÐ° пÑПкÑО</string>
+ <string name="pref_proxy_host_title">ÐзлезеМ пÑПкÑО Ñ
ПÑÑ</string>
+ <string name="pref_proxy_host_summary">ÐЌе Ма Ñ
ПÑÑ ÐœÐ° ÑеÑвеÑÐŸÑ ÐœÐ° пÑПкÑО</string>
+ <string name="pref_proxy_host_dialog">ÐМеÑеÑе Ñ
ПÑÑ ÐœÐ° пÑПкÑО</string>
+ <string name="pref_proxy_port_title">ÐзлезМа пПÑÑа Ма пÑПкÑО</string>
+ <string name="pref_proxy_port_summary">ÐПÑÑа Ма ÑеÑвеÑÐŸÑ ÐœÐ° пÑПкÑО</string>
+ <string name="pref_proxy_port_dialog">ÐМеÑеÑе пПÑÑа Ма пÑПкÑО</string>
+ <string name="pref_proxy_username_title">KПÑОÑМОÑкП ОЌе Ма ОзлезеМ пÑПкÑО</string>
+ <string name="pref_proxy_username_summary">ÐПÑОÑМОÑкП ОЌе Ма пÑПкÑО (МезаЎПлжОÑелМП)</string>
+ <string name="pref_proxy_username_dialog">ÐМеÑеÑе кПÑОÑМОÑкП ОЌе Ма пÑПкÑО</string>
+ <string name="pref_proxy_password_title">ÐПзОМка Ма ОзлезеМ пÑПкÑО</string>
+ <string name="pref_proxy_password_summary">ÐПзОМка Ма пÑПкÑО (МезаЎПлжОÑелМП)</string>
+ <string name="pref_proxy_password_dialog">ÐМеÑеÑе лПзОМка Ма пÑПкÑО</string>
+ <string name="couldn_t_start_tor_process_">Ðе ЌПже Ўа запПÑМе Tor-пÑПÑеÑПÑ:</string>
+ <string name="error">ÐÑеÑка</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ÐаÑОÑе пПÑÑавкО за ЎПÑÑапМОÑе аЎÑеÑО пÑеЎОзвОкаа гÑеÑка!</string>
+ <string name="your_relay_settings_caused_an_exception_">ÐаÑОÑе пПÑÑавкО за Ñеле пÑеЎОзвОкаа гÑеÑка!</string>
+ <string name="exit_nodes">ÐзлезМО ÑазлО</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ÐÑпеÑаÑПÑО ПЎ пÑÑÑО, пÑекаÑО, ÐŽÑжавО О аЎÑеÑО за пПÑÐ»ÐµÐŽÐœÐžÐŸÑ ÑкПк.</string>
+ <string name="enter_exit_nodes">ÐМеÑеÑе ОзлезМО ÑазлО</string>
+ <string name="exclude_nodes">ÐÑклÑÑО ÑазлО</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ÐÑпеÑаÑПÑО ПЎ пÑÑÑО, пÑекаÑО, ÐŽÑжавО О аЎÑеÑО кПО ÑÑеба Ўа Ñе ОÑклÑÑаÑ</string>
+ <string name="enter_exclude_nodes">ÐМеÑеÑе гО ОÑклÑÑМОÑе ÑазлО</string>
+ <string name="strict_nodes">ÐаЎПлжОÑелМО ÑазлО</string>
+ <string name="use_only_these_specified_nodes">ÐПÑОÑÑеÑе гО *ÑаЌП* ПвОе МавеЎеМО ÑазлО</string>
+ <string name="bridges">ÐПÑÑПвО</string>
+ <string name="use_bridges">ÐПÑОÑÑО ЌПÑÑПвО</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">ÐвПзЌПжО алÑеÑМаÑОвеМ влезПвО Ма Tor ÐŒÑежаÑа</string>
+ <string name="ip_address_and_port_of_bridges">IP-аЎÑеÑа О пПÑÑа Ма ЌПÑÑПвОÑе</string>
+ <string name="enter_bridge_addresses">ÐМеÑеÑе аЎÑеÑО Ма ЌПÑÑПвОÑе</string>
+ <string name="relays">РелеО</string>
+ <string name="relaying">ÐÑепÑаÑаÑе</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ÐвПзЌПжО гП ÑÑÐµÐŽÐŸÑ ÐŽÐ° бОЎе Ñеле без Озлез</string>
+ <string name="relay_port">ÐПÑÑа Ма Ñеле</string>
+ <string name="listening_port_for_your_tor_relay">ÐПÑÑа за ÑлÑÑаÑе Ма ваÑÐžÐŸÑ Ñеле Ма Tor</string>
+ <string name="enter_or_port">ÐМеÑеÑе OR пПÑÑа</string>
+ <string name="relay_nickname">ÐЌе Ма ÑелеÑП</string>
+ <string name="the_nickname_for_your_tor_relay">ÐЌе Ма ваÑеÑП Ñеле за Tor</string>
+ <string name="enter_a_custom_relay_nickname">ÐМеÑеÑе пÑОлагПЎеМП ОЌе за ÑелеÑП</string>
+ <string name="reachable_addresses">ÐПÑÑапМО аЎÑеÑО</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">СÑаÑÑÑваÑÑе гП какП ÐºÐ»ÐžÐµÐœÑ Ð·Ð°ÐŽ безбеЎМПÑеМ ÑОЎ ÑП ПгÑаМОÑеМО пПлОÑО</string>
+ <string name="reachable_ports">ÐПÑÑапМО пПÑÑО</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ÐПÑÑО ЎПÑÑапМО пПзаЎО ПгÑаМОÑÐµÐœÐžÐŸÑ Ð·Ð°ÑÑОÑеМ ÑОЎ</string>
+ <string name="enter_ports">ÐМеÑеÑе пПÑÑО</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">акÑОвОÑаÑÑе гП ÐŽÐœÐµÐ²ÐœÐžÐºÐŸÑ Ð·Ð° ПÑÑÑÑаМÑваÑе гÑеÑкО за Озлез (за Ўа Ñе пÑОкаже ЌПÑа Ўа Ñе кПÑОÑÑО adb ОлО aLogCat)</string>
+ <string name="project_home">ÐПÑеÑМа ÑÑÑаМОÑа(О):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">СПÑÑÐ²ÐµÑ ÐŸÐŽ пÑПОзвПЎОÑел ПЎ 3-Ñа ÑÑÑаМа:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">ÐплОкаÑОÑа Ñака Ўа ПÑвПÑО ÑПкÑОеМа ÑеÑвеÑÑка пПÑÑа %1$s кПМ Tor ÐŒÑежаÑа. Ðва е безбеЎМП ÐŽÐŸÐºÐŸÐ»ÐºÑ Ðž веÑÑваÑе Ма аплОкаÑОÑаÑа.</string>
+ <string name="found_existing_tor_process">ÐÑПМаÑЎеМ пПÑÑПеÑкО Tor-пÑПÑÐµÑ ...</string>
+ <string name="something_bad_happened">Се ÑлÑÑО гÑеÑка. ÐÑПвеÑеÑе гП ЎМевМОкПÑ</string>
+ <string name="unable_to_read_hidden_service_name">Ме ЌПже Ўа Ñе пÑПÑОÑа ОЌеÑП Ма ÑкÑÐžÐµÐœÐžÐŸÑ ÑеÑвОÑ</string>
+ <string name="unable_to_start_tor">Tor Ме ЌПже Ўа Ñе ÑÑаÑÑÑва:</string>
+ <string name="pref_use_persistent_notifications">Ð¡ÐµÐºÐŸÐ³Ð°Ñ ÑÑваÑÑе Ñа ОкПМаÑа вП леМÑаÑа ÑП алаÑкО кПга Orbot е пПвÑзаМ</string>
+ <string name="pref_use_persistent_notifications_title">ÐзвеÑÑÑваÑа ÑÐµÐºÐŸÐ³Ð°Ñ Ð²ÐºÐ»ÑÑеМО</string>
+ <string name="pref_use_expanded_notifications">ÐÑОкажО пÑПÑОÑеМП ОзвеÑÑÑваÑе ÑП ОзлезМаÑа ÐŽÑжава О IP Ма Tor</string>
+ <string name="pref_use_expanded_notifications_title">ÐÑПÑОÑеМО ОзвеÑÑÑваÑа</string>
+ <string name="set_locale_title">ÐазОк</string>
+ <string name="no_internet_connection_tor">ÐеЌа ОМÑеÑÐœÐµÑ Ð²ÑÑка; Tor е вП ЌОÑÑваÑе...</string>
+ <string name="pref_disable_network_title">ÐеЌа ÐвÑПЌаÑÑкП-ÑпОеÑе Ма ÐŒÑежаÑа</string>
+ <string name="pref_disable_network_summary">СÑавеÑе гП Ð¢ÐŸÑ ÐœÐ° ÑежОЌ Ма ÑпОеÑе кПга ÐМÑеÑМеÑÐŸÑ ÐœÐµ е ЎПÑÑапеМ</string>
+ <string name="newnym">Се пÑеÑÑлОвÑе Ма МПв ОЎеМÑОÑÐµÑ ÐœÐ° Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÐеЌа ÐŒÑежМП пПвÑзÑваÑе. СÑавеÑе гП Tor Ма ÑежОЌ Ма ÑпОеÑе...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ÐÑежМПÑП пПвÑзÑваÑе е ЎПбÑП. Tor Ñе бÑЎО...</string>
+ <string name="updating_settings_in_tor_service">ажÑÑОÑаÑе Ма пПÑÑавкОÑе вП Tor ÑеÑвОÑÐŸÑ </string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">ÐПÑÑа Ма кПÑа Ð¢ÐŸÑ Ðž гП МÑЎО ÑвПÑÐŸÑ SOCKS-пÑПкÑО (ÑÑаМЎаÑЎМП: 9050 ОлО 0 за Ўа Ñе ОÑклÑÑО)</string>
+ <string name="pref_socks_dialog">ÐПÑÑавÑваÑе Ма пПÑÑаÑа за SOCKS</string>
+ <string name="pref_transport_title">Tor TransProxy пПÑÑа</string>
+ <string name="pref_transport_summary">ÐПÑÑа Ма кПÑа Tor О гП МÑЎО ÑвПÑÐŸÑ ÑÑаМÑпаÑеМÑеМ пÑПкÑО (ÑÑаМЎаÑЎМП: 9040 ОлО 0 за Ўа Ñе ОÑклÑÑО)</string>
+ <string name="pref_transport_dialog">ÐПÑÑавÑваÑе Ма пПÑÑаÑа за TransProxy</string>
+ <string name="pref_dnsport_title">DNS-пПÑÑа за Tor</string>
+ <string name="pref_dnsport_summary">ÐПÑÑа Ма кПÑа Tor гП МÑЎО ÑвПÑÐŸÑ DNS (ÑÑаМЎаÑЎМП: 5400 ОлО 0 за Ўа Ñе ОÑклÑÑО)</string>
+ <string name="pref_dnsport_dialog">ÐПÑÑавÑваÑе Ма DNS-пПÑÑаÑа </string>
+ <string name="pref_torrc_title">ÐÑОлагПЎеМП пПÑÑавÑваÑе Ма torrc</string>
+ <string name="pref_torrc_summary">СÐÐÐ ÐÐ ÐÐСÐÐРТÐ: вМеÑеÑе ЎОÑекÑМО кПЌаМЎО за пПÑÑавÑваÑе Ма torrc</string>
+ <string name="pref_torrc_dialog">ÐÑОлагПЎеМ torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">ÐжÑÑОÑаМО ЌПÑÑПвО</string>
+ <string name="restart_orbot_to_use_this_bridge_">Ðе ЌПлОЌе пПвÑПÑМП ÑÑаÑÑÑваÑÑе гП Orbot за Ўа Ñе ÐŸÐ²ÐŸÐ·ÐŒÐŸÐ¶Ð°Ñ Ð¿ÑПЌеМОÑе</string>
+ <string name="menu_qr">QR-кПЎПвО</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">ÐкП ваÑаÑа ЌПбОлМа ÐŒÑежа акÑОвМП гП блПкОÑа Tor, ЌПжеÑе Ўа кПÑОÑÑОÑе âÐПÑÑ ÑеÑвеÑâ какП алÑеÑМаÑОвеМ пÑОÑÑап. ÐÐÐÐÐ ÐТРеЎМа ПЎ ПпÑООÑе за пПÑÑавÑваÑе О ÑеÑÑОÑаÑе...</string>
+ <string name="bridge_mode">РежОЌ Ма ÑабПÑа Ма ЌПÑÑПÑ</string>
+ <string name="get_bridges_email">Ð-пПÑÑа</string>
+ <string name="get_bridges_web">Ðеб</string>
+ <string name="activate">ÐкÑОвОÑаÑ</string>
+ <string name="apps_mode">VPN ЌПЎ</string>
+ <string name="send_email">ÐÑпÑаÑеÑе е-пПÑÑа</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">AÐŽÑеÑа Ма ЌПÑÑПвО ЌПжеÑе Ўа ЎПбОваÑе пÑÐµÐºÑ Ðµ-пПÑÑа, веб ОлО ÑП ÑкеМОÑаÑе Ма QR ÐºÐŸÐŽÐŸÑ ÐœÐ° ЌПÑÑПÑ. ÐзбеÑеÑе Ð¿ÐŸÐŽÐŸÐ»Ñ \'Ð-пПÑÑа\' ОлО \'Web\', за Ўа пПбаÑаÑе аЎÑеÑа за ЌПÑÑПÑ. \n\nÐÑкакП Ñе Ñа ЎПбОеÑе аЎÑеÑаÑа, кПпОÑаÑÑе Ñа & О залепеÑе Ñа вП ÐŽÐµÐ»ÐŸÑ \"ÐПÑÑПвО\" вП пПЎеÑÑваÑеÑП Ма Orbot О пПвÑПÑМП ÑÑаÑÑÑваÑÑе.</string>
+ <string name="vpn_default_world">ÐлПбалМП (ÐвÑПЌаÑÑкО)</string>
+ <string name="hidden_services">СкÑОеМО ÑеÑвОÑО</string>
+ <string name="title_activity_hidden_services">СкÑОеМО ÑеÑвОÑО</string>
+ <string name="menu_hidden_services">СкÑОеМО ÑеÑвОÑО</string>
+ <string name="save">ÐаÑÑваÑ</string>
+ <string name="local_port">ÐПкалМа пПÑÑа</string>
+ <string name="onion_port">Onion пПÑÑа</string>
+ <string name="name">ÐЌе</string>
+ <string name="done">ÐавÑÑеМП!</string>
+ <string name="invalid_port">ÐевалОЎМа пПÑÑа</string>
+ <string name="copy_address_to_clipboard">ÐПпОÑÐ°Ñ Ñа аЎÑеÑаÑа за залепÑваÑе</string>
+ <string name="show_auth_cookie">ÐПкажО авÑеМÑОÑМП кПлаÑе</string>
+ <string name="backup_service">РезеÑвМа кПпОÑа</string>
+ <string name="delete_service">ÐзбÑОÑО ÑÑлÑга</string>
+ <string name="backup_saved_at_external_storage">РезеÑвМаÑа кПпОÑа е ÑМОЌеМа Ма МаЎвПÑеÑМа ЌеЌПÑОÑа</string>
+ <string name="backup_restored">ÐÑаÑеМП ПЎ ÑезеÑвМа кПпОÑа</string>
+ <string name="filemanager_not_available">ÐеМаÑеÑÐŸÑ ÐœÐ° ЎаÑПÑекО Ме е ЎПÑÑапеМ</string>
+ <string name="please_grant_permissions_for_external_storage">Ðе ЌПлОЌе ЎаЎеÑе ЎПзвПлО за МаЎвПÑеÑМа ЌеЌПÑОÑа</string>
+ <string name="restore_backup">ÐÑаÑО ÑезеÑвМа кПпОÑа</string>
+ <string name="create_a_backup_first">СПзЎаЎО ÑезеÑвМа кПпОÑа</string>
+ <string name="name_can_t_be_empty">ÐЌеÑП Ме ЌПже Ўа бОЎе пÑазМП</string>
+ <string name="fields_can_t_be_empty">ÐПлОÑаÑа Ме ÐŒÐŸÐ¶Ð°Ñ ÐŽÐ° Ð±ÐžÐŽÐ°Ñ Ð¿ÑазМО</string>
+ <string name="start_tor_again_for_finish_the_process">СÑаÑÑÑÐ²Ð°Ñ Ð³ÐŸ Tor пПвÑПÑМП Ўа гП завÑÑО пÑПÑеÑПÑ</string>
+ <string name="confirm_service_deletion">ÐПÑвÑЎО бÑОÑеÑе Ма ÑÑлÑгаÑа</string>
+ <string name="click_again_for_backup">ÐлОкМО пПвÑПÑМП за ÑезеÑвМа кПпОÑа</string>
+ <string name="service_type">ТОп Ма ÑÑлÑга</string>
+ <string name="auth_cookie">ÐвÑеМÑОÑМП кПлаÑе</string>
+ <string name="copy_cookie_to_clipboard">ÐПпОÑÐ°Ñ ÐºÐŸÐ»Ð°Ñе за залепÑваÑе</string>
+ <string name="auth_cookie_was_not_configured">ÐвÑеМÑОÑМПÑП кПлаÑе Ме е пÑОлагПЎеМП</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Ðе ЌПлОЌе ÑÑаÑÑÑваÑÑе гП пПвÑПÑМП Orbot за Ўа Ñе ÐŸÐ²ÐŸÐ·ÐŒÐŸÐ¶Ð°Ñ Ð¿ÑПЌеМОÑе</string>
+ <string name="client_cookies">ÐлОеМÑÑкО кПлаÑОÑа</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ÐевалОЎМа .onion аЎÑеÑа</string>
+ <string name="cookie_from_QR">ÐÑПÑОÑÐ°Ñ ÐŸÐŽ QR</string>
+ <string name="backup_cookie">ÐапÑавО ÑезеÑвМа кПпОÑа Ма кПлаÑе</string>
+ <string name="delete_cookie">ÐзбÑОÑО кПлаÑе</string>
+ <string name="confirm_cookie_deletion">ÐПÑвÑЎО бÑОÑеÑе Ма кПлаÑе</string>
+ <string name="hosted_services">ХПÑÑОÑаМО ÑÑлÑгО</string>
+ <string name="share_as_qr">СпПЎелО какП QR</string>
+ <string name="disable">ÐМевПзЌПжО</string>
+ <string name="enable">ÐвПзЌПжО</string>
+ <string name="consider_disable_battery_optimizations">РазЌОÑлеÑе за ПМевПзЌПжÑваÑе Ма ПпÑОЌОзаÑООÑе Ма баÑеÑОÑаÑа</string>
+ <string name="consider_enable_battery_optimizations">РазЌОÑлеÑе за ПвПзЌПжÑваÑе Ма ПпÑОЌОзаÑООÑе Ма баÑеÑОÑаÑа</string>
+ <string name="pref_isolate_dest">ÐзПлОÑÐ°Ñ Ð°ÐŽÑеÑО Ма ЎеÑÑОМаÑОÑа</string>
+ <string name="pref_isolate_dest_summary">ÐПÑОÑÑО ÑазлОÑеМ кÑÑг за ÑекПÑа аЎÑеÑа Ма ЎеÑÑОМаÑОÑа</string>
+ <string name="no_transproxy_warning_short">ÐÐÐÐÐÐÐÐ: ТÑаМÑпÑПкÑОÑаÑеÑП пПвеÑе Ме е пПЎЎÑжаМП</string>
+ <string name="no_transproxy_warning">ÐÐÐÐÐÐÐÐ: ТÑаМÑпаÑеМÑМПÑП пÑеМаÑПÑÑваÑее Ме е пПЎЎÑжаМП. ÐаЌеÑÑП ÑПа кПÑОÑÑОÑе Orbot Apps VPN.</string>
+ <string name="pref_connection_padding">ÐаЌÑÑлОÑаМП пПвÑзÑваÑе</string>
+ <string name="pref_connection_padding_summary">Ð¡ÐµÐºÐŸÐ³Ð°Ñ ÐŸÐ²ÐŸÐ·ÐŒÐŸÐ¶Ðž пПвÑзÑваÑе ÑП каЌÑÑлажа пÑПÑОв МекПО ÑПÑЌО Ма аМалОзОÑаÑе Ма ОМÑеÑÐœÐµÑ ÑППбÑаÑаÑПÑ. СÑаМЎаÑЎМП: ÐвÑПЌаÑÑкО</string>
+ <string name="pref_reduced_connection_padding">РеЎÑÑОÑÐ°Ñ Ð¿ÐŸÐ²ÑзÑваÑе ÑП каЌÑÑлажа</string>
+ <string name="pref_reduced_connection_padding_summary">ÐÑклÑÑеÑе гО вÑÑкОÑе Ма ÑелеаÑа пПÑкПÑП О ОÑпÑаÑаÑеÑП Ма каЌÑÑлОÑаМО пакеÑО за Ўа гП МаЌалОÑе кПÑОÑÑеÑеÑП Ма пПЎаÑПÑО О пПÑÑПÑÑваÑкаÑа Ма баÑеÑОÑаÑа</string>
+ <string name="app_shortcuts">Tor-ПвПзЌПжеМО аплОкаÑОО</string>
+ <string name="testing_bridges">ТеÑÑОÑаÑе Ма ЌПÑÑ Ð¿ÐŸÐ²ÑзÑваÑеÑП кПМ Tor...</string>
+ <string name="testing_bridges_success">УÑпеÑМП. ÐПÑÑ Ð¿ÐŸÑÑавкОÑе Ñе ЎПбÑО!</string>
+ <string name="testing_bridges_fail">ÐÐУСÐÐКÐÐ. ÐÑПбаÑÑе ÐŽÑÑга ПпÑОÑа</string>
+ <string name="bridge_direct_connect">ÐПвÑзО ЎОÑекÑМП Ма Tor (ÐаÑЎПбÑП)</string>
+ <string name="bridge_community">ÐПвÑзО пÑÐµÐºÑ ÑеÑвеÑО Ма заеЎМОÑаÑа</string>
+ <string name="bridge_cloud">ÐПвÑзО пÑÐµÐºÑ ÐŸÐ±Ð»Ð°Ðº-ÑеÑвеÑО</string>
+ <string name="bridges_get_new">ÐаÑа МПвО ЌПÑÑПвО... (акП ÑОÑе ÐŽÑÑгО Ме ÑÑпеале)</string>
+ <string name="trouble_connecting">ÐÑПблеЌО ÑП пПвÑзÑваÑеÑП?</string>
+ <string name="full_device_vpn">ЊелПÑеМ VPN ÑÑеЎ</string>
+ <string name="vpn_disabled">VPN ПМевПзЌПжеМ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ml/strings.xml b/app-mini/src/main/res/values-ml/strings.xml
new file mode 100644
index 00000000..0a582739
--- /dev/null
+++ b/app-mini/src/main/res/values-ml/strings.xml
@@ -0,0 +1,21 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_start">àŽàްàŽàŽàŽ¿àŽàµàŽàµàŽ</string>
+ <string name="menu_stop">àŽšàŽ¿àŽ°àµâàŽ€àµàŽ€àµàŽ</string>
+ <string name="menu_about">àŽµàŽ¿àŽµàŽ°àŽ</string>
+ <string name="button_about">àŽµàŽ¿àŽµàŽ°àŽ</string>
+ <string name="btn_cancel">àŽ±àŽŠàµàŽŠàŽŸàŽàµàŽàµàŽ </string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">àŽªàµàŽ€àµàŽµàŽŸàŽ¯àŽ€àµ</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">àŽªàŽ¿àŽ¶àŽàµ</string>
+ <string name="save">àŽžàŽàްàŽàµàŽ·àŽ¿àŽàµàŽàµàŽ</string>
+ <string name="name">Name</string>
+ <string name="disable">àŽªàµàŽ°àŽµàµŒàŽ€àµàŽ€àŽšàŽ°àŽ¹àŽ¿àŽ€àŽ®àŽŸàŽàµàŽàµ </string>
+</resources>
diff --git a/app-mini/src/main/res/values-mn/strings.xml b/app-mini/src/main/res/values-mn/strings.xml
new file mode 100644
index 00000000..29345090
--- /dev/null
+++ b/app-mini/src/main/res/values-mn/strings.xml
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_about">ТÑÑ
ай</string>
+ <string name="button_about">ТÑÑ
ай</string>
+ <string name="btn_cancel">Cancel</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="name">ÐÑÑ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-mr-rIN/strings.xml b/app-mini/src/main/res/values-mr-rIN/strings.xml
new file mode 100644
index 00000000..af3eee19
--- /dev/null
+++ b/app-mini/src/main/res/values-mr-rIN/strings.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">à€à€°à¥à€¬à¥à€ à€à€ à€µà€¿à€šà€Ÿà€®à¥à€²à¥à€¯ à€ªà¥à€°à¥à€à¥à€žà¥ à€
à¥
à€ª à€à€¹à¥ à€à¥ à€à€€à€° à€
à¥
à€ªà¥à€žà€šà€Ÿ à€à€à€à€°à€šà¥à€à€à€Ÿ à€
à€§à€¿à€ à€žà¥à€°à€à¥à€·à€¿à€€à€ªà€£à¥ à€µà€Ÿà€ªà€° à€à€°à€£à¥à€¯à€Ÿà€ž à€žà€à¥à€·à€® à€à€°à€€à¥. à€à€°à¥à€¬à¥à€ à€à€ªà€²à¥à€¯à€Ÿ à€à€à€à€°à€šà¥à€ à€°à€¹à€Šà€Ÿà€°à¥à€à¥ à€à€šà¥à€à¥à€°à€¿à€ªà¥à€ à€à€°à€£à¥à€¯à€Ÿà€žà€Ÿà€ ॠà€à¥à€°à€à€Ÿ à€µà€Ÿà€ªà€° à€à€°à€€à¥ à€à€£à€¿ à€šà€à€€à€° à€à€à€à€°à€Ÿà€€à¥à€² à€žà€à€à€£à€à€Ÿà€à€à¥à€¯à€Ÿ à€®à€Ÿà€²à€¿à€à¥à€Šà¥à€µà€Ÿà€°à¥ à€à€¡à¥ à€®à€Ÿà€°à¥à€š à€²à€ªà€µà€€à¥. à€à¥à€° à€¹à€Ÿ à€à€ à€µà€¿à€šà€Ÿà€®à¥à€²à¥à€¯ à€žà¥à€«à¥à€à€µà¥à€
à€° à€à€£à€¿ à€à€ à€à¥à€²à€Ÿ à€šà¥à€à€µà€°à¥à€ à€à€¹à¥ à€à¥ à€à€ªà€²à¥à€¯à€Ÿà€²à€Ÿ à€šà¥à€à€µà€°à¥à€ à€žà¥à€µà€€à€à€€à¥à€°à€€à€Ÿ à€à€£à€¿ à€à¥à€ªà€šà¥à€¯à€€à€Ÿ, à€à¥à€ªà€šà¥à€¯ à€µà¥à€¯à€µà€žà€Ÿà€¯ à€à¥à€°à€¿à€¯à€Ÿà€à€²à€Ÿà€ª
à€à€£à€¿ à€šà€Ÿà€€à¥à€žà€à€¬à€à€§ à€à€£à€¿ à€°à€¹à€Šà€Ÿà€°à¥ à€µà€¿à€¶à¥à€²à¥à€·à€£à€Ÿà€ž à€®à¥à€¹à€£à¥à€š à€à€³à€à€²à¥à€¯à€Ÿ à€à€Ÿà€£à€Ÿà€°à¥à€¯à€Ÿ à€°à€Ÿà€à¥à€¯ à€žà¥à€°à€à¥à€·à¥à€ž à€§à€®à€à¥ à€Šà¥à€£à€Ÿà€°à¥à€¯à€Ÿ à€šà¥à€à€µà€°à¥à€ à€šà€¿à€°à¥à€à¥à€·à€£à€Ÿà€à¥ à€°à€à¥à€·à€£ à€à€°à€£à¥à€¯à€Ÿà€ž à€®à€Šà€€ à€à€°à€€à¥.</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+</resources>
diff --git a/app-mini/src/main/res/values-ms-rMY/strings.xml b/app-mini/src/main/res/values-ms-rMY/strings.xml
new file mode 100644
index 00000000..8b0fff9d
--- /dev/null
+++ b/app-mini/src/main/res/values-ms-rMY/strings.xml
@@ -0,0 +1,98 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Orbot telah dimulakan..</string>
+ <string name="status_activated">Bersambung ke rangkaian Tor</string>
+ <string name="status_disabled">\"Orbot telah dinyah-aktifkan</string>
+ <string name="tor_process_starting">Memulakan klien Tor..</string>
+ <string name="tor_process_complete">selesai.</string>
+ <string name="menu_settings">Tetapan</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Mula</string>
+ <string name="menu_stop">Henti</string>
+ <string name="menu_about">Tentang</string>
+ <string name="main_layout_download">Muat turun</string>
+ <string name="main_layout_upload">Muat naik</string>
+ <string name="button_about">Tentang</string>
+ <string name="menu_exit">Keluar</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Batal</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Maklumat Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Umum</string>
+ <string name="pref_start_boot_title">Mulakan Orbot semasa Boot</string>
+ <string name="pref_start_boot_summary">Mula Orbot secara automatik dan sambung Tor ketika peranti Android boot</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfigurasi Nod</string>
+ <string name="pref_node_configuration_summary">Ini ialah tetapan lanjutan yang boleh mengurangkan kadar anonymity anda</string>
+ <string name="pref_entrance_node">Nod Kemasukan</string>
+ <string name="pref_entrance_node_summary">Cap jari, nama samaran, negara, dan alamat untuk lompatan pertama</string>
+ <string name="pref_entrance_node_dialog">Masukkan Nod Kemasukan</string>
+ <string name="pref_proxy_title">Laluan keluar jaringan proxy (tambahan)</string>
+ <string name="pref_proxy_type_title">Jenis Proxy</string>
+ <string name="pref_proxy_type_summary">Protokol untuk digunakan pada pelayan proxy: HTTP,HTTPS,Socks4,Socks5</string>
+ <string name="pref_proxy_type_dialog">Masukkan Jenis Proxy</string>
+ <string name="pref_proxy_host_title">Hos Proxy</string>
+ <string name="pref_proxy_host_summary">Nama hos pelayan proxy</string>
+ <string name="pref_proxy_host_dialog">Masukkan Hos Proxy</string>
+ <string name="pref_proxy_port_title">Port Proxy</string>
+ <string name="pref_proxy_port_summary">Port pelayan proxy</string>
+ <string name="pref_proxy_port_dialog">Masukkan port Proxy</string>
+ <string name="pref_proxy_username_title">Laluan keluar kata nama proxy</string>
+ <string name="pref_proxy_username_summary">Kata nama proxy (tambahan)</string>
+ <string name="pref_proxy_username_dialog">Masukkan kata nama proxy</string>
+ <string name="pref_proxy_password_title">Laluan keluar kata laluan proxy</string>
+ <string name="pref_proxy_password_summary">Kata laluan proxy (tambahan)</string>
+ <string name="pref_proxy_password_dialog">Masukkan kata laluan proxy</string>
+ <string name="couldn_t_start_tor_process_">Tidak boleh memulakan proses Tor:</string>
+ <string name="error">Ralat</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Tetapan ReachableAddresses anda menyebabkan pengecualian!</string>
+ <string name="your_relay_settings_caused_an_exception_">Tetapan relay anda menyebabkan pengecualian!</string>
+ <string name="exit_nodes">Keluar Nod</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Cap jari, nama samaran, negara, dan alamat untuk lompatan terakhir</string>
+ <string name="enter_exit_nodes">Masukkan Nod Keluar</string>
+ <string name="exclude_nodes">Keluarkan Nod</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Cap jari, nama samaran, negara dan alamat untuk dikeluarkan</string>
+ <string name="enter_exclude_nodes">Masukkan Nod Keluar</string>
+ <string name="strict_nodes">Nod Ketat</string>
+ <string name="use_only_these_specified_nodes">Guna *hanya* nod-nod ini</string>
+ <string name="bridges">Jambatan</string>
+ <string name="use_bridges">Guna Jambatan</string>
+ <string name="ip_address_and_port_of_bridges">Alamat IP dan pelabuhan jambatan</string>
+ <string name="enter_bridge_addresses">Masukkan Alamat Jambatan</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Relaying</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Membolehkan peranti anda untuk menjadi geganti bukan keluar</string>
+ <string name="relay_port">Relay Port</string>
+ <string name="listening_port_for_your_tor_relay">Mendapatkan port untuk tetapan relay Tor anda</string>
+ <string name="enter_or_port">Masukkan port OR</string>
+ <string name="relay_nickname">Nama samaran relay</string>
+ <string name="the_nickname_for_your_tor_relay">Nama samaran ini untuk relay Tor anda</string>
+ <string name="enter_a_custom_relay_nickname">Masukkan nama samaran gantian untuk relay</string>
+ <string name="reachable_addresses">Alamat yang dapat dicapai</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Jalan sebagai klien dibelakang firewall dengan peraturan ketat</string>
+ <string name="reachable_ports">Port yang dapat dicapai</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Port yang dapat dicapai dibelakang firewall dengan kawalan ketat</string>
+ <string name="enter_ports">Masukkan port</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">benarkan log debug pada output (mesti guna adb atau aLogCat untuk lihat)</string>
+ <string name="project_home">Rumah Projek(s):</string>
+ <string name="third_party_software">3rd-Party-Software: </string>
+ <string name="found_existing_tor_process">Proses Tor sedia ada ditemui..</string>
+ <string name="something_bad_happened">Sesuatu yang buruk berlaku. Semak log.</string>
+ <string name="unable_to_read_hidden_service_name">tidak dapat membaca nama servis tersembunyi</string>
+ <string name="unable_to_start_tor">Tidak dapat memulakan Tor:</string>
+ <string name="pref_use_persistent_notifications">Sentiasa biar ikon pada toolbar apabila Orbot bersambung</string>
+ <string name="pref_use_persistent_notifications_title">Sentiasa On Notifikasi</string>
+ <string name="set_locale_title">Bahasa</string>
+ <string name="hidden_services">Perkhidmatan tersembunyi</string>
+ <string name="title_activity_hidden_services">Perkhidmatan tersembunyi</string>
+ <string name="menu_hidden_services">Perkhidmatan tersembunyi</string>
+ <string name="save">Simpan</string>
+ <string name="name">Nama</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ms/strings.xml b/app-mini/src/main/res/values-ms/strings.xml
new file mode 100644
index 00000000..f9169742
--- /dev/null
+++ b/app-mini/src/main/res/values-ms/strings.xml
@@ -0,0 +1,88 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Orbot telah dimulakan..</string>
+ <string name="status_activated">Bersambung ke rangkaian Tor</string>
+ <string name="status_disabled">\"Orbot telah dinyah-aktifkan</string>
+ <string name="status_shutting_down">Orbot sedang ditutup</string>
+ <string name="tor_process_starting">Memulakan klien Tor..</string>
+ <string name="tor_process_complete">selesai.</string>
+ <string name="menu_settings">Tetapan</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Mula</string>
+ <string name="menu_stop">Henti</string>
+ <string name="menu_about">Tentang</string>
+ <string name="button_about">Tentang</string>
+ <string name="menu_exit">Keluar</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Batal</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Maklumat Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Umum</string>
+ <string name="pref_start_boot_title">Mulakan Orbot semasa Boot</string>
+ <string name="pref_start_boot_summary">Mula Orbot secara automatik dan sambung Tor ketika peranti Android boot</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfigurasi Nod</string>
+ <string name="pref_node_configuration_summary">Ini ialah tetapan lanjutan yang boleh mengurangkan kadar anonymity anda</string>
+ <string name="pref_entrance_node">Nod Kemasukan</string>
+ <string name="pref_entrance_node_summary">Cap jari, nama samaran, negara, dan alamat untuk lompatan pertama</string>
+ <string name="pref_entrance_node_dialog">Masukkan Nod Kemasukan</string>
+ <string name="pref_proxy_type_title">Jenis Proxy</string>
+ <string name="pref_proxy_type_summary">Protokol untuk digunakan pada pelayan proxy: HTTP,HTTPS,Socks4,Socks5</string>
+ <string name="pref_proxy_type_dialog">Masukkan Jenis Proxy</string>
+ <string name="pref_proxy_host_title">Hos Proxy</string>
+ <string name="pref_proxy_host_summary">Nama hos pelayan proxy</string>
+ <string name="pref_proxy_host_dialog">Masukkan Hos Proxy</string>
+ <string name="pref_proxy_port_title">Port Proxy</string>
+ <string name="pref_proxy_port_summary">Port pelayan proxy</string>
+ <string name="pref_proxy_port_dialog">Masukkan port Proxy</string>
+ <string name="couldn_t_start_tor_process_">Tidak boleh memulakan proses Tor:</string>
+ <string name="error">Ralat</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Tetapan ReachableAddresses anda menyebabkan pengecualian!</string>
+ <string name="your_relay_settings_caused_an_exception_">Tetapan relay anda menyebabkan pengecualian!</string>
+ <string name="exit_nodes">Keluar Nod</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Cap jari, nama samaran, negara, dan alamat untuk lompatan terakhir</string>
+ <string name="enter_exit_nodes">Masukkan Nod Keluar</string>
+ <string name="exclude_nodes">Keluarkan Nod</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Cap jari, nama samaran, negara dan alamat untuk dikeluarkan</string>
+ <string name="enter_exclude_nodes">Masukkan Nod Keluar</string>
+ <string name="strict_nodes">Nod Ketat</string>
+ <string name="use_only_these_specified_nodes">Guna *hanya* nod-nod ini</string>
+ <string name="bridges">Jambatan</string>
+ <string name="use_bridges">Guna Jambatan</string>
+ <string name="ip_address_and_port_of_bridges">Alamat IP dan pelabuhan jambatan</string>
+ <string name="enter_bridge_addresses">Masukkan Alamat Jambatan</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Relaying</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Membolehkan peranti anda untuk menjadi geganti bukan keluar</string>
+ <string name="relay_port">Relay Port</string>
+ <string name="listening_port_for_your_tor_relay">Mendapatkan port untuk tetapan relay Tor anda</string>
+ <string name="enter_or_port">Masukkan port OR</string>
+ <string name="relay_nickname">Nama samaran relay</string>
+ <string name="the_nickname_for_your_tor_relay">Nama samaran ini untuk relay Tor anda</string>
+ <string name="enter_a_custom_relay_nickname">Masukkan nama samaran gantian untuk relay</string>
+ <string name="reachable_addresses">Alamat yang dapat dicapai</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Jalan sebagai klien dibelakang firewall dengan peraturan ketat</string>
+ <string name="reachable_ports">Port yang dapat dicapai</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Port yang dapat dicapai dibelakang firewall dengan kawalan ketat</string>
+ <string name="enter_ports">Masukkan port</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">benarkan log debug pada output (mesti guna adb atau aLogCat untuk lihat)</string>
+ <string name="project_home">Rumah Projek(s):</string>
+ <string name="project_urls">https://www.torproject.org/docs/androidâ https://guardianproject.info/apps/orbot/</string>
+ <string name="third_party_software">3rd-Party-Software: </string>
+ <string name="found_existing_tor_process">Proses Tor sedia ada ditemui..</string>
+ <string name="something_bad_happened">Sesuatu yang buruk berlaku. Semak log.</string>
+ <string name="unable_to_read_hidden_service_name">tidak dapat membaca nama servis tersembunyi</string>
+ <string name="unable_to_start_tor">Tidak dapat memulakan Tor:</string>
+ <string name="pref_use_persistent_notifications">Sentiasa biar ikon pada toolbar apabila Orbot bersambung</string>
+ <string name="pref_use_persistent_notifications_title">Sentiasa On Notifikasi</string>
+ <string name="set_locale_title">Tetapan Tempatan</string>
+ <string name="save">Simpan</string>
+ <string name="name">Nama</string>
+</resources>
diff --git a/app-mini/src/main/res/values-my/strings.xml b/app-mini/src/main/res/values-my/strings.xml
new file mode 100644
index 00000000..6f1e25b9
--- /dev/null
+++ b/app-mini/src/main/res/values-my/strings.xml
@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">áá»áááºááŸááá»ááºáá»á¬áž</string>
+ <string name="menu_start">á
áááºáááº</string>
+ <string name="menu_stop">áááºáááº</string>
+ <string name="menu_about">á¡ááŒá±á¬ááºáž</string>
+ <string name="main_layout_download">áá±á«ááºážáá¯ááº</string>
+ <string name="button_about">á¡ááŒá±á¬ááºáž</string>
+ <string name="menu_exit">ááœááºáááº</string>
+ <string name="btn_cancel">áá»ááºááááºážáááº</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">áá±áá¯áá»</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">áá»áá¯á·ááœááºážáá»ááº</string>
+ <string name="set_locale_title">áá¬áá¬á
áá¬áž</string>
+ <string name="kb">áá®ááá¯ááá¯ááº</string>
+ <string name="mb">ááá¹áá«ááá¯ááº</string>
+ <string name="get_bridges_email">á¡á®ážá±áážáá¹</string>
+ <string name="activate">Activate</string>
+ <string name="hidden_services">Hidden Services</string>
+ <string name="title_activity_hidden_services">Hidden Services</string>
+ <string name="menu_hidden_services">Hidden Services</string>
+ <string name="save">áááá¹ážááá¹ážáá«</string>
+ <string name="name">á¡áááº</string>
+</resources>
diff --git a/app-mini/src/main/res/values-nb/poestrings.xml b/app-mini/src/main/res/values-nb/poestrings.xml
new file mode 100644
index 00000000..1805065d
--- /dev/null
+++ b/app-mini/src/main/res/values-nb/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">"Noen ganger trenger du en bro for å komme til Tor."</string>
+ <string name="action_more">"FORTELL MEG MER"</string>
+
+ <string name="vpn_setup">"Du kan sende ethvert program gjennom Tor ved bruk av vår innebygde VPN."</string>
+ <string name="vpn_setup_sub">"Dette vil ikke gjÞre deg anonym, men det vil hjelpe deg gjennom brannmurer."</string>
+ <string name="action_vpn_choose">"VELG PROGRAMMER"</string>
+
+ <string name="hello">"Hei"</string>
+ <string name="welcome">"Velkommen til Tor på Mobilen."</string>
+
+ <string name="browser_the_internet">Surf på Internett sånn som du forventer det.</string>
+ <string name="no_tracking">"Ingen sporing. Ingen sensur."</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-nb/strings.xml b/app-mini/src/main/res/values-nb/strings.xml
new file mode 100644
index 00000000..3e6e390c
--- /dev/null
+++ b/app-mini/src/main/res/values-nb/strings.xml
@@ -0,0 +1,178 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot er et friprog-mellomtjeningsprogram som gjÞr det mulig for andre programmer å bruke Internett sikrere. Orbot bruker Tor for å kryptere din internettrafikk, og skjuler da din trafikk ved å sende trafikken gjennom en lang rekke datamaskiner over hele verden. Tor er fri programvare, og et åpent nettverk som hjelper deg å forsvare deg mot en form for nettverksovervåking som truer din personlige frihet og privatliv, konfidensiell bedriftsvirksomhet og relasjoner, og statlig snoking kjent som trafikkanalyse.</string>
+ <string name="status_starting_up">Orbot starterâŠ</string>
+ <string name="status_activated">Koblet til Tor-nettverket</string>
+ <string name="status_disabled">Orbot er deaktivert</string>
+ <string name="status_shutting_down">Tor-tjenesten avsluttes</string>
+ <string name="tor_process_starting">Starter Tor-klientâŠ</string>
+ <string name="tor_process_complete">fullfÞrt.</string>
+ <string name="menu_settings">Innstillinger</string>
+ <string name="menu_log">Logg</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stopp</string>
+ <string name="menu_about">Om</string>
+ <string name="main_layout_download">Nedlasting</string>
+ <string name="main_layout_upload">Opplasting</string>
+ <string name="button_about">Om</string>
+ <string name="menu_exit">Avslutt</string>
+ <string name="menu_scan">Skann BridgeQR</string>
+ <string name="menu_share_bridge">Del BridgeQR</string>
+ <string name="btn_okay">Ok</string>
+ <string name="btn_cancel">Avbryt</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Noen Orbot-detaljer</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Generelt</string>
+ <string name="pref_start_boot_title">Start Orbot ved oppstart</string>
+ <string name="pref_start_boot_summary">Start Orbot automatisk, og koble til Tor når din Android-enhet starter opp</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Node-oppsett</string>
+ <string name="pref_node_configuration_summary">Dette er avanserte innstillinger som kan redusere din anonymitet</string>
+ <string name="pref_entrance_node">Inngangsnoder</string>
+ <string name="pref_entrance_node_summary">Fingeravtrykk, kallenavn, land, og adresser til det fÞrste hoppet</string>
+ <string name="pref_entrance_node_dialog">Skriv inn inngangsnoder</string>
+ <string name="pref_allow_background_starts_title">Tillat bakgrunnsstarter</string>
+ <string name="pref_allow_background_starts_summary">La alle program gi beskjed til Orbot om å starte Tor og tilknyttede tjenester</string>
+ <string name="pref_proxy_title">Utgående nettverksmellomtjener (valgfritt)</string>
+ <string name="pref_proxy_type_title">Utgående mellomtjenertype</string>
+ <string name="pref_proxy_type_summary">Protokoll for mellomtjener: HTTP, HTTPS, SOCKS4, SOCKS5</string>
+ <string name="pref_proxy_type_dialog">Skriv inn mellomtjenertype</string>
+ <string name="pref_proxy_host_title">Utgående mellomtjenervert</string>
+ <string name="pref_proxy_host_summary">Vertsnavn for mellomtjener</string>
+ <string name="pref_proxy_host_dialog">Skriv inn vertsnavn for mellomtjener</string>
+ <string name="pref_proxy_port_title">Utgående mellomtjenerport</string>
+ <string name="pref_proxy_port_summary">Port for mellomtjener</string>
+ <string name="pref_proxy_port_dialog">Skriv inn port for mellomtjener</string>
+ <string name="pref_proxy_username_title">Brukernavn for utgående mellomtjener</string>
+ <string name="pref_proxy_username_summary">Mellomtjener-brukernavn (valgfritt)</string>
+ <string name="pref_proxy_username_dialog">Skriv inn brukernavn for mellomtjener</string>
+ <string name="pref_proxy_password_title">Passord for utgående mellomtjener</string>
+ <string name="pref_proxy_password_summary">Passord for mellomtjener (valgfritt)</string>
+ <string name="pref_proxy_password_dialog">Skriv inn passord for mellomtjener</string>
+ <string name="couldn_t_start_tor_process_">Kunne ikke starte Tor prosessen:</string>
+ <string name="error">Feil</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Dine \"adresser som kan nås\"-innstillinger forårsaket et unntak!</string>
+ <string name="your_relay_settings_caused_an_exception_">Dine relé-innstillinger forårsaket et unntak!</string>
+ <string name="exit_nodes">Avslutt noder</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Fingeravtrykk, kallenavn, land og adresser for siste hopp</string>
+ <string name="enter_exit_nodes">Skriv inn utgående noder</string>
+ <string name="exclude_nodes">Ekskluder noder</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Fineravtrykk, kallenavn, land og adresser som skal ekskluderes</string>
+ <string name="enter_exclude_nodes">Skriv inn ekskluderte noder</string>
+ <string name="strict_nodes">Strict noder</string>
+ <string name="use_only_these_specified_nodes">Bruk *bare* disse angitte nodene</string>
+ <string name="bridges">Broer</string>
+ <string name="use_bridges">Bruk broer</string>
+ <string name="ip_address_and_port_of_bridges">IP-adresser og broporter</string>
+ <string name="enter_bridge_addresses">Skriv inn broadresser</string>
+ <string name="relays">Reléer</string>
+ <string name="relaying">Videresending</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Aktiver enheten din som et relé uten utgående trafikk</string>
+ <string name="relay_port">Relé-port</string>
+ <string name="listening_port_for_your_tor_relay">Porten Tor-reléet ditt lytter på</string>
+ <string name="enter_or_port">Skriv inn ELLER-port</string>
+ <string name="relay_nickname">Reléets kallenavn</string>
+ <string name="the_nickname_for_your_tor_relay">Kallenavnet for ditt Tor-relé</string>
+ <string name="enter_a_custom_relay_nickname">Skriv inn et egendefinert kallenavn på reléet</string>
+ <string name="reachable_addresses">Antreffbare adresser</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">KjÞr som en klient bak en brannmur med restriktive regler</string>
+ <string name="reachable_ports">Antreffbare porter</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Antreffbare porter bak en restriktiv brannmur</string>
+ <string name="enter_ports">Skriv inn porter</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">aktiver feilsÞkingslogg for output (må bruke adb eller aLogCat for å vise)</string>
+ <string name="project_home">Prosjektets nettside(r):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Tredjepartsprogramvare:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: https://www.openssl.org</string>
+ <string name="found_existing_tor_process">fant eksisterende Tor-prosessâŠ</string>
+ <string name="something_bad_happened">Noe alvorlig skjedde. Sjekk loggen.</string>
+ <string name="unable_to_read_hidden_service_name">klarte ikke å lese skjult tjenestenavn</string>
+ <string name="unable_to_start_tor">Klarte ikke å starte Tor:</string>
+ <string name="pref_use_persistent_notifications">Alltid behold ikonet i verktÞyslinjen når Orbot er tilkoblet</string>
+ <string name="pref_use_persistent_notifications_title">Alltid-PÃ¥ -varslinger</string>
+ <string name="pref_use_expanded_notifications">Vis utvidede merknader med land og IP for utgangstrafikk fra Tor</string>
+ <string name="pref_use_expanded_notifications_title">Utvidede varsler</string>
+ <string name="set_locale_title">Språk</string>
+ <string name="no_internet_connection_tor">Ingen Internett-tilkobling; Tor er i ventemodusâŠ</string>
+ <string name="pref_disable_network_title">Inget automatisk hvilemodus for nettverk</string>
+ <string name="pref_disable_network_summary">Legg Tor i hvilemodus når nettilkobling til internett ikke er tilgjengelig</string>
+ <string name="newnym">Du har byttet til en ny Tor-identitet!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Ingen nettverkstilkobling. Tor gÃ¥r i dvaleâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Nettverkstilkoblingen er bra. Vekker opp TorâŠ</string>
+ <string name="updating_settings_in_tor_service">Oppdaterer innstillinger i Tor service</string>
+ <string name="pref_socks_title">Tor-SOCKS</string>
+ <string name="pref_socks_summary">Port som Tor tilbyr er SOCKS proxy på (standard: 9050 eller 0 for å slå av)</string>
+ <string name="pref_socks_dialog">Portoppsett for SOCKS</string>
+ <string name="pref_transport_title">Tor TransProxy-port</string>
+ <string name="pref_transport_summary">Porten Tor tilbyr transparent mellomtjening på (forvalg: 9040 eller 0 for å skru av)</string>
+ <string name="pref_transport_dialog">Portoppsett for TransProxy</string>
+ <string name="pref_dnsport_title">Tor DNS-port</string>
+ <string name="pref_dnsport_summary">Porten Tor tilbyr sin DNS-tjeneste på (forvalg: 5400 eller 0 for å skru av)</string>
+ <string name="pref_dnsport_dialog">DNS-portoppsett</string>
+ <string name="pref_torrc_title">Egendefinert torrc-oppsett</string>
+ <string name="pref_torrc_summary">BARE FOR EKSPERTER: skriv inn direkte torrc-oppsettslinjer</string>
+ <string name="pref_torrc_dialog">Egendefinert torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Broer oppdatert</string>
+ <string name="restart_orbot_to_use_this_bridge_">GjÞr omstart av Orbot fÞr endringer trer i kraft</string>
+ <string name="menu_qr">QR-koder</string>
+ <string name="bridge_mode">Bro-modus</string>
+ <string name="get_bridges_email">E-post</string>
+ <string name="get_bridges_web">Vev</string>
+ <string name="activate">Aktiver</string>
+ <string name="apps_mode">VPN-modus</string>
+ <string name="send_email">Send e-post</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Du kan få en bro-adresse på e-post, gjennom nettet eller ved å skanne en bro-QR-kode. Velg \'E-post\' eller \'Nett\' nedenfor for å forespÞrre en broadresse.\n\nNår du har en adresse, kopier og lim den inn i \"Broer\" i Orbots innstillinger og start på ny.</string>
+ <string name="hidden_services">Hidden Services</string>
+ <string name="title_activity_hidden_services">Hidden Services</string>
+ <string name="menu_hidden_services">Hidden Services</string>
+ <string name="save">Lagre</string>
+ <string name="local_port">Lokalt port</string>
+ <string name="onion_port">LÞk-port</string>
+ <string name="name">Navn</string>
+ <string name="done">Ferdig!</string>
+ <string name="invalid_port">Ugyldig port</string>
+ <string name="copy_address_to_clipboard">Kopier adresse til utklippstavle</string>
+ <string name="backup_service">Sikkerhetskopieringstjeneste</string>
+ <string name="delete_service">Slett tjeneste</string>
+ <string name="backup_restored">Sikkerhetskopi gjenopprettet</string>
+ <string name="restore_backup">Gjenopprett sikkerhetskopi</string>
+ <string name="create_a_backup_first">Opprett en sikkerhetskopi fÞrst</string>
+ <string name="name_can_t_be_empty">Navnet kan ikke vÊre tomt</string>
+ <string name="fields_can_t_be_empty">Felter kan ikke stå tomme</string>
+ <string name="start_tor_again_for_finish_the_process">Start Tor igjen for å fullfÞre prosessen</string>
+ <string name="confirm_service_deletion">Bekreft sletting av tjeneste</string>
+ <string name="click_again_for_backup">Klikk igjen for å sikkerhetskopiere</string>
+ <string name="service_type">Tjenestetype</string>
+ <string name="copy_cookie_to_clipboard">Kopier kake til utklippstavle</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">GjÞr omstart av Orbot fÞr endringer trer i kraft</string>
+ <string name="client_cookies">Klientinformasjonskapsler</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Ugyldig .onion-adresse</string>
+ <string name="cookie_from_QR">Les fra QR</string>
+ <string name="backup_cookie">Sikkerhetskopier informasjonskapsel</string>
+ <string name="delete_cookie">Slett informasjonskapsel</string>
+ <string name="confirm_cookie_deletion">Bekreft sletting av informasjonskapsel</string>
+ <string name="hosted_services">Vertstjenester</string>
+ <string name="share_as_qr">Del som QR</string>
+ <string name="disable">Skru av</string>
+ <string name="enable">Slå på</string>
+ <string name="bridge_direct_connect">Direkte tilkobling til Tor (best)</string>
+ <string name="trouble_connecting">Tilkoblingsproblemer?</string>
+ <string name="full_device_vpn">VPN for hele enheten</string>
+ <string name="vpn_disabled">VPN Deaktivert</string>
+</resources>
diff --git a/app-mini/src/main/res/values-nl/poestrings.xml b/app-mini/src/main/res/values-nl/poestrings.xml
new file mode 100644
index 00000000..113ba126
--- /dev/null
+++ b/app-mini/src/main/res/values-nl/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Soms heb je een bridge nodig om Tor te gebruiken.</string>
+ <string name="action_more">VERTEL ME MEER</string>
+
+ <string name="vpn_setup">Je kan gelijk welke app door Tor laten gaan met onze ingebouwde VPN.</string>
+ <string name="vpn_setup_sub">Dit zal je niet anoniem maken, maar het zal je wel helpen firewalls te omzeilen.</string>
+ <string name="action_vpn_choose">APPS KIEZEN</string>
+
+ <string name="hello">Hallo</string>
+ <string name="welcome">Welkom bij de mobiele versie van Tor.</string>
+
+ <string name="browser_the_internet">Surf op het internet zoals je het verwacht.</string>
+ <string name="no_tracking">Niet worden gevolgd. Geen censuur.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-nl/strings.xml b/app-mini/src/main/res/values-nl/strings.xml
new file mode 100644
index 00000000..900b6bd7
--- /dev/null
+++ b/app-mini/src/main/res/values-nl/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot is een vrije proxy-app die het andere apps mogelijk maakt het internet veiliger te gebruiken. Orbot gebruikt Tor om je internetverkeer te versleutelen en het vervolgens te verhullen het door het door een serie computers over de hele wereld te routeren. Tor is vrije software en een open netwerk dat je helpt te verdedigen tegen een vorm van netwerktoezicht, genaamd \'verkeersanalyse\', die persoonlijke vrijheid en privacy, vertrouwelijke bedrijfsactiviteiten en relaties en staatsveiligheid bedreigt.</string>
+ <string name="status_starting_up">Orbot is bezig met startenâŠ</string>
+ <string name="status_activated">Verbonden met het Tor-netwerk</string>
+ <string name="status_disabled">Orbot is uitgeschakeld</string>
+ <string name="status_shutting_down">TorService wordt afgesloten</string>
+ <string name="tor_process_starting">Bezig met Tor-cliënt startenâŠ</string>
+ <string name="tor_process_complete">klaar.</string>
+ <string name="menu_settings">Instellingen</string>
+ <string name="menu_log">Logboek</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">Over</string>
+ <string name="main_layout_download">Download</string>
+ <string name="main_layout_upload">Upload</string>
+ <string name="button_about">Over</string>
+ <string name="menu_exit">Sluiten</string>
+ <string name="menu_scan">BridgeQR scannen</string>
+ <string name="menu_share_bridge">BridgeQR delen</string>
+ <string name="btn_okay">Oké</string>
+ <string name="btn_cancel">Annuleren</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Enkele Orbot-gegevens</string>
+ <string name="wizard_details_msg">Orbot is een openbronapplicatie die Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent en Polipo bevat. Het creëert een lokale HTTP-proxy (8118) en een SOCKS-proxy (9050) naar het Tor-netwerk. Orbot heeft ook de mogelijkheid om al het internetverkeer over het Tor-netwerk te sturen.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Algemeen</string>
+ <string name="pref_start_boot_title">Start Orbot bij opstarten</string>
+ <string name="pref_start_boot_summary">Start Orbot en verbind automatisch met Tor wanneer je Android-toestel opstart</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Node-configuratie</string>
+ <string name="pref_node_configuration_summary">Dit zijn geavanceerde instellingen die je anonimiteit kunnen verminderen</string>
+ <string name="pref_entrance_node">Toegangsnodes</string>
+ <string name="pref_entrance_node_summary">Vingerafdrukken, nicks, landen en adressen voor de eerste hop</string>
+ <string name="pref_entrance_node_dialog">Voer toegangsnodes in</string>
+ <string name="pref_allow_background_starts_title">Sta starten op de achtergrond toe</string>
+ <string name="pref_allow_background_starts_summary">Sta elke applicatie toe om Orbot de Torverbinding en -diensten te laten starten </string>
+ <string name="pref_proxy_title">Uitgaande netwerk-proxy (facultatief)</string>
+ <string name="pref_proxy_type_title">Proxy-type</string>
+ <string name="pref_proxy_type_summary">Protocol om te gebruiken voor proxyserver: HTTP, HTTPS, SOCKS4, SOCKS5</string>
+ <string name="pref_proxy_type_dialog">Voer proxy-type in</string>
+ <string name="pref_proxy_host_title">Proxyhost</string>
+ <string name="pref_proxy_host_summary">Proxyserverhostnaam</string>
+ <string name="pref_proxy_host_dialog">Voer proxyhost in</string>
+ <string name="pref_proxy_port_title">Proxypoort</string>
+ <string name="pref_proxy_port_summary">Proxyserverpoort</string>
+ <string name="pref_proxy_port_dialog">Voer proxy poort in</string>
+ <string name="pref_proxy_username_title">Uitgaande proxygebruikersnaam</string>
+ <string name="pref_proxy_username_summary">Proxygebruikersnaam (facultatief)</string>
+ <string name="pref_proxy_username_dialog">Voer proxygebruikersnaam in</string>
+ <string name="pref_proxy_password_title">Uitgaande proxywachtwoord</string>
+ <string name="pref_proxy_password_summary">Proxywachtwoord (facultatief)</string>
+ <string name="pref_proxy_password_dialog">Voer proxywachtwoord in</string>
+ <string name="couldn_t_start_tor_process_">Kon Tor-proces niet starten: </string>
+ <string name="error">Fout</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Je ReachableAddresses-instellingen veroorzaakten een fout!</string>
+ <string name="your_relay_settings_caused_an_exception_">Je relay-instellingen veroorzaakten een fout!</string>
+ <string name="exit_nodes">Exitnodes</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Vingerafdrukken, nicks, landen en adressen voor de laatste hop</string>
+ <string name="enter_exit_nodes">Voer exitnode in</string>
+ <string name="exclude_nodes">Uitgesloten nodes</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Vingerafdrukken, nicks, landen en adressen om uit te sluiten</string>
+ <string name="enter_exclude_nodes">Voer uitgesloten nodes in</string>
+ <string name="strict_nodes">Strikte nodes</string>
+ <string name="use_only_these_specified_nodes">Gebruik *enkel* deze opgegeven nodes</string>
+ <string name="bridges">Bridges</string>
+ <string name="use_bridges">Gebruik bridges</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Alternatieve toegangen tot het Tor-netwerk inschakelen</string>
+ <string name="ip_address_and_port_of_bridges">IP-adres en poort van bridges</string>
+ <string name="enter_bridge_addresses">Voer bridge-adres in</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Relayen</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Stel je toestel in staat om een non-exit relay te zijn</string>
+ <string name="relay_port">Relay-poort</string>
+ <string name="listening_port_for_your_tor_relay">Luisterpoort van jouw Tor-relay</string>
+ <string name="enter_or_port">Voer OR-poort in</string>
+ <string name="relay_nickname">Relay-bijnaam</string>
+ <string name="the_nickname_for_your_tor_relay">De bijnaam voor jouw Tor-relay</string>
+ <string name="enter_a_custom_relay_nickname">Voer een eigen relay-bijnaam in</string>
+ <string name="reachable_addresses">Bereikbare adressen</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Draai als een cliënt achter een firewall met beperkend beleid</string>
+ <string name="reachable_ports">Bereikbare poorten</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Poorten bereikbaar achter een beperkende firewall</string>
+ <string name="enter_ports">Voer poorten in</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">schakel debug log naar uitvoer in (adb of aLogCat is nodig om dit te bekijken)</string>
+ <string name="project_home">Project homepagina(\'s): </string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software van 3e partijen: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Een app wil de verborgenserverpoort %1$s tot het Tor-netwerk openen. Dit is veilig als je de app vertrouwt.</string>
+ <string name="found_existing_tor_process">bestaand Tor-proces gevondenâŠ</string>
+ <string name="something_bad_happened">Er is een fout opgetreden. Controleer de log</string>
+ <string name="unable_to_read_hidden_service_name">Kan verborgen dienst-naam niet lezen</string>
+ <string name="unable_to_start_tor">Kan Tor niet starten:</string>
+ <string name="pref_use_persistent_notifications">Houd icoon in taakbalk zolang Orbot verbonden is</string>
+ <string name="pref_use_persistent_notifications_title">Meldingen altijd aan</string>
+ <string name="pref_use_expanded_notifications">Toon uitgebreide melding met Tor-exitland en IP</string>
+ <string name="pref_use_expanded_notifications_title">Uitgebreide meldingen</string>
+ <string name="set_locale_title">Taal</string>
+ <string name="no_internet_connection_tor">Geen internetverbinding; Tor is in de slaapstand...</string>
+ <string name="pref_disable_network_title">Geen netwerk automatisch slapen</string>
+ <string name="pref_disable_network_summary">Laat Tor slapen als er geen internetverbinding beschikbaar is</string>
+ <string name="newnym">Je bent naar een nieuwe Tor identiteit gewisseld!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Geen internetverbinding. Tor wordt te slapen gelegdâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Netwerkverbinding is in orde. Tor wordt wakker gemaaktâŠ</string>
+ <string name="updating_settings_in_tor_service">instellingen in Tor-dienst worden bijgewerkt</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Poort waarop Tor de SOCKS-proxy aanbiedt (standaard: 9050 of 0 om uit te schakelen)</string>
+ <string name="pref_socks_dialog">SOCKS-poortconfiguratie</string>
+ <string name="pref_transport_title">Tor TransProxy-poort</string>
+ <string name="pref_transport_summary">Poort waarop Tor de transparante proxy aanbiedt (standaard: 9040 of 0 om uit te schakelen)</string>
+ <string name="pref_transport_dialog">TransProxy-poortconfiguratie</string>
+ <string name="pref_dnsport_title">Tor DNS-poort</string>
+ <string name="pref_dnsport_summary">Poort waarop Tor de DNS aanbiedt (standaard: 5400 of 0 om uit te schakelen)</string>
+ <string name="pref_dnsport_dialog">DNS-poortconfiguratie</string>
+ <string name="pref_torrc_title">Torrc aangepaste configuratie</string>
+ <string name="pref_torrc_summary">ENKEL VOOR GEVORDERDEN: voer rechtstreeks torrc-configuratieregels in</string>
+ <string name="pref_torrc_dialog">Aangepaste Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridges bijgewerkt</string>
+ <string name="restart_orbot_to_use_this_bridge_">Herstart Orbot om de wijzigingen in te schakelen</string>
+ <string name="menu_qr">QR-codes</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Als je mobiele netwerk Tor actief blokkeert, kan je een \'bridge-server\' gebruiken als alternatieve toegang. SELECTEER een van de opties om te configureren en te testen..,.</string>
+ <string name="bridge_mode">Bridge-modus</string>
+ <string name="get_bridges_email">E-mail</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Activeren</string>
+ <string name="apps_mode">VPN-modus</string>
+ <string name="send_email">E-mail versturen</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Je kan een bridge-adres verkrijgen door e-mail, het web of door een bridge-QR-code te scannen. Kies \'E-mail\' of \'Web\' hieronder om een bridge-adres aan te vragen.\n\nEenmaal je een adres hebt kopieer en plak je het in de \"Bridges\"-optie in de Orbot-instellingen, waarna je Orbot herstart.</string>
+ <string name="vpn_default_world">Algemeen (automatisch)</string>
+ <string name="hidden_services">Verborgen diensten</string>
+ <string name="title_activity_hidden_services">Verborgen diensten</string>
+ <string name="menu_hidden_services">Verborgen diensten</string>
+ <string name="save">Opslaan</string>
+ <string name="local_port">Lokale poort</string>
+ <string name="onion_port">Onion-poort</string>
+ <string name="name">Naam</string>
+ <string name="done">Klaar!</string>
+ <string name="invalid_port">Ongeldige poort</string>
+ <string name="copy_address_to_clipboard">Adres kopiëren naar klembord</string>
+ <string name="show_auth_cookie">Authenticatiecookie tonen</string>
+ <string name="backup_service">Back-updienst</string>
+ <string name="delete_service">Dienst verwijderen</string>
+ <string name="backup_saved_at_external_storage">Back-up opgeslagen op externe opslag</string>
+ <string name="backup_restored">Back-up hersteld</string>
+ <string name="filemanager_not_available">Bestandsbeheerder niet beschikbaar</string>
+ <string name="please_grant_permissions_for_external_storage">Verleen toestemmingen voor externe opslag</string>
+ <string name="restore_backup">Back-up herstellen</string>
+ <string name="create_a_backup_first">Maak eerst een back-up aan</string>
+ <string name="name_can_t_be_empty">Naam kan niet leeg zijn</string>
+ <string name="fields_can_t_be_empty">Velden kunnen niet leeg zijn</string>
+ <string name="start_tor_again_for_finish_the_process">Start Tor opnieuw om het proces te voltooien</string>
+ <string name="confirm_service_deletion">Bevestig verwijderen van dienst</string>
+ <string name="click_again_for_backup">Klik opnieuw voor back-up</string>
+ <string name="service_type">Diensttype</string>
+ <string name="auth_cookie">Authenticatiecookie</string>
+ <string name="copy_cookie_to_clipboard">Cookie kopiëren naar klembord</string>
+ <string name="auth_cookie_was_not_configured">Authenticatiecookie is niet ingesteld</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Herstart Orbot om de wijzigingen in te schakelen</string>
+ <string name="client_cookies">Cliëntcookies</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Ongeldig .onion-adres</string>
+ <string name="cookie_from_QR">Lezen van QR-code</string>
+ <string name="backup_cookie">Back-up maken van cookie</string>
+ <string name="delete_cookie">Cookie verwijderen</string>
+ <string name="confirm_cookie_deletion">Bevestig verwijderen van cookie</string>
+ <string name="hosted_services">Gehoste diensten</string>
+ <string name="share_as_qr">Delen als QR-code</string>
+ <string name="disable">Uitschakelen</string>
+ <string name="enable">Inschakelen</string>
+ <string name="consider_disable_battery_optimizations">Overweeg accubesparing uit te schakelen</string>
+ <string name="consider_enable_battery_optimizations">Overweeg accubesparing in te schakelen</string>
+ <string name="pref_isolate_dest">Geïsoleerde bestemmingsadressen</string>
+ <string name="pref_isolate_dest_summary">Gebruik een ander circuit voor elk bestemmingsadres</string>
+ <string name="no_transproxy_warning_short">WAARSCHUWING: transproxyen wordt niet meer ondersteund</string>
+ <string name="no_transproxy_warning">WAARSCHUWING: transproxyen wordt niet meer ondersteund. Gebruik de Orbot-VPN.</string>
+ <string name="pref_connection_padding">Verbindingsopvulling</string>
+ <string name="pref_connection_padding_summary">Schakelt verbindingsopvulling altijd in om te verdedigen tegen krachtiger vormen van verkeersanalyse. Standaard: automatisch</string>
+ <string name="pref_reduced_connection_padding">Beperkte verbindingsopvulling</string>
+ <string name="pref_reduced_connection_padding_summary">Sluit relayverbindingen sneller en stuurt minder opvullingspakketten om gegevens- en accuverbruik te verminderen</string>
+ <string name="app_shortcuts">Tor-gebruikende apps</string>
+ <string name="testing_bridges">Bridgeverbinding met Tor testen....</string>
+ <string name="testing_bridges_success">Voltooid. Bridgeconfiguratie is in orde!</string>
+ <string name="testing_bridges_fail">MISLUKT. Probeer een andere optie</string>
+ <string name="bridge_direct_connect">Rechtstreeks verbinden met Tor (best)</string>
+ <string name="bridge_community">Verbinden via gemeenschapsservers</string>
+ <string name="bridge_cloud">Verbinden via cloudservers</string>
+ <string name="bridges_get_new">Nieuwe bridges opvragen... (als alle andere opties mislukken)</string>
+ <string name="trouble_connecting">Problemen met verbinden?</string>
+ <string name="full_device_vpn">Volledigapparaats-VPN</string>
+ <string name="vpn_disabled">VPN uitgeschakeld</string>
+</resources>
diff --git a/app-mini/src/main/res/values-pa/strings.xml b/app-mini/src/main/res/values-pa/strings.xml
new file mode 100644
index 00000000..8b163418
--- /dev/null
+++ b/app-mini/src/main/res/values-pa/strings.xml
@@ -0,0 +1,20 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="menu_settings">àšªàš°àš¿àšžàš¥àš¿àš€à©</string>
+ <string name="menu_about">àšàšž àš¬àšŸàš°à©</string>
+ <string name="button_about">àšàšž àš¬àšŸàš°à©</string>
+ <string name="menu_exit">àš¬à©°àšŠ àšàš°à©</string>
+ <string name="btn_cancel">àš°à©±àšŠ àšàš°à©</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">àšàš²àš€à©:</string>
+ <string name="set_locale_title">àšàšŸàšžàšŒàšŸ</string>
+ <string name="save">àšžà©°àšàšŸàš²à©</string>
+ <string name="name">àššàšŸàš</string>
+</resources>
diff --git a/app-mini/src/main/res/values-pl/strings.xml b/app-mini/src/main/res/values-pl/strings.xml
new file mode 100644
index 00000000..ae138544
--- /dev/null
+++ b/app-mini/src/main/res/values-pl/strings.xml
@@ -0,0 +1,150 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot jest darmowÄ
aplikacjÄ
proxy która wspomaga inne aplikacje do uÅŒywania internetu bezpiecznie. Orbot uÅŒywa Tora do szyfrowania Twojego ruchu internetowego i nastÄpnie przepuszczania go przez wiele innych komputereów pororzucanych na caÅym Åwiecie. Tor jest darmowym oprogramowaniem i otwartÄ
sieciÄ
która pomaga Tobie w obronie przed monitoringiem sieci która zagrarza osobistej wolnoÅci i prywatnoÅci, poufnym biznesowym aktywnoÅciom.</string>
+ <string name="status_starting_up">Orbot startuje...</string>
+ <string name="status_activated">PodÅÄ
czony do sieci Tor</string>
+ <string name="status_disabled">Orbot wyÅÄ
czony</string>
+ <string name="status_shutting_down">TorService wyÅÄ
cza siÄ</string>
+ <string name="tor_process_starting">Uruchamianie klienta sieci Tor...</string>
+ <string name="tor_process_complete">gotowe.</string>
+ <string name="menu_settings">Ustawienia</string>
+ <string name="menu_log">Logi</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">O programie</string>
+ <string name="main_layout_download">Pobieranie (prÄdkoÅÄ/suma)</string>
+ <string name="main_layout_upload">WysyÅanie (prÄdkoÅÄ/suma)</string>
+ <string name="button_about">O programie</string>
+ <string name="menu_exit">WyjÅcie</string>
+ <string name="menu_scan">Skanuj BridgeQR</string>
+ <string name="menu_share_bridge">Podziel siÄ BridgeQR</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">Anuluj</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Niektóre szczegóÅy o Orbocie</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Ogólne</string>
+ <string name="pref_start_boot_title">Uruchamiaj Orbota przy starcie</string>
+ <string name="pref_start_boot_summary">Automatycznie uruchamiaj Orbota i ÅÄ
cz siÄ z Torem, gdy Twoje urzÄ
dzenie z Androidem siÄ uruchomi</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfiguracja wÄzÅa</string>
+ <string name="pref_node_configuration_summary">SÄ
to zaawansowane ustawienia, które mogÄ
zmniejszyÄ TwojÄ
anonimowoÅÄ</string>
+ <string name="pref_entrance_node">WÄzÅy wejÅciowe</string>
+ <string name="pref_entrance_node_summary">Odciski palców, nicki, paÅstwa i adresy na pierwszy raz</string>
+ <string name="pref_entrance_node_dialog">Wpisz WÄzÅy WejÅciowe</string>
+ <string name="pref_allow_background_starts_title">Pozwól na start z tle</string>
+ <string name="pref_allow_background_starts_summary">Pozwól kaÅŒdej aplikacji powiedzieÄ, aby Orbot uruchomiÅ Tor i inne zwiÄ
zane z nim usÅugi</string>
+ <string name="pref_proxy_title">WychodzÄ
cy serwer sieciowy proxy</string>
+ <string name="pref_proxy_type_title">WychodzÄ
ce Typy Proxy</string>
+ <string name="pref_proxy_type_summary">ProtokóŠuŌywany dla serwera proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Wpis Typ Proxy</string>
+ <string name="pref_proxy_host_title">WychodzÄ
cy Proxy Host</string>
+ <string name="pref_proxy_host_summary">Nazwa hosta serwera proxy</string>
+ <string name="pref_proxy_host_dialog">Wpisz Hosta Proxy</string>
+ <string name="pref_proxy_port_title">WychodzÄ
ce Porty Proxy</string>
+ <string name="pref_proxy_port_summary">Port serwera Proxy</string>
+ <string name="pref_proxy_port_dialog">Wpisz port Proxy</string>
+ <string name="pref_proxy_username_title">Nazwa uÅŒytkownika WychodzÄ
cego Proxy</string>
+ <string name="pref_proxy_username_summary">Nazwa uÅŒytkownika proxy (opcjonalna)</string>
+ <string name="pref_proxy_username_dialog">Wpisz nazwÄ uÅŒytkownika Proxy</string>
+ <string name="pref_proxy_password_title">HasÅo WychodzÄ
cego Proxy</string>
+ <string name="pref_proxy_password_summary">HasÅo Proxy (opcjonalne)</string>
+ <string name="pref_proxy_password_dialog">Wpisz hasÅo Proxy</string>
+ <string name="couldn_t_start_tor_process_">Nie moÅŒna byÅo zainicjowaÄ procesu Tora:</string>
+ <string name="error">BÅÄ
d</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Twoje ustawienia dostÄpnych adresów spowodowaÅy wyjÄ
tek!</string>
+ <string name="your_relay_settings_caused_an_exception_">Ustawienia Twojego przekaźnika spowodowaÅy wyjÄ
tek!</string>
+ <string name="exit_nodes">WÄzÅy WyjÅciowe</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Odciski palców, nicki, paÅstwa i adresy na ostatni skok</string>
+ <string name="enter_exit_nodes">Wpisz wÄzÅy wyjÅciowe.</string>
+ <string name="exclude_nodes">Wyklucz wÄzÅy</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Odciski palców, nicki, paÅstwa i adresy do wykluczenia.</string>
+ <string name="enter_exclude_nodes">Wpisz wykluczone wÄzÅy.</string>
+ <string name="strict_nodes">ÅcisÅe wÄzÅy</string>
+ <string name="use_only_these_specified_nodes">UÅŒyj *tylko* tych okreÅlonych wÄzÅów</string>
+ <string name="bridges">Mostki</string>
+ <string name="use_bridges">UŌyj mostków</string>
+ <string name="ip_address_and_port_of_bridges">Adres IP i port mostków</string>
+ <string name="enter_bridge_addresses">Wpisz adresy mostków</string>
+ <string name="relays">Przekaźniki</string>
+ <string name="relaying">Przekazywanie</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Pozwól swojemu urzÄ
dzeniu zostaÄ bezwyjÅciowym przekaźnikiem</string>
+ <string name="relay_port">Port Przekaźników</string>
+ <string name="listening_port_for_your_tor_relay">NasÅuchiwanie portu Twojego przekaźnika</string>
+ <string name="enter_or_port">Wpisz port OR</string>
+ <string name="relay_nickname">Nick przekaźnika</string>
+ <string name="the_nickname_for_your_tor_relay">Nick Twojego przekaźnika Tora</string>
+ <string name="enter_a_custom_relay_nickname">Wpisz standardowÄ
nazwÄ przekaźnika</string>
+ <string name="reachable_addresses">OsiÄ
galne adresy:</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">WÅÄ
cz jako klienta za firewallem z restrykcyjnÄ
politykÄ
</string>
+ <string name="reachable_ports">OsiÄ
galne porty</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Porty dostÄpne za ograniczajÄ
cym firewallem</string>
+ <string name="enter_ports">Wpisz porty</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">wÅÄ
cz zdebugowany log do wydajnoÅci (musisz uÅŒywaÄ adb lub aLogCat, by go zobaczyÄ)</string>
+ <string name="project_home">Strony domowe projektu:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Oprogramowanie 3rd-Party</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">znaleziono istniejÄ
cy proces Tora...</string>
+ <string name="something_bad_happened">CoÅ nie poszÅo nie tak. Sprawdź logi</string>
+ <string name="unable_to_read_hidden_service_name">uniemoŌliw czytanie nazw ukrytych serwisów</string>
+ <string name="unable_to_start_tor">Nie moÅŒna wystartowaÄ aplikacji Tor:</string>
+ <string name="pref_use_persistent_notifications">Zawsze trzymaj ikonÄ w pasku powiadomieÅ gdy Orbot jest poÅÄ
czony</string>
+ <string name="pref_use_persistent_notifications_title">Powiadomienia zawsze aktywne</string>
+ <string name="pref_use_expanded_notifications">PokaŌ rozszerzone powiadomienie z krajem Tor exit node oraz jego IP</string>
+ <string name="pref_use_expanded_notifications_title">Rozszerzone Powiadomienia</string>
+ <string name="set_locale_title">JÄzyk</string>
+ <string name="no_internet_connection_tor">Brak poÅÄ
czenia internetowego; Tor jest w trybie oczekiwania...</string>
+ <string name="pref_disable_network_title">Brak Auto-UÅpienia Sieci</string>
+ <string name="pref_disable_network_summary">Ustaw Tor\'a w tryb uÅpienia kiedy poÅÄ
czenie internetowe bÄdzie niedostÄpne</string>
+ <string name="newnym">Nowa toÅŒsamoÅÄ Tor\'a zostaÅa zmieniona!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Brak poÅÄ
czenia internetowego. Tor bÄdzie w trybie snu...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">PoÅÄ
czenie internetowe jest dobre. Trwa budzenie Tora...</string>
+ <string name="updating_settings_in_tor_service">aktualizowanie ustawieÅ w serwisie Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Port który oferuje SOCKS proxy (domyÅlnie: 9050 lub 0, aby wyÅÄ
czyÄ)</string>
+ <string name="pref_socks_dialog">Konfiguracja portu SOCKS</string>
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_summary">Port który oferuje Transparent Proxy (domyÅlnie: 9040 lub 0, aby wyÅÄ
czyÄ)</string>
+ <string name="pref_transport_dialog">Konfiguracja portu TransProxy</string>
+ <string name="pref_dnsport_title">Tor DNS Port</string>
+ <string name="pref_dnsport_summary">Port na którym Tor oferuje swój DNS (domyÅlnie: 5400 lub 0, aby wyÅÄ
czyÄ)</string>
+ <string name="pref_dnsport_dialog">Konfiguracja portu DNS</string>
+ <string name="pref_torrc_title">Konfiguracja Torrc klienta</string>
+ <string name="pref_torrc_summary">TYLKO DLA EKSPERTÃW: wpisz linijki konfiguracyjne torrc</string>
+ <string name="pref_torrc_dialog">Torrc klienta</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Zaktualizowane Bridges</string>
+ <string name="restart_orbot_to_use_this_bridge_">ProszÄ zrestartowaÄ Orbot, aby zmiany mogÅy wejÅÄ w ÅŒycie</string>
+ <string name="menu_qr">Kody QR</string>
+ <string name="bridge_mode">Tryb Bridge</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Aktywuj</string>
+ <string name="apps_mode">Tryb VPN</string>
+ <string name="send_email">WyÅlij Email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">MoÅŒesz uzyskaÄ adres Bridge poprzez email, internet, lub poprzez zeskanowanie kodu QR. Wybierz \'Email\' lub \'Internet\' poniÅŒej, aby poprosiÄ o adres bridge\'a.\n\nJak juÅŒ bÄdziesz mieÄ ten adres to skopiuj i wklej go do \"Bridges\" we wÅaÅciwoÅciach Orbota a nastÄpnie go zrestartuj.</string>
+ <string name="hidden_services">Ukryte UsÅugi</string>
+ <string name="title_activity_hidden_services">Ukryte UsÅugi</string>
+ <string name="menu_hidden_services">Ukryte UsÅugi</string>
+ <string name="save">Zapisz</string>
+ <string name="local_port">Lokalne Porty</string>
+ <string name="name">Nazwa</string>
+ <string name="done">Zrobiono!</string>
+ <string name="invalid_port">NieprawidÅowy Port</string>
+ <string name="copy_address_to_clipboard">Skopiuj adres do schowka</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ProszÄ zrestartowaÄ Orbot, aby zmiany mogÅy wejÅÄ w ÅŒycie</string>
+ <string name="disable">WyÅÄ
cz</string>
+ <string name="enable">WÅÄ
cz</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ps/strings.xml b/app-mini/src/main/res/values-ps/strings.xml
new file mode 100644
index 00000000..e832af24
--- /dev/null
+++ b/app-mini/src/main/res/values-ps/strings.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="btn_cancel">Cancel</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="name">Name</string>
+</resources>
diff --git a/app-mini/src/main/res/values-pt-rBR/poestrings.xml b/app-mini/src/main/res/values-pt-rBR/poestrings.xml
new file mode 100644
index 00000000..a6d12ea3
--- /dev/null
+++ b/app-mini/src/main/res/values-pt-rBR/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Em alguns momentos você precisa de um bridge para poder chegar ao Tor.</string>
+ <string name="action_more">FALE MAIS SOBRE</string>
+
+ <string name="vpn_setup">Você pode habilitar qualquer aplicativo para passar pela rede Tor utilizando a nossa VPN integrada.</string>
+ <string name="vpn_setup_sub">Isso não te faz anÎnimo, mas irá te ajudar a transpassar firewalls.</string>
+ <string name="action_vpn_choose">ESCOLHA OS APLICATIVOS</string>
+
+ <string name="hello">Olá</string>
+ <string name="welcome">Seja bem vindo ao Tor para dispositivos móveis.</string>
+
+ <string name="browser_the_internet">Navegue na Internet como você espera.</string>
+ <string name="no_tracking">Sem rastreamento. Sem censura.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-pt-rBR/strings.xml b/app-mini/src/main/res/values-pt-rBR/strings.xml
new file mode 100644
index 00000000..1528f42d
--- /dev/null
+++ b/app-mini/src/main/res/values-pt-rBR/strings.xml
@@ -0,0 +1,185 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot é um aplicativo de proxy livre que capacita outros aplicativos a usar a internet com mais segurança. Orbot usa o Tor para criptografar seu tráfego na internet e então o esconde \"saltando\" entre uma série de computadores ao redor do mundo. Tor é um software livre e de rede aberta que ajuda você a se defender de certas formas de vigilância que ameaçam privacidade e liberdade pessoais, atividades e relações comerciais confidenciais e segurança estatal conhecida como análise de tráfego.</string>
+ <string name="status_starting_up">Orbot está iniciando...</string>
+ <string name="status_activated">Conectado à rede Tor</string>
+ <string name="status_disabled">Orbot está desativado</string>
+ <string name="status_shutting_down">TorService está desligando</string>
+ <string name="tor_process_starting">Iniciando cliente Tor...</string>
+ <string name="tor_process_complete">completo.</string>
+ <string name="menu_settings">Configurações</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Iniciar</string>
+ <string name="menu_stop">Parar</string>
+ <string name="menu_about">Sobre</string>
+ <string name="main_layout_download">Download</string>
+ <string name="main_layout_upload">Upload</string>
+ <string name="button_about">Sobre</string>
+ <string name="menu_exit">Sair</string>
+ <string name="menu_scan">Escanear BridgeQR</string>
+ <string name="menu_share_bridge">Compartilhar BridgeQR</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Cancelar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Alguns detalhes do Orbot</string>
+ <string name="wizard_details_msg">Orbot é um software de código aberto que contem Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent e Polipo. Ele fornece um proxy local HTTP (8118) e um proxy SOCKS (9050) como acesso a rede Tor. Orbot também tem a habilidade, em dispositivos com acesso root, de enviar todo o trafego de Internet via rede Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Geral</string>
+ <string name="pref_start_boot_title">Iniciar Orbot no Boot</string>
+ <string name="pref_start_boot_summary">Automaticamente iniciar o Orbot e conectar o Tor quando seu Android bootar.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configuração de Nó</string>
+ <string name="pref_node_configuration_summary">Aqui estão as configurações avançadas que podem reduzir seu anonimato.</string>
+ <string name="pref_entrance_node">Nós de Entrada</string>
+ <string name="pref_entrance_node_summary">Impressões digitais, apelidos, paÃses e endereços para a primeira etapa</string>
+ <string name="pref_entrance_node_dialog">Insira os Nós de Entrada</string>
+ <string name="pref_allow_background_starts_title">Permitir estrelas em segundo plano</string>
+ <string name="pref_allow_background_starts_summary">Deixar um aplicativo dizer Orbot para iniciar o Tor e seus serviços relacionados</string>
+ <string name="pref_proxy_title">Proxy de saÃda da rede (Opcional)</string>
+ <string name="pref_proxy_type_title">Tipo de Proxy</string>
+ <string name="pref_proxy_type_summary">Protocolo para usar no servidor proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Insira o Tipo de Proxy</string>
+ <string name="pref_proxy_host_title">Proxy Host</string>
+ <string name="pref_proxy_host_summary">Endereço do servidor Proxy</string>
+ <string name="pref_proxy_host_dialog">Insira o Host do Proxy</string>
+ <string name="pref_proxy_port_title">Porta do Proxy</string>
+ <string name="pref_proxy_port_summary">Porta do servidor Proxy</string>
+ <string name="pref_proxy_port_dialog">Insira a porta do Proxy</string>
+ <string name="pref_proxy_username_title">Nome de usuário do Proxy de saÃda</string>
+ <string name="pref_proxy_username_summary">Nome de usuário do Proxy (Opcional)</string>
+ <string name="pref_proxy_username_dialog">Digite o nome de usuário do Proxy</string>
+ <string name="pref_proxy_password_title">Senha do Proxy de saÃda</string>
+ <string name="pref_proxy_password_summary">Senha do Proxy (Opcional)</string>
+ <string name="pref_proxy_password_dialog">Digite a senha do Proxy</string>
+ <string name="couldn_t_start_tor_process_">Não foi possÃvel iniciar o processo Tor: </string>
+ <string name="error">Erro</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Suas configurações de Endereços AcessÃveis causou uma exceção!</string>
+ <string name="your_relay_settings_caused_an_exception_">Suas configurações de retransmissão causaram uma exceção!</string>
+ <string name="exit_nodes">Nós de SaÃda</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Impressões digitais, apelidos, paÃses e endereços para a última etapa.</string>
+ <string name="enter_exit_nodes">Insira os Nós de SaÃda</string>
+ <string name="exclude_nodes">Nós ExcluÃdos</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Impressões digitais, apelidos, paÃses e endereços para excluir</string>
+ <string name="enter_exclude_nodes">Insira Nós ExcluÃdos</string>
+ <string name="strict_nodes">Nós Estritos</string>
+ <string name="use_only_these_specified_nodes">Use *somente* estes nós especÃficos</string>
+ <string name="bridges">Pontes</string>
+ <string name="use_bridges">Usar pontes</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Habilite entradas alternativas para a Rede Tor.</string>
+ <string name="ip_address_and_port_of_bridges">Endereço IP e porta das pontes</string>
+ <string name="enter_bridge_addresses">Insira os Endereços das Pontes</string>
+ <string name="relays">Retransmissores</string>
+ <string name="relaying">Retransmitindo</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Habilitar seu dispositivo para não ser um retransmissor de saÃda</string>
+ <string name="relay_port">Porta Retransmissora</string>
+ <string name="listening_port_for_your_tor_relay">Ouvindo porta do seu retransmissor Tor</string>
+ <string name="enter_or_port">Insira porta OR</string>
+ <string name="relay_nickname">Apelido do Retransmissor</string>
+ <string name="the_nickname_for_your_tor_relay">O apelido para seu retransmissor Tor</string>
+ <string name="enter_a_custom_relay_nickname">Insira um apelido de retransmissor customizado</string>
+ <string name="reachable_addresses">Endereços AtingÃveis</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Rodar como um cliente atrás de um firewall com polÃticas restritivas.</string>
+ <string name="reachable_ports">Portas AtingÃveis</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Portas atingÃveis atrás de um firewall restritivo</string>
+ <string name="enter_ports">Insira as portas</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">habilitar debug log para saÃda (deve usar adb ou aLogCat para ver)</string>
+ <string name="project_home">Home(s) do Projeto: </string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software de Terceiros</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Um aplicativo precisa abrir uma porta tipo servidor escondida %1$spara a Rede Tor. Isso é seguro se você confiar nesta aplicação.</string>
+ <string name="found_existing_tor_process">procurando processos Tor existentes...</string>
+ <string name="something_bad_happened">Algo ruim aconteceu. Cheque o lo</string>
+ <string name="unable_to_read_hidden_service_name">habilitar ler o nome do serviço oculto</string>
+ <string name="unable_to_start_tor">Habilitar iniciar o Tor:</string>
+ <string name="pref_use_persistent_notifications">Sempre manter o Ãcone na barra de tarefas quando o Orbot está conectado</string>
+ <string name="pref_use_persistent_notifications_title">Notificações Sempre Ligadas</string>
+ <string name="pref_use_expanded_notifications">Mostrar notificação expandida com Tor paÃs de saÃda e IP</string>
+ <string name="pref_use_expanded_notifications_title">Notificações Expandidas</string>
+ <string name="set_locale_title">Idioma</string>
+ <string name="no_internet_connection_tor">Sem conexão na internet; Tor está na espera...</string>
+ <string name="pref_disable_network_title">Modo de espera automático</string>
+ <string name="pref_disable_network_summary">Colocar o Tor em modo de espera quando não houver acesso Internet disponÃvel</string>
+ <string name="newnym">Você trocou para uma nova identidade Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Sem conectividade na rede. Colocando o Tor para dormir...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Conectividade da rede está boa. Acordando Tor</string>
+ <string name="updating_settings_in_tor_service">atualizando configurações no serviço Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Porta que Tor oferece seu proxy SOCKS (padrão: 9050 ou 0 para desativar)</string>
+ <string name="pref_socks_dialog">Config da Porta SOCKS</string>
+ <string name="pref_transport_title">Porta TransProxy Tor</string>
+ <string name="pref_transport_summary">Porta que Tor oferece seu Proxy Transparente no (padrão: 9040 ou 0 para desativar)</string>
+ <string name="pref_transport_dialog">Config da Porta TransProxy</string>
+ <string name="pref_dnsport_title">Porta DNS Tor</string>
+ <string name="pref_dnsport_summary">Porta que Tor oferece seu DNS no (padrão: 5400 ou 0 para desativar)</string>
+ <string name="pref_dnsport_dialog">Config da Porta DNS</string>
+ <string name="pref_torrc_title">Config Personalizada do Torrc</string>
+ <string name="pref_torrc_summary">SOMENTE EXPERIENTES: adicione sua própria linha de configuração torrc</string>
+ <string name="pref_torrc_dialog">Torrc Personalizado</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Pontes Atualizadas</string>
+ <string name="restart_orbot_to_use_this_bridge_">Por favor reinicie Orbot para habilitar as mundanças</string>
+ <string name="menu_qr">QR Codes</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Se sua rede de dados bloqueia o Tor, você pode utilizar um \'Servidor Bridge\' como alternativa contra o bloqueio. SELECIONE umas das opções para configurar e testar..,.</string>
+ <string name="bridge_mode">Modo Ponte</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Atvar</string>
+ <string name="apps_mode">Modo VPN</string>
+ <string name="send_email">Enviar Email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Você pode obter um endereço de ponte através de e-mail, web ou lendo um código QR ponte. Selecione \'E-mail\' ou \'Web\' abaixo para solicitar uma ponte endereço. \n\nUma vez que você tem um endereço, copie & colá-lo na \"Bridges\" preferência na configuração e reiniciar do Orbot.</string>
+ <string name="vpn_default_world">Global (Automático)</string>
+ <string name="hidden_services">Serviços Ocultos</string>
+ <string name="title_activity_hidden_services">Serviços Ocultos</string>
+ <string name="menu_hidden_services">Serviços Ocultos</string>
+ <string name="save">Salvar</string>
+ <string name="local_port">Porta Local</string>
+ <string name="onion_port">Porta Onion</string>
+ <string name="name">Nome</string>
+ <string name="done">Feito!</string>
+ <string name="invalid_port">Porta Invalida</string>
+ <string name="copy_address_to_clipboard">Copiar para a area de transferência </string>
+ <string name="show_auth_cookie">Mostre cookie de autenticação</string>
+ <string name="backup_service">Serviço de Backup</string>
+ <string name="delete_service">Remover Serviço</string>
+ <string name="backup_saved_at_external_storage">Backup salvo em mÃdia externa</string>
+ <string name="backup_restored">Backup Restaurado</string>
+ <string name="filemanager_not_available">Gerenciador de arquivos não está disponÃvel</string>
+ <string name="please_grant_permissions_for_external_storage">Por favor dê permissões ao armazenamento externo</string>
+ <string name="restore_backup">Restaurar Backup</string>
+ <string name="create_a_backup_first">Criar primeiro backup</string>
+ <string name="name_can_t_be_empty">O campo Nome não pode ser vazio</string>
+ <string name="fields_can_t_be_empty">Campos não podem ser vazios</string>
+ <string name="confirm_service_deletion">Confirmar a remoção do serviço</string>
+ <string name="click_again_for_backup">Clique novamente para backup</string>
+ <string name="service_type">Tipo do Serviço</string>
+ <string name="auth_cookie">Cookie de autenticação</string>
+ <string name="copy_cookie_to_clipboard">Copiar cookie para a area de transferência</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Por favor reinicie Orbot para habilitar as mundanças</string>
+ <string name="share_as_qr">Compartilhar como QR</string>
+ <string name="disable">Desabilitar</string>
+ <string name="enable">Ativar</string>
+ <string name="app_shortcuts">Aplicações habilitadas para o Tor</string>
+ <string name="testing_bridges">Testando conexão bridge com o Tor</string>
+ <string name="testing_bridges_success">Sucesso. A configuração da Bride é válida.</string>
+ <string name="testing_bridges_fail">Falha. Tente outra opção</string>
+ <string name="bridge_direct_connect">Conecte-se diretamente ao Tor (Melhor forma)</string>
+ <string name="bridge_community">Conecte-se através de servidores da comunidade</string>
+ <string name="bridge_cloud">Conecte-se através de servidores em nuvem</string>
+ <string name="bridges_get_new">Solicitar nova Bridge... (Se todas falharem)</string>
+ <string name="trouble_connecting">Problemas na conexão ? </string>
+ <string name="full_device_vpn">VPN PARA TODO O DISPOSITIVO</string>
+</resources>
diff --git a/app-mini/src/main/res/values-pt-rPT/strings.xml b/app-mini/src/main/res/values-pt-rPT/strings.xml
new file mode 100644
index 00000000..94275288
--- /dev/null
+++ b/app-mini/src/main/res/values-pt-rPT/strings.xml
@@ -0,0 +1,67 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot é uma app proxy gratuita que fortifica outras apps para utilizar a internet mais seguramente. Orbot usa Tor para encriptar o seu tráfego de Internet e ocultá-lo saltando entre uma série de computadores no mundo todo. Tor é um software gratuito e uma rede aberta que ajuda-lhe a defender contra uma forma de rede de vigilância que ameaça a liberdade pessoal e privacidade, actividades de negócios confidenciais e parentesco, e segurança de estado conhecido como análise de tráfego.
+
+</string>
+ <string name="status_starting_up">Orbot está a iniciarâŠ</string>
+ <string name="status_activated">Ligado à rede Tor</string>
+ <string name="status_disabled">Orbot está desativado</string>
+ <string name="status_shutting_down">TorService está a encerrar</string>
+ <string name="tor_process_starting">A iniciar o cliente Tor...</string>
+ <string name="tor_process_complete">completo.</string>
+ <string name="menu_settings">Definições</string>
+ <string name="menu_log">Registo</string>
+ <string name="menu_start">Iniciar</string>
+ <string name="menu_stop">Parar</string>
+ <string name="menu_about">Sobre</string>
+ <string name="main_layout_download">Transferir</string>
+ <string name="main_layout_upload">Enviar</string>
+ <string name="button_about">Sobre</string>
+ <string name="menu_exit">Sair</string>
+ <string name="menu_scan">Digitalizar BridgeQR</string>
+ <string name="menu_share_bridge">Partilhar BridgeQR</string>
+ <string name="btn_okay">Ok</string>
+ <string name="btn_cancel">Cancelar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Alguns Detalhes do Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Geral</string>
+ <string name="pref_start_boot_title">Iniciar Orbot ao Arranque</string>
+ <string name="pref_start_boot_summary">Iniciar Orbot e conectar Tor automaticamente quando o dispositivo é iniciado.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configuração do Nodo</string>
+ <string name="error">Erro</string>
+ <string name="exit_nodes">Nodos de SaÃda</string>
+ <string name="enter_exit_nodes">Inserir Nodos de SaÃda</string>
+ <string name="exclude_nodes">Excluir Nodos</string>
+ <string name="enter_exclude_nodes">Inserir Nodos ExcluÃdos</string>
+ <string name="enter_ports">Insira portas</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software de terceiros: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="set_locale_title">idioma</string>
+ <string name="pref_socks_title">SOCKS do Tor</string>
+ <string name="pref_dnsport_title">Porta DNS do Tor</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="menu_qr">Códigos QR</string>
+ <string name="get_bridges_email">E-mail</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Ativar</string>
+ <string name="send_email">Enviar Mensagem</string>
+ <string name="save">Guardar</string>
+ <string name="name">Nome</string>
+ <string name="done">ConcluÃdo!</string>
+ <string name="disable">Desativar</string>
+ <string name="enable">Ativar</string>
+</resources>
diff --git a/app-mini/src/main/res/values-pt/strings.xml b/app-mini/src/main/res/values-pt/strings.xml
new file mode 100644
index 00000000..78dd464c
--- /dev/null
+++ b/app-mini/src/main/res/values-pt/strings.xml
@@ -0,0 +1,96 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">O Orbot está a iniciar...</string>
+ <string name="status_activated">Conetado à rede Tor</string>
+ <string name="status_disabled">O Orbot está desativado</string>
+ <string name="tor_process_starting">A iniciar o cliente Tor...</string>
+ <string name="tor_process_complete">completo.</string>
+ <string name="menu_settings">Configurações</string>
+ <string name="menu_log">Registo</string>
+ <string name="menu_start">Iniciar</string>
+ <string name="menu_stop">Parar</string>
+ <string name="menu_about">Sobre</string>
+ <string name="main_layout_download">Transferir</string>
+ <string name="main_layout_upload">Enviar</string>
+ <string name="button_about">Sobre</string>
+ <string name="menu_exit">Sair</string>
+ <string name="menu_scan">Digitalizar BridgeQR</string>
+ <string name="menu_share_bridge">Compartilhar BridgeQR</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">Cancelar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Alguns Detalhes do Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Geral</string>
+ <string name="pref_start_boot_title">Iniciar o Orbot no Arranque</string>
+ <string name="pref_start_boot_summary">Iniciar automaticamente o Orbot e conetar o Tor quando o seu dispositivo Android inicia</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_proxy_title">Proxy de Rede de SaÃda (Opcional)</string>
+ <string name="pref_proxy_type_title">Tipo de Proxy de SaÃda</string>
+ <string name="pref_proxy_type_summary">Protocolo para usar para o servidor proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Inserir Tipo de Proxy</string>
+ <string name="pref_proxy_host_title">Anfitrião Proxy de SaÃda</string>
+ <string name="pref_proxy_host_summary">Nome do Hospedeiro do Servidor Proxy</string>
+ <string name="pref_proxy_host_dialog">Inserir Hospedeiro Proxy</string>
+ <string name="pref_proxy_port_title">Porta Proxy de SaÃda</string>
+ <string name="pref_proxy_port_summary">Porta do Servidor Proxy</string>
+ <string name="pref_proxy_port_dialog">Inserir Porta do Proxy</string>
+ <string name="pref_proxy_username_title">Nome do Utilizador do Proxy de SaÃda</string>
+ <string name="pref_proxy_username_summary">Nome do Utilizador do Proxy (Opcional)</string>
+ <string name="pref_proxy_username_dialog">Inserir Nome de Utilizador do Proxy</string>
+ <string name="pref_proxy_password_title">Senha do Proxy de SaÃda</string>
+ <string name="pref_proxy_password_summary">Senha do Proxy (Opcional)</string>
+ <string name="pref_proxy_password_dialog">Inserir Senha do Proxy</string>
+ <string name="couldn_t_start_tor_process_">Não foi possÃvel iniciar o processo Tor: </string>
+ <string name="error">Erro</string>
+ <string name="bridges">Pontes</string>
+ <string name="use_bridges">Usar Pontes</string>
+ <string name="ip_address_and_port_of_bridges">Endereço de IP e porta das pontes</string>
+ <string name="enter_or_port">Inserir OU porta</string>
+ <string name="reachable_ports">Portas alcançáveis</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Portas alcançáveis por detrás de uma Firewal restritiva</string>
+ <string name="enter_ports">Insira as portas</string>
+ <string name="project_home">Projeto Home(s): </string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Programas de Terceiros: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">encontrado o processo Tor existente...</string>
+ <string name="something_bad_happened">Aconteceu algo de mau. Verifique o registo de eventos.</string>
+ <string name="unable_to_read_hidden_service_name">não é possÃvel ler o nome do serviço ocultado</string>
+ <string name="unable_to_start_tor">Não é possÃvel iniciar o Tor:</string>
+ <string name="pref_use_persistent_notifications_title">Notificações Sempre Ativadas</string>
+ <string name="pref_use_expanded_notifications_title">Notificações Estendidas</string>
+ <string name="set_locale_title">Idioma</string>
+ <string name="newnym">Mudou para uma nova identidade do Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Nenhuma conetividade de rede. A hibernar TorâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">A conetividade de rede é boa. A iniciar TorâŠ</string>
+ <string name="updating_settings_in_tor_service">a atualizar as definições no serviço Tor</string>
+ <string name="pref_socks_title">SOCKS Tor</string>
+ <string name="pref_dnsport_title">Porta DNS Tor</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Pontes Atualizadas</string>
+ <string name="menu_qr">Códigos QR</string>
+ <string name="get_bridges_email">Correio Eletrónico</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Ativar</string>
+ <string name="send_email">Enviar Mensagem</string>
+ <string name="hidden_services">Serviços ocultos</string>
+ <string name="title_activity_hidden_services">Serviços ocultos</string>
+ <string name="menu_hidden_services">Serviços ocultos</string>
+ <string name="save">Guardar</string>
+ <string name="name">Nome</string>
+ <string name="done">ConcluÃdo!</string>
+ <string name="disable">Desativar</string>
+ <string name="enable">Ativar</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ro-rRO/strings.xml b/app-mini/src/main/res/values-ro-rRO/strings.xml
new file mode 100644
index 00000000..dc8ae0d6
--- /dev/null
+++ b/app-mini/src/main/res/values-ro-rRO/strings.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="menu_settings">SetÄri</string>
+ <string name="menu_about">Despre</string>
+ <string name="button_about">Despre</string>
+ <string name="menu_exit">IeÅire</string>
+ <string name="btn_cancel">Revocare</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Eroare</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ro/strings.xml b/app-mini/src/main/res/values-ro/strings.xml
new file mode 100644
index 00000000..c763c809
--- /dev/null
+++ b/app-mini/src/main/res/values-ro/strings.xml
@@ -0,0 +1,146 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot este o aplicaÅ£ie gratuitÄ de proxy care permite altor aplicaÅ£ii sÄ foloseascÄ internetul în siguranÅ£Ä. Orbot foloseÅte Tor pentru a cripta traficul de internet dupÄ care îl ascunde printr-o serie de calculatoare din întreaga lume. Tor este un program gratuit si o reÅ£ea deschisÄ care te ajutÄ sÄ te aperi de monitorizarea reÅ£elelor, lucru care ameninÅ£Ä libertatea personalÄ Åi intimitatea, activitÄÅ£i confidenÅ£iale legate de afaceri si relaÅ£ii personale Åi de analiza traficului.</string>
+ <string name="status_starting_up">Orbot porneÅte...</string>
+ <string name="status_activated">Conectat la reţeaua Tor</string>
+ <string name="status_disabled">Orbot este dezactivat</string>
+ <string name="status_shutting_down">ServiciulTor se opreÅte</string>
+ <string name="tor_process_starting">PorneÅte clientul Tor...</string>
+ <string name="tor_process_complete">terminat.</string>
+ <string name="menu_settings">SetÄri</string>
+ <string name="menu_log">log</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">Despre</string>
+ <string name="main_layout_download">DescarcÄ</string>
+ <string name="main_layout_upload">IncarcÄ</string>
+ <string name="button_about">Despre</string>
+ <string name="menu_exit">IeÅire</string>
+ <string name="menu_scan">ScaneazÄ BridgeQR</string>
+ <string name="menu_share_bridge">Distribuie BridgeQR</string>
+ <string name="btn_okay">Ok</string>
+ <string name="btn_cancel">Revocare</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Detalii Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <string name="pref_start_boot_title">PorneÅte Orbot la boot-are</string>
+ <string name="pref_start_boot_summary">Porneste Orbot automat si conecteaza-te la Tor cand porneste dispozitivul</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Configurare nod</string>
+ <string name="pref_node_configuration_summary">Setari avansate care ar putea sa iti reduca anonimitatea</string>
+ <string name="pref_entrance_node">Noduri de intrare</string>
+ <string name="pref_entrance_node_summary">Amprente, nick name-uri si adrese pentru primul hop</string>
+ <string name="pref_entrance_node_dialog">Introdu noduri de intrare</string>
+ <string name="pref_allow_background_starts_title">Permite pornirile din fundal</string>
+ <string name="pref_allow_background_starts_summary">Permite oricÄrei aplicaÅ£ie sÄ anunÅ£e Orbot cÄ porneÅti Tor Åi serviciile asociate</string>
+ <string name="pref_proxy_title">Proxy de retea pentru iesire (optional)</string>
+ <string name="pref_proxy_type_title">Tipul proxy-ului de iesire</string>
+ <string name="pref_proxy_type_summary">Tipul protocolului pentru proxy: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Introdu tipul proxy-ului</string>
+ <string name="pref_proxy_host_title">Host-ul proxy-ului de iesire</string>
+ <string name="pref_proxy_host_summary">Hostname-ul server-ului proxy</string>
+ <string name="pref_proxy_host_dialog">Introdu host-ul proxy-ului</string>
+ <string name="pref_proxy_port_title">Port-ul proxy-ului de iesire</string>
+ <string name="pref_proxy_port_summary">Port-ul serverului proxy</string>
+ <string name="pref_proxy_port_dialog">Introdu port-ul proxy</string>
+ <string name="pref_proxy_username_title">Username-ul proxy-ului de iesire</string>
+ <string name="pref_proxy_username_summary">Username-ul proxy-ului (optional)</string>
+ <string name="pref_proxy_username_dialog">Introdu username-ul proxy-ului</string>
+ <string name="pref_proxy_password_title">Parola pentru proxy-ul de iesire</string>
+ <string name="pref_proxy_password_summary">Parola pentru proxy (optional)</string>
+ <string name="pref_proxy_password_dialog">Introdu parola pentru proxy</string>
+ <string name="couldn_t_start_tor_process_">Nu am putut porni procesul Tor:</string>
+ <string name="error">Eroare</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">SetÄrile tale pentru adrese accesibile au cauzat o exceptie!</string>
+ <string name="your_relay_settings_caused_an_exception_">SetÄrile tale de relay au cauzat o excepÅ£ie!</string>
+ <string name="exit_nodes">Noduri de ieÅire</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Amprente, nick name-uri, tari si adrese pentru ultimul hop</string>
+ <string name="enter_exit_nodes">Introdu noduri de ieÅire</string>
+ <string name="exclude_nodes">Noduri de exclus</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Amprente, nume, Å£Äri Åi adrese de exclus</string>
+ <string name="enter_exclude_nodes">Introdu noduri de exclus</string>
+ <string name="strict_nodes">Noduri stricte</string>
+ <string name="use_only_these_specified_nodes">Foloseste *doar* nodurile specificate</string>
+ <string name="bridges">Punţi</string>
+ <string name="use_bridges">FoloseÅte punÅ£i</string>
+ <string name="ip_address_and_port_of_bridges">Adresa IP Åi port pentru punÅ£i</string>
+ <string name="enter_bridge_addresses">Introdu adresa pentru punte</string>
+ <string name="relays">Comutatoare</string>
+ <string name="relaying">Comutare</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Activeaza dispozitivul sa fie un comutator fara iesire</string>
+ <string name="relay_port">Port de retransmitere</string>
+ <string name="listening_port_for_your_tor_relay">Port pentru comutatorul tÄu Tor</string>
+ <string name="enter_or_port">Introdu portul OR</string>
+ <string name="relay_nickname">Utilizatorul comutatorului</string>
+ <string name="the_nickname_for_your_tor_relay">Numele utilizatorului pentru comutatorul tÄu Tor</string>
+ <string name="enter_a_custom_relay_nickname">Introdu un nume de utilizator pentru comutator</string>
+ <string name="reachable_addresses">Adresa accesibila</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Ruleaza ca si client in spatele firewall-ului cu politici restrictive</string>
+ <string name="reachable_ports">Porturi accesibile</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Porturi accesibile in spatele unui firewall restrictiv</string>
+ <string name="enter_ports">Introdu porturi</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">activeazÄ exportul log-ului (trebuie folosit adb sau LogCat pentru vizualizare)</string>
+ <string name="project_home">Casa(le) proiectului:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Aplicatii tertiare:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">gÄsit proces Tor existent...</string>
+ <string name="something_bad_happened">Ceva rÄu s-a întâmplat. VerificÄ log-ul</string>
+ <string name="unable_to_read_hidden_service_name">nu am putut citi numele serviciului ascuns</string>
+ <string name="unable_to_start_tor">Nu am reuÅit sÄ pornesc Tor:</string>
+ <string name="pref_use_persistent_notifications">AratÄ tot timpul icoana în barÄ când Orbot este conectat</string>
+ <string name="pref_use_persistent_notifications_title">NotificÄri active tot timpul</string>
+ <string name="pref_use_expanded_notifications">AratÄ notificÄri extinse cu Tor exit country Åi IP</string>
+ <string name="pref_use_expanded_notifications_title">Notificare ExtinsÄ</string>
+ <string name="set_locale_title">LimbÄ</string>
+ <string name="no_internet_connection_tor">Nu este conexiune la internet; Tor este în aÈteptare...</string>
+ <string name="pref_disable_network_title">FÄrÄ adormirea automatÄ a reÈelei</string>
+ <string name="pref_disable_network_summary">Pune Tor sÄ doarmÄ dacÄ nu este internet disponibil</string>
+ <string name="newnym">AÈi comutat la o nouÄ identitate Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Nu este conexiune la reÈea. Se pune Tor în adormire...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Conexiunea la reÈea este bunÄ. Se trezeÈte Tor...</string>
+ <string name="updating_settings_in_tor_service">se actualizeazÄ configurÄrile în serviciul Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Porturi pe care Tor oferÄ SOCKurile proxy active (principal:9050 sau 0 pentru dezactivare)</string>
+ <string name="pref_socks_dialog">Configurare SOCKuri la Port</string>
+ <string name="pref_transport_title">Portul Tor TransProxy </string>
+ <string name="pref_transport_summary">Porturi pe care Tor oferÄ Proxy-ul Transparent activ (principal:9040 sau 0 pentru dezactivare)</string>
+ <string name="pref_transport_dialog">Portul Tor TransProxy </string>
+ <string name="pref_dnsport_title">Portul DNS Tor</string>
+ <string name="pref_dnsport_summary">Porturi pe care Tor oferÄ DNS-ul activ (principal:5400 sau 0 pentru dezactivare)</string>
+ <string name="pref_dnsport_dialog">Configurare Port DNS</string>
+ <string name="pref_torrc_title">Configurare personalizatÄ Torrc</string>
+ <string name="pref_torrc_summary">PENTRU EXPERÅ¢I: introdu direct liniile de configurare ale torrc</string>
+ <string name="pref_torrc_dialog">Torrc Personalizat</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Punţi activate</string>
+ <string name="restart_orbot_to_use_this_bridge_">VÄ rugÄm reporniÅ£i Orbot pentru a aplica modificÄrile</string>
+ <string name="menu_qr">Coduri QR</string>
+ <string name="bridge_mode">Mod punte</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">ActiveazÄ</string>
+ <string name="send_email">Trimite email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">PoÅ£i primi o adresÄ de punte prin email,web sau prin scanarea codului de punte QR.SelecteazÄ âEmailâ sau âWebâ de mai jos pentru a primi adresa de punte.\n\nCând ai primit adresa,copiaz-o Åi introdu-o în preferinÅ£ele de PUNÅ¢I din setÄrile Orbot Åi mai apoi reporniÅ£i. </string>
+ <string name="hidden_services">Servicii ascunse</string>
+ <string name="title_activity_hidden_services">Servicii ascunse</string>
+ <string name="menu_hidden_services">Servicii ascunse</string>
+ <string name="save">SalveazÄ</string>
+ <string name="name">Nume</string>
+ <string name="done">Gata!</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">VÄ rugÄm reporniÅ£i Orbot pentru a aplica modificÄrile</string>
+ <string name="disable">DezactiveazÄ</string>
+ <string name="enable">ActiveazÄ:</string>
+</resources>
diff --git a/app-mini/src/main/res/values-rs-rAR/strings.xml b/app-mini/src/main/res/values-rs-rAR/strings.xml
new file mode 100644
index 00000000..8955187a
--- /dev/null
+++ b/app-mini/src/main/res/values-rs-rAR/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Orbot está iniciándoseâŠ</string>
+ <string name="status_activated">Conectado a la red Tor</string>
+ <string name="status_disabled">\"Orbot está Desactivado</string>
+ <string name="status_shutting_down">Orbot se está apagando</string>
+ <string name="tor_process_complete">Completar</string>
+ <string name="menu_settings">Configuración</string>
+ <string name="menu_log">Registro</string>
+ <string name="menu_start">Iniciar</string>
+ <string name="menu_stop">Detener</string>
+ <string name="menu_about">Acerca de</string>
+ <string name="button_about">Acerca de</string>
+ <string name="menu_exit">Salir</string>
+ <string name="btn_cancel">Cancelar</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+
+
+
+
+ <!--Transparent Proxy screen-->
+ <!--<string name="pref_use_whispercore">Use WhisperCore</string>
+<string name="pref_use_whispercore_summary">Use the proprietary NetFilter APIs provided by WhisperSystems (required device with WhisperCore installed)</string>-->
+</resources>
diff --git a/app-mini/src/main/res/values-ru/poestrings.xml b/app-mini/src/main/res/values-ru/poestrings.xml
new file mode 100644
index 00000000..eef54f0d
--- /dev/null
+++ b/app-mini/src/main/res/values-ru/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">ÐМПгЎа ваЌ бÑÐŽÐµÑ ÐœÑжеМ ЌПÑÑ, ÑÑÐŸÐ±Ñ ÐŽÐŸÐ±ÑаÑÑÑÑ ÐŽÐŸ Tor.</string>
+ <string name="action_more">Ð ÐССÐÐÐÐТРÐÐÐÐ ÐÐÐÐÐ</string>
+
+ <string name="vpn_setup">ÐÑ ÐŒÐŸÐ¶ÐµÑе МаÑÑÑПОÑÑ Ð»ÑбПе пÑОлПжеМОе, ÑÑÐŸÐ±Ñ ÐŸÐœÐŸ пÑПÑ
ПЎОлП ÑеÑез ÑеÑез Tor, ОÑпПлÑзÑÑ ÐœÐ°Ñ Ð²ÑÑÑПеММÑй VPN.</string>
+ <string name="vpn_setup_sub">ÐÑП Ме ÑÐŽÐµÐ»Ð°ÐµÑ Ð²Ð°Ñ Ð°ÐœÐŸÐœÐžÐŒÐœÑÐŒ, МП ÑÑП Ð¿ÐŸÐŒÐŸÐ¶ÐµÑ Ð¿ÑПйÑО ÑеÑез бÑаМЎЌаÑÑÑÑ.</string>
+ <string name="action_vpn_choose">ÐЫÐÐ ÐТЬ ÐÐ ÐÐÐÐÐÐÐЯ</string>
+
+ <string name="hello">ÐÑОвеÑ</string>
+ <string name="welcome">ÐПбÑП пПжалПваÑÑ Ð² Tor ÐŽÐ»Ñ ÐŒÐŸÐ±ÐžÐ»ÑМÑÑ
ÑÑÑÑПйÑÑв.</string>
+
+ <string name="browser_the_internet">ÐÑПÑЌаÑÑОвайÑе ОМÑеÑÐœÐµÑ Ñак, как ÑÑОÑаеÑе МÑжМÑÐŒ вÑ.</string>
+ <string name="no_tracking">ÐÐµÑ ÐŸÑÑлежОваМОÑ. ÐОкакПй ÑеМзÑÑÑ.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-ru/strings.xml b/app-mini/src/main/res/values-ru/strings.xml
new file mode 100644
index 00000000..549387d0
--- /dev/null
+++ b/app-mini/src/main/res/values-ru/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot â ÑÑП ÑÐ²ÐŸÐ±ÐŸÐŽÐœÐ°Ñ Ð¿ÑПгÑаЌЌа ÐŽÐ»Ñ Ð¿ÑПкÑО-ÑПеЎОМеМОй, ПМа пПзвПлÑÐµÑ ÐŽÑÑгОЌ пÑОлПжеМОÑÐŒ бПлее безПпаÑМП ОÑпПлÑзПваÑÑ ÐžÐœÑеÑМеÑ-ÑПеЎОМеМОе. Orbot ОÑпПлÑзÑÐµÑ Tor ÐŽÐ»Ñ ÑОÑÑÐŸÐ²Ð°ÐœÐžÑ ÐžÐœÑеÑМеÑ-ÑÑаÑОка, кПÑПÑÑй заÑеЌ ÑкÑÑваеÑÑÑ Ð² Ñ
ПЎе пеÑеÑÑлкО ÑеÑез МеÑкПлÑкП кПЌпÑÑÑеÑПв в ÑазМÑÑ
ÑаÑÑÑÑ
плаМеÑÑ. Tor ÑвлÑеÑÑÑ ÑвПбПЎМÑÐŒ пÑПгÑаЌЌМÑÐŒ пÑОлПжеМОеЌ, а Ñакже ПÑкÑÑÑПй ÑеÑÑÑ, пПЌПгаÑÑей заÑОÑОÑÑÑÑ ÐŸÑ ÑлежкО в ÑеÑÑÑ
, ÑгÑПжаÑÑей лОÑМПй ÑвПбПЎе О ÑаÑÑМПй жОзМО, кПМÑОЎеМÑОалÑМПÑÑО бОзМеÑ-ЎеÑÑелÑМПÑÑО О кПМÑакÑПв, а Ñакже гПÑÑЎаÑÑÑвеММПй пÑПгÑаЌЌ
Ñ Ð±ÐµÐ·ÐŸÐ¿Ð°ÑМПÑÑО, ОзвеÑÑМПй как аМалОз ÑÑаÑОка.</string>
+ <string name="status_starting_up">Orbot запÑÑкаеÑÑÑ...</string>
+ <string name="status_activated">ÐПЎклÑÑÑМ к ÑеÑО Tor</string>
+ <string name="status_disabled">Orbot ПÑклÑÑÑМ</string>
+ <string name="status_shutting_down">СлÑжба Tor вÑклÑÑаеÑÑÑ</string>
+ <string name="tor_process_starting">ÐапÑÑкаеÑÑÑ ÐºÐ»ÐžÐµÐœÑ Tor...</string>
+ <string name="tor_process_complete">завеÑÑеМП.</string>
+ <string name="menu_settings">ÐаÑÑÑПйкО</string>
+ <string name="menu_log">ÐÑÑМал</string>
+ <string name="menu_start">ÐапÑÑÑОÑÑ</string>
+ <string name="menu_stop">ÐÑÑаМПвОÑÑ</string>
+ <string name="menu_about">РпÑОлПжеМОО</string>
+ <string name="main_layout_download">ÐагÑÑзка</string>
+ <string name="main_layout_upload">ÐÑпÑавка</string>
+ <string name="button_about">РпÑОлПжеМОО</string>
+ <string name="menu_exit">ÐÑÑ
ПЎ</string>
+ <string name="menu_scan">СкаМОÑПваÑÑ QR-кПЎ ЌПÑÑа</string>
+ <string name="menu_share_bridge">ÐпÑблОкПваÑÑ QR-кПЎ ЌПÑÑа</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">ÐÑЌеМа</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ÐекПÑПÑÑе ÑÐ²ÐµÐŽÐµÐœÐžÑ ÐŸ пÑПгÑаЌЌе Orbot</string>
+ <string name="wizard_details_msg">Orbot â ÑÑП пÑОлПжеМОе Ñ ÐŸÑкÑÑÑÑÐŒ ОÑÑ
ПЎМÑÐŒ кПЎПЌ, кПÑПÑПе ÑПЎеÑÐ¶ÐžÑ Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent О Polipo. ÐМП пÑеЎПÑÑавлÑÐµÑ Ð»ÐŸÐºÐ°Ð»ÑМÑй HTTP- (8118) О SOCKS-пÑПкÑО (9050) в ÑеÑÑ Tor. Orbot Ñакже пПзвПлÑÐµÑ ÐœÐ° ÑÑÑÑПйÑÑваÑ
Ñ Ð¿ÑаваЌО root пеÑеÑÑлаÑÑ Ð²ÐµÑÑ ÐžÐœÑеÑМеÑ-ÑÑаÑОк ÑеÑез Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ÐбÑОе</string>
+ <string name="pref_start_boot_title">ÐапÑÑкаÑÑ Orbot пÑО загÑÑзке</string>
+ <string name="pref_start_boot_summary">ÐвÑПЌаÑОÑеÑкО запÑÑкаÑÑ Orbot О пПЎклÑÑаÑÑÑÑ Ðº ÑеÑО Tor пÑО загÑÑзке ваÑегП Android-ÑÑÑÑПйÑÑва</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ÐПМÑОгÑÑаÑÐžÑ Ñзла</string>
+ <string name="pref_node_configuration_summary">ÐÑП ЎПпПлМОÑелÑМÑе МаÑÑÑПйкО, кПÑПÑÑе ЌПгÑÑ ÑМОзОÑÑ Ð²Ð°ÑÑ Ð°ÐœÐŸÐœÐžÐŒÐœÐŸÑÑÑ</string>
+ <string name="pref_entrance_node">ÐÑ
ПЎМÑе ÑзлÑ</string>
+ <string name="pref_entrance_node_summary">ÐÑпеÑаÑкО, пÑевЎПМОЌÑ, ÑÑÑÐ°ÐœÑ Ðž аЎÑеÑа ÐŽÐ»Ñ Ð¿ÐµÑвПгП пÑÑжка</string>
+ <string name="pref_entrance_node_dialog">ÐвеЎОÑе вÑ
ПЎМÑе ÑзлÑ</string>
+ <string name="pref_allow_background_starts_title">РазÑеÑОÑÑ ÑПМПвÑÑ Ð·Ð°Ð³ÑÑзкÑ</string>
+ <string name="pref_allow_background_starts_summary">ÐПзвПлОÑÑ Ð»ÑÐ±ÐŸÐŒÑ Ð¿ÑÐžÐ»ÐŸÐ¶ÐµÐœÐžÑ ÑÑебПваÑÑ ÐŸÑ Orbot запÑÑкаÑÑ Tor О ПÑМПÑÑÑОеÑÑ Ðº ÐœÐµÐŒÑ ÑеÑвОÑÑ</string>
+ <string name="pref_proxy_title">ÐÑÑ
ПЎÑÑОй ÑеÑевПй пÑПкÑО (МеПбÑзаÑелÑМП)</string>
+ <string name="pref_proxy_type_title">ТОп пÑПкÑО</string>
+ <string name="pref_proxy_type_summary">ÐÑПÑПкПл ÐŽÐ»Ñ ÐžÑпПлÑÐ·ÐŸÐ²Ð°ÐœÐžÑ Ð¿ÑПкÑО-ÑеÑвеÑПЌ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">ÐвеЎОÑе ÑОп пÑПкÑО</string>
+ <string name="pref_proxy_host_title">ХПÑÑ Ð¿ÑПкÑО</string>
+ <string name="pref_proxy_host_summary">ÐÐŒÑ Ñ
ПÑÑа пÑПкÑО-ÑеÑвеÑа</string>
+ <string name="pref_proxy_host_dialog">ÐвеЎОÑе Ñ
ПÑÑ Ð¿ÑПкÑО</string>
+ <string name="pref_proxy_port_title">ÐПÑÑ Ð¿ÑПкÑО</string>
+ <string name="pref_proxy_port_summary">ÐПÑÑ Ð¿ÑПкÑО-ÑеÑвеÑа</string>
+ <string name="pref_proxy_port_dialog">ÐвеЎОÑе пПÑÑ Ð¿ÑПкÑО</string>
+ <string name="pref_proxy_username_title">ÐÐŒÑ Ð¿ÐŸÐ»ÑзПваÑÐµÐ»Ñ Ð¿ÑПкÑО</string>
+ <string name="pref_proxy_username_summary">ÐÐŒÑ Ð¿ÐŸÐ»ÑзПваÑÐµÐ»Ñ Ð¿ÑПкÑО-ÑеÑвеÑа (МеПбÑзаÑелÑМП)</string>
+ <string name="pref_proxy_username_dialog">ÐвеЎОÑе ÐžÐŒÑ Ð¿ÐŸÐ»ÑзПваÑÐµÐ»Ñ Ð¿ÑПкÑО</string>
+ <string name="pref_proxy_password_title">ÐаÑÐŸÐ»Ñ Ð¿ÐŸÐ»ÑзПваÑÐµÐ»Ñ Ð¿ÑПкÑО</string>
+ <string name="pref_proxy_password_summary">ÐаÑÐŸÐ»Ñ Ð¿ÐŸÐ»ÑзПваÑÐµÐ»Ñ Ð¿ÑПкÑО-ÑеÑвеÑа (МеПбÑзаÑелÑМП)</string>
+ <string name="pref_proxy_password_dialog">ÐвеЎОÑе паÑÐŸÐ»Ñ Ð¿ÐŸÐ»ÑзПваÑÐµÐ»Ñ Ð¿ÑПкÑО</string>
+ <string name="couldn_t_start_tor_process_">ÐевПзЌПжМП запÑÑÑОÑÑ Tor: </string>
+ <string name="error">ÐÑОбка</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ÐаÑО МаÑÑÑПйкО ЎПÑÑÑпМÑÑ
аЎÑеÑПв вÑзвалО ОÑклÑÑеМОе!</string>
+ <string name="your_relay_settings_caused_an_exception_">ÐаÑО МаÑÑÑПйкО ÑеÑÑаМÑлÑÑПÑа вÑзвалО ОÑклÑÑеМОе!</string>
+ <string name="exit_nodes">ÐÑÑ
ПЎМÑе ÑзлÑ</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ÐÑпеÑаÑкО, пÑевЎПМОЌÑ, ÑÑÑÐ°ÐœÑ Ðž аЎÑеÑа ÐŽÐ»Ñ Ð¿ÐŸÑлеЎМегП пÑÑжка</string>
+ <string name="enter_exit_nodes">ÐвеЎОÑе вÑÑ
ПЎМÑе ÑзлÑ</string>
+ <string name="exclude_nodes">ÐÑклÑÑÑММÑе ÑзлÑ</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ÐÑпеÑаÑкО, пÑевЎПМОЌÑ, ÑÑÑÐ°ÐœÑ Ðž аЎÑеÑа ÐŽÐ»Ñ ÐžÑклÑÑеМОÑ</string>
+ <string name="enter_exclude_nodes">ÐвеЎОÑе ОÑклÑÑÑММÑе ÑзлÑ</string>
+ <string name="strict_nodes">ТПÑМÑе ÑзлÑ</string>
+ <string name="use_only_these_specified_nodes">ÐÑпПлÑзПваÑÑ *ÑПлÑкП* ÑÑО заЎаММÑе ÑзлÑ</string>
+ <string name="bridges">ÐПÑÑÑ</string>
+ <string name="use_bridges">ÐÑпПлÑзПваÑÑ ÐŒÐŸÑÑÑ</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">ÐклÑÑОÑÑ Ð°Ð»ÑÑеÑМаÑОвМÑе вÑ
ПЎМÑе ÑÐ·Ð»Ñ Ð² ÑеÑÑ Tor</string>
+ <string name="ip_address_and_port_of_bridges">IP-аЎÑеÑа О пПÑÑÑ ÐŒÐŸÑÑПв</string>
+ <string name="enter_bridge_addresses">ÐвеЎОÑе аЎÑеÑа ЌПÑÑПв</string>
+ <string name="relays">РеÑÑаМÑлÑÑПÑÑ</string>
+ <string name="relaying">РеÑÑаМÑлÑÑОÑ</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">РазÑеÑОÑÑ Ð²Ð°ÑÐµÐŒÑ ÑÑÑÑПйÑÑÐ²Ñ Ð±ÑÑÑ ÐœÐµÐ²ÑÑ
ПЎМÑÐŒ ÑеÑÑаМÑлÑÑПÑПЌ</string>
+ <string name="relay_port">ÐПÑÑ ÑеÑÑаМÑлÑÑПÑа</string>
+ <string name="listening_port_for_your_tor_relay">ÐÑПÑлÑÑОваеЌÑй пПÑÑ ÐŽÐ»Ñ Ð²Ð°ÑегП ÑеÑÑаМÑлÑÑПÑа Tor</string>
+ <string name="enter_or_port">ÐвеЎОÑе пПÑÑ OR</string>
+ <string name="relay_nickname">ÐÐŒÑ ÑеÑÑаМÑлÑÑПÑа</string>
+ <string name="the_nickname_for_your_tor_relay">ÐÐŒÑ ÐŽÐ»Ñ Ð²Ð°ÑегП ÑеÑÑаМÑлÑÑПÑа Tor</string>
+ <string name="enter_a_custom_relay_nickname">ÐвеЎОÑе пПлÑзПваÑелÑÑкПе ÐžÐŒÑ ÑеÑÑаМÑлÑÑПÑа</string>
+ <string name="reachable_addresses">ÐПÑÑÑпМÑе аЎÑеÑа</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">ÐапÑÑкаÑÑ ÐºÐ°Ðº ÐºÐ»ÐžÐµÐœÑ Ð·Ð° ЌежÑеÑевÑÐŒ ÑкÑаМПЌ Ñ ÐŸÐ³ÑаМОÑОваÑÑОЌО пПлОÑОкаЌО</string>
+ <string name="reachable_ports">ÐПÑÑÑпМÑе пПÑÑÑ</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ÐПÑÑÑ, ЎПÑÑÑпМÑе Оз-за ПгÑаМОÑОÑелÑМПгП ÑеÑевПгП ÑкÑаМа</string>
+ <string name="enter_ports">ÐвеЎОÑе пПÑÑÑ</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">ÐклÑÑОÑÑ Ð²ÑвПЎ жÑÑМала ПÑлаЎкО (ÑÑебÑÐµÑ ÐžÑпПлÑзПваÑÑ adb ОлО aLogCat ÐŽÐ»Ñ Ð¿ÑПÑЌПÑÑа)</string>
+ <string name="project_home">ÐПЌаÑМÑÑ ÑÑÑаМОÑа пÑПекÑа(Пв): </string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ÐÑПгÑÐ°ÐŒÐŒÑ ÑÑПÑПММОÑ
ÑазÑабПÑÑОкПв: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">ÐÑОлПжеМОе Ñ
ПÑÐµÑ ÐŸÑкÑÑÑÑ ÑкÑÑÑÑй пПÑÑ ÑеÑвеÑа %1$s ÑеÑО Tor. ÐÑП безПпаÑМП, еÑлО Ð²Ñ ÐŽÐŸÐ²ÐµÑÑеÑе ÐŽÐ°ÐœÐœÐŸÐŒÑ Ð¿ÑОлПжеМОÑ.</string>
+ <string name="found_existing_tor_process">МайЎеМ ÑÑÑеÑÑвÑÑÑОй пÑПÑеÑÑ Tor...</string>
+ <string name="something_bad_happened">ÐÑПОзПÑла какаÑ-ÑП ПÑОбка. ÐÑПвеÑÑÑе жÑÑМал.</string>
+ <string name="unable_to_read_hidden_service_name">МевПзЌПжМП пÑПÑОÑаÑÑ ÐžÐŒÑ ÑкÑÑÑПй ÑлÑжбÑ</string>
+ <string name="unable_to_start_tor">ÐевПзЌПжМП запÑÑÑОÑÑ Tor:</string>
+ <string name="pref_use_persistent_notifications">ÐÑегЎа ПÑПбÑажаÑÑ ÐžÐºÐŸÐœÐºÑ Ð² паМелО Ð·Ð°ÐŽÐ°Ñ ÐºÐŸÐ³ÐŽÐ° Orbot пПЎклÑÑÑМ</string>
+ <string name="pref_use_persistent_notifications_title">ÐПÑÑПÑММПе ÑвеЎПЌлеМОе П ÑабПÑе</string>
+ <string name="pref_use_expanded_notifications">ÐПказаÑÑ ÑаÑÑОÑеММПе ÑвеЎПЌлеМОе Tor ÑП ÑÑÑаМПй вÑÑ
ПЎа О IP</string>
+ <string name="pref_use_expanded_notifications_title">РаÑÑОÑеММÑе ÑвеЎПЌлеМОÑ</string>
+ <string name="set_locale_title">ЯзÑк</string>
+ <string name="no_internet_connection_tor">ÐÑÑÑÑÑÑвÑÐµÑ Ð¿ÐŸÐŽÐºÐ»ÑÑеМОе к ОМÑеÑМеÑÑ, Tor МаÑ
ПЎОÑÑÑ Ð² ÑежОЌе ПжОЎаМОÑâŠ</string>
+ <string name="pref_disable_network_title">ÐвÑПзаÑÑпаМОе без ÑеÑО</string>
+ <string name="pref_disable_network_summary">ÐеÑевПЎОÑÑ Tor в ÑпÑÑОй ÑежОЌ пÑО ПÑÑÑÑÑÑвОО ОМÑеÑМеÑа</string>
+ <string name="newnym">ÐÑ Ð¿ÐµÑеклÑÑОлОÑÑ ÐœÐ° МПвÑй ОЎеМÑОÑОкаÑÐŸÑ Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÐÐµÑ Ð¿ÐŸÐŽÐºÐ»ÑÑÐµÐœÐžÑ Ðº ÑеÑО. Tor пеÑеÑ
ÐŸÐŽÐžÑ Ð² ÑежОЌ ÑМа...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ÐПЎклÑÑеМОе к ÑеÑО ÑÑÑаМПвлеМП. Tor пÑПÑÑпаеÑÑÑ...</string>
+ <string name="updating_settings_in_tor_service">ПбМПвлеМОе МаÑÑÑПек в ÑеÑвОÑе Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">ÐПÑÑ, Ма кПÑПÑПЌ Tor пÑеЎПÑÑавлÑÐµÑ ÑвПй SOCKS-пÑПкÑО (пП ÑЌПлÑаМОÑ: 9050, 0 - ÐŽÐ»Ñ ÐŸÑклÑÑеМОÑ)</string>
+ <string name="pref_socks_dialog">ÐаÑÑÑПйка пПÑÑа SOCKS</string>
+ <string name="pref_transport_title">ÐПÑÑ Ð¿ÑПзÑаÑМПгП пÑПкÑО Tor</string>
+ <string name="pref_transport_summary">ÐПÑÑ, Ма кПÑПÑПЌ Tor пÑеЎПÑÑавлÑÐµÑ ÑвПй пÑПзÑаÑМÑй пÑПкÑО (пП ÑЌПлÑаМОÑ: 9040, 0 - ÐŽÐ»Ñ ÐŸÑклÑÑеМОÑ)</string>
+ <string name="pref_transport_dialog">ÐаÑÑÑПйка пПÑÑа пÑПзÑаÑМПгП пÑПкÑО</string>
+ <string name="pref_dnsport_title">ÐПÑÑ DNS Tor</string>
+ <string name="pref_dnsport_summary">ÐПÑÑ, Ма кПÑПÑПЌ Tor пÑеЎПÑÑавлÑÐµÑ ÑвПй DNS (пП ÑЌПлÑаМОÑ: 5400, 0 - ÐŽÐ»Ñ ÐŸÑклÑÑеМОÑ)</string>
+ <string name="pref_dnsport_dialog">ÐаÑÑÑПйка пПÑÑа DNS</string>
+ <string name="pref_torrc_title">ÐПлÑзПваÑелÑÑкОе МаÑÑÑПйкО Torrc</string>
+ <string name="pref_torrc_summary">ТÐÐЬÐÐ ÐÐЯ ÐÐСÐÐРТÐÐ: вМеÑОÑе МаÑÑÑПйкО МапÑÑÐŒÑÑ Ð² ÑÑÑПкО Ñайла кПМÑОгÑÑаÑОО torrc</string>
+ <string name="pref_torrc_dialog">ÐПлÑзПваÑелÑÑкОй Torrc</string>
+ <string name="kbps">кбОÑ/Ñ</string>
+ <string name="mbps">ЌбОÑ/Ñ</string>
+ <string name="kb">ÐÐ</string>
+ <string name="mb">ÐÐ</string>
+ <string name="bridges_updated">ÐПÑÑÑ ÐŸÐ±ÐœÐŸÐ²Ð»ÐµÐœÑ</string>
+ <string name="restart_orbot_to_use_this_bridge_">ÐПжалÑйÑÑа, пеÑезапÑÑÑОÑе Orbot ÐŽÐ»Ñ Ð²ÑÑÑÐ¿Ð»ÐµÐœÐžÑ ÐžÐ·ÐŒÐµÐœÐµÐœÐžÑ Ð² ÑОлÑ</string>
+ <string name="menu_qr">QR-кПЎÑ</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">ÐÑлО ваÑа ЌПбОлÑÐœÐ°Ñ ÑеÑÑ Ð°ÐºÑОвМП блПкОÑÑÐµÑ Tor, Ð²Ñ ÐŒÐŸÐ¶ÐµÑе ОÑпПлÑзПваÑÑ ÐŒÐŸÑÑÑ Tor ÐŽÐ»Ñ ÐŽÐŸÑÑÑпа к ÑеÑО. ÐÑбеÑОÑе ПЎОМ Оз ваÑОаМÑПв ÐŽÐ»Ñ ÐœÐ°ÑÑÑПйкО О ÑеÑÑОÑПваМОÑ:</string>
+ <string name="bridge_mode">РежОЌ ЌПÑÑа</string>
+ <string name="get_bridges_email">Ðл. пПÑÑа</string>
+ <string name="get_bridges_web">СайÑ</string>
+ <string name="activate">ÐкÑОваÑОÑ</string>
+ <string name="apps_mode">VPN-ÑежОЌ</string>
+ <string name="send_email">ÐÑпÑавОÑÑ Ð¿ÐžÑÑЌП</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ÐÑ ÐŒÐŸÐ¶ÐµÑе пПлÑÑОÑÑ Ð°ÐŽÑÐµÑ ÐŒÐŸÑÑа пП ÑлекÑÑПММПй пПÑÑе, Ñ ÑайÑа ОлО пÑÑÑÐŒ ÑкаМОÑÐŸÐ²Ð°ÐœÐžÑ QR-кПЎа. ÐÑбеÑОÑе \"Ðл. пПÑÑа\" ОлО \"СайÑ\" МОже, ÑÑÐŸÐ±Ñ Ð·Ð°Ð¿ÑПÑОÑÑ Ð°ÐŽÑÐµÑ ÐŒÐŸÑÑа.\n\nÐПлÑÑеММÑй аЎÑÐµÑ ÑкПпОÑÑйÑе О вÑÑавÑÑе егП в ÑазЎеле МаÑÑÑПек Orbot \"ÐПÑÑÑ\", пПÑле ÑегП пеÑезапÑÑÑОÑе пÑОлПжеМОе.</string>
+ <string name="vpn_default_world">ÐÐžÑ (авÑП)</string>
+ <string name="hidden_services">СкÑÑÑÑе ÑлÑжбÑ</string>
+ <string name="title_activity_hidden_services">СкÑÑÑÑе ÑлÑжбÑ</string>
+ <string name="menu_hidden_services">СкÑÑÑÑе ÑлÑжбÑ</string>
+ <string name="save">СПÑ
ÑаМОÑÑ</string>
+ <string name="local_port">ÐПкалÑМÑй пПÑÑ</string>
+ <string name="onion_port">Onion-пПÑÑ</string>
+ <string name="name">ÐÐŒÑ</string>
+ <string name="done">ÐПÑПвП!</string>
+ <string name="invalid_port">ÐекПÑÑекÑМÑй пПÑÑ</string>
+ <string name="copy_address_to_clipboard">СкПпОÑПваÑÑ Ð°ÐŽÑÐµÑ Ð² бÑÑÐµÑ ÐŸÐ±ÐŒÐµÐœÐ°</string>
+ <string name="show_auth_cookie">ÐПказаÑÑ Ð°Ð²ÑПÑОзОÑÑÑÑОе cookie</string>
+ <string name="backup_service">РезеÑвОÑПваÑÑ ÑлÑжбÑ</string>
+ <string name="delete_service">УЎалОÑÑ ÑлÑжбÑ</string>
+ <string name="backup_saved_at_external_storage">РезеÑÐ²ÐœÐ°Ñ ÐºÐŸÐ¿ÐžÑ ÑПÑ
ÑаМеМа Ма вМеÑМеЌ Ñ
ÑаМОлОÑе</string>
+ <string name="backup_restored">ÐПÑÑÑаМПвлеМП Оз ÑезеÑвМПй кПпОО</string>
+ <string name="filemanager_not_available">ЀайлПвÑй ÐŒÐµÐœÐµÐŽÐ¶ÐµÑ ÐœÐµÐŽÐŸÑÑÑпеМ</string>
+ <string name="please_grant_permissions_for_external_storage">ÐÑеЎПÑÑавÑÑе ÑазÑеÑÐµÐœÐžÑ ÐŽÐ»Ñ ÐŽÐŸÑÑÑпа к вМеÑÐœÐµÐŒÑ Ñ
ÑаМОлОÑÑ</string>
+ <string name="restore_backup">ÐПÑÑÑаМПвОÑÑ ÐžÐ· кПпОО</string>
+ <string name="create_a_backup_first">СМаÑала ÑПзЎайÑе ÑезеÑвМÑÑ ÐºÐŸÐ¿ÐžÑ</string>
+ <string name="name_can_t_be_empty">ÐÐŒÑ ÐœÐµ ÐŒÐŸÐ¶ÐµÑ Ð±ÑÑÑ Ð¿ÑÑÑÑÐŒ</string>
+ <string name="fields_can_t_be_empty">ÐÐŸÐ»Ñ ÐœÐµ ЌПгÑÑ Ð±ÑÑÑ Ð¿ÑÑÑÑЌО</string>
+ <string name="start_tor_again_for_finish_the_process">ÐапÑÑÑОÑе Tor ÑМПва ÐŽÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐœÐžÑ Ð¿ÑПÑеÑÑа</string>
+ <string name="confirm_service_deletion">ÐПЎÑвеÑжЎеМОе ÑÐŽÐ°Ð»ÐµÐœÐžÑ ÑлÑжбÑ</string>
+ <string name="click_again_for_backup">ÐажЌОÑе еÑÑ Ñаз ÐŽÐ»Ñ ÑезеÑвОÑПваМОÑ</string>
+ <string name="service_type">ТОп ÑлÑжбÑ</string>
+ <string name="auth_cookie">ÐвÑПÑОзОÑÑÑÑОе cookie</string>
+ <string name="copy_cookie_to_clipboard">ÐПпОÑПваÑÑ cookie в бÑÑÐµÑ ÐŸÐ±ÐŒÐµÐœÐ°</string>
+ <string name="auth_cookie_was_not_configured">ÐвÑПÑОзОÑÑÑÑОе cookie Ме МаÑÑÑПеМÑ</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ÐПжалÑйÑÑа, пеÑезапÑÑÑОÑе Orbot ÐŽÐ»Ñ Ð²ÑÑÑÐ¿Ð»ÐµÐœÐžÑ ÐžÐ·ÐŒÐµÐœÐµÐœÐžÑ Ð² ÑОлÑ</string>
+ <string name="client_cookies">Cookies клОеМÑа</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ÐеЎейÑÑвОÑелÑМÑй .onion-аЎÑеÑ</string>
+ <string name="cookie_from_QR">ÐÑПÑОÑаÑÑ ÐžÐ· QR-кПЎа</string>
+ <string name="backup_cookie">РезеÑвОÑПваÑÑ cookie</string>
+ <string name="delete_cookie">УЎалОÑÑ cookies</string>
+ <string name="confirm_cookie_deletion">ÐПЎÑвеÑЎОÑе ÑЎалеМОе cookie</string>
+ <string name="hosted_services">РазЌеÑÑММÑе ÑлÑжбÑ</string>
+ <string name="share_as_qr">ÐПЎелОÑÑÑÑ ÑеÑез QR-кПЎ</string>
+ <string name="disable">ÐÑклÑÑОÑÑ</string>
+ <string name="enable">ÐклÑÑОÑÑ</string>
+ <string name="consider_disable_battery_optimizations">РаÑÑЌПÑÑОÑе вПзЌПжМПÑÑÑ ÐŸÑклÑÑÐµÐœÐžÑ ÐŸÐ¿ÑОЌОзаÑОО баÑаÑеО</string>
+ <string name="consider_enable_battery_optimizations">РаÑÑЌПÑÑОÑе вПзЌПжМПÑÑÑ Ð²ÐºÐ»ÑÑÐµÐœÐžÑ ÐŸÐ¿ÑОЌОзаÑОО баÑаÑеО</string>
+ <string name="pref_isolate_dest">ÐзПлОÑПваÑÑ Ð°ÐŽÑеÑа МазМаÑеМОÑ</string>
+ <string name="pref_isolate_dest_summary">ÐÑпПлÑзПваÑÑ ÑазМÑе ÑепО ÐŽÐ»Ñ ÐºÐ°Ð¶ÐŽÐŸÐ³ÐŸ аЎÑеÑа МазМаÑеМОÑ</string>
+ <string name="no_transproxy_warning_short">ÐÐ ÐÐУÐÐ ÐÐÐÐÐÐÐ: пÑПзÑаÑМÑй пÑПкÑО бПлÑÑе Ме пПЎЎеÑжОваеÑÑÑ</string>
+ <string name="no_transproxy_warning">ÐÐ ÐÐУÐÐ ÐÐÐÐÐÐÐ: пÑПзÑаÑМÑй пÑПкÑО бПлÑÑе Ме пПЎЎеÑжОваеÑÑÑ. ÐЌеÑÑП ÑÑПгП ОÑпПлÑзÑйÑе VPN-ÑежОЌ Orbot.</string>
+ <string name="pref_connection_padding">ÐÑПклаЎка ÑПеЎОМеМОÑ</string>
+ <string name="pref_connection_padding_summary">ÐÑегЎа вклÑÑÐ°ÐµÑ Ð¿ÑÐŸÐºÐ»Ð°ÐŽÐºÑ ÑÐŸÐµÐŽÐžÐœÐµÐœÐžÑ ÐŽÐ»Ñ Ð·Ð°ÑОÑÑ ÐŸÑ ÐœÐµÐºÐŸÑПÑÑÑ
ÑПÑÐŒ аМалОза ÑÑаÑОка. ÐП ÑЌПлÑаМОÑ: авÑП</string>
+ <string name="pref_reduced_connection_padding">СПкÑаÑÑÐœÐœÐ°Ñ Ð¿ÑПклаЎка ÑПеЎОМеМОÑ</string>
+ <string name="pref_reduced_connection_padding_summary">РаМÑÑе закÑÑÐ²Ð°ÐµÑ ÑеÑÑаМÑлОÑПваММÑе ÑÐŸÐµÐŽÐžÐœÐµÐœÐžÑ Ðž ПÑпÑавлÑÐµÑ ÐŒÐµÐœÑÑе пакеÑПв Ð·Ð°Ð¿ÐŸÐ»ÐœÐµÐœÐžÑ ÐŽÐ»Ñ ÑЌеМÑÑÐµÐœÐžÑ ÐŸÐ±ÑÑЌа пеÑеЎаваеЌÑÑ
ЎаММÑÑ
О ОÑпПлÑÐ·ÐŸÐ²Ð°ÐœÐžÑ Ð±Ð°ÑаÑеО</string>
+ <string name="app_shortcuts">ÐÑÐžÐ»ÐŸÐ¶ÐµÐœÐžÑ Ñ Ð¿ÐŸÐŽÐŽÐµÑжкПй Tor</string>
+ <string name="testing_bridges">ТеÑÑОÑПваМОе ÑÐŸÐµÐŽÐžÐœÐµÐœÐžÑ Ñ Tor ÑеÑез ЌПÑÑâŠ</string>
+ <string name="testing_bridges_success">УÑпеÑМП! ÐПÑÑ ÐœÐ°ÑÑÑПеМ пÑавОлÑМП.</string>
+ <string name="testing_bridges_fail">ÐÐУÐÐЧÐÐ. ÐПпÑПбÑйÑе ÐŽÑÑгПй ваÑОаМÑ.</string>
+ <string name="bridge_direct_connect">ÐПЎклÑÑеМОе МепПÑÑеЎÑÑвеММП к Tor (лÑÑÑе вÑегП)</string>
+ <string name="bridge_community">ÐПЎклÑÑеМОе ÑеÑез ÑеÑвеÑÑ ÑППбÑеÑÑва</string>
+ <string name="bridge_cloud">ÐПЎклÑÑеМОе ÑеÑез ПблаÑМÑе ÑеÑвеÑÑ</string>
+ <string name="bridges_get_new">ÐапÑПÑОÑÑ ÐœÐŸÐ²Ñе ЌПÑÑÑ⊠(еÑлО вÑÑ ÐŸÑÑалÑМПе Ме ÑЎалПÑÑ)</string>
+ <string name="trouble_connecting">ÐÑПблеЌа Ñ Ð¿ÐŸÐŽÐºÐ»ÑÑеМОеЌ?</string>
+ <string name="full_device_vpn">VPN ÐŽÐ»Ñ Ð²ÑегП ÑÑÑÑПйÑÑва</string>
+ <string name="vpn_disabled">VPN ПÑклÑÑÑМ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-si-rLK/strings.xml b/app-mini/src/main/res/values-si-rLK/strings.xml
new file mode 100644
index 00000000..fa116ecb
--- /dev/null
+++ b/app-mini/src/main/res/values-si-rLK/strings.xml
@@ -0,0 +1,96 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot යන෠à¶
à¶±à·à¶à·à¶à· à¶
à·à¶Žà·à·à· à·à¶§ à·à¶©à· à¶
à·à¶»à¶à·à·à·à¶à·à¶»à·à· à¶
à¶±à·à¶à¶»à·à¶¢à·à¶œà·à¶ºà· à·à·à¶»à·à·à·à¶»à·à¶žà¶§ à¶à¶© à·à¶œà·à·à¶¯à·à¶± à¶±à·à·à¶žà·à¶œà·à· ගබà·à¶¯à·à¶±à·à¶±à·à·à· à¶Žà·à¶»à·à¶à·à·à· à·à·à·à·à·à·à¶à·. à¶à¶º Tor යà·à·à¶¯à·à¶à¶±à·à¶žà·à¶±à· à¶à¶¶à¶à·à· à¶
à¶±à·à¶à¶»à·à¶¢à·à¶œ à¶à¶±à·à¶¯à·à¶±à· à¶à·à·à¶à¶±à¶º à¶à¶»à¶ºà· à¶à¶žà·à¶±à·à¶ž à¶à¶º à¶œà·à·à· à·à¶§à· à·à· à¶
à¶±à·à¶à·à¶à· à·à¶žà·à¶±à·à¶à¶» à¶Žà¶»à·à¶à¶±à¶ à·à¶»à·à· à¶à·à¶±à¶ºà¶žà·à¶±à· à¶à¶¶à¶à·à· à¶
à¶±à·à¶à¶»à·à¶¢à·à¶œ à¶à¶±à·à¶¯à·à¶±à· à·à¶à·à· à¶à¶¶à·à¶à¶±à·. Tor යන෠</string>
+ <string name="status_starting_up">Orbot à¶à¶»à¶žà·à¶· à¶à¶»à¶žà·à¶±à·âŠ</string>
+ <string name="status_activated">Tor à¶¢à·à¶œà¶ºà¶§ à·à¶¶à·à¶¯à·à¶ºà·</string>
+ <string name="status_disabled">Orbot à¶à·âà¶»à·à¶ºà·à·à·à¶»à·à·à¶ à¶à¶» à¶à¶ </string>
+ <string name="tor_process_starting">Tor දà·à¶ºà¶à¶ºà· à¶à¶»à¶žà·à¶· à¶à¶»à¶žà·à¶±à·...</string>
+ <string name="tor_process_complete">à·à¶žà·à¶Žà·à¶»à·à¶«à¶ºà·.</string>
+ <string name="menu_settings">à·à·à¶§à·à·à¶žà·</string>
+ <string name="menu_log">à¶œà·à¶à¶º </string>
+ <string name="menu_start">à¶
රඹනà·à¶±</string>
+ <string name="menu_stop">à¶±à·à¶à·à·à¶±à·à¶±</string>
+ <string name="menu_about">à¶Žà·à·
à·à¶¶à¶¯</string>
+ <string name="main_layout_download">à¶·à·à¶à¶ à¶à¶»à¶±à·à¶± </string>
+ <string name="main_layout_upload">à¶à¶©à·à¶à¶ à¶à¶»à¶±à·à¶± </string>
+ <string name="button_about">à¶Žà·à·
à·à¶¶à¶¯</string>
+ <string name="menu_exit">à¶à·à¶à· à·à¶±à·à¶±</string>
+ <string name="btn_okay">à¶à¶à¶à¶ºà·</string>
+ <string name="btn_cancel">à¶
à·à¶œà¶à¶à· à¶à¶»à¶±à·à¶±</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbot à¶Žà·à·
à·à¶¶à¶¯ à¶à¶à·à¶žà· à·à·à·à·à¶à¶» </string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">à¶Žà·à¶¯à·</string>
+ <string name="pref_start_boot_title">Orbot à¶à¶»à¶¹à·à¶žà· à¶°à·à·à¶à¶ºà· à¶
රඹනà·à¶± </string>
+ <string name="pref_start_boot_summary">Orbot à·à·à·à¶ºà¶à¶à·âà¶»à·à¶ºà· à¶à¶»à¶žà·à¶· à¶à¶», à¶à¶¶à· Android à¶à¶Žà¶à¶»à¶«à¶º à¶Žà¶§à¶±à·à¶à¶à· à·à·à¶§ Tor à·à¶œà¶§ à·à¶žà·à¶¶à¶±à·à¶° à¶à¶»à¶à¶±à·à¶±.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">à¶±à·à¶©à· à·à·à¶±à·âයà·à·à¶à¶»à¶«à¶º </string>
+ <string name="pref_node_configuration_summary">à¶žà·à·à· à¶à¶¶à· à¶±à·à¶»à·à¶±à·à¶žà·à¶à¶à·à· à¶
à¶©à· à¶à¶»à¶± à¶Žà·âà¶»à¶à¶žà¶± à·à·à¶§à·à·à¶žà· ය.</string>
+ <string name="pref_entrance_node">à¶à¶à·à·
à· à·à·à¶žà· à¶±à·à¶©à· </string>
+ <string name="pref_entrance_node_summary">à¶Žà·
à¶žà· hop à·à¶¯à·à· à¶
à¶à·à¶œà·à·à¶œà¶à·à¶«à·, nicks, රටà·à¶œà· à·à· à¶œà·à¶Žà·à¶±à¶ºà¶±à· </string>
+ <string name="pref_entrance_node_dialog">à¶à¶à·à·
à· à·à·à¶žà· à¶±à·à¶©à·à·à¶œà¶§ à¶Žà·à·à·à·à·à¶±à·à¶± </string>
+ <string name="pref_proxy_title">Outbound à¶¢à·à¶œ à¶±à·à¶ºà·à¶à· </string>
+ <string name="pref_proxy_type_title">Outbound à¶±à·à¶ºà·à¶à· à·à¶»à·à¶à¶ºà¶à· </string>
+ <string name="pref_proxy_type_summary">à¶±à·à¶ºà·à¶à· à·à·à·à·à¶¯à·à¶ºà¶à¶ºà¶±à· à·à¶¯à·à· à¶Žà·âà¶»à·à¶§à·à¶à·à¶œ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">à¶±à·à¶ºà·à¶à· à·à·à·à· à·à¶»à·à¶à¶º à¶à¶à·à¶œà¶à· à¶à¶»à¶±à·à¶± </string>
+ <string name="pref_proxy_host_title">Outbound à¶±à·à¶ºà·à¶à· à·à¶à·à¶à·à¶»à¶ºà¶à· </string>
+ <string name="pref_proxy_host_summary">à¶±à·à¶ºà·à¶à· à·à·à·à·à¶¯à·à¶ºà¶à¶à· à·à¶à·à¶à·à¶»à¶ à¶±à·à¶žà¶º </string>
+ <string name="pref_proxy_host_dialog">à¶±à·à¶ºà·à¶à·à·à·à·à· à·à¶à·à¶à·à¶»à¶º à¶à¶à·à¶œà· à¶à¶»à¶±à·à¶± </string>
+ <string name="pref_proxy_port_title">Outbound à¶±à·à¶ºà·à¶à· à¶Žà·à¶»à·à¶§à¶ºà¶à· </string>
+ <string name="pref_proxy_port_summary">à¶±à·à¶ºà·à¶à· à·à·à·à·à¶¯à·à¶ºà¶ à¶Žà·à¶§à¶º</string>
+ <string name="pref_proxy_port_dialog">à¶±à·à¶ºà·à¶à· à·à·à·à· à¶Žà·à¶§à¶º à¶à¶à·à·
à· à¶à¶»à¶±à·à¶± </string>
+ <string name="couldn_t_start_tor_process_">Tor à¶à·âà¶»à·à¶ºà·à·à¶œà·à¶±à· à¶à¶»à¶žà·à¶· à¶à·à¶»à·à¶žà¶§ à¶±à·à·à·à¶à· à·à·à¶º:</string>
+ <string name="error">දà·à·à¶ºà¶à·</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">à¶à¶¶à· à·à·à¶±à·à¶¯à·à·à¶± à¶œà·à¶Žà·à¶±à¶ºà·à·à· à·à·à¶§à·à·à¶žà·à·à¶œ à·à·âයà¶à·à¶»à·à¶à¶ºà¶à· à·à¶§à¶à·à¶± à¶à¶!</string>
+ <string name="your_relay_settings_caused_an_exception_">à¶à¶¶à· à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶ à·à·à¶§à·à·à¶žà·à·à¶œ à·à·âයà¶à·à¶»à·à¶à¶ºà¶à· à·à¶§à¶à·à¶± à¶à¶!</string>
+ <string name="exit_nodes">à¶Žà·à¶§à·à·à¶žà· à¶±à·à¶©à·</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">à¶Žà·
à¶žà· hop à·à¶¯à·à· à¶
à¶à·à¶œà·à·à¶œà¶à·à¶«à·, nicks, රටà·à¶œà· à·à· à¶œà·à¶Žà·à¶±à¶ºà¶±à·</string>
+ <string name="enter_exit_nodes">à¶Žà·à¶§à·à·à¶žà· à¶±à·à¶©à·à·à¶œà¶§ à¶Žà·à·à·à·à·à¶±à·à¶±</string>
+ <string name="exclude_nodes">à¶
à¶à·à·à¶»à·à¶± à¶±à·à¶©à·</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">à¶
à¶à·à·à¶»à·à¶± à¶
à¶à·à¶œà·à·à¶œà¶à·à¶«à·, nicks, රටà·à¶œà· à·à· à¶œà·à¶Žà·à¶±à¶ºà¶±à·</string>
+ <string name="enter_exclude_nodes">à¶
à¶à·à·à¶»à·à¶± à¶±à·à¶©à·à¶©à·à·à¶œà¶§ à¶Žà·à·à·à·à·à¶±à·à¶±</string>
+ <string name="strict_nodes">දà·à¶©à· à¶±à·à¶©à· </string>
+ <string name="use_only_these_specified_nodes">à¶à·à¶ à·à¶¯à·à¶±à· à¶±à·à¶©à· *à¶Žà¶žà¶«à¶à·* à¶·à·à·à·à¶à· à¶à¶»à¶±à·à¶± </string>
+ <string name="bridges">à·à·à¶à·</string>
+ <string name="use_bridges">à·à·à¶à· à¶·à·à·à·à¶à· à¶à¶»à¶±à·à¶± </string>
+ <string name="ip_address_and_port_of_bridges">IP à¶œà·à¶Žà·à¶±à¶º à·à· à·à·à¶à·à·à¶œ à¶Žà·à¶§</string>
+ <string name="enter_bridge_addresses">à·à·à¶à· à¶œà·à¶Žà·à¶±à¶ºà¶±à· à¶à¶à·à·
à· à¶à¶»à¶±à·à¶± </string>
+ <string name="relays">à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶à¶º</string>
+ <string name="relaying">à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶±à¶º </string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">à¶à¶¶à· à¶à¶Žà·à¶à¶à¶º à¶±à·à¶à·à¶ž-à¶±à·à¶ºà¶± à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶à¶ºà¶à· à¶¶à·à¶§ à·à¶¶à¶œ à¶à¶»à¶±à·à¶± </string>
+ <string name="relay_port">à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶ à¶Žà·à¶§à¶º</string>
+ <string name="listening_port_for_your_tor_relay">Tor à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶à¶ºà¶§ à·à·à¶±à·à¶¯à·à¶± à¶Žà·à¶§à¶º </string>
+ <string name="enter_or_port">OR à¶Žà·à¶§à¶º à¶à¶à·à·
à· à¶à¶»à¶±à·à¶± </string>
+ <string name="relay_nickname">à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶ à¶
à¶Žà¶±à·à¶žà¶º</string>
+ <string name="the_nickname_for_your_tor_relay">à¶à¶¶à· Tor à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶à¶ºà· à¶
à¶Žà¶±à·à¶žà¶º</string>
+ <string name="enter_a_custom_relay_nickname">à·à·âයà·à·à·à·à¶»à·à¶ à¶Žà·âà¶»à¶à·à¶ºà·à¶¢à¶ à¶
à¶Žà¶±à·à¶žà¶º à¶à¶à·à·
à· à¶à¶»à¶±à·à¶± </string>
+ <string name="reachable_addresses">à·à·à¶±à·à¶¯à· à·à·à¶ºà·à·à¶à· à¶œà·à¶Žà·à¶±à¶º </string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">à·à·à·à·à¶¯à·à¶ºà¶à¶ºà·à¶à· à¶œà·à· firewall à¶Žà·à¶§à·à¶Žà· à·à·à¶§ à·à·à¶žà·à¶à·à¶»à· à¶Žà·à·
à·à·à·à¶à· à·à¶žà¶ à¶à·âà¶»à·à¶ºà·à¶à¶»à¶±à·à¶±</string>
+ <string name="reachable_ports">à·à·à¶±à·à¶¯à· à·à·à¶ºà·à·à¶à· à¶Žà·à¶§à¶ºà¶±à·</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">à·à·à¶žà·à¶à·à¶»à· firewall à¶Žà·à¶§à·à¶Žà· à·à·à¶±à·à¶¯à·à·à·à¶º à·à·à¶à· à¶Žà·à¶§à¶ºà¶±à·</string>
+ <string name="enter_ports">à¶Žà·à¶§à¶ºà¶±à· à¶à¶à·à·
à· à¶à¶»à¶±à·à¶± </string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">à¶±à·à¶¯à·à·à· à¶à·à¶»à·à¶žà· à¶œà·à¶à¶º à¶Žà·âà¶»à¶à·à¶¯à·à¶±à¶º à·à¶¯à·à· à·à¶¶à¶œ à¶à¶»à¶±à·à¶± (à¶±à·à¶»à¶¹à·à¶ž à·à¶¯à·à· adb or aLogCat à¶·à·à·à·à¶à· à¶à¶»à¶±à·à¶±)</string>
+ <string name="project_home">à·à·âයà·à¶Žà·à¶à· à¶±à·à·à·à¶±(à¶±à·):</string>
+ <string name="third_party_software">3 à·à¶± à¶Žà·à¶»à·à·à· à¶žà·à¶¯à·à¶à·à¶à¶</string>
+ <string name="found_existing_tor_process">à¶Žà·à¶à·à¶± Tor à¶à·âà¶»à·à¶ºà·à·à¶œà· à·à¶žà·à·à·à¶º...</string>
+ <string name="something_bad_happened">යඞ෠නà·à¶žà¶±à· දà·à¶ºà¶à· à·à·à¶¯à·à·à·à¶º. à¶œà·à¶à¶º à¶Žà¶»à·à¶à·à·à· à¶à¶» බගනà·à¶± </string>
+ <string name="unable_to_read_hidden_service_name">à·à·à¶à·à·à¶«à· à·à·à·à· à¶±à·à¶žà¶º à¶à·à¶ºà·à·à¶žà¶§ à¶±à·à·à·à¶à·à¶º </string>
+ <string name="unable_to_start_tor">Tor à¶à¶»à¶žà·à¶· à¶à·à¶»à·à¶žà¶§ à¶±à·à·à·à¶à·à¶º:</string>
+ <string name="pref_use_persistent_notifications">Orbot à·à¶žà·à¶¶à¶±à·à¶° à·à· à¶à¶à· à·à·à¶žà·à·à¶§à¶ž à·à·à¶§ à¶žà·à·à¶œà¶žà· à¶à·à¶»à·à·à· à¶±à·à¶»à·à¶Žà¶à¶º à¶à¶¶à·à¶à¶±à·à¶±</string>
+ <string name="pref_use_persistent_notifications_title">à¶±à·à·à·à¶¯à¶± à¶œà·à¶¶à·à¶žà¶§ à·à¶œà·à·à·à¶±à·à¶± </string>
+ <string name="set_locale_title">à¶·à·à·à·à·</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="activate">à¶à·âà¶»à·à¶ºà·à¶à¶»à·à¶±à·à¶±</string>
+ <string name="hidden_services">à·à·à¶à·à·à¶«à· à·à·à·à· </string>
+ <string name="title_activity_hidden_services">à·à·à¶à·à·à¶«à· à·à·à·à· </string>
+ <string name="menu_hidden_services">à·à·à¶à·à·à¶«à· à·à·à·à· </string>
+ <string name="save">à·à·à¶»à¶à·à¶±à·à¶±</string>
+ <string name="name">නඞ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-sk-rSK/strings.xml b/app-mini/src/main/res/values-sk-rSK/strings.xml
new file mode 100644
index 00000000..0fe1e9e1
--- /dev/null
+++ b/app-mini/src/main/res/values-sk-rSK/strings.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+</resources>
diff --git a/app-mini/src/main/res/values-sk/strings.xml b/app-mini/src/main/res/values-sk/strings.xml
new file mode 100644
index 00000000..8877c736
--- /dev/null
+++ b/app-mini/src/main/res/values-sk/strings.xml
@@ -0,0 +1,142 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot je bezplatná proxy aplikácia, ktorá umoÅŸÅuje ostatnÜm aplikáciam pouÅŸÃvaÅ¥ internet bezpeÄnejÅ¡ie. Orbot pouÅŸÃva Tor pre Å¡ifrovanie vaÅ¡ej internetovej komunikácie, ktorú následne schová za sériu náhodnÜch poÄÃtaÄov z celého sveta. Tor je bezplatnÜ software a otvorená sieÅ¥, ktorá pomáha chrániÅ¥ proti sledovaniu sietÃ, ktoré ohrozuje osobnú slobodu a súkromie, dÃŽverné pracovné aktivity a vzÅ¥ahy a tieÅŸ bezpeÄnosÅ¥ Å¡tátov známu ako analÜza prevádzky.</string>
+ <string name="status_starting_up">Orbot sa spúšťaâŠ</string>
+ <string name="status_activated">PripojenÜ do siete Tor</string>
+ <string name="status_disabled">Orbot je deaktivovanÜ</string>
+ <string name="status_shutting_down">TorService sa vypÃna</string>
+ <string name="tor_process_starting">Å tartujem Tor klienta...</string>
+ <string name="tor_process_complete">hotovo.</string>
+ <string name="menu_settings">Nastavenia</string>
+ <string name="menu_log">Podrobnosti</string>
+ <string name="menu_start">Å tart</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">O aplikáciÃ</string>
+ <string name="main_layout_download">Stiahnuť</string>
+ <string name="main_layout_upload">Nahrať</string>
+ <string name="button_about">O aplikáciÃ</string>
+ <string name="menu_exit">UkonÄiÅ¥</string>
+ <string name="menu_scan">Zoskenovať BridgeQR</string>
+ <string name="menu_share_bridge">Zdielať BridgeQR</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">Zrušiť</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">NiekoÄŸko detailov o Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Všeobecné</string>
+ <string name="pref_start_boot_title">Spustiť Orbot pri štarte</string>
+ <string name="pref_start_boot_summary">Automaticky spustiť Orbot a pripojiť k Tor, pri štarte vašeho Android zariadenia</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Konfigurácia uzlu</string>
+ <string name="pref_node_configuration_summary">Toto sú pokroÄilé nastavenia, ktorá mÃŽÅŸu znÃÅŸiÅ¥ vaÅ¡u anonymitu</string>
+ <string name="pref_entrance_node">Vstupné uzly</string>
+ <string name="pref_entrance_node_summary">OtlaÄky, prezÜvky, krajiny a adresy pre prvÜ skok</string>
+ <string name="pref_entrance_node_dialog">Zadajte vstupné uzly</string>
+ <string name="pref_allow_background_starts_title">PovoliÅ¥ spustenie v pozadÃ</string>
+ <string name="pref_allow_background_starts_summary">Všetky aplikácie oznámia Orbot, aby spustil Tor a súvisiace sluşby</string>
+ <string name="pref_proxy_title">Odchádzajúce sieťové proxy (voliteğné)</string>
+ <string name="pref_proxy_type_title">Typ odchádzajúcich proxy</string>
+ <string name="pref_proxy_type_summary">Protokol pouşitÜ pre proxy server: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Zadajte typ proxy</string>
+ <string name="pref_proxy_host_title">Hostiteğ odchádzajúceho proxy</string>
+ <string name="pref_proxy_host_summary">Meno hostiteÄŸa proxy servera</string>
+ <string name="pref_proxy_host_dialog">Zadajte hostiteÄŸa proxy</string>
+ <string name="pref_proxy_port_title">Port odchádzajúceho proxy</string>
+ <string name="pref_proxy_port_summary">Port proxy servera</string>
+ <string name="pref_proxy_port_dialog">Zadajte port proxy</string>
+ <string name="pref_proxy_username_title">PouÅŸÃvateÄŸské meno odchádzajúceho proxy</string>
+ <string name="pref_proxy_username_summary">PouÅŸÃvateÄŸské meno proxy (voliteÄŸné)</string>
+ <string name="pref_proxy_username_dialog">Zadajte pouÅŸÃvateÄŸské meno proxy</string>
+ <string name="pref_proxy_password_title">Heslo odchádzajúcej proxy</string>
+ <string name="pref_proxy_password_summary">Heslo proxy (voliteğné)</string>
+ <string name="pref_proxy_password_dialog">Zadajte heslo proxy</string>
+ <string name="couldn_t_start_tor_process_">Nebolo moşné spustiť Tor proces:</string>
+ <string name="error">Chyba</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Vaše nastavenie dostupnÜch adries ReachableAddresses spÎsobilo chybu!</string>
+ <string name="your_relay_settings_caused_an_exception_">Vaše nastavenie relácià spÎsobilo chybu!</string>
+ <string name="exit_nodes">VÜstupné uzly</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">OtlaÄky, prezÜvky, krajiny a adresy pre poslednÜ skok</string>
+ <string name="enter_exit_nodes">Zadajte vÜstupné uzly</string>
+ <string name="exclude_nodes">VylúÄené uzly</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">OtlaÄky, prezÜvky, krajiny a adresy pre vylúÄenie</string>
+ <string name="enter_exclude_nodes">Zadajte vylúÄené uzly</string>
+ <string name="strict_nodes">Striktné uzly</string>
+ <string name="use_only_these_specified_nodes">Pouşiť *len* tieto špecifikované uzly</string>
+ <string name="bridges">Premostenia</string>
+ <string name="use_bridges">Pouşiť premostenia</string>
+ <string name="ip_address_and_port_of_bridges">IP adresy a porty premostenÃ</string>
+ <string name="enter_bridge_addresses">VloÅŸiÅ¥ adresy premostenÃ</string>
+ <string name="relays">Relé</string>
+ <string name="relaying">Postúpenie relé</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Povoliť, aby nebolo vaše zariadenie vÜchodiskovÜm relé / non-exit</string>
+ <string name="relay_port">Port relé</string>
+ <string name="listening_port_for_your_tor_relay">Port pouÅŸÃvanÜ pre vaÅ¡e Tor relé</string>
+ <string name="enter_or_port">Zadajte OR port</string>
+ <string name="relay_nickname">PrezÜvka relé</string>
+ <string name="the_nickname_for_your_tor_relay">PrezÜvka pre vaše Tor relé</string>
+ <string name="enter_a_custom_relay_nickname">Zadajte vlastnú prezÜvku pre relé</string>
+ <string name="reachable_addresses">Dostupné adresy</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Spustiť ako klient za firewallom s obmedzujúcimi zásadami</string>
+ <string name="reachable_ports">Dostupné porty</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Dostupné porty za obmedzujúcim firewallom</string>
+ <string name="enter_ports">Zadajte porty</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">povoliť záznam vÜstupu diagnostiky (pre prehliadanie je potrebnÜ adb alebo aLogCat)</string>
+ <string name="project_home">Domovské stránky projektov:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Software tretÃch strán:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">nájdenÜ inÜ proces Tor...</string>
+ <string name="something_bad_happened">Deje sa nieÄo zlé. Skontrolujte podrobnosti.</string>
+ <string name="unable_to_read_hidden_service_name">nemoÅŸné preÄÃtaÅ¥ názov skrytej sluÅŸby</string>
+ <string name="unable_to_start_tor">Nemoşné spustiť Tor:</string>
+ <string name="pref_use_persistent_notifications">VÅŸdy ponechaÅ¥ ikonu v stavovom riadku, keÄ je Orbot pripojenÜ</string>
+ <string name="pref_use_persistent_notifications_title">Vşdy zapnuté upozornenia</string>
+ <string name="pref_use_expanded_notifications">ZobraziÅ¥ rozÅ¡Ãrené upozornenie s vÜstupnou krajinou a IP adresou siete Tor</string>
+ <string name="pref_use_expanded_notifications_title">RozÅ¡Ãrené upozornenia</string>
+ <string name="set_locale_title">Jazyk</string>
+ <string name="no_internet_connection_tor">Åœiadne pripojenie k internetu. Tor je v pohotovostnom reÅŸime...</string>
+ <string name="pref_disable_network_title">AutomatickÜ spánok</string>
+ <string name="pref_disable_network_summary">UspaÅ¥ Tor, keÄ internet nie je dostupnÜ</string>
+ <string name="newnym">Prepli ste na novú Tor identitu!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Ŝiadna moşnosť pripojenia do siete. Uspávam Tor...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Pripojenie do siete je dobré. Aktivujem Tor...</string>
+ <string name="updating_settings_in_tor_service">aktualizujem nastavenie v sluÅŸbe Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Port, na ktorom Tor poskytuje SOCKS proxy (prednastavené 9050 alebo 0 pre deaktiváciu)</string>
+ <string name="pref_socks_dialog">Nastavenia portu SOCKS</string>
+ <string name="pref_transport_title">Tor TransProxy port</string>
+ <string name="pref_transport_summary">Port, na ktorom Tor poskytuje transparentné proxy (prednastavené 9040 alebo 0 pre deaktiváciu)</string>
+ <string name="pref_transport_dialog">Nastavenia portu TransProxy</string>
+ <string name="pref_dnsport_title">Tor DNS port</string>
+ <string name="pref_dnsport_summary">Port, na ktorom Tor poskytuje DNS (prednastavené 5400 alebo 0 pre deaktiváciu)</string>
+ <string name="pref_dnsport_dialog">Nastavenie portu DNS</string>
+ <string name="pref_torrc_title">Vlastné nastavenie Torrc</string>
+ <string name="pref_torrc_summary">LEN PRE EXPERTOV: vloşiť priamo riadky nastavenia torrc</string>
+ <string name="pref_torrc_dialog">Vlasné Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Premostenia aktualizované</string>
+ <string name="restart_orbot_to_use_this_bridge_">ProsÃm reÅ¡tartujte Orbot, aby sa aktivovali zmeny</string>
+ <string name="menu_qr">QR kódy</string>
+ <string name="bridge_mode">Mod premostenÃ</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Aktivovať</string>
+ <string name="send_email">Poslať email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">MÃŽÅŸete zÃskaÅ¥ adresu premostenia cez email, web, alebo naskenovanÃm QR kódu premostenia. Vyberte \'Email\' alebo \'Web\' niÅŸÅ¡ie pre vyÅŸiadanie adresy premostenia.\n\nAkonáhle budete maÅ¥ adresu, skopÃrujte a vloÅŸte ju do nastavenà \"Premostenia\" v nastaveniach Orbot a reÅ¡tartujte ho.</string>
+ <string name="save">Uloşiť</string>
+ <string name="name">Meno</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ProsÃm reÅ¡tartujte Orbot, aby sa aktivovali zmeny</string>
+ <string name="disable">Zakázať</string>
+ <string name="enable">Povoliť</string>
+</resources>
diff --git a/app-mini/src/main/res/values-sl/strings.xml b/app-mini/src/main/res/values-sl/strings.xml
new file mode 100644
index 00000000..dfde7d65
--- /dev/null
+++ b/app-mini/src/main/res/values-sl/strings.xml
@@ -0,0 +1,35 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Orbot se zaganja...</string>
+ <string name="status_activated">Povezan v omreÅŸje Tor</string>
+ <string name="status_disabled">Orbot ni aktiviran</string>
+ <string name="tor_process_starting">Zagon Tor klijenta...</string>
+ <string name="tor_process_complete">konÄano.</string>
+ <string name="menu_settings">Nastavitve</string>
+ <string name="menu_log">Dnevnik</string>
+ <string name="menu_start">ZaÄni</string>
+ <string name="menu_stop">Ustavi</string>
+ <string name="menu_about">O programu</string>
+ <string name="main_layout_download">Prenesi</string>
+ <string name="main_layout_upload">NaloÅŸi</string>
+ <string name="button_about">O programu</string>
+ <string name="menu_exit">Izhod</string>
+ <string name="btn_okay">Potrdi</string>
+ <string name="btn_cancel">Prekini</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Nekaj podrobnosti o Orbot-u</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Splošno</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Napaka</string>
+ <string name="set_locale_title">Jezik</string>
+ <string name="activate">Aktiviraj</string>
+ <string name="save">Shrani</string>
+ <string name="name">ime</string>
+</resources>
diff --git a/app-mini/src/main/res/values-sn/strings.xml b/app-mini/src/main/res/values-sn/strings.xml
new file mode 100644
index 00000000..247cd012
--- /dev/null
+++ b/app-mini/src/main/res/values-sn/strings.xml
@@ -0,0 +1,23 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="menu_settings">Zvamada</string>
+ <string name="menu_stop">Mira</string>
+ <string name="menu_about">Maererano</string>
+ <string name="button_about">Maererano</string>
+ <string name="menu_exit">Buda</string>
+ <string name="btn_cancel">Kanzura</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Paita kanganiso</string>
+ <string name="set_locale_title">Mutauro</string>
+ <string name="name">Zita</string>
+ <string name="disable">Rambidza</string>
+ <string name="enable">Bvumidza</string>
+</resources>
diff --git a/app-mini/src/main/res/values-sq/strings.xml b/app-mini/src/main/res/values-sq/strings.xml
new file mode 100644
index 00000000..a54bdc79
--- /dev/null
+++ b/app-mini/src/main/res/values-sq/strings.xml
@@ -0,0 +1,34 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot eshte nje perfaqesues falas per internetin i cili ndihmon programet e tjera te perdori internetin ne menyre me te sigurte. Orbot perdor Tor per te shifruar trafikun tuaj te internetit nepermjet nje serie me kompjutere perqark botes. Tor eshte nje softwere pa pagese dhe nje rrjet i hapur qe ju ndihmon juve te mbroheni nga cdo forme mbikqyrjeje ne rrjet qe cenon lirine dhe privatesine personale, aktivitetet konfidenciale te lidhjeve dhe bizneseve, dhe siqurine e gjendjes te njohur si analiza e trafikut.</string>
+ <string name="menu_settings">Zgjedhjet</string>
+ <string name="menu_start">Nisje</string>
+ <string name="menu_stop">Ndale</string>
+ <string name="menu_about">Informacione</string>
+ <string name="main_layout_download">Shkarkim</string>
+ <string name="button_about">Informacione</string>
+ <string name="menu_exit">Dil</string>
+ <string name="btn_okay">Ne rregul</string>
+ <string name="btn_cancel">Anullo</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Disa detaje te Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Të Përgjithshme</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">Gabim</string>
+ <string name="bridges">Urat</string>
+ <string name="set_locale_title">Gjuhë</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="activate">Aktivizo</string>
+ <string name="save">Ruaje</string>
+ <string name="name">Emër</string>
+ <string name="backup_restored">Kopjeruajtja u rikthye</string>
+ <string name="disable">Ãaktivizoje</string>
+ <string name="enable">Mundëso</string>
+</resources>
diff --git a/app-mini/src/main/res/values-sr/strings.xml b/app-mini/src/main/res/values-sr/strings.xml
new file mode 100644
index 00000000..bc373863
--- /dev/null
+++ b/app-mini/src/main/res/values-sr/strings.xml
@@ -0,0 +1,186 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">ÐÑбПÑ</string>
+ <string name="app_description">ÐÑÐ±ÐŸÑ Ñе беÑплаÑМа пÑПкÑО аплОкаÑОÑа кПÑа ЎаÑе ÐŒÐŸÑ ÐŽÑÑгОЌ аплОкаÑОÑаЌа Ўа безбеЎМОÑе кПÑОÑÑе ОМÑеÑМеÑ. ÐÑÐ±ÐŸÑ ÐºÐŸÑОÑÑО Ð¢ÐŸÑ Ð·Ð° ÑОÑÑПваÑе ваÑег ОМÑеÑÐœÐµÑ ÑаПбÑаÑаÑа О ПМЎа га ÑкÑОва ÑлаÑеЌ кÑПз МОз ÑаÑÑМаÑа ÑОÑПЌ ÑвеÑа. Ð¢ÐŸÑ Ñе ÑлПбПЎаМ ÑПÑÑÐ²ÐµÑ Ðž ПÑвПÑеМа ÐŒÑежа кПÑа пПЌаже Ўа Ñе ПЎбÑаМОÑе ПЎ ÑазМОÑ
ПблОка МаЎзПÑа ÐŒÑежа кПÑО ÑгÑПжаваÑÑ Ð»ÐžÑÐœÑ ÑÐ»ÐŸÐ±ÐŸÐŽÑ Ðž пÑОваÑМПÑÑ, пПвеÑÑОве пПÑлПвМе акÑОвМПÑÑО О лОÑМе ПЎМПÑе О ÐŽÑжавМе безбеЎМПÑÑО пПзМаÑе каП аМалОза ÑаПбÑаÑаÑа.</string>
+ <string name="status_starting_up">ÐÑÐ±ÐŸÑ Ñе пПкÑеÑе...</string>
+ <string name="status_activated">ÐПвезаМ Ñа Ð¢ÐŸÑ ÐŒÑежПЌ</string>
+ <string name="status_disabled">ÐÑÐ±ÐŸÑ Ñе ЎеакÑОвОÑаМ</string>
+ <string name="status_shutting_down">ÐаÑеÑе Ð¢ÐŸÑ Ð¡ÐµÑвОÑа</string>
+ <string name="tor_process_starting">ÐПкÑеÑе Ñе Ð¢ÐŸÑ ÐºÐ»ÐžÑеМÑ...</string>
+ <string name="tor_process_complete">завÑÑеМП.</string>
+ <string name="menu_settings">ÐПЎеÑаваÑа</string>
+ <string name="menu_log">ÐПгПвО</string>
+ <string name="menu_start">ÐÑеМО</string>
+ <string name="menu_stop">ÐаÑÑÑавО</string>
+ <string name="menu_about">РМаЌа</string>
+ <string name="main_layout_download">ÐÑеÑзОЌаÑе</string>
+ <string name="main_layout_upload">ÐÑпÑеЌаÑе</string>
+ <string name="button_about">РМаЌа</string>
+ <string name="menu_exit">Ðзлаз</string>
+ <string name="menu_scan">СкеМОÑÐ°Ñ BridgeQR</string>
+ <string name="menu_share_bridge">ÐПЎелО BridgeQR</string>
+ <string name="btn_okay">У ÑеЎÑ</string>
+ <string name="btn_cancel">ÐÑкажО</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ÐеÑаÑО П ÐÑбПÑÑ</string>
+ <string name="wizard_details_msg">ÐÑÐ±ÐŸÑ Ñе аплОкаÑОÑа ПÑвПÑеМПг кПЎа кПÑа ÑаЎÑжО ТПÑ, Obfs4Proxy, BadVPN Tun2Socks, LibEvent О Polipo. ÐЌПгÑÑава лПкалМО HTTP proxy (8118) О SOCKS proxy (9050) Ñ Ð¢ÐŸÑ ÐŒÑежÑ. ÐÑÐ±ÐŸÑ ÑакПÑе ОЌа ЌПгÑÑМПÑÑ ÐŽÐ° Ма ÑÑÑПваМПЌ ÑÑеÑаÑÑ ÑаÑе Ñав ОМÑеÑÐœÐµÑ ÑаПбÑаÑÐ°Ñ Ð¿ÑекП ТПÑ-а.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ÐпÑÑе</string>
+ <string name="pref_start_boot_title">ÐПкÑеМО ÐÑÐ±ÐŸÑ Ð¿ÑО пПкÑеÑаÑÑ ÑÑеÑаÑа</string>
+ <string name="pref_start_boot_summary">ÐÑÑПЌаÑÑкО пПкÑеМОÑе ÐÑÐ±ÐŸÑ Ðž кПМекÑÑÑÑе Ñе Ñа Ð¢ÐŸÑ ÐŒÑежПЌ каЎа Ñе ÑпалО ÐÐ°Ñ ÐМЎÑПОЎ ÑÑеÑаÑ.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ÐПМÑОгÑÑаÑОÑа ÑвПÑПва</string>
+ <string name="pref_node_configuration_summary">ÐвП ÑÑ ÐœÐ°Ð¿ÑеЎМе пПÑÑавке кПÑе ÐŒÐŸÐ³Ñ ÐŽÐ° ÑЌаÑе ÐаÑÑ Ð°ÐœÐŸÐœÐžÐŒÐœÐŸÑÑ</string>
+ <string name="pref_entrance_node">ÐПÑеÑМО ÑвПÑПвО</string>
+ <string name="pref_entrance_node_summary">ÐÑОÑÑО пÑÑÑОÑÑ, МаЎОЌÑО, ÐŽÑжаве О аЎÑеÑе пÑвПг ÑкПка</string>
+ <string name="pref_entrance_node_dialog">УМеÑОÑе пПÑеÑМе ÑвПÑПве</string>
+ <string name="pref_allow_background_starts_title">ÐПзвПлО ÐПкÑеÑаÑе Ñ Ð¿ÐŸÐ·Ð°ÐŽÐžÐœÐž</string>
+ <string name="pref_allow_background_starts_summary">ÐПзвПлО бОлП кПÑÐŸÑ Ð°Ð¿Ð»ÐžÐºÐ°ÑОÑО Ўа МаÑеЎО ÐÑбПÑÑ ÐŽÐ° пПкÑеМе Ð¢ÐŸÑ Ðž ÑегПве ÑеÑвОÑе</string>
+ <string name="pref_proxy_title">ÐÑежМО пÑПкÑО за ПЎлазеÑО пÑÐŸÐŒÐµÑ (ÐеПбавезМП)</string>
+ <string name="pref_proxy_type_title">ТОп пÑПкÑОÑа за ПЎлазеÑО пÑПЌеÑ</string>
+ <string name="pref_proxy_type_summary">ÐÑПÑПкПл кПÑО Ñе Ñе кПÑОÑÑОÑО за пÑПкÑО ÑеÑвеÑ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">УМеÑОÑе ÑОп пÑПкÑОÑа</string>
+ <string name="pref_proxy_host_title">ХПÑÑ Ð¿ÑПкÑОÑа за ПЎлазеÑО пÑПЌеÑ</string>
+ <string name="pref_proxy_host_summary">ÐЌе Ñ
ПÑÑа за пÑПкÑО ÑеÑвеÑ</string>
+ <string name="pref_proxy_host_dialog">УМеÑОÑе Ñ
ПÑÑ ÐŸÐŽ пÑПкÑОÑа</string>
+ <string name="pref_proxy_port_title">ÐПÑÑ Ð¿ÑПкÑОÑа за ПЎлазеÑО пÑПЌеÑ</string>
+ <string name="pref_proxy_port_summary">ÐПÑÑ Ð¿ÑПкÑО ÑеÑвеÑа</string>
+ <string name="pref_proxy_port_dialog">УМеÑОÑе пПÑÑ Ð¿ÑПкÑОÑа</string>
+ <string name="pref_proxy_username_title">ÐПÑОÑМОÑкП ОЌе Ма пÑПкÑОÑÑ Ð·Ð° ПЎлазеÑО пÑПЌеÑ</string>
+ <string name="pref_proxy_username_summary">ÐЌе пÑПкÑОÑа (ÐеПбавезМП)</string>
+ <string name="pref_proxy_username_dialog">УМеÑОÑе кПÑОÑМОÑкП ОЌе ÐÑПкÑОÑа </string>
+ <string name="pref_proxy_password_title">КОÑÑа Ма пÑПкÑОÑÑ Ð·Ð° ПЎлазеÑО пÑПЌеÑ</string>
+ <string name="pref_proxy_password_summary">КОÑÑа пÑПкÑОÑа (МеПбавезМП)</string>
+ <string name="pref_proxy_password_dialog">УМеÑОÑе ÑОÑÑÑ Ð¿ÑПкÑОÑа</string>
+ <string name="couldn_t_start_tor_process_">ÐОÑе ЌПгÑÑе пПкÑеМÑÑО Ð¢ÐŸÑ Ð¿ÑПÑеÑ:</string>
+ <string name="error">ÐÑеÑка</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ÐаÑе ReachableAddresses пПÑÑавке ÑÑ ÐžÐ·Ð°Ð·Ð²Ð°Ð»Ðµ ОзÑзеÑак!</string>
+ <string name="your_relay_settings_caused_an_exception_">ÐаÑе пПÑÑавке ÑелеÑа ÑÑ ÐžÐ·Ð°Ð·Ð²Ð°Ð»Ðµ ОзÑзеÑак!</string>
+ <string name="exit_nodes">ÐзлазМО ÑвПÑПвО</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ÐÑОÑÑО, МаЎОЌÑО, ÐŽÑжаве О аЎÑеÑе заЎÑег ÑкПка</string>
+ <string name="enter_exit_nodes">УМеÑОÑе ОзлазМе ÑвПÑПве</string>
+ <string name="exclude_nodes">ÐÐŽÑÑÑаМОÑе ÑвПÑПве</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ÐÑОÑÑО, МаЎОЌÑО, ÐŽÑжаве О аЎÑеÑе за ПЎÑÑÑаÑеÑе</string>
+ <string name="enter_exclude_nodes">УМеÑОÑе ÑвПÑПве за ПЎÑÑÑаÑеÑе</string>
+ <string name="strict_nodes">СÑÑОкÑМО ÑвПÑПвО</string>
+ <string name="use_only_these_specified_nodes">ÐПÑОÑÑО СÐÐРПве МавеЎеМе ÑвПÑПве</string>
+ <string name="bridges">ÐПÑÑПвО</string>
+ <string name="use_bridges">ÐПÑОÑÑО bridge</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">ÐЌПгÑÑОÑе алÑеÑМаÑОвМе Ñлазе Ñ Ð¢ÐŸÑ ÐŒÑежÑ</string>
+ <string name="ip_address_and_port_of_bridges">IP аЎÑеÑа О пПÑÑ bridge-а</string>
+ <string name="enter_bridge_addresses">УМеÑОÑе bridge аЎÑеÑÑ </string>
+ <string name="relays">РелеÑО</string>
+ <string name="relaying">РелеÑОÑаÑе</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ÐЌПгÑÑОÑе ваÑеЌ ÑÑеÑаÑÑ ÐŽÐ° бÑЎе ÑÐµÐ»ÐµÑ Ð±ÐµÐ· Озлаза</string>
+ <string name="relay_port">ÐПÑÑ Ð·Ð° ÑелеÑ</string>
+ <string name="listening_port_for_your_tor_relay">ÐПÑÑ Ð·Ð° ÑлÑÑаÑе за ÑÐ²ÐŸÑ Ð¢ÐŸÑ ÑелеÑ</string>
+ <string name="enter_or_port">УкÑÑаÑÑе ÐÐРпПÑÑ</string>
+ <string name="relay_nickname">ÐаЎОЌак ÑелеÑа</string>
+ <string name="the_nickname_for_your_tor_relay">ÐаЎОЌак ваÑег Ð¢ÐŸÑ ÑелеÑа</string>
+ <string name="enter_a_custom_relay_nickname">УМеÑОÑе пП ОзбПÑÑ ÐœÐ°ÐŽÐžÐŒÐ°Ðº за ÑелеÑ</string>
+ <string name="reachable_addresses">ÐПÑÑÑпМе аЎÑеÑе</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">ÐПкÑеМОÑе каП клОÑеМÑа Оза firewall-а кПÑО Ñе ÑеÑÑÑОкÑОвМП пПЎеÑеМ</string>
+ <string name="reachable_ports">ÐПÑÑÑпМО пПÑÑПвО</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ÐПÑÑПвО ЎПÑÑÑпМО Оза ÑеÑÑÑОкÑОвМПг firewall-а</string>
+ <string name="enter_ports">УМеÑОÑе пПÑÑПве</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">ПЌПгÑÑОÑе debug лПгПвПаÑе (ЌПÑа Ñе кПÑОÑÑОÑО adb ОлО aLogCat Ўа бО Ñе пÑеглеЎалО)</string>
+ <string name="project_home">ÐПÑеÑМа за пÑПÑекÑе:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">СПÑÑÐ²ÐµÑ ÐŸÐŽ ÑÑÑаМе МеÑлÑжбеМОÑ
ОзЎаваÑа:</string>
+ <string name="tor_version">ToÑ: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="hidden_service_request">ÐплОкаÑОÑа желО Ўа ПÑвПÑО ÑакÑОвеМ пПÑÑ%1$s Ма ÑеÑвеÑÑ Ð·Ð° Ð¢ÐŸÑ ÐŒÑежÑ. ÐвП Ñе ÑОгÑÑаМ пПÑез ÑкПлОкП веÑÑÑеÑе аплОкаÑОÑО.</string>
+ <string name="found_existing_tor_process">МаÑеМ пПкÑеМÑÑО Ð¢ÐŸÑ Ð¿ÑПÑеÑ...</string>
+ <string name="something_bad_happened">ÐеÑÑП лПÑе Ñе ЎПгПЎОлП. ÐÑеглеЎаÑÑе лПгПве</string>
+ <string name="unable_to_read_hidden_service_name">МОÑаЌ Ñ ÐŒÐŸÐ³ÑÑМПÑÑО Ўа пÑПÑОÑаЌ ОЌе ÑакÑОвеМПг ÑеÑвОÑа</string>
+ <string name="unable_to_start_tor">Ð¢ÐŸÑ ÐœÐžÑе Ñ ÐŒÐŸÐ³ÑÑМПÑÑО Ўа Ñе пПкÑеМе:</string>
+ <string name="pref_use_persistent_notifications">Увек пÑОкажО ÐžÐºÐŸÐœÑ Ñ ÑÑлбаÑÑ ÐºÐ°ÐŽÐ° Ñе ÐÑÐ±ÐŸÑ ÐºÐŸÐœÐµÐºÑПваМ</string>
+ <string name="pref_use_persistent_notifications_title">СÑалМП ÑкÑÑÑеМе МПÑОÑОкаÑОÑе</string>
+ <string name="pref_use_expanded_notifications">ÐÑОкажО ПпÑОÑМП ПбавеÑÑеÑе Ð¢ÐŸÑ ÐžÐ·Ð»Ð°Ð·Ð° ÐŽÑжаве О IP-Ñа</string>
+ <string name="pref_use_expanded_notifications_title">ÐпÑОÑМП ÐбавеÑÑеÑе</string>
+ <string name="set_locale_title">ÐезОк</string>
+ <string name="no_internet_connection_tor">ÐеЌа ОМÑеÑÐœÐµÑ ÐºÐŸÐœÐµÐºÑОÑе; Ð¢ÐŸÑ Ñе Ñ ÐŒÐžÑПваÑÑ...</string>
+ <string name="pref_disable_network_title">Ðез ÐÑеже Auto-Sleep</string>
+ <string name="pref_disable_network_summary">УЌОÑО Ð¢ÐŸÑ ÐºÐ°ÐŽÐ° Ñе МеЎПÑÑÑпаМ ОМÑеÑМеÑ</string>
+ <string name="newnym">ÐÑеÑлО ÑÑе Ма МПвО Ð¢ÐŸÑ ÐžÐŽÐµÐœÑОÑеÑ!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÐеЌа ОМÑеÑÐœÐµÑ ÐºÐŸÐœÐµÐºÑОÑе. УЌОÑОваÑе ТПÑ-а...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ÐПМекÑОÑа Ñе ЎПбÑа. ÐжОвÑаваÑе ТПÑ-а...</string>
+ <string name="updating_settings_in_tor_service">ажÑÑОÑаÑе пПЎеÑаваÑа Ð¢ÐŸÑ ÐŒÑеже</string>
+ <string name="pref_socks_title">ToÑ SOCKS</string>
+ <string name="pref_socks_summary">Port кПÑО Ð¢ÐŸÑ ÐœÑЎО Ñе SOCKS пÑПкÑО ÑкÑÑÑеМ (ÑПбОÑаÑеМП: 9050 ОлО 0 за ОÑкÑÑÑОваÑе)</string>
+ <string name="pref_socks_dialog">SOCKS Port ÐПЎеÑаваÑа</string>
+ <string name="pref_transport_title">ToÑ TransProxy Port</string>
+ <string name="pref_transport_summary">Port кПÑО Ð¢ÐŸÑ ÐœÑЎО Ñе Transparent Proxy ÑкÑÑÑеМ (ÑПбОÑаÑеМП: 9040 ОлО 0 за ОÑкÑÑÑОваÑе)</string>
+ <string name="pref_transport_dialog">TransProxy Port ÐПЎеÑаваÑа</string>
+ <string name="pref_dnsport_title">ToÑ DNS Port</string>
+ <string name="pref_dnsport_summary">Port кПÑО Ð¢ÐŸÑ ÐœÑЎО Ñе DNS ÑкÑÑÑеМ (ÑПбОÑаÑеМП: 5400 ОлО 0 за ОÑкÑÑÑОваÑе)</string>
+ <string name="pref_dnsport_dialog">DNS Port ÐПЎеÑаваÑа</string>
+ <string name="pref_torrc_title">Torrc ÐÑеÑаÑеМа ÐПЎеÑаваÑа</string>
+ <string name="pref_torrc_summary">СÐÐÐ ÐÐ ÐÐСÐÐРТÐ: ÑМеÑО ЎОÑекÑМП torrc лОМОÑе пПЎеÑаваÑа</string>
+ <string name="pref_torrc_dialog">ÐПЎеÑО Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridges ÐжÑÑОÑаÑе</string>
+ <string name="restart_orbot_to_use_this_bridge_">ÐПлОЌП пПкÑеМОÑе пПМПвП ÐÑÐ±ÐŸÑ ÑаЎО пÑОЌеÑОваÑа пÑПЌеМа</string>
+ <string name="menu_qr">QR ÐПЎПвО</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">ÐкП ваÑа ЌПбОлМа ÐŒÑежа акÑОвМП блПкОÑа ТПÑ, ЌПжеÑе пÑеЌПÑÑОваÑО ÑеÑвеÑПЌ каП алÑеÑМаÑОвМО МаÑОМ ÑлаÑка.ÐÐÐÐÐÐ Ð ÑÐµÐŽÐœÑ ÐŸÐŽ ПпÑОÑа за кПМÑОгÑÑаÑОÑÑ Ðž ÑеÑÑОÑаÑе....</string>
+ <string name="bridge_mode">Bridge РежОЌ</string>
+ <string name="get_bridges_email">Ð-пПÑÑа</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">ÐкÑОвОÑаÑО</string>
+ <string name="apps_mode">VPN ÐПЎ</string>
+ <string name="send_email">ÐПÑаÑО Ð-пПÑÑÑ</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ÐПжеÑе ЎПбОÑО bridge аЎÑеÑÑ Ð¿ÑекП е-пПÑÑе. Ма web-Ñ ÐžÐ»Ðž ÑкеМОÑаÑеЌ bridge QR кПЎа. ÐЎабеÑО \'E-пПÑÑа\' ОлО \'Web\' ОÑпПЎ Ўа бО ÑÑе заÑÑажОлО bridge аЎÑеÑÑ.\n\nÐеЎМПЌ каЎа ЎПбОÑеÑе аЎÑеÑÑ. кПпОÑаÑ& МалепО Ñе Ñ \"Bridges\" пÑеÑеÑеМÑОÑО Ñ ÐÑÐ±ÐŸÑ Ð¿ÐŸÐŽÐµÑаваÑОЌа О пПМПвП пПкÑеМОÑе.</string>
+ <string name="vpn_default_world">ÐлПбалМП (ÐÑÑПЌаÑÑкО)</string>
+ <string name="hidden_services">СкÑОвеМО СеÑвОÑО</string>
+ <string name="title_activity_hidden_services">СкÑОвеМО СеÑвОÑО</string>
+ <string name="menu_hidden_services">СкÑОвеМО СеÑвОÑО</string>
+ <string name="save">СаÑÑваÑ</string>
+ <string name="local_port">ÐПкалМО ÐПÑÑ</string>
+ <string name="onion_port">Onion ÐПÑÑ</string>
+ <string name="name">ÐЌе</string>
+ <string name="done">ÐПÑПвП !</string>
+ <string name="invalid_port">ÐеОÑпÑаваМ ÐПÑÑ</string>
+ <string name="copy_address_to_clipboard">ÐПпОÑÐ°Ñ Ð°ÐŽÑеÑа Ñ clipboard</string>
+ <string name="show_auth_cookie">ÐПкажОÑе аÑÑПÑОзПваМО кПлаÑОÑ</string>
+ <string name="backup_service">УÑлÑга за ÑезеÑвМе кПпОÑе</string>
+ <string name="delete_service">ÐбÑОÑО УÑлÑгÑ</string>
+ <string name="backup_saved_at_external_storage">РезеÑбМа кПпОÑа Ñе ÑаÑÑваМа Ма ÑпПÑÐœÐŸÑ ÐŒÐµÐŒÐŸÑОÑО</string>
+ <string name="backup_restored">РезеÑвМа кПпОÑа Ñе ПбМПвÑеМа</string>
+ <string name="filemanager_not_available">ÐеМаÑÐµÑ ÑаÑлПва МОÑе ЎПÑÑÑпаМ</string>
+ <string name="please_grant_permissions_for_external_storage">ÐПлОЌП Ўа ЎаÑе ЎПзвПле за екÑÑеÑМП ÑклаЎОÑÑеÑе</string>
+ <string name="restore_backup">ÐбМПвО ÑезеÑÐ²ÐœÑ ÐºÐŸÐ¿ÐžÑÑ</string>
+ <string name="create_a_backup_first">ÐапÑавО ÑезеÑÐ²ÐœÑ ÐºÐŸÐ¿ÐžÑÑ Ð¿ÑвП</string>
+ <string name="name_can_t_be_empty">ÐЌе Ме ЌПже бОÑО пÑазМП</string>
+ <string name="fields_can_t_be_empty">ÐПÑа Ме ÐŒÐŸÐ³Ñ Ð±ÐžÑО пÑазМа</string>
+ <string name="start_tor_again_for_finish_the_process">ÐПМПвП пПкÑеМОÑе Ð¢ÐŸÑ ÐŽÐ° бОÑÑе ЎПвÑÑОлО пÑПÑеÑ</string>
+ <string name="confirm_service_deletion">ÐПÑÑвÑЎО бÑОÑаМÑе ÑÑлÑге</string>
+ <string name="click_again_for_backup">ÐлОкМОÑе пПМПвП за ÑезеÑÐ²ÐœÑ ÐºÐŸÐ¿ÐžÑÑ</string>
+ <string name="service_type">ТОп УÑлÑге</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ÐПлОЌП пПкÑеМОÑе пПМПвП ÐÑÐ±ÐŸÑ ÑаЎО пÑОЌеÑОваÑа пÑПЌеМа</string>
+ <string name="client_cookies">ÐПлаÑОÑО клОÑеМÑа</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ÐеважеÑа .onion аЎÑеÑа</string>
+ <string name="cookie_from_QR">ÐÑПÑОÑÐ°Ñ Ñа QR кПЎа</string>
+ <string name="backup_cookie">РезеÑвМа кПпОÑа кПлаÑОÑа</string>
+ <string name="delete_cookie">ÐзбÑОÑО кПлаÑОÑ</string>
+ <string name="confirm_cookie_deletion">ÐПÑÑвÑЎО бÑОÑаÑе кПлаÑОÑа</string>
+ <string name="hosted_services">ХПÑÑПваМе УÑлÑге</string>
+ <string name="share_as_qr">ÐелО каП QR кПЎ</string>
+ <string name="disable">ÐМеЌПгÑÑО</string>
+ <string name="enable">ÐЌПгÑÑО</string>
+ <string name="consider_disable_battery_optimizations">РазЌПÑÑОÑе ПМеЌПгÑÑаваÑе ПпÑОЌОзаÑОÑе баÑеÑОÑе</string>
+ <string name="consider_enable_battery_optimizations">РазЌПÑÑОÑе ПЌПгÑÑаваÑе ПпÑОЌОзаÑОÑе баÑеÑОÑе</string>
+ <string name="pref_isolate_dest">ÐзПлÑÑ ÐŸÐŽÑеЎОÑÐœÑ Ð°ÐŽÑеÑÑ</string>
+ <string name="pref_isolate_dest_summary">ÐПÑОÑÑО ÐŽÑÑгаÑОÑО кÑÑг за ÑÐ²Ð°ÐºÑ ÐŸÐŽÑеЎОÑÐœÑ Ð°ÐŽÑеÑÑ</string>
+ <string name="pref_connection_padding">ÐÑОкÑÑÑак за пПвезОваÑе</string>
+ <string name="pref_connection_padding_summary">Увек ПЌПгÑÑава пÑОкÑÑÑак за пПвезОваÑе збПг заÑÑОÑОÑе ПЎ МекОÑ
ПблОка аМалОзе ÑаПбÑаÑаÑа. ÐПЎÑазÑЌеваМП: аÑÑП</string>
+</resources>
diff --git a/app-mini/src/main/res/values-sv/poestrings.xml b/app-mini/src/main/res/values-sv/poestrings.xml
new file mode 100644
index 00000000..ed6bb5e0
--- /dev/null
+++ b/app-mini/src/main/res/values-sv/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Ibland behöver du en bro för att komma åt Tor.</string>
+ <string name="action_more">BERÃTTA MERA</string>
+
+ <string name="vpn_setup">Du kan aktivera vilken app som helst som ska gå genom Tor med hjÀlp av vår inbyggda VPN.</string>
+ <string name="vpn_setup_sub">Detta kommer inte att göra dig anonym, men det hjÀlper dig att komma igenom brandvÀggar.</string>
+ <string name="action_vpn_choose">VÃLJ APPAR</string>
+
+ <string name="hello">Hej</string>
+ <string name="welcome">VÀlkommen till Tor på mobilen.</string>
+
+ <string name="browser_the_internet">BlÀddra på internet hur du förvÀntar dig att du ska.</string>
+ <string name="no_tracking">Ingen spårning. Ingen censur.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-sv/strings.xml b/app-mini/src/main/res/values-sv/strings.xml
new file mode 100644
index 00000000..350da961
--- /dev/null
+++ b/app-mini/src/main/res/values-sv/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot Àr en gratis proxyapp som möjliggör andra appar att anvÀnda internet mer sÀkert. Orbot anvÀnder Tor för att kryptera din internettrafik och döljer den genom att den studsar genom ett antal datorer vÀrlden över. Tor Àr fri programvara och ett öppet nÀtverk som hjÀlper dig att skydda dig mot en form av nÀtverksövervakning som hotar personlig integritet och frihet, hemliga affÀrsaktiviteter och relationer, och skyddar mot statlig övervakning Àven kallad trafikanalys.</string>
+ <string name="status_starting_up">Orbot startar...</string>
+ <string name="status_activated">Uppkopplad till Tor-nÀtverket</string>
+ <string name="status_disabled">Orbot Àr inaktiverad</string>
+ <string name="status_shutting_down">TorService avslutas</string>
+ <string name="tor_process_starting">Startar Tor-klient...</string>
+ <string name="tor_process_complete">fÀrdig.</string>
+ <string name="menu_settings">InstÀllningar</string>
+ <string name="menu_log">Logg</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stopp</string>
+ <string name="menu_about">Om</string>
+ <string name="main_layout_download">Nedladdat</string>
+ <string name="main_layout_upload">Uppladdat</string>
+ <string name="button_about">Om</string>
+ <string name="menu_exit">Avsluta</string>
+ <string name="menu_scan">Skanna BridgeQR</string>
+ <string name="menu_share_bridge">Dela BridgeQR</string>
+ <string name="btn_okay">Okej</string>
+ <string name="btn_cancel">Avbryt</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbot-information</string>
+ <string name="wizard_details_msg">Orbot Àr ett program med öppen kÀllkod som innehåller Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent och Polipo. Den tillhandahåller en lokal HTTP-proxy (8118) och en SOCKS-proxy (9050) i Tor-nÀtverket. Orbot har också förmågan att, på rotad enhet, skicka all internettrafik genom Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">AllmÀnt</string>
+ <string name="pref_start_boot_title">Starta Orbot vid Uppstart</string>
+ <string name="pref_start_boot_summary">Starta Orbot automatiskt och anslut till Tor nÀr din Android enhet startar upp</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Nod Konfiguration</string>
+ <string name="pref_node_configuration_summary">Det hÀr Àr avancerade instÀllningar som kan minska din anonymitet</string>
+ <string name="pref_entrance_node">Ingångsnoder</string>
+ <string name="pref_entrance_node_summary">Fingeravtryck, nicks, lÀnder, och adresser för första hoppet</string>
+ <string name="pref_entrance_node_dialog">Skriv in Ingångs Noder</string>
+ <string name="pref_allow_background_starts_title">Tillåt start i bakgrunden</string>
+ <string name="pref_allow_background_starts_summary">Låt alla appar sÀga åt Orbot att starta Tor och relaterade tjÀnster</string>
+ <string name="pref_proxy_title">Utgående nÀtverksproxy (Valfri)</string>
+ <string name="pref_proxy_type_title">Proxy-typ</string>
+ <string name="pref_proxy_type_summary">Protokoll att anvÀnda för proxyserver: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Skriv in Proxy Typ</string>
+ <string name="pref_proxy_host_title">Proxy-vÀrd</string>
+ <string name="pref_proxy_host_summary">Proxyserverns vÀrdnamn</string>
+ <string name="pref_proxy_host_dialog">Skriv in Proxy VÀrd</string>
+ <string name="pref_proxy_port_title">Utgående Proxy Port</string>
+ <string name="pref_proxy_port_summary">Proxyserverns port</string>
+ <string name="pref_proxy_port_dialog">Skriv in Proxy port</string>
+ <string name="pref_proxy_username_title">Utgående proxy anvÀndarnamn</string>
+ <string name="pref_proxy_username_summary">ProxyanvÀndarnamn (Valfri)</string>
+ <string name="pref_proxy_username_dialog">Ange proxyanvÀndarnamn</string>
+ <string name="pref_proxy_password_title">Utgående proxy lösenord</string>
+ <string name="pref_proxy_password_summary">Proxylösenord (Valfri)</string>
+ <string name="pref_proxy_password_dialog">Ange proxylösenord</string>
+ <string name="couldn_t_start_tor_process_">Kunde inte starta Tor-process:</string>
+ <string name="error">Fel</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Din NåbaraAdresser instÀllning orsakade ett undantag!</string>
+ <string name="your_relay_settings_caused_an_exception_">Din relÀ-instÀllning orsakade ett undantag!</string>
+ <string name="exit_nodes">Utgångsnoder</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Fingeravtryck, nicks, lÀnder, och adresser för sista hoppet</string>
+ <string name="enter_exit_nodes">Skriv in Exit Noder</string>
+ <string name="exclude_nodes">Exkludera Noder</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Fingeravtryck, nicks, lÀnder och adresser att exkludera</string>
+ <string name="enter_exclude_nodes">Skriv in Exkluderade Noder</string>
+ <string name="strict_nodes">Strikta Noder</string>
+ <string name="use_only_these_specified_nodes">AnvÀnd *enbart* dessa specificerade noder</string>
+ <string name="bridges">Broar</string>
+ <string name="use_bridges">AnvÀnd Broar</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Aktivera alternativa ingångar i Tor-nÀtverket</string>
+ <string name="ip_address_and_port_of_bridges">IP adress och port för broar</string>
+ <string name="enter_bridge_addresses">Skriv in Bro Adresser</string>
+ <string name="relays">RelÀer</string>
+ <string name="relaying">Ãverföring</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Aktivera din enhet till att vara ett icke-utgångsrelÀ</string>
+ <string name="relay_port">RelÀ Port</string>
+ <string name="listening_port_for_your_tor_relay">Lyssningsport för din Tor relÀ</string>
+ <string name="enter_or_port">AllmÀnt</string>
+ <string name="relay_nickname">RelÀ namn</string>
+ <string name="the_nickname_for_your_tor_relay">Namnet för din Tor relÀ</string>
+ <string name="enter_a_custom_relay_nickname">Skriv in ett anpassat relÀnamn</string>
+ <string name="reachable_addresses">NÃ¥bara Adresser</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Kör som klient bakom en brandvÀgg med restriktiva policys</string>
+ <string name="reachable_ports">NÃ¥bara portar</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Portar nåbara bakom en restriktiv brandvÀgg</string>
+ <string name="enter_ports">Skriv in portar</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">Aktivera debug loggen för output (måste anvÀnda adb eller aLogCat för att se)</string>
+ <string name="project_home">Projektets hemsidor:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Tredjepartsprogramvara:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">En app vill öppna dold serverport %1$s till Tor-nÀtverket. Det hÀr Àr sÀkert om du litar på appen.</string>
+ <string name="found_existing_tor_process">hittade existerande Tor process...</string>
+ <string name="something_bad_happened">Något dåligt hÀnde. Kolla loggen.</string>
+ <string name="unable_to_read_hidden_service_name">kan inte lÀsa gömda tjÀnstens namn</string>
+ <string name="unable_to_start_tor">Kan inte starta Tor:</string>
+ <string name="pref_use_persistent_notifications">Behåll alltid ikonen i verktygsfÀltet nÀr Orbot Àr ansluten</string>
+ <string name="pref_use_persistent_notifications_title">Alltid-PÃ¥ Notifikationer</string>
+ <string name="pref_use_expanded_notifications">Visa utökad notis med Tors utgångsland och IP</string>
+ <string name="pref_use_expanded_notifications_title">Utökade notiser</string>
+ <string name="set_locale_title">Språk</string>
+ <string name="no_internet_connection_tor">Ingen internetanslutning; Tor Àr i standby-lÀge...</string>
+ <string name="pref_disable_network_title">Ingen auto-sömn för nÀtverket</string>
+ <string name="pref_disable_network_summary">Låt Tor sova nÀr inget internet finns tillgÀngligt</string>
+ <string name="newnym">Du har bytt till en ny Tor identitet!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Ingen nÀtverksanslutning. FörsÀtter Tor i dvala...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">NÀtverksanslutningen fungerar. VÀcker Tor...</string>
+ <string name="updating_settings_in_tor_service">uppdaterar instÀllningar i Tor-tjÀnsten</string>
+ <string name="pref_socks_title">Tor-SOCKS</string>
+ <string name="pref_socks_summary">Port som Tor erbjuder sin SOCKS-proxy på (standard: 9050 eller 0 för att inaktivera)</string>
+ <string name="pref_socks_dialog">SOCKS-port-instÀllningar</string>
+ <string name="pref_transport_title">Tor TransProxy-port</string>
+ <string name="pref_transport_summary">Port som Tor erbjuder sin transparenta proxy på (standard: 9040 eller 0 för att inaktivera)</string>
+ <string name="pref_transport_dialog">TransProxy-port-instÀllningar</string>
+ <string name="pref_dnsport_title">Tor DNS-port</string>
+ <string name="pref_dnsport_summary">Port som Tor erbjuder sin DNS på (standard: 5400 eller 0 för att inaktivera)</string>
+ <string name="pref_dnsport_dialog">DNS-port-instÀllningar</string>
+ <string name="pref_torrc_title">Torrc anpassad konfiguration</string>
+ <string name="pref_torrc_summary">ENDAST EXPERTER: ange torrc konfiguration direkt</string>
+ <string name="pref_torrc_dialog">Anpassad Torrc</string>
+ <string name="kbps">kb/s</string>
+ <string name="mbps">mb/s</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bryggor uppdaterade</string>
+ <string name="restart_orbot_to_use_this_bridge_">VÀnligen starta om Orbot för att aktivera Àndringarna</string>
+ <string name="menu_qr">QR-koder</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Om ditt mobilnÀt aktivt blockerar Tor kan du anvÀnda en \"Bridge Server\" som ett alternativt sÀtt. VÃLJ ett av alternativen att konfigurera och testa.,.</string>
+ <string name="bridge_mode">BrygglÀge</string>
+ <string name="get_bridges_email">E-post</string>
+ <string name="get_bridges_web">Webb</string>
+ <string name="activate">Aktivera</string>
+ <string name="apps_mode">VPN-lÀge</string>
+ <string name="send_email">Skicka e-post</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Du kan få en brygg-adress via e-post, via webben eller genom att skanna en QR-kod för en brygga. VÀlj \'E-post\' eller \'Webb\' nedan för att begÀra en brygg-adress.\n\nNÀr du vÀl har en adress, kopiera & klistra in den i instÀllningen för \"Bryggor\" i Orbot och starta om.</string>
+ <string name="vpn_default_world">Global (automatisk)</string>
+ <string name="hidden_services">Hidden Services</string>
+ <string name="title_activity_hidden_services">Hidden Services</string>
+ <string name="menu_hidden_services">Hidden Services</string>
+ <string name="save">Spara</string>
+ <string name="local_port">Lokal port</string>
+ <string name="onion_port">Onion port</string>
+ <string name="name">Namn</string>
+ <string name="done">Klart!</string>
+ <string name="invalid_port">Ogiltig port</string>
+ <string name="copy_address_to_clipboard">Kopiera adress till urklipp</string>
+ <string name="show_auth_cookie">Visa auth kaka</string>
+ <string name="backup_service">SÀkerhetskopiera tjÀnst</string>
+ <string name="delete_service">Ta bort tjÀnst</string>
+ <string name="backup_saved_at_external_storage">SÀkerhetskopiering sparad i externt lagringsutrymme</string>
+ <string name="backup_restored">Backup återstÀlld</string>
+ <string name="filemanager_not_available">Filhanteraren Àr inte tillgÀnglig</string>
+ <string name="please_grant_permissions_for_external_storage">Bevilja tillstånd för extern lagring</string>
+ <string name="restore_backup">Ã
terstÀlla sÀkerhetskopia</string>
+ <string name="create_a_backup_first">Skapa en sÀkerhetskopia först</string>
+ <string name="name_can_t_be_empty">Namnet kan inte vara tomt</string>
+ <string name="fields_can_t_be_empty">FÀlt kan inte vara tomma</string>
+ <string name="start_tor_again_for_finish_the_process">Starta Tor igen för att avsluta processen</string>
+ <string name="confirm_service_deletion">BekrÀfta tjÀnst borttagning</string>
+ <string name="click_again_for_backup">Klicka igen för sÀkerhetskopiering</string>
+ <string name="service_type">Typ av tjÀnst</string>
+ <string name="auth_cookie">Auth kaka</string>
+ <string name="copy_cookie_to_clipboard">Kopiera kaka till urklipp</string>
+ <string name="auth_cookie_was_not_configured">Auth kaka var inte konfigurerad</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">VÀnligen starta om Orbot för att aktivera Àndringarna</string>
+ <string name="client_cookies">Klientkakor</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Ogiltig .onion-adress</string>
+ <string name="cookie_from_QR">LÀs från QR</string>
+ <string name="backup_cookie">SÀkerhetskopiera kaka</string>
+ <string name="delete_cookie">Ta bort kaka</string>
+ <string name="confirm_cookie_deletion">BekrÀfta borttagning av kaka</string>
+ <string name="hosted_services">VÀrdtjÀnster</string>
+ <string name="share_as_qr">Dela som QR</string>
+ <string name="disable">Inaktivera</string>
+ <string name="enable">Aktivera</string>
+ <string name="consider_disable_battery_optimizations">ÃvervÀg att inaktivera batterioptimeringar</string>
+ <string name="consider_enable_battery_optimizations">ÃvervÀg att aktivera batterioptimeringar</string>
+ <string name="pref_isolate_dest">Isolera destinationsadresser</string>
+ <string name="pref_isolate_dest_summary">AnvÀnd en annan krets för varje destinationsadress</string>
+ <string name="no_transproxy_warning_short">VARNING: Transproxy stöds inte lÀngre</string>
+ <string name="no_transproxy_warning">VARNING: Transparent proxy stöds inte. AnvÀnd Orbot Apps VPN istÀllet.</string>
+ <string name="pref_connection_padding">Anslutnings-utfyllnad</string>
+ <string name="pref_connection_padding_summary">Aktivera alltid anslutnings-utfyllnad för att skydda mot vissa former av trafikanalys. Standard: auto</string>
+ <string name="pref_reduced_connection_padding">Minskad anslutnings-utfyllnad</string>
+ <string name="pref_reduced_connection_padding_summary">StÀnger relÀ-anslutningar tidigare, och skickar fÀrre utfyllnadspaket för att minska datatrafik och batteriförbrukning</string>
+ <string name="app_shortcuts">Tor-aktiverade appar</string>
+ <string name="testing_bridges">Testa broanslutning till Tor....</string>
+ <string name="testing_bridges_success">Lyckades. Brokonfigurationen Àr bra!</string>
+ <string name="testing_bridges_fail">MISSLYCKADES. Försök med ett annat alternativ</string>
+ <string name="bridge_direct_connect">Anslut direkt till Tor (BÀsta)</string>
+ <string name="bridge_community">Anslut genom gemenskaps servrar</string>
+ <string name="bridge_cloud">Anslut via molnservrar</string>
+ <string name="bridges_get_new">BegÀr nya broar... (om allt annat misslyckas)</string>
+ <string name="trouble_connecting">Problem med att ansluta?</string>
+ <string name="full_device_vpn">VPN för hela enheten</string>
+ <string name="vpn_disabled">VPN inaktiverad</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ta/poestrings.xml b/app-mini/src/main/res/values-ta/poestrings.xml
new file mode 100644
index 00000000..4a69c50a
--- /dev/null
+++ b/app-mini/src/main/res/values-ta/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">à®à®¿à®² சà¯à®°à®à¯à®à®³à®¿à®²à¯ சà¯à®à¯à®à®³à¯ Tor ஠பà¯à®± à®à®°à¯ à®à®£à¯à®ªà¯à®ªà¯ ஀à¯à®µà¯à®ªà¯à®ªà®à¯à®à®¿à®±à®€à¯.</string>
+ <string name="action_more">à®à®©à¯à®©à¯à®®à¯ à®à®©à®à¯à®à¯ à®à¯à®Ÿà®²à¯à®²à¯à®à¯à®à®³à¯</string>
+
+ <string name="vpn_setup">à®à®à¯à®à®³à¯à®à¯à®¯ à®à®³à¯à®³à®®à¯à®à¯à®à®ªà¯à®ªà®à¯à® VPN ஠பயனà¯à®ªà®à¯à®€à¯à®€à®¿ Tor à®®à¯à®²à®®à¯ à®à¯à®²à¯à®² à®à®šà¯à®€à®ªà¯ பயனà¯à®ªà®Ÿà®à¯à®à¯à®¯à¯à®®à¯ à®à®¯à®à¯à®à®²à®Ÿà®®à¯.</string>
+ <string name="vpn_setup_sub">à®à®€à¯ à®à®à¯à®à®³à¯ à®
சடம஀à¯à®¯à®®à®Ÿà®à¯à®à¯à®à®¿à®±à®€à¯, à®à®©à®Ÿà®²à¯ à®
஀௠à®à®ªà®¯à®°à¯à®µà®Ÿà®²à¯à®à®³à¯ வஎியட஠à®à®€à®µà¯à®à®¿à®±à®€à¯.</string>
+ <string name="action_vpn_choose">பயனà¯à®ªà®Ÿà®à¯à®à®³à¯à®€à¯ ஀à¯à®°à¯à®µà¯à®à¯à®¯à¯à®¯à®µà¯à®®à¯</string>
+
+ <string name="hello">வணà®à¯à®à®®à¯</string>
+ <string name="welcome">à®®à¯à®ªà¯à®²à®¿à®²à¯ ஀à¯à®°à¯ à®à¯à®à¯ வரவà¯à®±à¯à®à®¿à®±à¯à®®à¯.</string>
+
+ <string name="browser_the_internet">சà¯à®à¯à®à®³à¯ à®à®€à®¿à®°à¯à®ªà®Ÿà®°à¯à®à¯à®à¯à®®à¯ à®à®£à¯à®¯à®€à¯à®€à¯ à®à®²à®Ÿà®µà®µà¯à®®à¯.</string>
+ <string name="no_tracking">à®à®£à¯à®à®Ÿà®£à®¿à®ªà¯à®ªà¯ à®à®²à¯à®²à¯. ஀ணிà®à¯à®à¯ à®à®²à¯à®²à¯.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-ta/strings.xml b/app-mini/src/main/res/values-ta/strings.xml
new file mode 100644
index 00000000..402e9f59
--- /dev/null
+++ b/app-mini/src/main/res/values-ta/strings.xml
@@ -0,0 +1,53 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">à®à®°à¯à®ªà®Ÿà®à¯ </string>
+ <string name="app_description">à®à®°à¯à®ªà®Ÿà®à¯, à®à®©à¯à®©à¯à®® பட஀à¯à®à®Ÿà®ªà¯à®ªà®Ÿà®© à®®à¯à®±à¯à®¯à®¿à®²à¯ à®à®£à¯à®¯ பயனà¯à®ªà®à¯à®€à¯à®€ மறà¯à®± பயனà¯à®ªà®Ÿà®à¯à®à®³à¯ பலபà¯à®ªà®à¯à®€à¯à®€à¯à®à®¿à®±à®Ÿà®°à¯ à®à®©à¯à®±à¯ à®à®°à¯ à®à®²à®µà® பà¯à®°à®Ÿà®à¯à®žà®¿ பயனà¯à®ªà®Ÿà®à¯ à®à®à¯à®®à¯. à®à®°à¯à®ªà®Ÿà®à¯ à®à®à¯à®à®³à¯ à®à®£à¯à®¯ பà¯à®Ÿà®à¯à®à¯à®µà®°à®€à¯à®€à¯ à®à¯à®±à®¿à®¯à®Ÿà®à¯à® ஀à¯à®Ÿà®°à¯ பயனà¯à®ªà®à¯à®€à¯à®€à¯à®à®¿à®±à®€à¯ மறà¯à®±à¯à®®à¯ à®
஀ன௠பினà¯à®©à®°à¯ à®à®²à®à®®à¯ à®®à¯à®Žà¯à®µà®€à¯à®®à¯ à®à®£à®¿à®©à®¿à®à®³à¯ à®à®°à¯ ஀à¯à®Ÿà®à®°à¯ à®®à¯à®²à®®à¯ à®à®€à®¿à®°à¯à®à¯à®à®¿à®±à®€à¯ à®
஀௠மறà¯à®€à¯à®€à®µà®°à¯. ஀à¯à®Ÿà®°à¯ à®à®²à®µà® à®®à¯à®©à¯à®ªà¯à®Ÿà®°à¯à®³à¯ மறà¯à®±à¯à®®à¯ சà¯à®à¯à®à®³à¯ பà¯à®Ÿà®à¯à®à¯à®µà®°à®€à¯à®€à¯ பà®à¯à®ªà¯à®ªà®Ÿà®¯à¯à®µà¯
à®à®©à¯à®± ஀னிபà¯à®ªà®à¯à® à®à¯à®€à®šà¯à®€à®¿à®°à®®à¯ மறà¯à®±à¯à®®à¯ ஀னியà¯à®°à®¿à®®à¯, à®°à®à®à®¿à®¯ வணி஠சà®à®µà®à®¿à®à¯à®à¯à®à®³à¯ மறà¯à®±à¯à®®à¯ à®à®±à®µà¯à®à®³à¯, மறà¯à®±à¯à®®à¯ மடசில பட஀à¯à®à®Ÿà®ªà¯à®ªà¯ à®
à®à¯à®à¯à®±à¯à®€à¯à®€à¯à®®à¯ சà¯à®à¯à®µà¯à®Ÿà®°à¯à®à¯ à®à®£à¯à®à®Ÿà®£à®¿à®ªà¯à®ªà¯ வà®à®¿à®µ à®à®€à®¿à®°à®Ÿà® பட஀à¯à®à®Ÿà®à¯à® à®à®€à®µà¯à®à®¿à®±à®€à¯ à®à®©à¯à®±à¯ à®à®°à¯ ஀ிறசà¯à®€ சà¯à®à¯à®µà¯à®Ÿà®°à¯à®à¯ à®à®à¯à®®à¯.</string>
+ <string name="status_starting_up">à®à®°à¯à®ªà®Ÿà®à¯ ஀à¯à®µà®à¯à®à¯à®à®¿à®±à®€à¯...</string>
+ <string name="status_activated">஀à¯à®Ÿà®°à¯ சà¯à®à¯à®µà¯à®Ÿà®°à¯à®à¯ à®à®£à¯à®à¯à®à®ªà¯à®ªà®à¯à®</string>
+ <string name="status_disabled">à®à®°à¯à®ªà®Ÿà®à¯ சிறà¯à®€à¯à®€à®ªà¯à®ªà®à¯à®à®€à¯</string>
+ <string name="tor_process_starting">஀à¯à®°à¯ ஀à¯à®µà®à¯à®à®ªà¯à®ªà®à¯à®à®¿à®±à®€à¯...</string>
+ <string name="tor_process_complete">à®®à¯à®à®¿à®šà¯à®€à®€à¯.</string>
+ <string name="menu_settings">à®
à®®à¯à®ªà¯à®ªà¯à®à®³à¯</string>
+ <string name="menu_log">ப஀ிவà¯à®à®³à¯</string>
+ <string name="menu_start">஀à¯à®µà®à¯à®à¯</string>
+ <string name="menu_stop">சிறà¯à®€à¯à®€à¯</string>
+ <string name="menu_about">à®à®°à¯à®ªà®Ÿà®à¯ பறà¯à®±à®¿</string>
+ <string name="main_layout_download">ப஀ிவிறà®à¯à®à¯</string>
+ <string name="main_layout_upload">ப஀ிவà¯à®±à¯à®±à¯</string>
+ <string name="button_about">பறà¯à®±à®¿ </string>
+ <string name="menu_exit">வà¯à®³à®¿à®¯à¯à®±à¯</string>
+ <string name="menu_scan">ஞà¯à®à¯à®©à¯ BridgeQR</string>
+ <string name="menu_share_bridge">BridgeQR பà®à®¿à®°à¯à®šà¯à®€à®¿à®à¯</string>
+ <string name="btn_okay">à®à®°à®¿</string>
+ <string name="btn_cancel">ர஀à¯à®€à¯ à®à¯à®¯à¯</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">à®à®°à¯à®ªà®Ÿà®à¯ பறà¯à®±à®¿à®¯ ஀à®à®µà®²à¯</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">பà¯à®Ÿà®€à¯</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_proxy_password_summary">ப஀ிலடள௠à®à®à®µà¯à®à¯à®à¯à®Ÿà®²à¯ (à®à®à¯à®à®Ÿà®¯à®®à®±à¯à®±)</string>
+ <string name="pref_proxy_password_dialog">ப஀ிலடள௠à®à®à®µà¯à®à¯à®à¯à®Ÿà®²à¯à®²à¯ à®à®³à¯à®³à®¿à®à®µà¯à®®à¯</string>
+ <string name="error">பிஎà¯</string>
+ <string name="bridges">Bridgeà®à®³à¯</string>
+ <string name="set_locale_title">à®®à¯à®Žà®¿</string>
+ <string name="get_bridges_email">மினà¯à®©à®à¯à®à®²à¯</string>
+ <string name="activate">à®à¯à®¯à®²à¯à®ªà®à¯à®€à¯à®€à®µà¯à®®à¯</string>
+ <string name="save">à®à¯à®®à®¿</string>
+ <string name="name">பà¯à®¯à®°à¯</string>
+ <string name="service_type">à®à¯à®µà¯ வà®à¯</string>
+ <string name="backup_cookie">சினà¯à®µà®¿à®à®³à¯ à®à®Ÿà®ªà¯à®ªà¯à®ªà¯à®ªà®¿à®°à®€à®¿à®à®²à¯à®à¯</string>
+ <string name="delete_cookie">சினà¯à®µà®¿à®à®³à¯ à®à®Žà®¿</string>
+ <string name="confirm_cookie_deletion">சினà¯à®µà®¿à®à®³à®¿à®©à¯ சà¯à®à¯à®à®€à¯à®€à¯ à®à®±à¯à®€à®¿à®ªà¯à®ªà®à¯à®€à¯à®€à¯</string>
+ <string name="hosted_services">வஎà®à¯à®à®ªà¯à®ªà®à¯à® à®à¯à®µà¯à®à®³à¯</string>
+ <string name="share_as_qr">QR à®à® பà®à®¿à®°à¯</string>
+ <string name="disable">à®®à¯à®à®à¯à®à¯</string>
+ <string name="enable">à®à¯à®¯à®²à¯à®ªà®à¯à®€à¯à®€à¯</string>
+ <string name="trouble_connecting">à®à®£à¯à®ªà¯à®ªà®€à®¿à®²à¯ à®à®¿à®à¯à®à®²à®Ÿ ?</string>
+ <string name="full_device_vpn">à®®à¯à®Žà¯ à®à®Ÿà®€à®©à®€à¯à®€à®¿à®±à¯à®à¯à®à®Ÿà®© VPN</string>
+ <string name="vpn_disabled">VPN à®®à¯à®à®à¯à®à®ªà¯à®ªà®à¯à®à¯à®³à¯à®³à®€à¯</string>
+</resources>
diff --git a/app-mini/src/main/res/values-th/poestrings.xml b/app-mini/src/main/res/values-th/poestrings.xml
new file mode 100644
index 00000000..c04547b7
--- /dev/null
+++ b/app-mini/src/main/res/values-th/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">àžàž²àžàžàž£àž±à¹àžàžàžžàžàžàž²àžàžà¹àžàžàžàž²àž£ Bridges à¹àžàž·à¹àžà¹àžàž·à¹àžàž¡àžà¹àžàžàž±àž Tor</string>
+ <string name="action_more">àžàžàžàž£àž²àž¢àž¥àž°à¹àžàžµàž¢àžà¹àžàžŽà¹àž¡à¹àžàžŽàž¡àžàž±àžàžàž±àž</string>
+
+ <string name="vpn_setup">àžàžžàžàžªàž²àž¡àž²àž£àžà¹àžàžŽàžà¹àžà¹àžàž²àžà¹àžàžà¹àžà¹ àžà¹àž²àž Tor à¹àžàž¢à¹àžà¹ VPN à¹àžàžàž±àž§àžàžàžà¹àž£àž²</string>
+ <string name="vpn_setup_sub">àžàž²àž£àžàž³à¹àžàžŽàžàžàž²àž£àžàžµà¹àžàž°à¹àž¡à¹\à¹àžà¹àžàž³à¹àž«à¹à¹àž¡à¹àž¡àžµàžàž²àž£àž£àž°àžàžžàžàž±àž§àžàžàžàžàžàžàžžàž à¹àžà¹àžàž°à¹àžà¹àžàžàž²àž£àžàž³à¹àž«à¹àžà¹àž²àžà¹àžàž£à¹àž§àžàž¥àž¥à¹à¹àžà¹</string>
+ <string name="action_vpn_choose">à¹àž¥àž·àžàžà¹àžàž</string>
+
+ <string name="hello">àžªàž§àž±àžªàžàžµ</string>
+ <string name="welcome">àžàžàžà¹àžàžàž£àž±àžàžªàž¹à¹ Tor àžàžàž¡àž·àžàžàž·àž</string>
+
+ <string name="browser_the_internet">à¹àžà¹àž²àžàž¹àžàžŽàžà¹àžàžàž£à¹à¹àžà¹àžà¹àžà¹à¹àžà¹àžàžàžàžµà¹àžàžžàžàžàž²àžàž«àž§àž±àž</string>
+ <string name="no_tracking">à¹àž¡à¹àž¡àžµàžàž²àž£àžàžŽàžàžàž²àž¡ à¹àž¡à¹àž¡àžµàžàž²àž£àžàžŽàžàžàž±à¹àž</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-th/strings.xml b/app-mini/src/main/res/values-th/strings.xml
new file mode 100644
index 00000000..9effbcc6
--- /dev/null
+++ b/app-mini/src/main/res/values-th/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot àžàž·àžà¹àžàžàžàž£à¹àžàžàžàžµàžàž£àžµàžàžµà¹àžà¹àž§àž¢à¹àžàžŽà¹àž¡àžàž£àž°àžªàžŽàžàžàžŽàž àž²àžà¹àž«à¹àžàž±àžà¹àžàžàžàž·à¹àžà¹ à¹àž«à¹àžªàž²àž¡àž²àž£àžà¹àžà¹àžàž²àžàžàžŽàžà¹àžàžàž£à¹à¹àžà¹àžà¹àžà¹àžàž¢à¹àž²àžàžàž¥àžàžàž àž±àž¢àž¡àž²àžàžàž¶à¹àž Orbot à¹àžà¹ Tor à¹àžàžàž²àž£à¹àžà¹àž²àž£àž«àž±àžªàžàž²àž£àž£àž±àžàžªà¹àžàžà¹àžàž¡àž¹àž¥àžàž²àžàžàžŽàžà¹àžàžàž£à¹à¹àžà¹àžàžàžàžàžàžžàžà¹àž¥àž°àžàž³àžàž²àž£àžà¹àžàžàžà¹àžàž¡àž¹àž¥à¹àžàž¢àžàž²àž£àžªàž°àžà¹àžàžàžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àžàžà¹àž²àžàžàž¥àžžà¹àž¡àžàžàžà¹àžàž£àž·à¹àžàžàžàžàž¡àžàžŽàž§à¹àžàžàž£à¹àžàž±à¹àž§à¹àž¥àž Tor à¹àžà¹àžàžàžàžàžà¹à¹àž§àž£à¹àžàž£àžµà¹àž¥àž°à¹àžà¹àžà¹àžàž£àž·àžàžà¹àž²àž¢à¹àžàžà¹àžàžŽàžàžàžµà¹àžà¹àž§àž¢àžàžàžà¹àžàžàžàžžàžàžàž²àžàžàž²àž£àžªàžàžàžªà¹àžàžà¹àžàž£àž·àžàžà¹àž²àž¢àžàžµà¹à
žàžžàžàžàž²àž¡àžàžŽàžªàž£àž àž²àžà¹àž¥àž°àžàž§àž²àž¡à¹àžà¹àžàžªà¹àž§àžàžàž±àž§àžàžàžàžàž¹à¹àžàž àž£àž±àžàž©àž²àžàž§àž²àž¡àž¥àž±àžàžàž²àžàžàžžàž£àžàžŽàžà¹àž¥àž°àžàž§àž²àž¡àžªàž±àž¡àžàž±àžàžà¹ à¹àž¥àž°àžàž²àž£àžªàž£à¹àž²àžàžàž§àž²àž¡àžàž¥àžàžàž àž±àž¢à¹àžàž¢àžàž²àž£àž§àžŽà¹àžàž£àž²àž°àž«à¹àžàž²àž£àž£àž±àžàžªà¹àžàžà¹àžàž¡àž¹àž¥</string>
+ <string name="status_starting_up">Orbot àžàž³àž¥àž±àžà¹àž£àžŽà¹àž¡àžà¹àž...</string>
+ <string name="status_activated">à¹àžàž·à¹àžàž¡àžà¹àžàžàž±àžà¹àžàž£àž·àžàžà¹àž²àž¢ Tor à¹àž¥à¹àž§</string>
+ <string name="status_disabled">àžàžŽàžàžàž²àž£à¹àžà¹àžàž²àž Orbot</string>
+ <string name="status_shutting_down">àžàž³àž¥àž±àžàžàžŽàžàžàž²àž£àžàž³àžàž²àž TorService </string>
+ <string name="tor_process_starting">à¹àž£àžŽà¹àž¡à¹àžà¹à¹àžàž¥à¹àžà¹àžàžà¹ Tor </string>
+ <string name="tor_process_complete">à¹àžªàž£à¹àž</string>
+ <string name="menu_settings">àžàž²àž£àžàž±à¹àžàžà¹àž²</string>
+ <string name="menu_log">àžàž±àžàžàž¶àž</string>
+ <string name="menu_start">à¹àž£àžŽà¹àž¡</string>
+ <string name="menu_stop">àž«àž¢àžžàž</string>
+ <string name="menu_about">à¹àžàžµà¹àž¢àž§àžàž±àž</string>
+ <string name="main_layout_download">àžàž²àž§àžà¹à¹àž«àž¥àž</string>
+ <string name="main_layout_upload">àžàž±àžà¹àž«àž¥àž</string>
+ <string name="button_about">à¹àžàžµà¹àž¢àž§àžàž±àž</string>
+ <string name="menu_exit">àžàžàž</string>
+ <string name="menu_scan">àžªà¹àžàž BridgeQR</string>
+ <string name="menu_share_bridge">à¹àžàž£à¹ BridgeQR</string>
+ <string name="btn_okay">àžàžàž¥àž</string>
+ <string name="btn_cancel">àž¢àžà¹àž¥àžŽàž</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">àž£àž²àž¢àž¥àž°à¹àžàžµàž¢àžà¹àžàžµà¹àž¢àž§àžàž±àž Orbot</string>
+ <string name="wizard_details_msg">Orbot à¹àžà¹àžà¹àžàžàžàž¥àžŽà¹àžàžàž±àžà¹àžà¹àžà¹àžàžàžàž£à¹àžªàžàžµà¹àžàž£àž°àžàžàžàžà¹àž§àž¢ Tor, Obfs4Proxy, BadVPN, Tun2Socks, LibEvent à¹àž¥àž° Polipo à¹àžàž¢ Orbot àžàž°àžªàž£à¹àž²àžàžàž£à¹àžàžàžàžµ (8118) à¹àž¥àž°àžàž£à¹àžàžàžàžµ SOCKS (9050) à¹àžà¹àžàž£àž·à¹àžàž àž àž²àž¢à¹àžà¹àžàž£àž·àžàžà¹àž²àž¢ Tor Orbot àž¢àž±àžàžªàž²àž¡àž²àž£àžàžàž³àžàž²àž£àž£àž±àžàžªà¹àžàžà¹àžàž¡àž¹àž¥àžàž±à¹àžàž«àž¡àžàžªà¹àžàžà¹àž²àž Tor à¹àžà¹àžàžàžàžžàžàžàž£àžà¹àžàžµà¹à¹àžà¹àžàž³àžàž²àž£ root à¹àž¥à¹àž§</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">àžàž±à¹àž§à¹àž</string>
+ <string name="pref_start_boot_title">à¹àž£àžŽà¹àž¡ Orbot à¹àž¡àž·à¹àžà¹àžàžŽàžàž£àž°àžàž</string>
+ <string name="pref_start_boot_summary">à¹àž£àžŽà¹àž¡ Orbot à¹àžàž¢àžàž±àžà¹àžàž¡àž±àžàžŽà¹àž¥àž°à¹àž«à¹à¹àžàž·à¹àžàž¡àžà¹àžàžàž±àž Tor à¹àž¡àž·à¹àžàžàžžàžàžàž£àžà¹à¹àžàžàžàž£àžàž¢àžà¹àžàžàžàžàžžàžà¹àž£àžŽà¹àž¡àžàž³àžàž²àž</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">àžàž²àž£àžàž±à¹àžàžà¹àž²à¹àž«àžàž</string>
+ <string name="pref_node_configuration_summary">àžàž²àž£àžàž±à¹àžàžà¹àž²àžàž±à¹àžàžªàž¹àžà¹àž«àž¥à¹àž²àžàžµà¹àžàž³à¹àž«à¹àžªàžàž²àžàž°àžàžàžàžàž²àž£à¹àž¡à¹àž£àž°àžàžžàžàž±àž§àžàžàžàžàžàžàžžàžàž¥àžàž¥àžà¹àžà¹</string>
+ <string name="pref_entrance_node">à¹àž«àžàžàžàž²àžà¹àžà¹àž²</string>
+ <string name="pref_entrance_node_summary">àž¥àž²àž¢àžàžŽà¹àž§àž¡àž·àž àžàž·à¹àžà¹àž¥à¹àž àžàž£àž°à¹àžàžš à¹àž¥àž°àžàžµà¹àžàž¢àž¹à¹àžàžàžàž®àžàžà¹àž£àž</string>
+ <string name="pref_entrance_node_dialog">àž£àž°àžàžžà¹àž«àžàžàžàž²àžà¹àžà¹àž²</string>
+ <string name="pref_allow_background_starts_title">àžàžàžžàžàž²àžà¹àž«à¹à¹àž£àžŽà¹àž¡àžàž²àž£àžàž³àžàž²àžàžàž·à¹àžàž«àž¥àž±àž</string>
+ <string name="pref_allow_background_starts_summary">à¹àž«à¹à¹àžàžàžàžžàžàžàž±àž§à¹àžà¹àž Orbot à¹àž«à¹ Tor à¹àž¥àž°àžàž£àžŽàžàž²àž£àžàžµà¹à¹àžàžµà¹àž¢àž§àžà¹àžàžà¹àž£àžŽà¹àž¡àžàž³àžàž²àž</string>
+ <string name="pref_proxy_title">àžàž£à¹àžàžàžàžµà¹àžàž£àž·àžàžà¹àž²àž¢àžàž²àžàžàž (àž£àž°àžàžžàž«àž£àž·àžà¹àž¡à¹àžà¹à¹àžà¹)</string>
+ <string name="pref_proxy_type_title">àžàžàžŽàžàžàžàžàžàž£à¹àžàžàžàžµàžàž²àžàžàž</string>
+ <string name="pref_proxy_type_summary">à¹àžàž£à¹àžàžàžàž¥àžàžµà¹à¹àžà¹àžªàž³àž«àž£àž±àžà¹àžàžŽàž£à¹àžà¹àž§àžàž£à¹àžàž£à¹àžàžàžàžµ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">àž£àž°àžàžžàžàžàžŽàžàžàžàžàžàž£à¹àžàžàžàžµ</string>
+ <string name="pref_proxy_host_title">à¹àž®àžªàžà¹àžàžàžàžàž£à¹àžàžàžàžµàžàž²àžàžàž</string>
+ <string name="pref_proxy_host_summary">àžàž·à¹àžà¹àž®àžªàžà¹àžàžàžàžàž£à¹àžàžàžàžµà¹àžàžŽàž£à¹àžà¹àž§àžàž£à¹ </string>
+ <string name="pref_proxy_host_dialog">àž£àž°àžàžžà¹àžàž£àž·à¹àžàžàžàž£à¹àžàžàžàžµ</string>
+ <string name="pref_proxy_port_title">àžàžàž£à¹àžàžàž£à¹àžàžàžàžµàžàž²àžàžàž</string>
+ <string name="pref_proxy_port_summary">àžàžàž£à¹àžàžàž£à¹àžàžàžàžµà¹àžàžŽàž£à¹àžà¹àž§àžàž£à¹</string>
+ <string name="pref_proxy_port_dialog">àž£àž°àžàžžàžàžàž£à¹àžàžàžàžàžàž£à¹àžàžàžàžµ</string>
+ <string name="pref_proxy_username_title">àžàž·à¹àžàžàž¹à¹à¹àžà¹àžàž£à¹àžàžàžàžµàžàž²àžàžàž</string>
+ <string name="pref_proxy_username_summary">àžàž·à¹àžàžàž¹à¹à¹àžà¹àžàž£à¹àžàžàžàžµ (àž£àž°àžàžžàž«àž£àž·àžà¹àž¡à¹àžà¹à¹àžà¹)</string>
+ <string name="pref_proxy_username_dialog">à¹àžªà¹àžàž·à¹àžàžàž¹à¹à¹àžà¹àžàž£à¹àžàžàžàžµ</string>
+ <string name="pref_proxy_password_title">àž£àž«àž±àžªàžà¹àž²àžàžàž£à¹àžàžàžàžµàžàž²àžàžàž</string>
+ <string name="pref_proxy_password_summary">àž£àž«àž±àžªàžà¹àž²àžàžàž£à¹àžàžàžàžµ (àž£àž°àžàžžàž«àž£àž·àžà¹àž¡à¹àžà¹à¹àžà¹)</string>
+ <string name="pref_proxy_password_dialog">à¹àžªà¹àž£àž«àž±àžªàžà¹àž²àžàžàž£à¹àžàžàžàžµ</string>
+ <string name="couldn_t_start_tor_process_">à¹àž¡à¹àžªàž²àž¡àž²àž£àžà¹àž£àžŽà¹àž¡àžàž£àž°àžàž§àžàžàž²àž£àžàžàž Tor</string>
+ <string name="error">àžàžŽàžàžàž¥àž²àž</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">àžàž²àž£àžàž±à¹àžàžà¹àž² ReachableAddresses àžàžàžàžàžžàžàžàž³à¹àž«à¹à¹àžàžŽàžàžà¹àžàžàžŽàžàžàž¥àž²àž</string>
+ <string name="your_relay_settings_caused_an_exception_">àžàž²àž£àžàž±à¹àžàžà¹àž²àž£àžµà¹àž¥àž¢à¹àžàžàžàžàžžàžàžàž³à¹àž«à¹à¹àžàžŽàžàžà¹àžàžàžŽàžàžàž¥àž²àž</string>
+ <string name="exit_nodes">à¹àž«àžàžàžàž²àžàžàžàž</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">àž¥àž²àž¢àžàžŽà¹àž§àž¡àž·àž àžàž·à¹àžà¹àž¥à¹àž àžàž£àž°à¹àžàžš à¹àž¥àž°àžàžµà¹àžàž¢àž¹à¹àžàžàžàž®àžàžàžªàžžàžàžà¹àž²àž¢</string>
+ <string name="enter_exit_nodes">àž£àž°àžàžžà¹àž«àžàžàžàž²àžàžàžàž</string>
+ <string name="exclude_nodes">à¹àž«àžàžàž¢àžà¹àž§à¹àž</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">àž¥àž²àž¢àžàžŽà¹àž§àž¡àž·àž àžàž·à¹àžà¹àž¥à¹àž àžàž£àž°à¹àžàžš à¹àž¥àž°àžàžµà¹àžàž¢àž¹à¹àžàžµà¹àž¥àž°à¹àž§à¹àž</string>
+ <string name="enter_exclude_nodes">àž£àž°àžàžžà¹àž«àžàžàž¢àžà¹àž§à¹àž</string>
+ <string name="strict_nodes">à¹àž«àžàžà¹àžà¹àž¡àžàž§àž</string>
+ <string name="use_only_these_specified_nodes">à¹àžà¹ *à¹àžàžàž²àž°* à¹àž«àžàžàžàžµà¹àž£àž°àžàžžà¹àž«àž¥à¹àž²àžàžµà¹à¹àžà¹àž²àžàž±à¹àž</string>
+ <string name="bridges">Bridges</string>
+ <string name="use_bridges">à¹àžà¹àžàž²àž Bridges</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">à¹àžàžŽàžà¹àžà¹àžàž²àžàžàž²àžà¹àžà¹àž²àžàž·à¹àžà¹àžà¹àž²àžªàž¹à¹à¹àžàž£àž·àžàžà¹àž²àž¢ Tor</string>
+ <string name="ip_address_and_port_of_bridges">àžàžµà¹àžàž¢àž¹à¹à¹àžàžàžµà¹àž¥àž°àžàžàž£à¹àžàžàžàž Bridges</string>
+ <string name="enter_bridge_addresses">àž£àž°àžàžžàžàžµà¹àžàž¢àž¹à¹àžàžàž Bridge</string>
+ <string name="relays">àž£àžµà¹àž¥àž¢à¹</string>
+ <string name="relaying">àžàž²àž£àž£àžµà¹àž¥àž¢à¹</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">àžàž³à¹àž«à¹àžàžžàžàžàž£àžà¹àžàžàžàžàžžàžàžàž³àžàž²àžà¹àžà¹àžàž£àžµà¹àž¥àž¢à¹à¹àžàžà¹àž¡à¹à¹àžà¹àžàž²àžàžàžàž</string>
+ <string name="relay_port">àžàžàž£à¹àžàž£àžµà¹àž¥àž¢à¹</string>
+ <string name="listening_port_for_your_tor_relay">àžàžàž£à¹àžàžàžµà¹à¹àž«à¹àž£àžµà¹àž¥àž¢à¹àžàžàž Tor àžàž³àžàž²àž</string>
+ <string name="enter_or_port">àž£àž°àžàžžàžàžàž£à¹àžàžàžàž OR</string>
+ <string name="relay_nickname">àžàž·à¹àžà¹àž¥à¹àžàžàžàžàž£àžµà¹àž¥àž¢à¹</string>
+ <string name="the_nickname_for_your_tor_relay">àžàž·à¹àžà¹àž¥à¹àžàžªàž³àž«àž£àž±àžàž£àžµà¹àž¥àž¢à¹àžàžàž Tor àžàžàžàžàžžàž</string>
+ <string name="enter_a_custom_relay_nickname">àž£àž°àžàžžàžàž·à¹àžà¹àž¥à¹àžàžàžàžàž£àžµà¹àž¥àž¢à¹à¹àžàž¢àžàž³àž«àžàžà¹àžàž</string>
+ <string name="reachable_addresses">àžàžµà¹àžàž¢àž¹à¹àžàž¶à¹àžà¹àžà¹àž²àžàž¶àžà¹àžà¹</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">àžàž³àžàž²àžà¹àžà¹àžà¹àžàž£àž·à¹àžàžà¹àžàž¥à¹àžà¹àžàžà¹àž«àž¥àž±àžà¹àžàž£à¹àž§àžàž¥àž¥à¹àžàžµà¹àž¡àžµàžà¹àž¢àžàž²àž¢à¹àžàžà¹àžà¹àž¡àžàž§àž</string>
+ <string name="reachable_ports">àžàžàž£à¹àžàžàžµà¹à¹àžà¹àž²àžàž¶àžà¹àžà¹</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">àžàžàž£à¹àžàžàžµà¹à¹àžà¹àž²àžàž¶àžà¹àžà¹àž«àž¥àž±àžà¹àžàž£à¹àž§àžàž¥àž¥à¹àžàžµà¹àž¡àžµàžàž§àž²àž¡à¹àžà¹àž¡àžàž§àž</string>
+ <string name="enter_ports">àž£àž°àžàžžàžàžàž£à¹àž</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">à¹àžàžŽàžà¹àžà¹àžàž²àžàžàž²àž£àžªà¹àžàžàžàžàžàž±àžàžàž¶àžàžàžµàžàž±à¹àž (àžà¹àžàžà¹àžà¹ adb àž«àž£àž·àž aLogCat à¹àžàž·à¹àžàžàž¹)</string>
+ <string name="project_home">àžàžµà¹àžàž¢àž¹à¹à¹àžàž£àžàžàž²àž£:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">àžàžàžàžà¹à¹àž§àž£à¹à¹àžàž¢àžàž¹à¹àžàž¥àžŽàžàžàž·à¹àž:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">à¹àžàž£à¹àžàž£àž¡àžà¹àžàžàžàž²àž£à¹àžàžŽàžàžàžàž£à¹àž %1$s àžàžµà¹àžà¹àžàžàžàž¢àž¹à¹àžàžàžà¹àžàžŽàž£à¹àžà¹àž§àžàž£à¹à¹àž«à¹à¹àžàž·à¹àžàž¡àžàž±àžà¹àžàž£àž·àžàžà¹àž²àž¢ Tor àžàž²àž£àžàž£àž°àžàž³àžàžµà¹àžàž¥àžàžàž àž±àž¢àžà¹àž²àžàžžàžà¹àžàž·à¹àžàžàž·àžà¹àžàž£à¹àžàž£àž¡àžàž±à¹àž</string>
+ <string name="found_existing_tor_process">àžàžàžàž£àž°àžàž§àžàžàž²àž£ Tor àžàžµà¹àž¡àžµàžàž¢àž¹à¹à¹àž¥à¹àž§...</string>
+ <string name="something_bad_happened">à¹àžàžŽàžàžàž°à¹àž£à¹àž¡à¹àžàžµàžªàž±àžàžàž¢à¹àž²àž à¹àž«à¹àžàž£àž§àžàžàž¹àžàž²àžàžàž±àžàžàž¶àž</string>
+ <string name="unable_to_read_hidden_service_name">à¹àž¡à¹àžªàž²àž¡àž²àž£àžàžà¹àž²àžàžàž·à¹àžàžàžàžàžàž£àžŽàžàž²àž£àžàžµà¹àžà¹àžàž</string>
+ <string name="unable_to_start_tor">à¹àž¡à¹àžªàž²àž¡àž²àž£àžà¹àž£àžŽà¹àž¡ Tor:</string>
+ <string name="pref_use_persistent_notifications">à¹àžªàžàžà¹àžàžàžàžà¹àžàžàž¹àž¥àžàž²àž£à¹à¹àžªàž¡àžà¹àž¡àž·à¹àž Orbot à¹àžàž·à¹àžàž¡àžà¹àžàžàž¢àž¹à¹</string>
+ <string name="pref_use_persistent_notifications_title">àžàž²àž£à¹àžà¹àžà¹àžàž·àžàžà¹àžàžàžàž¥àžàžà¹àž§àž¥àž²</string>
+ <string name="pref_use_expanded_notifications">à¹àžªàžàžàžàž²àž£à¹àžà¹àžà¹àžàž·àžàžà¹àžàžàžàž¢àž²àž¢àžàžµà¹àž£àž°àžàžžàžàž£àž°à¹àžàžšàžàž¥àž²àž¢àžàž²àžà¹àž¥àž° IP àžàžàž Tor</string>
+ <string name="pref_use_expanded_notifications_title">àžàž²àž£à¹àžà¹àžà¹àžàž·àžàžà¹àžàžàžàž¢àž²àž¢</string>
+ <string name="set_locale_title">àž àž²àž©àž²</string>
+ <string name="no_internet_connection_tor">à¹àž¡à¹àž¡àžµàžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àžàžàžŽàžà¹àžàžàž£à¹à¹àžà¹àž Tor àžàž£à¹àžàž¡àž£àžà¹àžà¹àžàž²àž...</string>
+ <string name="pref_disable_network_title">à¹àž¡à¹àžàžà¹àžàž£àž·àžàžà¹àž²àž¢ àžàž±àžàžàž²àž£à¹àžà¹àžàž²àžàžàž±àžà¹àžàž¡àž±àžàžŽ</string>
+ <string name="pref_disable_network_summary">àžàž±àžàžàž²àž£à¹àžà¹àžàž²àž Tor à¹àž¡àž·à¹àžà¹àž¡à¹àž¡àžµàžàžŽàžà¹àžàžàž£à¹à¹àžà¹àž</string>
+ <string name="newnym">àžàžžàžà¹àžà¹à¹àžàž¥àžµà¹àž¢àžàž¡àž²à¹àžà¹àžàž±àž§àžàž Tor à¹àž«àž¡à¹à¹àž¥à¹àž§</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">à¹àž¡à¹àž¡àžµàžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àžà¹àžàž£àž·àžàžà¹àž²àž¢ àžàž±àžàžàž²àž£à¹àžà¹àžàž²àž Tor</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">àžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àžà¹àžªàžàžµàž¢àž£ à¹àžàžŽàžà¹àžà¹àžàž²àž Tor...</string>
+ <string name="updating_settings_in_tor_service">àžàž£àž±àžàžàž£àžžàžàžàž²àž£àžàž±à¹àžàžà¹àž²à¹àžàžàž£àžŽàžàž²àž£ Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">àžàžàž£à¹àžàžàžµà¹ Tor à¹àž«à¹àžàž£àžŽàžàž²àž£àžàž£à¹àžàžàžàžµ SOCKS (àžà¹àž²à¹àž£àžŽà¹àž¡àžà¹àž: 9050 àž«àž£àž·àž 0 à¹àžàžàž¶àžà¹àž¡à¹à¹àžàžŽàžà¹àžà¹àžàž²àž)</string>
+ <string name="pref_socks_dialog">àžàž³àž«àžàžàžà¹àž²àžàžàž£à¹àž SOCKS</string>
+ <string name="pref_transport_title">àžàžàž£à¹àžàžàž£à¹àžàžàžàžµà¹àžàž Transparent àžàžàž Tor</string>
+ <string name="pref_transport_summary">àžàžàž£à¹àžàžàžµà¹ Tor à¹àž«à¹àžàž£àžŽàžàž²àž£àžàž£à¹àžàžàžàžµà¹àžàž Transparent (àžà¹àž²à¹àž£àžŽà¹àž¡àžà¹àž: 9040 àž«àž£àž·àž 0 à¹àžàžàž¶àžà¹àž¡à¹à¹àžàžŽàžà¹àžà¹àžàž²àž)</string>
+ <string name="pref_transport_dialog">àžàž³àž«àžàžàžà¹àž²àžàžàž£à¹àžàžàž£à¹àžàžàžàžµà¹àžàž Transparent</string>
+ <string name="pref_dnsport_title">àžàžàž£à¹àž DNS àžàžàž Tor</string>
+ <string name="pref_dnsport_summary">àžàžàž£à¹àžàžàžµà¹ Tor à¹àž«à¹àžàž£àžŽàžàž²àž£ DNS (àžà¹àž²à¹àž£àžŽà¹àž¡àžà¹àž: 5400 àž«àž£àž·àž 0 à¹àžàžàž¶àžà¹àž¡à¹à¹àžàžŽàžà¹àžà¹àžàž²àž)</string>
+ <string name="pref_dnsport_dialog">àžàž³àž«àžàžàžà¹àž²àžàžàž£à¹àž DNS</string>
+ <string name="pref_torrc_title">àžàž³àž«àžàžàžà¹àž² Torrc à¹àžàž</string>
+ <string name="pref_torrc_summary">àžªàž³àž«àž£àž±àžàžàž¹à¹à¹àžàžµà¹àž¢àž§àžàž²àžà¹àžà¹àž²àžàž±à¹àž: àž£àž°àžàžžàžàž£àž£àžàž±àžàžàžµà¹àžàž³àž«àžàžàžà¹àž² torcc à¹àžàž¢àžàž£àž</string>
+ <string name="pref_torrc_dialog">Torrc àžàžµà¹àžàž³àž«àžàžà¹àžàž</string>
+ <string name="kbps">àžàžŽà¹àž¥àžàžŽàžàžà¹àžàž§àžŽàžàž²àžàžµ</string>
+ <string name="mbps">à¹àž¡àžàž°àžàžŽàžàžà¹àžàž§àžŽàžàž²àžàžµ</string>
+ <string name="kb">àžàžŽà¹àž¥à¹àžàžà¹</string>
+ <string name="mb">à¹àž¡àžàž°à¹àžàžà¹</string>
+ <string name="bridges_updated">àžàž£àž±àžàžàž£àžžàž Bridges à¹àž¥à¹àž§</string>
+ <string name="restart_orbot_to_use_this_bridge_">àžàž£àžžàžàž²à¹àž£àžŽà¹àž¡ Orbot à¹àž«àž¡à¹à¹àžàž·à¹àžà¹àž«à¹àžàž²àž£à¹àžàž¥àžµà¹àž¢àžà¹àžàž¥àžà¹àžà¹àžàž²àžà¹àžà¹</string>
+ <string name="menu_qr">àž£àž«àž±àžªàžàžŽàž§àžàž²àž£à¹</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">àž«àž²àžà¹àžàž£àž·àžàžà¹àž²àž¢à¹àžàž£àžšàž±àžàžà¹àžàžàžàžàžžàžàžàžŽàžàžàž±à¹àž Tor àžàžžàžàžªàž²àž¡àž²àž£àžà¹àžà¹ \'à¹àžàžŽàž£à¹àžà¹àž§àžàž£à¹ Bridge\' à¹àžà¹àžàžàž±àž§à¹àž¥àž·àžàžà¹àžàžàž²àž£à¹àžà¹àž²àžàž¶àžà¹àžà¹ à¹àž¥àž·àžàžàžàž±àž§à¹àž¥àž·àžàžàž«àžàž¶à¹àžà¹àžàž·à¹àžàžàž³àž«àžàžàžà¹àž²à¹àž¥àž°àžàžàžªàžàž...</string>
+ <string name="bridge_mode">à¹àž«àž¡àž Bridge</string>
+ <string name="get_bridges_email">àžàžµà¹àž¡àž¥</string>
+ <string name="get_bridges_web">à¹àž§à¹àž</string>
+ <string name="activate">à¹àžàžŽàžà¹àžà¹àžàž²àž</string>
+ <string name="apps_mode">à¹àž«àž¡àž VPN</string>
+ <string name="send_email">àžªà¹àžàžàžµà¹àž¡àž¥</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">àžàžžàžàžªàž²àž¡àž²àž£àžàž£àž±àžàžàžµà¹àžàž¢àž¹à¹àžàžàž Bridge à¹àžà¹à¹àžàž¢àžà¹àž²àžàžàžµà¹àž¡àž¥ à¹àž§à¹àž àž«àž£àž·àžàžàž²àž£àžªà¹àžàžàž£àž«àž±àžªàžàžŽàž§àžàž²àž£à¹àžàžàž Bridge à¹àž¥àž·àžàž \'àžàžµà¹àž¡àž¥\' àž«àž£àž·àž \'à¹àž§à¹àž\' àžà¹àž²àžàž¥à¹àž²àžà¹àžàž·à¹àžàžàžàžàžµà¹àžàž¢àž¹à¹àžàžàž Bridge\n\nà¹àž¡àž·à¹àžàžàžžàžà¹àžà¹àžàžµà¹àžàž¢àž¹à¹à¹àž¥à¹àž§ à¹àž«à¹àžàž±àžàž¥àžàž & àž§àž²àžàž¥àžà¹àžàžàž²àž£àžàž£àž±àžà¹àžà¹àžàž¥àž±àžàž©àžàž°àžàžàž \"Bridge\" à¹àžàžàž²àž£àžàž±à¹àžàžà¹àž²àžàžàž Orbit à¹àž¥àž°à¹àž£àžŽà¹àž¡àžàž²àž£àžàž³àžàž²àžà¹àž«àž¡à¹</string>
+ <string name="vpn_default_world">àžªà¹àž§àžàž£àž§àž¡ (àžàž±àžà¹àžàž¡àž±àžàžŽ)</string>
+ <string name="hidden_services">àžàž£àžŽàžàž²àž£àžàžµà¹àžà¹àžàž</string>
+ <string name="title_activity_hidden_services">àžàž£àžŽàžàž²àž£àžàžµà¹àžà¹àžàž</string>
+ <string name="menu_hidden_services">àžàž£àžŽàžàž²àž£àžàžµà¹àžà¹àžàž</string>
+ <string name="save">àžàž±àžàžàž¶àž</string>
+ <string name="local_port">àžàžàž£à¹àžà¹àžà¹àžàž£àž·à¹àžàž</string>
+ <string name="onion_port">àžàžàž£à¹àž Onion</string>
+ <string name="name">àžàž·à¹àžà¹àžàžàžªàž²àž£</string>
+ <string name="done">à¹àžªàž£à¹àžàžªàžŽà¹àž!</string>
+ <string name="invalid_port">àžàžàž£à¹àžà¹àž¡à¹àžàž¹àžàžà¹àžàž</string>
+ <string name="copy_address_to_clipboard">àžàž±àžàž¥àžàžàžàžµà¹àžàž¢àž¹à¹àž¥àžà¹àžàžàž¥àžŽàžàžàžàž£à¹àž</string>
+ <string name="show_auth_cookie">à¹àžªàžàžàžàžžàžàžàžµà¹àžàžµà¹à¹àžà¹àž£àž±àžàžàžàžžàžàž²àž</string>
+ <string name="backup_service">àžàž£àžŽàžàž²àž£àžªàž³àž£àžàžàžà¹àžàž¡àž¹àž¥</string>
+ <string name="delete_service">àžàž£àžŽàžàž²àž£àž¥àž</string>
+ <string name="backup_saved_at_external_storage">àžà¹àžàž¡àž¹àž¥àžªàž³àž£àžàžàžàž±àžàžàž¶àžàžàžµà¹àžàžµà¹à¹àžà¹àžàžà¹àžàž¡àž¹àž¥àž àž²àž¢àžàžàž</string>
+ <string name="backup_restored">àžàž·àžàžà¹àž²àžà¹àžàž¡àž¹àž¥àžªàž³àž£àžàž</string>
+ <string name="filemanager_not_available">à¹àž¡à¹àžªàž²àž¡àž²àž£àžà¹àžà¹ Filemanager à¹àžà¹</string>
+ <string name="please_grant_permissions_for_external_storage">àžàž£àžžàžàž²àžàžàžžàžàž²àžà¹àž«à¹à¹àžà¹àž²àžàž¶àžàžàžµà¹à¹àžà¹àžàžà¹àžàž¡àž¹àž¥àž àž²àž¢àžàžàž</string>
+ <string name="restore_backup">àžàž·àžàžà¹àž²àžà¹àžàž¡àž¹àž¥àžªàž³àž£àžàž</string>
+ <string name="create_a_backup_first">àžªàž£à¹àž²àžàžà¹àžàž¡àž¹àž¥àžªàž³àž£àžàžàžà¹àžàž</string>
+ <string name="name_can_t_be_empty">àžàž¥à¹àžàž¢àžàž·à¹àžà¹àž«à¹àž§à¹àž²àžà¹àž¡à¹à¹àžà¹</string>
+ <string name="fields_can_t_be_empty">àžàž¥à¹àžàž¢à¹àžàžàžà¹àžàž¡àž¹àž¥à¹àž«à¹àž§à¹àž²àžà¹àž¡à¹à¹àžà¹</string>
+ <string name="start_tor_again_for_finish_the_process">à¹àž£àžŽà¹àž¡àžàž³àžàž²àž Tor àžàžµàžàžàž£àž±à¹àžà¹àžàž·à¹àžàžàžàžàž£àž°àžàž§àžàžàž²àž£</string>
+ <string name="confirm_service_deletion">àž¢àž·àžàž¢àž±àžàžàž²àž£àž¥àžàžàž£àžŽàžàž²àž£</string>
+ <string name="click_again_for_backup">àžàžàžàžµàžàžàž£àž±à¹àžà¹àžàž·à¹àžà¹àž£àžµàž¢àžàžà¹àžàž¡àž¹àž¥àžªàž³àž£àžàž</string>
+ <string name="service_type">àžàž£àž°à¹àž àžàžàžàžàžàž£àžŽàžàž²àž£</string>
+ <string name="auth_cookie">àžàžžàžàžàžµà¹àžàžµà¹à¹àžà¹àž£àž±àžàžàžàžžàžàž²àž</string>
+ <string name="copy_cookie_to_clipboard">àžàž±àžàž¥àžàžàžàžžàžàžàžµà¹àž¥àžà¹àžàžàž¥àžŽàžàžàžàž£à¹àž</string>
+ <string name="auth_cookie_was_not_configured">àž¢àž±àžà¹àž¡à¹à¹àžà¹àžàž³àž«àžàžàžà¹àž²àžàžžàžàžàžµà¹àžàžµà¹à¹àžà¹àž£àž±àžàžàžàžžàžàž²àž</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">àžàž£àžžàžàž²à¹àž£àžŽà¹àž¡ Orbot à¹àž«àž¡à¹à¹àžàž·à¹àžà¹àž«à¹àžàž²àž£à¹àžàž¥àžµà¹àž¢àžà¹àžàž¥àžà¹àžà¹àžàž²àžà¹àžà¹</string>
+ <string name="client_cookies">àžàžžàžàžàžµà¹àžàžàžà¹àžàž¥à¹àžà¹àžàžà¹</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">àžàžµà¹àžàž¢àž¹à¹ .onion à¹àž¡à¹àžàž¹àžàžà¹àžàž</string>
+ <string name="cookie_from_QR">àžà¹àž²àžàžàž²àžàžàžŽàž§àžàž²àž£à¹</string>
+ <string name="backup_cookie">àžªàž³àž£àžàžàžà¹àžàž¡àž¹àž¥àžàžžàžàžàžµà¹</string>
+ <string name="delete_cookie">àž¥àžàžàžžàžàžàžµà¹</string>
+ <string name="confirm_cookie_deletion">àž¢àž·àžàž¢àž±àžàžàž²àž£àž¥àžàžàžžàžàžàžµà¹</string>
+ <string name="hosted_services">àžàž£àžŽàžàž²àž£à¹àž®àžªàžà¹</string>
+ <string name="share_as_qr">à¹àžàž£à¹à¹àžàž£àž¹àžà¹àžàžàžàžŽàž§àžàž²àž£à¹</string>
+ <string name="disable">àžàžŽàžàžàž²àž£à¹àžà¹àžàž²àž</string>
+ <string name="enable">à¹àžàžŽàžà¹àžà¹àžàž²àž</string>
+ <string name="consider_disable_battery_optimizations">àžàžŽàžàž²àž£àžàž²àžàžŽàžàžàž²àž£à¹àžà¹àžàž²àžàžàž²àž£àžàž£àž±àžà¹àžàžà¹àžàžàž£àžµà¹à¹àž«à¹à¹àž«àž¡àž²àž°àžªàž¡àžàžµà¹àžªàžžàž</string>
+ <string name="consider_enable_battery_optimizations">àžàžŽàžàž²àž£àžàž²à¹àžàžŽàžà¹àžà¹àžàž²àžàžàž²àž£àžàž£àž±àžà¹àžàžà¹àžàžàž£àžµà¹à¹àž«à¹à¹àž«àž¡àž²àž°àžªàž¡àžàžµà¹àžªàžžàž</string>
+ <string name="pref_isolate_dest">à¹àž¢àžàžàžµà¹àžàž¢àž¹à¹àžàž¥àž²àž¢àžàž²àž</string>
+ <string name="pref_isolate_dest_summary">à¹àžà¹àž§àžàž£àžàžàžàžµà¹à¹àžàžàžà¹àž²àžàžàž±àžàžªàž³àž«àž£àž±àžà¹àžà¹àž¥àž°àžàžµà¹àžàž¢àž¹à¹àžàž¥àž²àž¢àžàž²àž</string>
+ <string name="no_transproxy_warning_short">àžàž³à¹àžàž·àžàž: à¹àž¡à¹àž£àžàžàž£àž±àžàžàž£à¹àžàžàžàžµà¹àžàž Transparent</string>
+ <string name="no_transproxy_warning">àžàž³à¹àžàž·àžàž: à¹àž¡à¹àž£àžàžàž£àž±àžàžàž£à¹àžàžàžàžµà¹àžàž Transparent à¹àžà¹ VPN àžàžàžà¹àžàž Orbot à¹àžàž</string>
+ <string name="pref_connection_padding">àžà¹àžàžàž§à¹àž²àžàž àž²àž¢à¹àžàžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àž</string>
+ <string name="pref_connection_padding_summary">à¹àžàžŽàžà¹àžà¹àžàž²àžàžà¹àžàžàž§à¹àž²àžàž àž²àž¢à¹àžà¹àžàž£àž·àžàžà¹àž²àž¢à¹àžªàž¡àžà¹àžàž·à¹àžàžà¹àžàžàžàž±àžàžàž²àž£àž§àžŽà¹àžàž£àž²àž°àž«à¹àžàž²àž£àž£àž±àžàžªà¹àžàžà¹àžàž¡àž¹àž¥àžàž²àžàž£àž¹àžà¹àžàž àžàž±à¹àžàžà¹àž²à¹àž£àžŽà¹àž¡àžà¹àžà¹àžà¹àž: àžàž±àžà¹àžàž¡àž±àžàžŽ</string>
+ <string name="pref_reduced_connection_padding">àž¥àžàžà¹àžàžàž§à¹àž²àžàž àž²àž¢à¹àžà¹àžàž£àž·àžàžà¹àž²àž¢</string>
+ <string name="pref_reduced_connection_padding_summary">à¹àž¥àž·àžàžàžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àžàž£àžµà¹àž¥àž¢à¹à¹àž«à¹à¹àž£à¹àž§àžàž¶à¹àžà¹àž¥àž°àžªà¹àžàžà¹àžàžàž§à¹àž²àžàž àž²àž¢à¹àžà¹àžàžà¹àžà¹àžà¹àž«à¹àžà¹àžàž¢àž¥àžà¹àžàž·à¹àžàž¥àžàžàž²àž£à¹àžà¹àžàž²àžàžà¹àžàž¡àž¹àž¥à¹àž¥àž°à¹àžàžà¹àžàžàž£àžµà¹</string>
+ <string name="app_shortcuts">à¹àžàžàžàžµà¹à¹àžà¹à¹àžà¹àžàž±àž Tor</string>
+ <string name="testing_bridges">àžàžàžªàžàžàžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àž Bridge àžàž±àž Tor</string>
+ <string name="testing_bridges_success">àžªàž³à¹àž£à¹àž àžàž²àž£àžàž³àž«àžàžàžà¹àž² Bridge à¹àž£àžµàž¢àžàž£à¹àžàž¢àžàžµà¹àž¥à¹àž§</string>
+ <string name="testing_bridges_fail">àž¥à¹àž¡à¹àž«àž¥àž§ àž¥àžàžàžàž±àž§à¹àž¥àž·àžàžàžàž·à¹àž</string>
+ <string name="bridge_direct_connect">à¹àžàž·à¹àžàž¡àžà¹àžàžàž±àž Tor à¹àžàž¢àžàž£àž (àžàžµàžàžµà¹àžªàžžàž)</string>
+ <string name="bridge_community">à¹àžàž·à¹àžàž¡àžà¹àžàžà¹àž²àžà¹àžàžŽàž£à¹àžà¹àž§àžàž£à¹àžàžàžàžàžžàž¡àžàž</string>
+ <string name="bridge_cloud">à¹àžàž·à¹àžàž¡àžà¹àžàžà¹àž²àžà¹àžàžŽàž£à¹àžà¹àž§àžàž£à¹àžàž¥àž²àž§àžà¹</string>
+ <string name="bridges_get_new">àžàž Bridge à¹àž«àž¡à¹... (àž«àž²àžàžàžžàžàžàž¢à¹àž²àžà¹àžà¹àžàž²àž£à¹àž¡à¹à¹àžà¹)</string>
+ <string name="trouble_connecting">àž¡àžµàžàž±àžàž«àž²àžàž±àžàžàž²àž£à¹àžàž·à¹àžàž¡àžà¹àžàž«àž£àž·àžà¹àž¡à¹</string>
+ <string name="full_device_vpn">VPN àžàž±à¹àžàžàžžàžàžàž£àžà¹</string>
+ <string name="vpn_disabled">àžàžŽàžà¹àžà¹àžàž²àž VPN</string>
+</resources>
diff --git a/app-mini/src/main/res/values-tl/strings.xml b/app-mini/src/main/res/values-tl/strings.xml
new file mode 100644
index 00000000..7a8edf1c
--- /dev/null
+++ b/app-mini/src/main/res/values-tl/strings.xml
@@ -0,0 +1,117 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Nagsisimula na ang OrbotâŠ</string>
+ <string name="status_activated">Konektado sa Tor network</string>
+ <string name="status_disabled">Naka-deactivate ang Orbot</string>
+ <string name="tor_process_starting">Binubuksan ang Tor clientâŠ</string>
+ <string name="tor_process_complete">kumpleto na.</string>
+ <string name="menu_settings">Settings</string>
+ <string name="menu_log">Tala</string>
+ <string name="menu_start">Simulan</string>
+ <string name="menu_stop">Ihinto</string>
+ <string name="menu_about">Tungkol</string>
+ <string name="main_layout_download">Download</string>
+ <string name="main_layout_upload">Upload</string>
+ <string name="button_about">Tungkol</string>
+ <string name="menu_exit">Labasan</string>
+ <string name="menu_share_bridge">Ipamahagi ang BridgeQR</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Kanselahin</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Ilang detalye sa Orbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Pangkalahatan</string>
+ <string name="pref_start_boot_title">Umpisahan ang Orboot sa Boot</string>
+ <string name="pref_start_boot_summary">Kusang umpisahan ang Orbot at kumonekta sa Tor sa pag bukas ng iyong Android Device</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Pagkompigura ng Node</string>
+ <string name="pref_node_configuration_summary">Ang mga ito ay advanced settings na maaring bawasan ang iyong anonymity</string>
+ <string name="pref_entrance_node">Entrance Nodes</string>
+ <string name="pref_entrance_node_summary">Fingerprints, nicks, mga bansa at mga address para sa unang lukso</string>
+ <string name="pref_entrance_node_dialog">Pumasok sa Entrance Nodes</string>
+ <string name="pref_allow_background_starts_title">Pahintulutan na magsimula sa background</string>
+ <string name="pref_allow_background_starts_summary">Hayaan ang kahit anong app na sabihin kay Orbot na magsimula ng Tor at anumang malapit na serbisyo.</string>
+ <string name="pref_proxy_title">Outbound Network Proxy (Optional)</string>
+ <string name="pref_proxy_type_title">Outbound Proxy Type</string>
+ <string name="pref_proxy_type_summary">Mga protocol na gagamitin para sa proxy server: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Ilagay ang Proxy Type</string>
+ <string name="pref_proxy_host_title">Outbound Proxy Host</string>
+ <string name="pref_proxy_host_summary">Proxy Server hostname</string>
+ <string name="pref_proxy_host_dialog">Ilagay ang Proxy Host</string>
+ <string name="pref_proxy_port_title">Outbound Proxy</string>
+ <string name="pref_proxy_port_summary">Proxy Server Port</string>
+ <string name="pref_proxy_port_dialog">Ilagay ang Proxy port</string>
+ <string name="pref_proxy_username_title">Outbound Proxy Username</string>
+ <string name="pref_proxy_username_summary">Proxy Username (Optional)</string>
+ <string name="pref_proxy_username_dialog">Ilagay ang Proxy Username</string>
+ <string name="pref_proxy_password_title">Outbound Proxy Password</string>
+ <string name="pref_proxy_password_summary">Proxy Password (Optional)</string>
+ <string name="pref_proxy_password_dialog">Ilagay ang Proxy Password</string>
+ <string name="couldn_t_start_tor_process_">Hindi ma umpisahan ang proseso ng Tor:</string>
+ <string name="error">Error</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Ang iyong ReachableAddresses settings ay nag sanhi ng exception!</string>
+ <string name="your_relay_settings_caused_an_exception_">Ang iyong relay settings ay nag sanhi ng exception!</string>
+ <string name="exit_nodes">Exit Nodes</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Fingerprints, nicks, mga bansa at address para sa huling talon</string>
+ <string name="enter_exit_nodes">Enter Exit Nodes</string>
+ <string name="exclude_nodes">Hindi kasama ang Nodes</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Fingerprints, nicks, mga bansa at mga address na hindi isasama</string>
+ <string name="enter_exclude_nodes">Enter Exclude Nodes</string>
+ <string name="strict_nodes">Strict Nodes</string>
+ <string name="use_only_these_specified_nodes">Gumamit ng *only* sa mga ispesipikong nodes </string>
+ <string name="bridges">Bridges</string>
+ <string name="use_bridges">Gumamit ng Bridges</string>
+ <string name="ip_address_and_port_of_bridges">IP address at port ng bridges</string>
+ <string name="enter_bridge_addresses">Ilagay ang Bridge Addresses</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Relaying</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">I-enable ang iyong device na non-exit relay</string>
+ <string name="relay_port">Relay Port</string>
+ <string name="listening_port_for_your_tor_relay">Pinapakinggan ang port para sa iyong Tor relay</string>
+ <string name="enter_or_port">I-lagay ang OR port</string>
+ <string name="relay_nickname">Relay nickname</string>
+ <string name="the_nickname_for_your_tor_relay">Ang nickname para sa iyong Tor relay</string>
+ <string name="enter_a_custom_relay_nickname">I-lagay ang pasadyang relay nickname</string>
+ <string name="reachable_addresses">Reachable Addresses</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Patakbuhin bilang kliente sa likod ng firewall na may istriktong polisiya</string>
+ <string name="reachable_ports">Reachable Ports</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Ports reachable sa likod ng istriktong firewall</string>
+ <string name="enter_ports">I-lagay ang ports</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">paganahiin ang debug log para sa output (kailangang gamitin ang adb o aLogCat para makita)</string>
+ <string name="project_home">Project Home(s):</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…
+</string>
+ <string name="third_party_software">3rd-Party-Software:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process"> nakakita ng umiiral na Tor process...</string>
+ <string name="something_bad_happened">May nangyaring masama. Tingnan ang log</string>
+ <string name="unable_to_read_hidden_service_name">hindi mabasa ang pangalan ng tagong serbisyo</string>
+ <string name="unable_to_start_tor">Hindi masimulan ang Tor:</string>
+ <string name="pref_use_persistent_notifications">Palaging panatilihin ang icon sa toolbar kapag ang Orbot ay naka-connect</string>
+ <string name="pref_use_persistent_notifications_title">Palaging i-On ang Notifications</string>
+ <string name="pref_use_expanded_notifications">Ipakita ang pinalaking notification kasama ng Tor exit country at IP</string>
+ <string name="pref_use_expanded_notifications_title">Pinalawak na Notifications</string>
+ <string name="set_locale_title">Wika</string>
+ <string name="no_internet_connection_tor">Walang connection sa internet; Ang Tor ay naka-standby mode...</string>
+ <string name="pref_disable_network_title">Walang Auto-Sleep sa Network</string>
+ <string name="pref_disable_network_summary">Ilagay ang Tor sa sleep kapag walang internet na pwede</string>
+ <string name="newnym">Ikaw ay nagpalit ng bagong pagkakakilanlan sa Tor!</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">Activate</string>
+ <string name="send_email">Send Email</string>
+ <string name="save">I-save</string>
+ <string name="name">Name</string>
+</resources>
diff --git a/app-mini/src/main/res/values-tr/poestrings.xml b/app-mini/src/main/res/values-tr/poestrings.xml
new file mode 100644
index 00000000..2051efcc
--- /dev/null
+++ b/app-mini/src/main/res/values-tr/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">Bazen Tor aÄına baÄlanmak için bir köprÃŒ kullanmanız gerekir.</string>
+ <string name="action_more">AYRINTILI BİLGİ ALIN</string>
+
+ <string name="vpn_setup">İç VPN desteÄi ile istediÄiniz her uygulamanın Tor kullanmasını saÄlayabilirsiniz.</string>
+ <string name="vpn_setup_sub">Bu özellik isimsiz gizlilik saÄlamaz ancak gÃŒvenlik duvarlarının aÅılmasını saÄlar.</string>
+ <string name="action_vpn_choose">UYGULAMALARI SEÃİN</string>
+
+ <string name="hello">Merhaba</string>
+ <string name="welcome">Mobil Tor uygulamasına hoŠgeldiniz</string>
+
+ <string name="browser_the_internet">İnternet ÃŒzerinde olması gerektiÄi gibi gezebilirsiniz.</string>
+ <string name="no_tracking">İzleme yok, Engelleme yok.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-tr/strings.xml b/app-mini/src/main/res/values-tr/strings.xml
new file mode 100644
index 00000000..e100a10b
--- /dev/null
+++ b/app-mini/src/main/res/values-tr/strings.xml
@@ -0,0 +1,206 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot baÅka uygulamaların İnterneti daha gÃŒvenli olarak kullanmasını saÄlayan ÃŒcretsiz bir vekil sunucu uygulamasıdır. Orbot Tor yazılımını kullanarak İnternet trafiÄinizi Åifreler ve dÃŒnya ÃŒzerindeki pek çok farklı bilgisayardan geçirerek gizler. Tor kiÅisel özgÃŒrlÃŒÄÃŒnÃŒze, kiÅisel bilgilerinize, gizli ticari iÅlemlerinize ve iliÅkilerinize karÅı tehdit oluÅturan ve devlet gÃŒvenliÄi olarak bilinen aÄ izlemelerine karÅı koruma saÄlayan bir özgÃŒr yazılım ve açık aÄ yazılımıdır.</string>
+ <string name="status_starting_up">Orbot baÅlatılıyor...</string>
+ <string name="status_activated">Tor aÄına baÄlandı</string>
+ <string name="status_disabled">Orbot devre dıÅı bırakıldı</string>
+ <string name="status_shutting_down">Tor hizmeti kapatılıyor</string>
+ <string name="tor_process_starting">Tor istemcisi baÅlatılıyor...</string>
+ <string name="tor_process_complete">tamamlandı.</string>
+ <string name="menu_settings">Ayarlar</string>
+ <string name="menu_log">GÃŒnlÃŒk</string>
+ <string name="menu_start">BaÅlat</string>
+ <string name="menu_stop">Durdur</string>
+ <string name="menu_about">Hakkında</string>
+ <string name="main_layout_download">İndir</string>
+ <string name="main_layout_upload">YÃŒkle</string>
+ <string name="button_about">Hakkında</string>
+ <string name="menu_exit">ÃıkıÅ</string>
+ <string name="menu_scan">QR kodu tara</string>
+ <string name="menu_share_bridge">QR kodu paylaÅ</string>
+ <string name="btn_okay">Tamam</string>
+ <string name="btn_cancel">İptal</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Bazı Orbot Ayrıntıları</string>
+ <string name="wizard_details_msg">Orbot; Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent ve Polipo yapılarını kapsayan açık kaynaklı bir uygulamadır. Tor aÄına baÄlanmak için bir yerel HTTP vekil sunucu (8118) ve bir SOCKS vekil sunucu (9050) saÄlar. Orbot ayrıca, rootlanmıŠaygıtlarda tÃŒm İnternet trafiÄini Tor ÃŒzerinden gönderebilir.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Genel</string>
+ <string name="pref_start_boot_title">Orbot AçılıÅta BaÅlatılsın</string>
+ <string name="pref_start_boot_summary">Android aygıtınızı açtıÄınızda Orbot otomatik olarak baÅlatılarak Tor aÄına baÄlanılır.</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">DÃŒÄÃŒm Ayarları</string>
+ <string name="pref_node_configuration_summary">Bu geliÅmiÅ ayarlar baÄlantınızın isimsizliÄini azaltabilir</string>
+ <string name="pref_entrance_node">GiriÅ DÃŒÄÃŒmleri</string>
+ <string name="pref_entrance_node_summary">İlk sıçrama noktası için parmak izleri, kısaltmalar, Ìlkeler ve adresler</string>
+ <string name="pref_entrance_node_dialog">GiriÅ DÃŒÄÃŒmlerini Yazın</string>
+ <string name="pref_allow_background_starts_title">Art Alanda BaÅlatılabilsin</string>
+ <string name="pref_allow_background_starts_summary">Herhangi bir uygulamanın Orbot aracılıÄıyla Tor ve ilgili hizmetleri baÅlatmasını saÄlar</string>
+ <string name="pref_proxy_title">Giden AÄ Sunucusu (İsteÄe BaÄlı)</string>
+ <string name="pref_proxy_type_title">Giden Vekil Sunucu TÌrÌ</string>
+ <string name="pref_proxy_type_summary">Vekil sunucuda kullanılacak aÄ iletiÅim kuralları: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">Vekil Sunucu TÌrÌnÌ Yazın</string>
+ <string name="pref_proxy_host_title">Giden Vekil Sunucusu</string>
+ <string name="pref_proxy_host_summary">Vekil Sunucusunun Adı</string>
+ <string name="pref_proxy_host_dialog">Vekil Sunucusunu Yazın</string>
+ <string name="pref_proxy_port_title">Giden Vekil Sunucu Kapı Numarası</string>
+ <string name="pref_proxy_port_summary">Vekil Sunucu Kapı Numarası</string>
+ <string name="pref_proxy_port_dialog">Vekil sunucu kapı numarasını yazın</string>
+ <string name="pref_proxy_username_title">Giden Vekil Sunucusu Kullanıcı Adı</string>
+ <string name="pref_proxy_username_summary">Vekil Sunucu Kullanıcı Adı (İsteÄe BaÄlı)</string>
+ <string name="pref_proxy_username_dialog">Vekil Sunucu Kullanıcı Adını Yazın</string>
+ <string name="pref_proxy_password_title">Giden Vekil Sunucu Parolası</string>
+ <string name="pref_proxy_password_summary">Vekil Sunucu Parolası (İsteÄe BaÄlı)</string>
+ <string name="pref_proxy_password_dialog">Vekil Sunucu Parolasını Yazın</string>
+ <string name="couldn_t_start_tor_process_">Tor iÅlemi baÅlatılamadı:</string>
+ <string name="error">Hata</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">EriÅilebilirAdresler ayarlarınız bir soruna yol açtı!</string>
+ <string name="your_relay_settings_caused_an_exception_">Aktarıcı ayarlarınız bir soruna yol açtı!</string>
+ <string name="exit_nodes">ÃıkıŠDÃŒÄÃŒmleri</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Son sıçrama noktası için parmak izleri, kısaltmalar, Ìlkeler ve adresler</string>
+ <string name="enter_exit_nodes">ÃıkıŠDÃŒÄÃŒmlerini Yazın</string>
+ <string name="exclude_nodes">Katılmayacak DÃŒÄÃŒmler</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Katılmayacak parmak izleri, kısaltmalar, Ìlkeler ve adresler</string>
+ <string name="enter_exclude_nodes">Katılmayacak DÃŒÄÃŒmleri Yazın</string>
+ <string name="strict_nodes">DeÄiÅmeyen DÃŒÄÃŒmler</string>
+ <string name="use_only_these_specified_nodes">*Yalnız* bu dÃŒÄÃŒmler kullanılsın</string>
+ <string name="bridges">KöprÌler</string>
+ <string name="use_bridges">KöprÌler Kullanılsın</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Alternatif Tor aÄı giriÅleri kullanılabilsin</string>
+ <string name="ip_address_and_port_of_bridges">KöprÌlerin IP adresleri ve kapı numaraları</string>
+ <string name="enter_bridge_addresses">KöprÌ Adreslerini Yazın</string>
+ <string name="relays">Aktarıcılar</string>
+ <string name="relaying">Aktarım</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Aygıtınız çıkıŠyapmayan bir aktarıcı olarak kullanılsın</string>
+ <string name="relay_port">Aktarıcı Kapı Numarası</string>
+ <string name="listening_port_for_your_tor_relay">Tor aktarıcınızın dinleme kapı numarası</string>
+ <string name="enter_or_port">OR kapı numarasını yazın</string>
+ <string name="relay_nickname">Aktarıcı kısaltması</string>
+ <string name="the_nickname_for_your_tor_relay">Tor aktarıcınızın kısaltması</string>
+ <string name="enter_a_custom_relay_nickname">Ãzel bir aktarıcı kısaltması yazın</string>
+ <string name="reachable_addresses">EriÅilebilecek Adresler</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">GÃŒvenlik duvarı ilkeleri ile kısıtlanmıŠbir istemci olarak baÄlansın</string>
+ <string name="reachable_ports">UlaÅılabilir kapı numaraları</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">KısıtlanmıŠbir gÃŒvenlik duvarından eriÅilebilir kapı numaraları</string>
+ <string name="enter_ports">Kapı numaralarını yazın</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">hata ayıklama gÃŒnlÃŒÄÃŒ etkinleÅtirilsin (görÃŒntÃŒlemek için adb ya da aLogCat gerekir)</string>
+ <string name="project_home">Proje Adres(ler)i:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ÃçÌncÃŒ Taraf Yazılım:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">Bir uygulama Tor aÄına %1$s gizli sunucu kapısını açmak istiyor. Uygulamaya gÃŒveniyorsanız bu iÅlem gÃŒvenlidir.</string>
+ <string name="found_existing_tor_process">varolan bir Tor iÅlemi bulundu...</string>
+ <string name="something_bad_happened">Bir Åeyler ters gitti. GÃŒnlÃŒk kayıtlarına bakın</string>
+ <string name="unable_to_read_hidden_service_name">gizli hizmet adı okunamadı</string>
+ <string name="unable_to_start_tor">Tor baÅlatılamadı:</string>
+ <string name="pref_use_persistent_notifications">Orbot baÄlı olduÄu sÃŒrece simge araç çubuÄunda görÃŒntÃŒlensin</string>
+ <string name="pref_use_persistent_notifications_title">Bildirimler Her Zaman Açık</string>
+ <string name="pref_use_expanded_notifications">Tor çıkıŠÌlkesi ve IP adresi ile ilgili ayrıntılı bildirim görÌntÌlensin</string>
+ <string name="pref_use_expanded_notifications_title">Ayrıntılı Bildirimler</string>
+ <string name="set_locale_title">Dil</string>
+ <string name="no_internet_connection_tor">İnternet baÄlantısı yok; Tor hazırda bekliyor...</string>
+ <string name="pref_disable_network_title">BaÄlantı OlmadıÄında Otomatik Uyku</string>
+ <string name="pref_disable_network_summary">İnternet baÄlantısı olmadıÄında Tor uyku kipine geçsin</string>
+ <string name="newnym">Yeni bir Tor kimliÄine geçiÅ yaptınız!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">Herhangi bir aÄ baÄlantısı yok. Tor uyutuluyor...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">AÄ baÄlantısı iyi. Tor uyandırılıyor... </string>
+ <string name="updating_settings_in_tor_service">Tor hizmet ayarları gÌncelleniyor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Tor SOCKS vekil sunucusu için kullanılacak kapı numarası (Varsayılan 9050, devre dıÅı bırakmak için 0)</string>
+ <string name="pref_socks_dialog">SOCKS Kapı Numarası Ayarı</string>
+ <string name="pref_transport_title">Tor Aktarım Vekil Sunucusu Kapı Numarası</string>
+ <string name="pref_transport_summary">Tor saydam vekil sunucusu için kullanılacak kapı numarası (Varsayılan 9040 ya da devre dıÅı bırakmak için 0)</string>
+ <string name="pref_transport_dialog">Aktarım Vekil Sunucusu Kapı Numarası Ayarı</string>
+ <string name="pref_dnsport_title">Tor DNS Kapı Numarası</string>
+ <string name="pref_dnsport_summary">Tor DNS hizmeti için kullanılacak kapı numarası (Varsayılan 5400 ya da devre dıÅı bırakmak için 0)</string>
+ <string name="pref_dnsport_dialog">DNS Kapı Numarası Ayarı</string>
+ <string name="pref_torrc_title">Ãzel Torrc Ayarları</string>
+ <string name="pref_torrc_summary">UZMANLAR İÃİN: torrc ayar satırlarını doÄrudan yazın</string>
+ <string name="pref_torrc_dialog">Ãzel Torrc Ayarları</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">KöprÌler GÌncellendi</string>
+ <string name="restart_orbot_to_use_this_bridge_">DeÄiÅiklikleri etkinleÅtirmek için Orbot uygulamasını yeniden baÅlatın</string>
+ <string name="menu_qr">QR Kodları</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">Tor kullanımı mobil aÄınızda etkin olarak engelleniyorsa, Tor aÄına eriÅmek için bir \'KöprÃŒ Sunucusu\' kullanabilirsiniz. Yapılandırmak ve denemek için aÅaÄıdaki seçeneklerden birini seçin...</string>
+ <string name="bridge_mode">KöprÌ Kipi</string>
+ <string name="get_bridges_email">E-posta</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">EtkinleÅtir</string>
+ <string name="apps_mode">VPN Kipi</string>
+ <string name="send_email">E-posta Gönder</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">KöprÃŒ adresini e-posta, web ya da QR kodu ile edinebilirsiniz. KöprÃŒ adresini istemek için aÅaÄıdan \'E-posta\' ya da \'Web\' seçeneÄini seçin. \n\nAdresi edindikten sonra kopyalayıp Orbot ayarlarındaki \"KöprÃŒler\" alanına kopyalayın ve Orbot uygulamasını yeniden baÅlatın.</string>
+ <string name="vpn_default_world">Genel (Otomatik)</string>
+ <string name="hidden_services">Gizli Hizmetler</string>
+ <string name="title_activity_hidden_services">Gizli Hizmetler</string>
+ <string name="menu_hidden_services">Gizli Hizmetler</string>
+ <string name="save">Kaydet</string>
+ <string name="local_port">Yerel Kapı</string>
+ <string name="onion_port">Onion Kapısı</string>
+ <string name="name">Ad</string>
+ <string name="done">Tamam!</string>
+ <string name="invalid_port">Kapı Geçersiz</string>
+ <string name="copy_address_to_clipboard">Adresi panoya kopyala</string>
+ <string name="show_auth_cookie">Kimlik doÄrulama çerezini görÃŒntÃŒle</string>
+ <string name="backup_service">Hizmeti Yedekle</string>
+ <string name="delete_service">Hizmeti Sil</string>
+ <string name="backup_saved_at_external_storage">Yedek dıŠdepolamaya kaydedildi</string>
+ <string name="backup_restored">Yedek geri yÃŒklendi</string>
+ <string name="filemanager_not_available">Dosya tarayıcı kullanılamıyor</string>
+ <string name="please_grant_permissions_for_external_storage">LÌtfen dıŠdepolama için izinleri verin</string>
+ <string name="restore_backup">YedeÄi Geri YÃŒkle</string>
+ <string name="create_a_backup_first">Ãnce bir yedek oluÅturun</string>
+ <string name="name_can_t_be_empty">Ad boŠbırakılamaz</string>
+ <string name="fields_can_t_be_empty">Alanlar boŠbırakılamaz</string>
+ <string name="start_tor_again_for_finish_the_process">İÅlemi tamamlamak için Tor uygulamasını yeniden baÅlatın</string>
+ <string name="confirm_service_deletion">Hizmeti Silmeyi Onayla</string>
+ <string name="click_again_for_backup">Yedeklemek için yeniden tıklayın</string>
+ <string name="service_type">Hizmet TÌrÌ</string>
+ <string name="auth_cookie">Kimlik DoÄrulama Ãerezi</string>
+ <string name="copy_cookie_to_clipboard">Ãerezi panoya kopyala</string>
+ <string name="auth_cookie_was_not_configured">Kimlik doÄrulama çerezi yapılandırılmamıÅ</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">DeÄiÅiklikleri etkinleÅtirmek için Orbot uygulamasını yeniden baÅlatın</string>
+ <string name="client_cookies">İstemci çerezleri</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">.onion adresi geçersiz</string>
+ <string name="cookie_from_QR">QR kodundan oku</string>
+ <string name="backup_cookie">Ãerezi yedekle</string>
+ <string name="delete_cookie">Ãerezi sil</string>
+ <string name="confirm_cookie_deletion">Ãerezi silmeyi onayla</string>
+ <string name="hosted_services">Barındırılan Hizmetler</string>
+ <string name="share_as_qr">QR Olarak PaylaÅ</string>
+ <string name="disable">Devre DıÅı Bırak</string>
+ <string name="enable">EtkinleÅtir</string>
+ <string name="consider_disable_battery_optimizations">Pil kullanımı iyileÅtirmelerini devre dıÅı bırakmayı dÃŒÅÃŒnÃŒn</string>
+ <string name="consider_enable_battery_optimizations">Pil kullanımı iyileÅtirmelerini etkinleÅtirmeyi dÃŒÅÃŒnÃŒn</string>
+ <string name="pref_isolate_dest">Hedef adresleri yalıtılsın</string>
+ <string name="pref_isolate_dest_summary">Her ehdef adresi için farklı devre kullanılır</string>
+ <string name="no_transproxy_warning_short">Uyarı: Saydam vekil sunucu özelliÄi artık desteklenmiyor</string>
+ <string name="no_transproxy_warning">Uyarı: Saydam vekil sunucu özelliÄi artık desteklenmiyor. Onun yerine Orbot uygulamasının VPN özelliÄini kullanın.</string>
+ <string name="pref_connection_padding">BaÄlantı yastıklama</string>
+ <string name="pref_connection_padding_summary">Bazı trafik inceleme yöntemlerine karÅı korunmayı saÄlamak için her zaman baÄlantı yastıklaması kullanılır. Varsayılan deÄer: Otomatik.</string>
+ <string name="pref_reduced_connection_padding">AzaltılmıŠbaÄlantı yastıklaması</string>
+ <string name="pref_reduced_connection_padding_summary">Aktarıcı baÄlantılarını daha kısa sÃŒrede kapatır ve veri ve pil kullanımını azaltmak için daha az yastıklama paketi gönderir.</string>
+ <string name="app_shortcuts">Tor Kullanan Uygulamalar</string>
+ <string name="testing_bridges">Tor köprÃŒ baÄlantısı sınanıyor...</string>
+ <string name="testing_bridges_success">Tamamdır, köprÃŒ yapılandırması çalıÅıyor.</string>
+ <string name="testing_bridges_fail">Sorun var. DiÄer seçenekleri deneyin</string>
+ <string name="bridge_direct_connect">DoÄrudan Tor aÄına baÄlanılsın (en iyisi)</string>
+ <string name="bridge_community">Topluluk sunucuları ÃŒzerinden baÄlanılsın</string>
+ <string name="bridge_cloud">Bulut sunucular ÃŒzerinden baÄlanılsın</string>
+ <string name="bridges_get_new">Yeni KöprÃŒler İsteyin... (hiçbir seçenek baÄlanamıyorsa)</string>
+ <string name="trouble_connecting">BaÄlanmakta sorun mu yaÅıyorsunuz?</string>
+ <string name="full_device_vpn">Aygıt Geneli VPN</string>
+ <string name="vpn_disabled">VPN Devre DıÅı</string>
+</resources>
diff --git a/app-mini/src/main/res/values-uk/poestrings.xml b/app-mini/src/main/res/values-uk/poestrings.xml
new file mode 100644
index 00000000..c4b4ba6b
--- /dev/null
+++ b/app-mini/src/main/res/values-uk/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">ÐÐœÐŸÐŽÑ Ð²Ð°ÐŒ пПÑÑÑбеМ ÐŒÑÑÑ, ÑПб пÑÐŽ\'ÑЎМаÑОÑÑ ÐŽÐŸ Tor.</string>
+ <string name="action_more">Ð ÐÐÐÐÐÐ ÐÐÐÐ ÐÐÐЬКÐ</string>
+
+ <string name="vpn_setup">ÐО ЌПжеÑе ЎПзвПлОÑО бÑÐŽÑ-ÑкÑй пÑПгÑаЌÑÑ Ð¿ÑаÑÑваÑО ÑеÑез Tor за ÐŽÐŸÐ¿ÐŸÐŒÐŸÐ³ÐŸÑ ÐœÐ°ÑÐŸÑ Ð²Ð±ÑÐŽÐŸÐ²Ð°ÐœÐŸÑ VPN.</string>
+ <string name="vpn_setup_sub">Ње Ме зÑПбОÑÑ Ð²Ð°Ñ Ð°ÐœÐŸÐœÑЌМОЌ, але ЎПпПЌПже пÑПйÑО ÑеÑез ÑаÑÑвПлО.</string>
+ <string name="action_vpn_choose">ÐÐÐÐ ÐТЬ ÐÐ ÐÐÐ ÐÐÐ</string>
+
+ <string name="hello">ÐÑОвÑÑ!</string>
+ <string name="welcome">ÐаÑкавП пÑПÑОЌП ЎП Tor Ма ЌПбÑлÑМОÑ
пÑОÑÑÑПÑÑ
.</string>
+
+ <string name="browser_the_internet">ÐеÑеглÑЎайÑе ÑМÑеÑÐœÐµÑ Ñак Ñк ÑважаÑÑе за пПÑÑÑбМе.</string>
+ <string name="no_tracking">Ðез вÑÐŽÑÑежеММÑ. Ðез ÑеМзÑÑО.</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-uk/strings.xml b/app-mini/src/main/res/values-uk/strings.xml
new file mode 100644
index 00000000..a103899a
--- /dev/null
+++ b/app-mini/src/main/res/values-uk/strings.xml
@@ -0,0 +1,203 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot â Ñе вÑлÑМа пÑПгÑаЌа ÐŽÐ»Ñ Ð¿ÑПкÑÑ-з\'ÑЎМаМÑ, Ñка ЎПзвПлÑÑ ÑМÑОЌ ЎПЎаÑкаЌ безпеÑМÑÑе вОкПÑОÑÑПвÑваÑО ÑМÑеÑМеÑ-з\'ÑЎМаММÑ. Orbot вОкПÑОÑÑПвÑÑ Tor ÐŽÐ»Ñ ÑОÑÑÑÐ²Ð°ÐœÐœÑ ÑМÑеÑМеÑ-ÑÑаÑÑкÑ, ÑкОй ÐŽÐ°Ð»Ñ Ð¿ÑОÑ
ПвÑÑÑÑÑÑ Ð¿ÑÐŽ ÑÐ°Ñ Ð¿ÐµÑеÑÐžÐ»Ð°ÐœÐœÑ ÑеÑез кÑлÑка кПЌп\'ÑÑеÑÑв Ñ ÑÑзМОÑ
ÑаÑÑОМаÑ
плаМеÑО. Tor Ñ Ð²ÑлÑМОЌ пÑПгÑаЌМОЌ забезпеÑеММÑÐŒ, а ÑакПж вÑЎкÑОÑÐŸÑ ÐŒÐµÑежеÑ, ÑП ÐŽÐŸÐ¿ÐŸÐŒÐ°Ð³Ð°Ñ Ð·Ð°Ñ
ОÑÑОÑОÑÑ Ð²ÑÐŽ ЌеÑежевПгП ÑÑежеММÑ, Ñке загÑПжÑÑ ÐŸÑПбОÑÑÑй ÑÐ²ÐŸÐ±ÐŸÐŽÑ Ñа пÑОваÑÐœÐŸÐŒÑ Ð¶ÐžÑÑÑ, кПМÑÑЎеМÑÑйМÑй бÑзМеÑ-ÐŽÑÑлÑМПÑÑÑ Ñ ÐºÐŸÐœÑакÑаЌ, а ÑакПж ЎеÑÐ¶Ð°Ð²ÐœÐŸÑ Ð¿ÑПгÑаЌО безпекО, ÑП в
ÑЎПЌа Ñк аМалÑз ÑÑаÑÑкÑ.</string>
+ <string name="status_starting_up">ÐапÑÑк Orbot...</string>
+ <string name="status_activated">ÐÑÐŽ\'ÑЎМаМОй ЎП ЌеÑÐµÐ¶Ñ Tor</string>
+ <string name="status_disabled">«Orbot» вÑÐŽ\'ÑЎМаМОй</string>
+ <string name="status_shutting_down">СеÑвÑÑО Ð¢ÐŸÑ ÐŽÐµÐ°ÐºÑОвПваМÑ</string>
+ <string name="tor_process_starting">ÐапÑÑкаÑÑÑÑÑ ÐºÐ»ÑÑÐœÑ Tor...</string>
+ <string name="tor_process_complete">завеÑÑеМП.</string>
+ <string name="menu_settings">ÐалаÑÑÑваММÑ</string>
+ <string name="menu_log">ÐÑÑМал</string>
+ <string name="menu_start">ÐапÑÑÑОÑО</string>
+ <string name="menu_stop">ÐÑпОМОÑО</string>
+ <string name="menu_about">ÐÑП пÑПгÑаЌÑ</string>
+ <string name="main_layout_download">ÐаваМÑажОÑО</string>
+ <string name="main_layout_upload">ÐОваМÑажОÑО</string>
+ <string name="button_about">ÐÑП пÑПгÑаЌÑ</string>
+ <string name="menu_exit">ÐОÑ
ÑÐŽ</string>
+ <string name="menu_scan">СкаМÑваÑО BridgeQR</string>
+ <string name="menu_share_bridge">ÐПЎÑлОÑОÑÑ BridgeQR</string>
+ <string name="btn_okay">OK</string>
+ <string name="btn_cancel">ÐÑÐŽÐŒÑМа</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">ÐеÑÐºÑ Ð²ÑЎПЌПÑÑÑ Ð¿ÑП пÑПгÑÐ°ÐŒÑ Orbot</string>
+ <string name="wizard_details_msg">Orbot â Ñе пÑПгÑаЌа з вÑЎкÑОÑОЌ кПЎПЌ, Ñка ÐŒÑÑÑОÑÑ Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent Ñ Polipo. ÐÑМ забезпеÑÑÑ Ð»ÐŸÐºÐ°Ð»ÑМОй HTTP-пÑПкÑÑ (8118) Ñа пÑПкÑÑ SOCKS (9050) Ñ ÐŒÐµÑÐµÐ¶Ñ Tor. Orbot ÑакПж ÐŒÐ°Ñ Ð·ÐŽÐ°ÑМÑÑÑÑ, Ма кПÑÐµÐœÐµÐ²ÐŸÐŒÑ Ð¿ÑОÑÑÑПÑ, вÑЎпÑавлÑÑО веÑÑ ÑМÑеÑМеÑ-ÑÑаÑÑк ÑеÑез Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">ÐÑМПвМÑ</string>
+ <string name="pref_start_boot_title">ÐапÑÑк Orbot пÑО ввÑЌкМеММÑ</string>
+ <string name="pref_start_boot_summary">ÐвÑПЌаÑОÑМОй запÑÑк Orbot Ñа з\'ÑÐŽÐœÐ°ÐœÐœÑ Tor пÑÐŽ ÑÐ°Ñ Ð·Ð°Ð¿ÑÑÐºÑ Ð²Ð°ÑПгП пÑОÑÑÑПÑ</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ÐПМÑÑгÑÑаÑÑÑ Ð²Ñзла</string>
+ <string name="pref_node_configuration_summary">Ње ЎПЎаÑÐºÐŸÐ²Ñ ÐœÐ°Ð»Ð°ÑÑÑваММÑ, ÑÐºÑ ÐŒÐŸÐ¶ÑÑÑ Ð·ÐœÐžÐ·ÐžÑО ваÑÑ Ð°ÐœÐŸÐœÑЌМÑÑÑÑ</string>
+ <string name="pref_entrance_node">ÐÑ
ÑÐŽÐœÑ Ð²ÑзлО</string>
+ <string name="pref_entrance_node_summary">ÐÑЎбОÑкО, МÑкО, кÑаÑМО Ñа аЎÑеÑО ÐŽÐ»Ñ Ð¿ÐµÑÑПгП ÑÑÑОбка</string>
+ <string name="pref_entrance_node_dialog">ÐвеЎÑÑÑ Ð²Ñ
ÑÐŽÐœÑ Ð²ÑзлО</string>
+ <string name="pref_allow_background_starts_title">ÐПзвПлОÑО ÑПМПвОй запÑÑк</string>
+ <string name="pref_allow_background_starts_summary">ÐПзвПлОÑО бÑÐŽÑ-ÑÐºÐŸÐŒÑ Ð·Ð°ÑÑПÑÑÐœÐºÑ Ð·Ð²ÐµÑÑаÑОÑÑ ÐŽÐŸ Orbot ÐŽÐ»Ñ Ð·Ð°Ð¿ÑÑÐºÑ Tor Ñ Ð¿ÐŸÐ²\'ÑзаМОÑ
з МОЌ ÑеÑвÑÑÑв</string>
+ <string name="pref_proxy_title">ÐОÑ
ÑЎМа пÑПкÑÑ ÐŒÐµÑежа</string>
+ <string name="pref_proxy_type_title">ТОп ÐÑПкÑÑ</string>
+ <string name="pref_proxy_type_summary">ÐÑПÑПкПл ÐŽÐ»Ñ Ð²ÐžÐºÐŸÑОÑÑÐ°ÐœÐœÑ Ð¿ÑПкÑÑ-ÑеÑвеÑПЌ: HTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">ÐвеЎÑÑÑ Ð¢ÐžÐ¿ ÐÑПкÑÑ</string>
+ <string name="pref_proxy_host_title">ХПÑÑ ÐÑПкÑÑ</string>
+ <string name="pref_proxy_host_summary">ÐÐŒ\'Ñ Ñ
ПÑÑа пÑПкÑÑ-ÑеÑвеÑа</string>
+ <string name="pref_proxy_host_dialog">ÐвеЎÑÑÑ Ð¥ÐŸÑÑ ÐÑПкÑÑ</string>
+ <string name="pref_proxy_port_title">ÐПÑÑ ÐÑПкÑÑ</string>
+ <string name="pref_proxy_port_summary">ÐПÑÑ Ð¿ÑПкÑÑ-ÑеÑвеÑа</string>
+ <string name="pref_proxy_port_dialog">ÐвеЎÑÑÑ Ð¿ÐŸÑÑ ÐÑПкÑÑ</string>
+ <string name="pref_proxy_username_title">ÐÐŒ\'Ñ ÐºÐŸÑОÑÑÑваÑа ÐŽÐ»Ñ Ð²ÐžÑ
ÑЎМПгП пÑПкÑÑ-з\'ÑЎМаММÑ</string>
+ <string name="pref_proxy_username_summary">ÐÐŒ\'Ñ ÐºÐŸÑОÑÑÑваÑа ÐŽÐ»Ñ Ð¿ÑПкÑÑ-з\'ÑÐŽÐœÐ°ÐœÐœÑ (вказÑваÑО Ме ПбПв\'ÑзкПвП)</string>
+ <string name="pref_proxy_username_dialog">ÐвеЎÑÑÑ ÐÐŒ\'Ñ ÐºÐŸÑОÑÑÑваÑа пÑПкÑÑ-з\'ÑЎМаММÑ</string>
+ <string name="pref_proxy_password_title">ÐаÑÐŸÐ»Ñ Ð²ÐžÑ
ÑЎМПгП пÑПкÑÑ-з\'ÑЎМаММÑ</string>
+ <string name="pref_proxy_password_summary">ÐаÑÐŸÐ»Ñ Ð¿ÑПкÑÑ-з\'ÑÐŽÐœÐ°ÐœÐœÑ (вказÑваÑО Ме ПбПв\'ÑзкПвП)</string>
+ <string name="pref_proxy_password_dialog">ÐвеЎÑÑÑ Ð¿Ð°ÑÐŸÐ»Ñ Ð¿ÑПкÑÑ-з\'ÑЎМаММÑ</string>
+ <string name="couldn_t_start_tor_process_">ÐеЌПжлОвП запÑÑÑОÑО Tor: </string>
+ <string name="error">ÐПЌОлка</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">ÐаÑÑ ÐœÐ°Ð»Ð°ÑÑÑÐ²Ð°ÐœÐœÑ ÐПÑÑÑпМОÑ
ÐÐŽÑÐµÑ Ð²ÐžÐºÐ»ÐžÐºÐ°Ð»Ðž вОклÑÑеММÑ!</string>
+ <string name="your_relay_settings_caused_an_exception_">ÐалаÑÑÑÐ²Ð°ÐœÐœÑ Ð²Ð°ÑПгП ÑеÑÑаМÑлÑÑПÑа вОклОкалО вОклÑÑеММÑ!</string>
+ <string name="exit_nodes">ÐОÑ
ÑÐŽÐœÑ ÐÑзлО</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">ÐÑЎбОÑкО, МÑкО, кÑаÑМО Ñа аЎÑеÑО ÐŽÐ»Ñ ÐŸÑÑаММÑПгП ÑÑÑОбка</string>
+ <string name="enter_exit_nodes">ÐвеЎÑÑÑ ÐОÑ
ÑÐŽÐœÑ ÐÑзлО</string>
+ <string name="exclude_nodes">ÐОклÑÑÐµÐœÑ ÐÑзлО</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">ÐÑЎбОÑкО, МÑкО, кÑаÑМО Ñа аЎÑеÑО Ма вОклÑÑеММÑ</string>
+ <string name="enter_exclude_nodes">ÐвеЎÑÑÑ ÐОклÑÑÐµÐœÑ ÐÑзлО</string>
+ <string name="strict_nodes">ТПÑÐœÑ ÐÑзлО</string>
+ <string name="use_only_these_specified_nodes">ÐОкПÑОÑÑПвÑваÑО *ÑÑлÑкО* ÑÑ Ð·Ð°ÐŽÐ°ÐœÑ Ð²ÑзлО</string>
+ <string name="bridges">ÐПÑÑО</string>
+ <string name="use_bridges">ÐОкПÑОÑÑаÑО ÐПÑÑО</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">УвÑЌкМÑÑÑ Ð°Ð»ÑÑеÑМаÑÐžÐ²ÐœÑ Ð²Ñ
ПЎО Ñ ÐŒÐµÑÐµÐ¶Ñ Tor</string>
+ <string name="ip_address_and_port_of_bridges">IP аЎÑеÑО Ñ Ð¿ÐŸÑÑО ЌПÑÑÑв</string>
+ <string name="enter_bridge_addresses">ÐвеЎÑÑÑ ÐÐŽÑеÑО ÐПÑÑÑв</string>
+ <string name="relays">РеÑÑаМÑлÑÑПÑО</string>
+ <string name="relaying">РеÑÑаМÑлÑÑÑÑ</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ÐПзвПлОÑО ваÑÐŸÐŒÑ Ð¿ÑОÑÑÑÐŸÑ Ð±ÑÑО МевОÑ
ÑЎМОЌ ÑеÑÑаМÑлÑÑПÑПЌ</string>
+ <string name="relay_port">ÐПÑÑ ÑеÑÑаМÑлÑÑПÑа</string>
+ <string name="listening_port_for_your_tor_relay">СлÑÑ
аÑÑОй пПÑÑ ÐŽÐ»Ñ Ð²Ð°ÑПгП ÑеÑÑаМÑлÑÑПÑа Tor</string>
+ <string name="enter_or_port">ÐвеЎÑÑÑ Ð¿ÐŸÑÑ OR</string>
+ <string name="relay_nickname">ÐÐŒ\'Ñ ÑеÑÑаМÑлÑÑПÑа</string>
+ <string name="the_nickname_for_your_tor_relay">ÐÐŒ\'Ñ ÐŽÐ»Ñ Ð²Ð°ÑПгП ÑеÑÑаМÑлÑÑПÑа Tor</string>
+ <string name="enter_a_custom_relay_nickname">ÐвеЎÑÑÑ ÐºÐŸÑОÑÑÑваÑÑке ÑÐŒ\'Ñ ÑеÑÑаМÑлÑÑПÑа</string>
+ <string name="reachable_addresses">ÐПÑÑÑÐ¿ÐœÑ ÐÐŽÑеÑО</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">ÐапÑÑкаÑО Ñк клÑÑÐœÑ Ð·Ð° бÑаМЎЌаÑеÑПЌ з ПбЌежÑÑÑОЌО пПлÑÑОкаЌО</string>
+ <string name="reachable_ports">ÐПÑÑÑÐ¿ÐœÑ Ð¿ÐŸÑÑО</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">ÐПÑÑО ЎПÑÑÑÐ¿ÐœÑ Ñз ПбЌежÑваМПгП бÑаМЎЌаÑеÑа</string>
+ <string name="enter_ports">ÐвеЎÑÑÑ Ð¿ÐŸÑÑО</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">ввÑЌкМÑÑО вОвÑÐŽ Ð»ÐŸÐ³Ñ ÐœÐ°Ð»ÐŸÐ³ÐŸÐŽÐ¶ÐµÐœÐœÑ (пПÑÑÑбМП вОкПÑОÑÑПвÑваÑО adb абП aLogCat ÐŽÐ»Ñ Ð¿ÐµÑеглÑÐŽÑ)</string>
+ <string name="project_home">ÐПЌаÑÐœÑ ÑÑПÑÑМка(О) пÑПекÑÑ: </string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ÐÑПгÑаЌО ÑÑПÑПММÑÑ
ÑПзÑПбМОкÑв: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">ÐÑПгÑаЌа Ñ
ПÑе вÑЎкÑОÑО пÑОÑ
ПваМОй ÑеÑвеÑМОй пПÑÑ %1$s Ñ ÐŒÐµÑÐµÐ¶Ñ Tor. Ње безпеÑМП, ÑкÑП вО ЎПвÑÑÑÑÑе заÑÑПÑÑМкÑ.</string>
+ <string name="found_existing_tor_process">зМайЎеМП ÑÑМÑÑÑОй пÑПÑÐµÑ Tor...</string>
+ <string name="something_bad_happened">ÐОМОкла ÑкаÑÑ Ð¿ÐŸÐŒÐžÐ»ÐºÐ°. ÐеÑевÑÑÑе лПг</string>
+ <string name="unable_to_read_hidden_service_name">МеЌПжлОвП пÑПÑОÑаÑО ÑÐŒ\'Ñ Ð¿ÑОÑ
ÐŸÐ²Ð°ÐœÐŸÑ ÑлÑжбО</string>
+ <string name="unable_to_start_tor">ÐеЌПжлОвП запÑÑÑОÑО Tor:</string>
+ <string name="pref_use_persistent_notifications">ÐавжЎО пПказÑваÑО ÑÐºÐŸÐœÐºÑ Ð² Ð¿Ð°ÐœÐµÐ»Ñ Ð·Ð°Ð²ÐŽÐ°ÐœÑ ÐºÐŸÐ»Ðž Orbot пÑЎклÑÑеМОй</string>
+ <string name="pref_use_persistent_notifications_title">СпПвÑÑÐµÐœÐœÑ Ð¿ÑП пПÑÑÑÐ¹ÐœÑ ÑПбПÑÑ</string>
+ <string name="pref_use_expanded_notifications">ÐПказаÑО ÑПзÑОÑеМе ÑпПвÑÑÐµÐœÐœÑ Ð· кÑаÑÐœÐŸÑ Ð²ÐžÑ
ÐŸÐŽÑ Tor Ñа IP</string>
+ <string name="pref_use_expanded_notifications_title">РПзÑОÑÐµÐœÑ ÑпПвÑÑеММÑ</string>
+ <string name="set_locale_title">ÐПва</string>
+ <string name="no_internet_connection_tor">ÐÐµÐŒÐ°Ñ ÑМÑеÑМеÑ-з\'ÑЎМаММÑ; Tor в ÑÐµÐ¶ÐžÐŒÑ ÐŸÑÑкÑваММÑâŠ</string>
+ <string name="pref_disable_network_title">Ðе вОкПÑОÑÑПвÑваÑО ÑежОЌ ÑМÑ</string>
+ <string name="pref_disable_network_summary">ÐеÑевПЎОÑО в ÑежОЌ ÑÐœÑ Ð¿ÑО вÑÐŽÑÑÑМПÑÑÑ ÑМÑеÑМеÑ-з\'ÑЎМаММÑ</string>
+ <string name="newnym">ÐО пеÑеЌкМÑлОÑÑ ÐœÐ° МПвОй ÑЎеМÑОÑÑкаÑÐŸÑ Tor!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">ÐÐµÐŒÐ°Ñ ÐŽÐŸÑÑÑÐ¿Ñ ÐŽÐŸ ЌеÑÐµÐ¶Ñ ÑМÑеÑМеÑ. Tor пеÑеÑ
ПЎОÑÑ Ð² ÑежОЌ ÑМÑâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">ÐПÑÑÑп ЎП ЌеÑÐµÐ¶Ñ Ñ
ПÑПÑОй. Tor вОÑ
ПЎОÑÑ Ð· ÑÐµÐ¶ÐžÐŒÑ ÑМÑâŠ</string>
+ <string name="updating_settings_in_tor_service">ÐŸÐœÐŸÐ²Ð»ÐµÐœÐœÑ ÐœÐ°Ð»Ð°ÑÑÑÐ²Ð°ÐœÑ Ñ ÑеÑвÑÑÑ Tor</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">ÐПÑÑ, ÑкОй Tor ÐœÐ°ÐŽÐ°Ñ ÑвПÑÐŒÑ SOCKS-пÑПкÑÑ (за заЌПвÑÑваММÑÐŒ: 9050 абП 0 ÐŽÐ»Ñ Ð²ÐžÐŒÐºÐœÐµÐœÐœÑ)</string>
+ <string name="pref_socks_dialog">ÐалаÑÑÑÐ²Ð°ÐœÐœÑ Ð¿ÐŸÑÑÑ SOCKS</string>
+ <string name="pref_transport_title">ÐПÑÑ Tor TransProxy</string>
+ <string name="pref_transport_summary">ÐПÑÑ, ÑкОй Tor ÐœÐ°ÐŽÐ°Ñ ÑвПÑÐŒÑ Ð²ÑЎкÑОÑÐŸÐŒÑ Ð¿ÑПкÑÑ (за заЌПвÑÑваММÑÐŒ: 9040 абП 0 ÐŽÐ»Ñ Ð²ÐžÐŒÐºÐœÐµÐœÐœÑ)</string>
+ <string name="pref_transport_dialog">ÐалаÑÑÑÐ²Ð°ÐœÐœÑ Ð¿ÐŸÑÑÑ Tor TransProxy</string>
+ <string name="pref_dnsport_title">ÐПÑÑ Tor DNS</string>
+ <string name="pref_dnsport_summary">ÐПÑÑ, ÑкОй Tor ÐœÐ°ÐŽÐ°Ñ ÑвПÑÐŒÑ DNS (за заЌПвÑÑваММÑÐŒ: 5400 абП 0 ÐŽÐ»Ñ Ð²ÐžÐŒÐºÐœÐµÐœÐœÑ)</string>
+ <string name="pref_dnsport_dialog">ÐалаÑÑÑÐ²Ð°ÐœÐœÑ Ð¿ÐŸÑÑÑ DNS</string>
+ <string name="pref_torrc_title">ÐПЎаÑÐºÐŸÐ²Ñ ÐœÐ°Ð»Ð°ÑÑÑÐ²Ð°ÐœÐœÑ Torrc</string>
+ <string name="pref_torrc_summary">ÐÐКРÐÐЯ ÐÐСÐÐРТÐÐ: ввеЎÑÑÑ Ð±ÐµÐ·Ð¿ÐŸÑеÑÐµÐŽÐœÑ ÑÑЎкО МалаÑÑÑÐ²Ð°ÐœÑ torrc</string>
+ <string name="pref_torrc_dialog">ÐПЎаÑкПве Ñ Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">ÐПÑÑО ПМПвлеМП</string>
+ <string name="restart_orbot_to_use_this_bridge_">ÐÑÐŽÑ Ð»Ð°Ñка, пеÑезапÑÑÑÑÑÑ Orbot, ÑПб зЌÑМО ввÑйÑлО в ÑОлÑ</string>
+ <string name="menu_qr">QR-кПЎО</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">ЯкÑП ваÑа ЌПбÑлÑМа ЌеÑежа акÑОвМП блПкÑÑ Tor, вО ЌПжеÑе вОкПÑОÑÑПвÑваÑО \'Bridge Server\' Ñк алÑÑеÑМаÑОвМОй ÑпПÑÑб вÑ
ПЎÑ. ÐÐÐÐРРПЎОМ Ñз паÑаЌеÑÑÑв ÐŽÐ»Ñ ÐœÐ°Ð»Ð°ÑÑÑÐ²Ð°ÐœÐœÑ Ñа ÑеÑÑÑваММÑ...</string>
+ <string name="bridge_mode">РежОЌ ЌПÑÑÑ</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Ðеб</string>
+ <string name="activate">ÐкÑОвÑваÑО</string>
+ <string name="apps_mode">VPN СпПÑÑб</string>
+ <string name="send_email">ÐаЎÑÑлаÑО лОÑÑа</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">ÐО ЌПжеÑе ПÑÑОЌаÑО аЎÑеÑÑ ÐŒÐŸÑÑÑ ÑеÑез елекÑÑÐŸÐœÐœÑ Ð¿ÐŸÑÑÑ, веб абП вÑÐŽÑкаМÑвавÑО QR-кПЎ ЌПÑÑÑ. ÐбеÑÑÑÑ Â«Email» ÑО «Ðеб» ÑМОзÑ, ÑПб пПЎаÑО Ð·Ð°Ð¿ÐžÑ ÐœÐ° аЎÑеÑÑ ÐŒÐŸÑÑÑ.\n\nÐПлО Ñ ÐÐ°Ñ Ð±ÑЎе аЎÑеÑа, ÑкПпÑÑйÑе Ñ Ð²ÑÑавÑе ÑÑ Ñ ÑПзЎÑÐ»Ñ Â«ÐПÑÑО» МалаÑÑÑÐ²Ð°ÐœÑ Orbot Ñ Ð¿ÐµÑезапÑÑÑÑÑÑ Ð¹ÐŸÐ³ÐŸ.</string>
+ <string name="vpn_default_world">ÐлПбалÑМОй (авÑПЌаÑОÑМОй)</string>
+ <string name="hidden_services">ÐÑОÑ
ÐŸÐ²Ð°ÐœÑ ÐПÑлÑгО</string>
+ <string name="title_activity_hidden_services">ÐÑОÑ
ÐŸÐ²Ð°ÐœÑ ÐПÑлÑгО</string>
+ <string name="menu_hidden_services">ÐÑОÑ
ÐŸÐ²Ð°ÐœÑ ÐПÑлÑгО</string>
+ <string name="save">ÐбеÑегÑО</string>
+ <string name="local_port">ÐÑÑÑевОй ÐПÑÑ</string>
+ <string name="onion_port">ÐПÑÑ Onion</string>
+ <string name="name">ÐÐŒ\'Ñ</string>
+ <string name="done">ÐÑПблеМП!</string>
+ <string name="invalid_port">ÐеÑПбПÑОй ÐПÑÑ</string>
+ <string name="copy_address_to_clipboard">СкПпÑÑваÑО аЎÑеÑÑ Ð² бÑÑÐµÑ ÐŸÐ±ÐŒÑМÑ</string>
+ <string name="show_auth_cookie">ÐПказаÑО авÑПÑОзаÑÑÑ Ñеп\'ÑÑкÑв</string>
+ <string name="backup_service">РезеÑвМе кПпÑÑваММÑ</string>
+ <string name="delete_service">ÐОлÑÑОÑО СеÑвÑÑ</string>
+ <string name="backup_saved_at_external_storage">РезеÑвМа кПпÑÑ Ð·Ð±ÐµÑежеМа Ма зПвМÑÑМÑй паЌ\'ÑÑÑ</string>
+ <string name="backup_restored">РезеÑвМе кПпÑÑÐ²Ð°ÐœÐœÑ Ð²ÑЎМПвлеМП</string>
+ <string name="filemanager_not_available">ÐÐµÐœÐµÐŽÐ¶ÐµÑ ÑайлÑв МеЎПÑÑÑпМОй</string>
+ <string name="please_grant_permissions_for_external_storage">ÐаЎайÑе ЎПзвПлО Ма зПвМÑÑÐœÑ Ð¿Ð°ÐŒ\'ÑÑÑ</string>
+ <string name="restore_backup">ÐÑЎМПвОÑО ÑезеÑÐ²ÐœÑ ÐºÐŸÐ¿ÑÑ</string>
+ <string name="create_a_backup_first">СпеÑÑÑ ÑÑвПÑОÑО ÑезеÑÐ²ÐœÑ ÐºÐŸÐ¿ÑÑ</string>
+ <string name="name_can_t_be_empty">Ðазва Ме ЌПже бÑÑО пПÑПжМÑПÑ</string>
+ <string name="fields_can_t_be_empty">ÐÐŸÐ»Ñ ÐœÐµ ЌПжÑÑÑ Ð±ÑÑО пПÑПжМÑЌО</string>
+ <string name="start_tor_again_for_finish_the_process">ÐапÑÑÑÑÑÑ Tor Ð·ÐœÐŸÐ²Ñ ÐŽÐ»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐœÐœÑ Ð¿ÑПÑеÑÑ</string>
+ <string name="confirm_service_deletion">ÐÑÐŽÑвеÑÐŽÑÑе Ð²ÐžÐŽÐ°Ð»ÐµÐœÐœÑ ÑеÑвÑÑÑ</string>
+ <string name="click_again_for_backup">Ще Ñаз МаÑОÑМÑÑÑ ÑПбО кПпÑÑваÑО в ÑезеÑв</string>
+ <string name="service_type">ТОп ÑеÑвÑÑÑ</string>
+ <string name="auth_cookie">ÐвÑПÑОзаÑÑÑ Ñеп\'ÑÑкÑв </string>
+ <string name="copy_cookie_to_clipboard">ÐПпÑÑваÑО Ñеп\'ÑÑкО в бÑÑÐµÑ ÐŸÐ±ÐŒÑМÑ</string>
+ <string name="auth_cookie_was_not_configured">ÐвÑПÑОзаÑÑÑ Ñеп\'ÑÑкÑв Ме МалаÑÑПваМа</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">ÐÑÐŽÑ Ð»Ð°Ñка, пеÑезапÑÑÑÑÑÑ Orbot, ÑПб зЌÑМО ввÑйÑлО в ÑОлÑ</string>
+ <string name="client_cookies">ÐлÑÑМÑÑÑÐºÑ Ñеп\'ÑÑкО</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ÐеЎÑйÑМа .onion аЎÑеÑа</string>
+ <string name="cookie_from_QR">ÐÑОÑаÑО з QR-кПЎÑ</string>
+ <string name="backup_cookie">РезеÑвМе кПпÑÑÐ²Ð°ÐœÐœÑ Ñеп\'ÑÑкÑв</string>
+ <string name="delete_cookie">ÐОлÑÑОÑО Ñеп\'ÑÑкО</string>
+ <string name="confirm_cookie_deletion">ÐÑÐŽÑвеÑЎОÑО вОлÑÑÐµÐœÐœÑ Ñеп\'ÑÑкÑв</string>
+ <string name="hosted_services">РПзЌÑÑÐµÐœÑ Ð¡ÐµÑвÑÑО</string>
+ <string name="share_as_qr">ÐПЎÑлОÑОÑÑ Ñ Ð²ÐžÐŽÑ QR-кПЎÑ</string>
+ <string name="disable">ÐОЌкМÑÑО</string>
+ <string name="enable">УвÑЌкМÑÑО</string>
+ <string name="consider_disable_battery_optimizations">РПзглÑМÑÑО Ð²ÐžÐŒÐºÐœÐµÐœÐœÑ ÐŸÐ¿ÑОЌÑзаÑÑÑ Ð°ÐºÑÐŒÑлÑÑПÑа</string>
+ <string name="consider_enable_battery_optimizations">РПзглÑМÑÑО ÑвÑÐŒÐºÐœÐµÐœÐœÑ ÐŸÐ¿ÑОЌÑзаÑÑÑ Ð°ÐºÑÐŒÑлÑÑПÑа</string>
+ <string name="pref_isolate_dest">ÐзПлÑваÑО аЎÑеÑО пÑОзМаÑеММÑ</string>
+ <string name="pref_isolate_dest_summary">ÐОкПÑОÑÑаÑО ÑМакÑÑ ÑÑ
ÐµÐŒÑ ÐŽÐ»Ñ ÐºÐŸÐ¶ÐœÐŸÑ Ð°ÐŽÑеÑО пÑОзМаÑеММÑ</string>
+ <string name="no_transproxy_warning_short">ÐÐÐÐÐ ÐÐÐÐÐÐЯ: ТÑаМÑпÑПкÑÑМг бÑлÑÑе Ме пÑÐŽÑÑОЌÑÑÑÑÑÑ</string>
+ <string name="no_transproxy_warning">ÐÐÐÐÐ ÐÐÐÐÐÐЯ. ÐÑПзПÑОй пÑПкÑОМг Ме пÑÐŽÑÑОЌÑÑÑÑÑÑ. ÐаЌÑÑÑÑ ÑÑПгП вОкПÑОÑÑПвÑйÑе Orbot Apps VPN.</string>
+ <string name="pref_connection_padding_summary">ÐавжЎО забезпеÑÑÑ Ð·Ð°Ð¿ÐŸÐ²ÐœÐµÐœÐœÑ Ð¿ÑЎклÑÑÐµÐœÐœÑ ÐŽÐ»Ñ Ð·Ð°Ñ
ОÑÑÑ Ð²ÑÐŽ ЎеÑкОÑ
ÑПÑÐŒ аМалÑÐ·Ñ ÑÑаÑÑкÑ. Ðа заЌПвÑÑваММÑÐŒ: авÑПЌаÑОÑМП</string>
+ <string name="app_shortcuts">ÐаÑÑПÑÑМкО, ÑП пÑаÑÑÑÑÑ Ð· Tor</string>
+ <string name="testing_bridges">ТеÑÑÑÐ²Ð°ÐœÐœÑ ÐŒÐŸÑÑа з\'ÑÐŽÐœÐ°ÐœÐœÑ Ð· Tor....</string>
+ <string name="testing_bridges_success">УÑпÑÑМП. ÐПМÑÑгÑÑаÑÑÑ ÐŒÐŸÑÑÑ Ñ
ПÑПÑа!</string>
+ <string name="testing_bridges_fail">ÐÐ ÐÐÐÐÐСЯ. СпÑПбÑйÑе ÑМакÑОй ваÑÑаМÑ</string>
+ <string name="bridge_direct_connect">ÐÑÐŽ\'ÑÐŽÐœÐ°ÐœÐœÑ Ð±ÐµÐ·Ð¿ÐŸÑеÑеЎМÑП ЎП Tor (ÐайкÑаÑе)</string>
+ <string name="bridge_community">ÐÑÐŽ\'ÑÐŽÐœÐ°ÐœÐœÑ ÑеÑез ÑеÑвеÑО ÑпÑлÑМПÑО</string>
+ <string name="bridge_cloud">ÐÑÐŽ\'ÑÐŽÐœÐ°ÐœÐœÑ ÑеÑез Ñ
ЌаÑÐœÑ ÑеÑвеÑО</string>
+ <string name="bridges_get_new">ÐÐ°Ð¿ÐžÑ ÐœÐŸÐ²ÐžÑ
ЌПÑÑÑв... (ЯкÑП вÑе ÑМÑе Ме вЎаÑÑÑÑÑ)</string>
+ <string name="trouble_connecting">ÐÑПблеЌО з пÑÐŽ\'ÑЎМаММÑÐŒ?</string>
+ <string name="full_device_vpn">ЊÑлкПЌ VPN-пÑОÑÑÑÑй</string>
+ <string name="vpn_disabled">VPN ÐОЌкМеМа</string>
+</resources>
diff --git a/app-mini/src/main/res/values-ur/strings.xml b/app-mini/src/main/res/values-ur/strings.xml
new file mode 100644
index 00000000..17c15bd2
--- /dev/null
+++ b/app-mini/src/main/res/values-ur/strings.xml
@@ -0,0 +1,22 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">آرؚÙÙ¹</string>
+ <string name="app_description">آرؚÙÙ¹ اÛÚ© Ù
ÙØª ÙŸØ±Ø§Ú©Ø³Û Ø§ÛÙŸ ÚŸÛ Ø¬Ù Ú©Û Ø¯ÙØ³Ø±Û اÛٟس Ú©Ù Ø²ÛØ§Ø¯Û Ù
ØÙÙØž طرÛÙÛ Ø³Û Ø§ÙٹرÙÛÙ¹ استعÙ
ا٠کرÙÛ Ú©Ø§ ØÙ Ø¯ÛØªÛ ÚŸÛ.آرؚاٹ آٟ Ú©Û Ø§ÙٹرÙÛÙ¹ ٹرÛÙÚ© Ú©Ù ÛÙکرÛٟٹ کرÙÛ Ú©ÛÙØŠÛ ٹار کا استعÙ
Ø§Ù Ú©Ø±ØªÛ ÚŸÛ Ø§ÙØ± Ø§Ø³Û ÙŸÙØ±Û دÙÛØ§ Ú©Û Ú©Ù
ÙŸÛÙٹرز Ú©Û Ø³ÛØ±Ûز Ù
ÛÚº Ø³Û Ø§ÚÚŸØ§ÙØªÛ ÛÙÛ Ø¯ÙØ³Ø±ÙÚº Ø³Û Ù
ØÙÙØž Ø±Ú©ÚŸØªÛ ÚŸÛ.ٹار اÛÚ© Ù
ÙØª ساÙÙ¹ÙÛØ± Ø§ÙØ± اÛÚ© آزاد Ù
صدر ÙÛÙ¹ ÙØ±Ú© ÚŸÛ Ø¬Ù Ú©Û Ø¢ÙŸ ک٠اÛÚ© Ø·Ø±Ø Ú©Û ÙÛÙ¹ ÙØ±Ú© Ú©Û ÙگراÙÛ Ø³Û ØšÚØ§Ø€ Ú©ÛÙØŠÛ Ù
دد Ø¯ÛØªØ§ ÚŸÛ Ø¬Ø³ سÛÚ©Û Ø°Ø§ØªÛ Ø¢Ø²Ø§Ø¯Û, ÙØ¬Û Ù
عÙÙÙ
ات, رازداراÙÛ Ú©Ø§Ø±ÙØšØ§Ø±Û سرگرÙ
ÛØ§Úº, Ø±ØŽØªÛ Ø¯Ø§Ø±Û Ø§ÙØ± Ø±ÛØ§Ø³ØªÛ Ø³ÙØ§Ù
ØªÛ Ø¬Ù Ú©Û ÙÛÙ¹ÙØ±Ú© ٹرÛÙÚ© کا تجزÛÛ Ú©ÛÙØ§ØªØ§ ÚŸÛ,Ú©Ù ÙÙØµØ§Ù ÙŸÛÙÚ Ø³Ú©ØªØ§ ÚŸÛ.</string>
+ <string name="menu_start">ØŽØ±ÙØ¹ کر؊ÛÚº</string>
+ <string name="menu_about">Ú©Û ØšØ§Ø±Û Ù
ÛÚº</string>
+ <string name="button_about">Ú©Û ØšØ§Ø±Û Ù
ÛÚº</string>
+ <string name="btn_cancel">ØªÙØ³ÛØ® Ú©ÛØ¬ÛÛ</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">عاÙ
</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="error">ØºÙØ·Û</string>
+ <string name="set_locale_title">زؚاÙ</string>
+ <string name="save">Ù
ØÙÙØž کرÛÚº</string>
+ <string name="name">Name</string>
+</resources>
diff --git a/app-mini/src/main/res/values-uz/strings.xml b/app-mini/src/main/res/values-uz/strings.xml
new file mode 100644
index 00000000..470ee983
--- /dev/null
+++ b/app-mini/src/main/res/values-uz/strings.xml
@@ -0,0 +1,33 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="status_starting_up">Orbot ishga tushirilmoqdaâŠ</string>
+ <string name="status_activated">Tor tarmog\'iga ulangan</string>
+ <string name="menu_settings">Moslamalar</string>
+ <string name="menu_stop">Toâxtatish</string>
+ <string name="menu_about">Dastur haqida</string>
+ <string name="main_layout_download">Yuklab olish</string>
+ <string name="main_layout_upload">Yuklash</string>
+ <string name="button_about">Dasur haqida</string>
+ <string name="menu_exit">Chiqish</string>
+ <string name="btn_cancel">Bekor qilish</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Umumiy</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_proxy_type_dialog">Proksi turini kiriting</string>
+ <string name="pref_proxy_password_summary">Proksi maxfiy so\'zi (Qo\'shimcha)</string>
+ <string name="pref_proxy_password_dialog">Proksi maxfiy so\'zini kiriting</string>
+ <string name="error">Xato</string>
+ <string name="found_existing_tor_process">Mavjud bo\'lgan Tor jarayoni topildi...</string>
+ <string name="set_locale_title">Til</string>
+ <string name="get_bridges_email">E-pochta manzili</string>
+ <string name="send_email">Email jo\'natish</string>
+ <string name="save">Saqlash</string>
+ <string name="name">Ism</string>
+</resources>
diff --git a/app-mini/src/main/res/values-v21/styles.xml b/app-mini/src/main/res/values-v21/styles.xml
new file mode 100644
index 00000000..7abc06d3
--- /dev/null
+++ b/app-mini/src/main/res/values-v21/styles.xml
@@ -0,0 +1 @@
+<resources></resources>
diff --git a/app-mini/src/main/res/values-vi/strings.xml b/app-mini/src/main/res/values-vi/strings.xml
new file mode 100644
index 00000000..d6945b59
--- /dev/null
+++ b/app-mini/src/main/res/values-vi/strings.xml
@@ -0,0 +1,142 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot là má»t ứng dụng proxy miá»
n phÃ, ÄÆ°á»£c thiết kế Äá» là m cho các ứng dụng khác kết ná»i vá»i Internet má»t cách an toà n. Orbot sá» dụng Tor Äá» mã hóa các kết ná»i Internet rá»i ẩn danh nó thÃŽng qua má»t loạt các nút trong mạng Tor. Tor là phần má»m miá»
n phà và là má»t mạng lưá»i má» giúp bạn chá»ng lại sá»± giám sát mạng, vá»n Äe dá»a riêng tư trá»±c tuyến, hay các hoạt Äá»ng bà máºt...</string>
+ <string name="status_starting_up">Ortbot Äang khá»i Äá»ng...</string>
+ <string name="status_activated">Äã kết ná»i vá»i mạng Tor</string>
+ <string name="status_disabled">Orbot Äã ÄÆ°á»£c vÃŽ hiá»u hóa</string>
+ <string name="status_shutting_down">Äang tắt dá»ch vụ Tor</string>
+ <string name="tor_process_starting">Bắt Äầu Tor</string>
+ <string name="tor_process_complete">hoà n thà nh.</string>
+ <string name="menu_settings">Thiết láºp</string>
+ <string name="menu_log">Nháºt kÜ</string>
+ <string name="menu_start">Bắt Äầu</string>
+ <string name="menu_stop">Ngừng</string>
+ <string name="menu_about">Vá»</string>
+ <string name="main_layout_download">Tải vá»</string>
+ <string name="main_layout_upload">Tải lên</string>
+ <string name="button_about">Giá»i thiá»u</string>
+ <string name="menu_exit">Thoát</string>
+ <string name="menu_scan">Quét mã BridgeQR</string>
+ <string name="menu_share_bridge">Xuất mã BridgeQR</string>
+ <string name="btn_okay">Äá»ng Ü</string>
+ <string name="btn_cancel">Há»§y</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Và i chi tiết vỠOrbot</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">Tá»ng quát</string>
+ <string name="pref_start_boot_title">Chạy Orbot khi khá»i Äá»ng thiết bá»</string>
+ <string name="pref_start_boot_summary">Tá»± khá»i Äá»ng Orbot và kết ná»i và o mạng Tor sau khi thiết bá» Android cá»§a bạn khá»i Äá»ng</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Cấu hình nút</string>
+ <string name="pref_node_configuration_summary">Những cà i Äặt nâng cao nà y có thá» giảm sá»± ẩn danh cá»§a bạn</string>
+ <string name="pref_entrance_node">Nút và o (Entrace Nodes)</string>
+ <string name="pref_entrance_node_summary">Dấu theo dõi (Fingerprint), biá»t hiá»u, quá»c gia và Äá»a chá» cho nút Äầu tiên</string>
+ <string name="pref_entrance_node_dialog">Nháºp thÃŽng tin nút và o</string>
+ <string name="pref_allow_background_starts_title">Cho phép khá»i Äá»ng ngầm</string>
+ <string name="pref_allow_background_starts_summary">Cho phép ứng dụng bất kỳ yêu cầu Orbot khá»i Äá»ng Tor và các dá»ch vụ liên quan</string>
+ <string name="pref_proxy_title">Proxy mạng ngõ ra (Outbound Network) (Tùy chá»n)</string>
+ <string name="pref_proxy_type_title">Loại proxy ngõ ra</string>
+ <string name="pref_proxy_type_summary">Giao thức dùng cho proxy: HTTP, HTTPS, SOCKS4, SOCKS5</string>
+ <string name="pref_proxy_type_dialog">Nháºp loại proxy</string>
+ <string name="pref_proxy_host_title">Host proxy ngõ ra</string>
+ <string name="pref_proxy_host_summary">Hostname cá»§a proxy</string>
+ <string name="pref_proxy_host_dialog">Nháºp host cá»§a proxy</string>
+ <string name="pref_proxy_port_title">Cá»ng Proxy ngõ ra</string>
+ <string name="pref_proxy_port_summary">Cá»ng cá»§a proxy</string>
+ <string name="pref_proxy_port_dialog">Nháºp cá»ng Proxy</string>
+ <string name="pref_proxy_username_title">Tên tà i khoản proxy ngõ ra</string>
+ <string name="pref_proxy_username_summary">Tên tà i khoản proxy (tùy chá»n)</string>
+ <string name="pref_proxy_username_dialog">Nháºp tên tà i khoản proxy</string>
+ <string name="pref_proxy_password_title">Máºt khẩu Proxy ngõ ra</string>
+ <string name="pref_proxy_password_summary">Máºt khẩu proxy (tùy chá»n)</string>
+ <string name="pref_proxy_password_dialog">Nháºp máºt khẩu proxy</string>
+ <string name="couldn_t_start_tor_process_">KhÃŽng thá» khá»i Äá»ng tiến trình Tor:</string>
+ <string name="error">Lá»i</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Thiết láºp ReachableAddresses Äã gây ra má»t vấn Äá»! </string>
+ <string name="your_relay_settings_caused_an_exception_">Thiết láºp relay cá»§a bạn Äã gây ra má»t vấn Äá»!</string>
+ <string name="exit_nodes">Nút cuá»i (Exit Nodes)</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Dấu theo dõi, biá»t hiá»u, quá»c gia và Äá»a chá» cho nút cuá»i cùng</string>
+ <string name="enter_exit_nodes">Nháºp thÃŽng tin nút cuá»i</string>
+ <string name="exclude_nodes">Loại trừ nút</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Dấu theo dõi, biá»t hiá»u, quá»c gia và Äá»a chá» Äá» loại trừ</string>
+ <string name="enter_exclude_nodes">Nháºp và o những nút Äá» loại trừ</string>
+ <string name="strict_nodes">Nút chá» Äá»nh</string>
+ <string name="use_only_these_specified_nodes">*Chá»* dùng những nút ÄÆ°á»£c liá»t kê</string>
+ <string name="bridges">Bridge</string>
+ <string name="use_bridges">Dùng bridge</string>
+ <string name="ip_address_and_port_of_bridges">Äá»a chá» IP và cá»ng cá»§a bridge</string>
+ <string name="enter_bridge_addresses">Nháºp Äá»a chá» bridge</string>
+ <string name="relays">Relay</string>
+ <string name="relaying">Chức nÄng relay</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Cho phép thiết bá» bạn trá» thà nh má»t nút relay (khÃŽng phải nút cuá»i)</string>
+ <string name="relay_port">Cá»ng cho relay</string>
+ <string name="listening_port_for_your_tor_relay">Cá»ng tiếp nháºn cho viá»c relay</string>
+ <string name="enter_or_port">Nháºp cá»ng OR</string>
+ <string name="relay_nickname">Biá»t hiá»u nút relay</string>
+ <string name="the_nickname_for_your_tor_relay">Biá»t hiá»u cho nút Tor-relay cá»§a bạn</string>
+ <string name="enter_a_custom_relay_nickname">Nháºp biá»t hiá»u tuỳ Ü</string>
+ <string name="reachable_addresses">Äá»a chá» truy cáºp ÄÆ°á»£c (Reachable Addresses)</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Chạy như má»t máy con (client) Äằng sau tưá»ng lá»a vá»i các thiết láºp thu hẹp</string>
+ <string name="reachable_ports">Cá»ng truy cáºp ÄÆ°á»£c</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Cá»ng truy cáºp ÄÆ°á»£c Äằng sau tưá»ng lá»a</string>
+ <string name="enter_ports">Nháºp sá» cá»ng</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">KÃch hoạt nháºt kÜ gỡ lá»i á» Äầu ra (phải dùng adb hoặc aLogCat Äá» xem)</string>
+ <string name="project_home">Các trang chủ dự án:</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">Phần má»m bên thứ 3:</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">tìm ra tiến trình hiá»n hà nh cá»§a Tor...</string>
+ <string name="something_bad_happened">Có gì Äó khÃŽng á»n. Xin xem lại nháºt kÜ</string>
+ <string name="unable_to_read_hidden_service_name">khÃŽng thá» Äá»c ÄÆ°á»£c tên dá»ch vụ ẩn</string>
+ <string name="unable_to_start_tor">KhÃŽng thá» khá»i Äá»ng Tor ÄÆ°á»£c: </string>
+ <string name="pref_use_persistent_notifications">LuÃŽn giữ thÃŽng báo trong thanh trạng thái khi Orbot ÄÆ°á»£c kết ná»i</string>
+ <string name="pref_use_persistent_notifications_title">ThÃŽng báo thưá»ng trá»±c</string>
+ <string name="pref_use_expanded_notifications">Hiá»n thá» thÃŽng báo má» rá»ng vá»i IP và quá»c gia cá»§a nút cuá»i (Tor exit-node)</string>
+ <string name="pref_use_expanded_notifications_title">ThÃŽng báo má» rá»ng</string>
+ <string name="set_locale_title">NgÎn ngữ</string>
+ <string name="no_internet_connection_tor">KhÃŽng có kết ná»i Internet; Tor Äang á» chế Äá» chá»...</string>
+ <string name="pref_disable_network_title">Tá»± Äá»ng \"ngá»§\" khi khÃŽng có mạng</string>
+ <string name="pref_disable_network_summary">Chuyá»n Tor sang chế Äá» ngá»§ nếu khÃŽng có Internet</string>
+ <string name="newnym">Bạn Äã chuyá»n sang má»t mạch Tor má»i!</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">KhÃŽng có mạng. Äang chuyá»n Tor sang chế Äá» ngá»§...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Kết ná»i mạng tá»t. Äang \"Äánh thức\" Tor...</string>
+ <string name="updating_settings_in_tor_service">Äang cáºp nháºt cà i Äặt dá»ch vụ Tor</string>
+ <string name="pref_socks_title">Cá»ng SOCKS</string>
+ <string name="pref_socks_summary">Cá»ng Äá» Tor Äặt proxy SOCKS lên (mặc Äá»nh: 9050 hoặc 0 Äá» vÃŽ hiá»u hóa)</string>
+ <string name="pref_socks_dialog">Cấu hình cá»ng SOCKS</string>
+ <string name="pref_transport_title">Cá»ng proxy trong suá»t cá»§a Tor</string>
+ <string name="pref_transport_summary">Cá»ng Äá» Tor Äặt proxy trong suá»t lên (mặc Äá»nh: 9040 hoặc 0 Äá» vÃŽ hiá»u hóa)</string>
+ <string name="pref_transport_dialog">Cấu hình cá»ng proxy trong suá»t</string>
+ <string name="pref_dnsport_title">Cá»ng DNS Tor</string>
+ <string name="pref_dnsport_summary">Cá»ng Äá» Tor Äặt DNS cá»§a nó lên (mặc Äá»nh: 5400 hoặc 0 Äá» vÃŽ hiá»u hóa)</string>
+ <string name="pref_dnsport_dialog">Cấu hình cá»ng DNS</string>
+ <string name="pref_torrc_title">Cấu hình tùy chá»nh cho Torrc</string>
+ <string name="pref_torrc_summary">CHá» NGƯá»I DÃNG CHUYÃN MÃN: nháºp các thiết láºp trá»±c tiếp cho torrc</string>
+ <string name="pref_torrc_dialog">Torrc tùy chá»nh</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">Bridge ÄÆ°á»£c cáºp nháºt</string>
+ <string name="restart_orbot_to_use_this_bridge_">Vui lòng khá»i Äá»ng lại Orbot ÄỠáp dụng thay Äá»i</string>
+ <string name="menu_qr">Mã QR</string>
+ <string name="bridge_mode">Chế Äá» bridge</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">KÃch hoạt</string>
+ <string name="send_email">Gá»i email</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">Bạn có thá» lấy má»t Äá»a chá» bridge qua email, web hoặc quét mã QR. Chá»n \"Email\" hoặc \"Web\" bên dưá»i Äá» yêu cầu má»t Äá»a chá» bridge.\n\nMá»t khi Äã có Äá»a chá», hãy sao chép nó và o thiết Äặt \"Bridge\" trong cà i Äặt Orbot rá»i khá»i Äá»ng lại phần má»m.</string>
+ <string name="save">Lưu</string>
+ <string name="name">Tên</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Vui lòng khá»i Äá»ng lại Orbot ÄỠáp dụng thay Äá»i</string>
+ <string name="disable">Tắt</string>
+ <string name="enable">Cho phép</string>
+</resources>
diff --git a/app-mini/src/main/res/values-w820dp/dimens.xml b/app-mini/src/main/res/values-w820dp/dimens.xml
new file mode 100644
index 00000000..63fc8164
--- /dev/null
+++ b/app-mini/src/main/res/values-w820dp/dimens.xml
@@ -0,0 +1,6 @@
+<resources>
+ <!-- Example customization of dimensions originally defined in res/values/dimens.xml
+ (such as screen margins) for screens with more than 820dp of available width. This
+ would include 7" and 10" devices in landscape (~960dp and ~1280dp respectively). -->
+ <dimen name="activity_horizontal_margin">64dp</dimen>
+</resources>
diff --git a/app-mini/src/main/res/values-zh-rCN/strings.xml b/app-mini/src/main/res/values-zh-rCN/strings.xml
new file mode 100644
index 00000000..33fb0153
--- /dev/null
+++ b/app-mini/src/main/res/values-zh-rCN/strings.xml
@@ -0,0 +1,142 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot æ¯äžæ¬Ÿå
莹ç代çåºçšïŒèœå€è®©å
¶ä»åºçšæŽå®å
šå°äœ¿çšäºèçœãéè¿åšäœäºäžçåå°çäžç³»åè®¡ç®æºä¹éŽè¿è¡è·³èœ¬ïŒOrbot å¯å©çš Tor 对çœç»éä¿¡è¿è¡å å¯å¹¶éèãTor æ¯äžæ¬Ÿå
莹ç蜯件ïŒå¹¶äžæ¯äžäžªåŒæŸççœç»ãå®å¯ä»¥ä¿æ€çšæ·å
åæµéåæçå±å®³ïŒè¿ç§çœç»çæ§å¯å¯¹äžªäººèªç±äžéç§ãåäžæºå¯æŽ»åšåå
³ç³»ä»¥ååœå®¶å®å
šé æåšèã</string>
+ <string name="status_starting_up">Orbot æ£åšå¯åš...</string>
+ <string name="status_activated">å·²è¿æ¥å° Tor çœç»</string>
+ <string name="status_disabled">Orbot å·²åçš</string>
+ <string name="status_shutting_down">Toræå¡ æ£åšå
³é</string>
+ <string name="tor_process_starting">æ£åšå¯åš Tor 客æ·ç«¯...</string>
+ <string name="tor_process_complete">宿ã</string>
+ <string name="menu_settings">讟眮</string>
+ <string name="menu_log">æ¥å¿</string>
+ <string name="menu_start">å¯åš</string>
+ <string name="menu_stop">忢</string>
+ <string name="menu_about">å
³äº</string>
+ <string name="main_layout_download">äžèœœ</string>
+ <string name="main_layout_upload">äžäŒ </string>
+ <string name="button_about">å
³äº</string>
+ <string name="menu_exit">éåº</string>
+ <string name="menu_scan">æ«æçœæ¡¥QRç </string>
+ <string name="menu_share_bridge">åäº«çœæ¡¥QRç </string>
+ <string name="btn_okay">ç¡®å®</string>
+ <string name="btn_cancel">åæ¶</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">æŽå€ Orbot ä¿¡æ¯</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">åžžè§</string>
+ <string name="pref_start_boot_title">åŒæºæ¶å¯åš Orbot</string>
+ <string name="pref_start_boot_summary">Android 讟å€åŒæºæ¶èªåšå¯åš Orbot å¹¶è¿æ¥ Tor çœç»</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">èç¹é
眮</string>
+ <string name="pref_node_configuration_summary">è¿äºé«çº§è®Ÿçœ®å¯éäœäœ çå¿å床</string>
+ <string name="pref_entrance_node">å
¥å£èç¹</string>
+ <string name="pref_entrance_node_summary">çšäºéŠæ¬¡è·³èœ¬çå¯é¥æçº¹ãæµç§°ãåœå®¶äžå°å</string>
+ <string name="pref_entrance_node_dialog">èŸå
¥å
¥å£èç¹</string>
+ <string name="pref_allow_background_starts_title">å
讞åå°å¯åš</string>
+ <string name="pref_allow_background_starts_summary">å
讞任äœåºçšåç¥ Orbot å¯åš Tor åçžå
³æå¡</string>
+ <string name="pref_proxy_title">åºç«çœç»ä»£çïŒå¯éïŒ</string>
+ <string name="pref_proxy_type_title">åºç«ä»£çç±»å</string>
+ <string name="pref_proxy_type_summary">代çæå¡åšäœ¿çšçåè®®ïŒHTTPãHTTPSãSocks4ãSocks5</string>
+ <string name="pref_proxy_type_dialog">èŸå
¥ä»£çç±»å</string>
+ <string name="pref_proxy_host_title">åºç«ä»£çäž»æº</string>
+ <string name="pref_proxy_host_summary">代çæå¡åšäž»æºå</string>
+ <string name="pref_proxy_host_dialog">èŸå
¥ä»£çäž»æº</string>
+ <string name="pref_proxy_port_title">åºç«ä»£ç端å£</string>
+ <string name="pref_proxy_port_summary">代çæå¡åšç«¯å£</string>
+ <string name="pref_proxy_port_dialog">èŸå
¥ä»£ç端å£</string>
+ <string name="pref_proxy_username_title">åºç«ä»£ççšæ·å</string>
+ <string name="pref_proxy_username_summary">代ççšæ·åïŒå¯éïŒ</string>
+ <string name="pref_proxy_username_dialog">请èŸå
¥ä»£ççšæ·å</string>
+ <string name="pref_proxy_password_title">åºç«ä»£çå¯ç </string>
+ <string name="pref_proxy_password_summary">代çå¯ç ïŒå¯éïŒ</string>
+ <string name="pref_proxy_password_dialog">请èŸå
¥ä»£çå¯ç </string>
+ <string name="couldn_t_start_tor_process_">æ æ³å¯åš Tor è¿çšïŒ</string>
+ <string name="error">é误</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">å¯è®¿é®å°å讟眮富èŽåŒåžžïŒ</string>
+ <string name="your_relay_settings_caused_an_exception_">äžç»§è®Ÿçœ®å¯ŒèŽåŒåžžïŒ</string>
+ <string name="exit_nodes">åºå£èç¹</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">æå跳蜬çå¯é¥æçº¹ãæµç§°ãåœå®¶äžå°å</string>
+ <string name="enter_exit_nodes">èŸå
¥åºå£èç¹</string>
+ <string name="exclude_nodes">æé€èç¹</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">æé€çå¯é¥æçº¹ãæµç§°ãåœå®¶äžå°å</string>
+ <string name="enter_exclude_nodes">èŸå
¥æé€èç¹</string>
+ <string name="strict_nodes">éå¶èç¹</string>
+ <string name="use_only_these_specified_nodes">ä»
䜿çšè¿äºæå®èç¹</string>
+ <string name="bridges">çœæ¡¥</string>
+ <string name="use_bridges">䜿çšçœæ¡¥</string>
+ <string name="ip_address_and_port_of_bridges">çœæ¡¥ç IP å°åå端å£</string>
+ <string name="enter_bridge_addresses">èŸå
¥çœæ¡¥å°å</string>
+ <string name="relays">äžç»§</string>
+ <string name="relaying">äžç»§èœ¬å</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">ä»
讟眮被讟眮䞺éåºå£äžç»§</string>
+ <string name="relay_port">äžç»§ç«¯å£</string>
+ <string name="listening_port_for_your_tor_relay">Tor äžç»§ç䟊å¬ç«¯å£</string>
+ <string name="enter_or_port">èŸå
¥ OR 端å£</string>
+ <string name="relay_nickname">äžç»§æµç§°</string>
+ <string name="the_nickname_for_your_tor_relay">Tor äžç»§æµç§°</string>
+ <string name="enter_a_custom_relay_nickname">èŸå
¥èªå®ä¹äžç»§æµç§°</string>
+ <string name="reachable_addresses">å¯è®¿é®å°å</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">åšå
·æéå¶çç¥é²ç«å¢å
ïŒäœäžºå®¢æ·ç«¯è¿è¡</string>
+ <string name="reachable_ports">å¯è®¿é®ç«¯å£</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">é²ç«å¢éå®çå¯è®¿é®ç«¯å£</string>
+ <string name="enter_ports">èŸå
¥ç«¯å£</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">å¯çšè°è¯æ¥å¿èŸåºïŒå¿
é¡»äœ¿çš adb æ aLongCat æ¥çïŒ</string>
+ <string name="project_home">项ç®äž»é¡µ(s)ïŒ</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ç¬¬äžæ¹èœ¯ä»¶ïŒ</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="found_existing_tor_process">åç°åœåå·²ååš Tor è¿çš...</string>
+ <string name="something_bad_happened">åçé误ïŒè¯·æ£æ¥æ¥å¿</string>
+ <string name="unable_to_read_hidden_service_name">æ æ³è¯»åéèæå¡åç§°</string>
+ <string name="unable_to_start_tor">æ æ³å¯åš TorïŒ</string>
+ <string name="pref_use_persistent_notifications">Orbot è¿æ¥åå§ç»åšéç¥æ æŸç€ºåŸæ </string>
+ <string name="pref_use_persistent_notifications_title">å§ç»æŸç€ºéç¥</string>
+ <string name="pref_use_expanded_notifications">æŸç€ºæ©å±çéç¥ïŒæå
³ Tor åºå£çåœå®¶å IP</string>
+ <string name="pref_use_expanded_notifications_title">æ©å±çéç¥</string>
+ <string name="set_locale_title">è¯èš</string>
+ <string name="no_internet_connection_tor">没æäºèçœè¿æ¥ïŒTor å€äºåŸ
æºç¶æâŠ</string>
+ <string name="pref_disable_network_title">æ çœç»èªåšäŒç </string>
+ <string name="pref_disable_network_summary">没æçœç»è¿æ¥æ¶ïŒææ¶åçš Tor</string>
+ <string name="newnym">å·²åæ¢äžºæ°ç Tor æ è¯ïŒ</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">没æçœç»è¿æ¥ïŒè®© Tor è¿å
¥ç¡ç âŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">çœç»è¿æ¥è¯å¥œãæ£åšå€é Tor...</string>
+ <string name="updating_settings_in_tor_service">æ£åšæŽæ° Tor æå¡äžç讟眮</string>
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Tor æäŸå
¶ SOCKS 代ççç«¯å£ (é»è®€: 9050, 0 çŠçš)</string>
+ <string name="pref_socks_dialog">SOCKS 端å£é
眮</string>
+ <string name="pref_transport_title">Tor éæä»£ç端å£</string>
+ <string name="pref_transport_summary">Tor æäŸéæä»£ççç«¯å£ (é»è®€: 9040, 0 çŠçš)</string>
+ <string name="pref_transport_dialog">éæä»£çé
眮</string>
+ <string name="pref_dnsport_title">Tor DNS 端å£</string>
+ <string name="pref_dnsport_summary">Tor æäŸ DNS çç«¯å£ (é»è®€: 5400, 0 çŠçš)</string>
+ <string name="pref_dnsport_dialog">DNS 端å£é
眮</string>
+ <string name="pref_torrc_title">Torrc èªå®ä¹é
眮</string>
+ <string name="pref_torrc_summary">ä»
äŸäžå®¶ïŒçŽæ¥èŸå
¥ torrc é
眮è¡</string>
+ <string name="pref_torrc_dialog">èªå®ä¹ Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">çœæ¡¥å·²æŽæ°</string>
+ <string name="restart_orbot_to_use_this_bridge_">请éå¯ Orbot ä»¥äœ¿åæŽçæ</string>
+ <string name="menu_qr">QRç </string>
+ <string name="bridge_mode">çœæ¡¥æš¡åŒ</string>
+ <string name="get_bridges_email">çµåé®ä»¶</string>
+ <string name="get_bridges_web">çœé¡µ</string>
+ <string name="activate">æ¿æŽ»</string>
+ <string name="apps_mode">VPN æš¡åŒ</string>
+ <string name="send_email">åéçµåé®ä»¶</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">æšå¯ä»¥éè¿çµåé®ä»¶ãçœé¡µææ«æçœæ¡¥QRç æ¥è·åçœæ¡¥å°åãç¹å»äžæ¹çâçµåé®ä»¶âæâçœé¡µâæé®æ¥è·åçœæ¡¥å°åã
+åœæšè·åå°çœæ¡¥å°ååïŒè¯·å°å
¶å€å¶å¹¶ç²èŽŽå°Orbot讟眮äžçâçœæ¡¥âäžé¡¹å¹¶éæ°å¯åš</string>
+ <string name="save">ä¿å</string>
+ <string name="name">åç§°</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">请éå¯ Orbot ä»¥äœ¿åæŽçæ</string>
+</resources>
diff --git a/app-mini/src/main/res/values-zh-rTW/poestrings.xml b/app-mini/src/main/res/values-zh-rTW/poestrings.xml
new file mode 100644
index 00000000..9c6d07da
--- /dev/null
+++ b/app-mini/src/main/res/values-zh-rTW/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">ææéèŠééæ©æ¥åšäŸååŸ Tor</string>
+ <string name="action_more">é²äžæ¥èªªæ</string>
+
+ <string name="vpn_setup">å¯å©çšå
§å»ºç VPN ååæçšçšåŒèµ° Tor 網路</string>
+ <string name="vpn_setup_sub">å®ç¡æ³è®çšæ¶å¿åïŒäœæå©æŒééé²ç«ç</string>
+ <string name="action_vpn_choose">éžææçš</string>
+
+ <string name="hello">åå</string>
+ <string name="welcome">æ¡è¿äœ¿çšææ©äžç Tor</string>
+
+ <string name="browser_the_internet">åŠäœ æé¡å°èªç±ç芜網é網路</string>
+ <string name="no_tracking">ç¡è¿œèžªïŒç¡å¯©æ¥</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values-zh-rTW/strings.xml b/app-mini/src/main/res/values-zh-rTW/strings.xml
new file mode 100644
index 00000000..7d39bccf
--- /dev/null
+++ b/app-mini/src/main/res/values-zh-rTW/strings.xml
@@ -0,0 +1,207 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+ <string name="app_name">Orbot</string>
+ <string name="app_description">Orbot æ¯äžæ¬Ÿå
è²»ç網絡代çæçšçšåŒïŒçšäŸä¿è·å
¶ä»æçšçšåŒçäžç¶²å®å
šãOrbot äœ¿çš Tor åšå
šçäžç³»åçé»è
Šéè·³èºïŒéå°å å¯äžŠé±è網路æµéãTor æ¯åèªç±è»é«ä¹æ¯åéæŸç¶²è·¯ïŒèœå¹«æšæµçŠŠæµéåæéçš®ç¶²è·¯ç£æ§æš¡åŒïŒå®åšè
å°å人çèªç±èé±ç§ã忥æ©å¯æŽ»åèååéä¿ãçè³åšè
åå®¶å®å
šã</string>
+ <string name="status_starting_up">Orbot æ£åšååäž...</string>
+ <string name="status_activated">å·²é£ç·è³ Tor 網路</string>
+ <string name="status_disabled">Orbot å·²åçš</string>
+ <string name="status_shutting_down">Toræå æ£åšéé</string>
+ <string name="tor_process_starting">ååTor çšæ¶ç«¯...</string>
+ <string name="tor_process_complete">宿ã</string>
+ <string name="menu_settings">èšå®</string>
+ <string name="menu_log">èšéæª</string>
+ <string name="menu_start">éå§</string>
+ <string name="menu_stop">忢</string>
+ <string name="menu_about">éæŒ</string>
+ <string name="main_layout_download">äžèŒ</string>
+ <string name="main_layout_upload">äžå³</string>
+ <string name="button_about">éæŒ</string>
+ <string name="menu_exit">é¢é</string>
+ <string name="menu_scan">ææç¶²æ© QR 碌</string>
+ <string name="menu_share_bridge">åäº«ç¶²æ© QR 碌</string>
+ <string name="btn_okay">確å®</string>
+ <string name="btn_cancel">åæ¶</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Orbot çäžäºè©³çŽ°è³æ</string>
+ <string name="wizard_details_msg">Orbot æ¯äžæ¬Ÿéæºæçš,å
¶å
å« Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent è Polipo.宿äŸäºæ¬å°ç HTTP 代ç (8118) è SOCKS 代ç (9050) å° Tor 網路äž. Orbot 乿èœåå¯åšååŸæé«æ¬éçèšåäžäŸå©çš Tor å³éäºè¯ç¶²æµé</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">äžè¬</string>
+ <string name="pref_start_boot_title">éæ©æèªååå Orbot</string>
+ <string name="pref_start_boot_summary">ç¶äœ ç Android è£çœ®éæ©æèªåéå Orbot äžŠé£æ¥ Tor 網路</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">ç¯é»èšå®</string>
+ <string name="pref_node_configuration_summary">éäºé²éèšå®å¯èœæžæäœ çå¿åæ§</string>
+ <string name="pref_entrance_node">å
¥å£ç¯é»</string>
+ <string name="pref_entrance_node_summary">第äžåè·³æ¿çæçŽïŒæ±çš±ïŒåå®¶åå°å</string>
+ <string name="pref_entrance_node_dialog">å
¥å£ç¯é»çæ¢ä»¶</string>
+ <string name="pref_allow_background_starts_title">å
èš±åšèæ¯åå</string>
+ <string name="pref_allow_background_starts_summary">å
èš±ä»»äœæçšçšåŒå蚎 Orbot åå Tor åçžéæå</string>
+ <string name="pref_proxy_title">å°å€ç¶²è·¯ç代ç䌺æåš (å¯äžèš)</string>
+ <string name="pref_proxy_type_title">å°å€ç¶²è·¯ç代ç䌺æåšé¡å</string>
+ <string name="pref_proxy_type_summary">代ç䌺æåšäœ¿çšçåè°ïŒHTTP, HTTPS, Socks4, Socks5</string>
+ <string name="pref_proxy_type_dialog">åŸå
§æµéç代ç䌺æåšé¡å</string>
+ <string name="pref_proxy_host_title">å°å€ç¶²è·¯ç代ç䌺æåš</string>
+ <string name="pref_proxy_host_summary">代ç䌺æåšçäž»æ©åçš±</string>
+ <string name="pref_proxy_host_dialog">åŸå
§æµéç代ç䌺æåš</string>
+ <string name="pref_proxy_port_title">å°å€ç¶²è·¯ç代ç䌺æåšé£æ¥å </string>
+ <string name="pref_proxy_port_summary">代ç䌺æåšçéèšå </string>
+ <string name="pref_proxy_port_dialog">åŸå
§æµé代ç䌺æåšçéèšå </string>
+ <string name="pref_proxy_username_title">å°å€ç¶²è·¯ç代ç䌺æåšåž³è</string>
+ <string name="pref_proxy_username_summary">䌺æåšç䜿çšè
åž³èïŒåŠææïŒ</string>
+ <string name="pref_proxy_username_dialog">åŸå
§æµé代ç䌺æåšç䜿çšè
åž³è</string>
+ <string name="pref_proxy_password_title">å°å€ç¶²è·¯ç代ç䌺æåšå¯ç¢Œ</string>
+ <string name="pref_proxy_password_summary">代ç䌺æåšçå¯ç¢ŒïŒåŠææïŒ</string>
+ <string name="pref_proxy_password_dialog">åŸå
§æµéç代ç䌺æåšå¯ç¢Œ</string>
+ <string name="couldn_t_start_tor_process_">ç¡æ³åå Tor çšåº</string>
+ <string name="error">é¯èª€</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">æšçå¯ååäœåèšå®åŒçŒé¯èª€ïŒ</string>
+ <string name="your_relay_settings_caused_an_exception_">æšçäžç¹Œèšå®åºçŸé¯èª€ïŒ</string>
+ <string name="exit_nodes">åºå£ç¯é»</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">æåŸäžåç¯é»çæçŽãæ±çš±ãåå®¶æäœå</string>
+ <string name="enter_exit_nodes">åºå£ç¯é»çæ¢ä»¶</string>
+ <string name="exclude_nodes">æé€ç¯é»</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">æé€ç¯é»çæçŽãæ±çš±ãåå®¶æäœå</string>
+ <string name="enter_exclude_nodes">æé€ç¯é»çæ¢ä»¶</string>
+ <string name="strict_nodes">åŽæ Œéå¶ç¯é»</string>
+ <string name="use_only_these_specified_nodes">åªïœ£äœ¿çšéäºç¯é»</string>
+ <string name="bridges">ç¶²æ©ïŒBridgesïŒ</string>
+ <string name="use_bridges">䜿çšç¶²æ©</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">ååæ¿ä»£çå
¥å£äŸé²å
¥ Tor 網路</string>
+ <string name="ip_address_and_port_of_bridges">ç¶²æ©ç IP äœåè飿¥å </string>
+ <string name="enter_bridge_addresses">茞å
¥ç¶²æ©äœå</string>
+ <string name="relays">äžç¹ŒïŒRelaysïŒ</string>
+ <string name="relaying">äžç¹Œèšå®</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">åçšæšçè£çœ®æçº Tor 網路çäžç¹Œç¯é»ïŒéåºå£ç¯é»ïŒ</string>
+ <string name="relay_port">äžç¹Œé£æ¥å </string>
+ <string name="listening_port_for_your_tor_relay">æšç Tor äžç¹Œåèœé£æ¥å </string>
+ <string name="enter_or_port">飿¥å </string>
+ <string name="relay_nickname">äžç¹Œç¯é»æ±çš±</string>
+ <string name="the_nickname_for_your_tor_relay">絊æšç Tor äžç¹Œç¯é»äžåæ±çš±</string>
+ <string name="enter_a_custom_relay_nickname">茞å
¥æšèªèšçäžç¹Œç¯é»æ±çš±</string>
+ <string name="reachable_addresses">å¯çšäœååé</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">æšçè£çœ®äœæŒé²ç«çåŸïŒååç¯ååå°éå¶</string>
+ <string name="reachable_ports">å¯ååç飿¥å </string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">é²ç«ç容蚱ååç飿¥å </string>
+ <string name="enter_ports">茞å
¥å </string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">åçšé€é¯æ¥äžŠèŒžåº (å¿
é äœ¿çš adb æ aLogCat äŸæª¢èŠ)</string>
+ <string name="project_home">å°æ¡éŠé ïŒ</string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">ç¬¬äžæ¹è»é«ïŒ</string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent v2.0.21: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo v1.1.9: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy v0.0.8: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL v1.0.2j: http://www.openssl.org</string>
+ <string name="hidden_service_request">æäžåæçšèŠéåé±èç䌺æåšç«¯å£ %1$s å° Tor 網路,åŠæä¿¡åŸéæ€æçšæé²è¡æ€æäœ</string>
+ <string name="found_existing_tor_process">çŒçŸå·²æ Tor çšåºéè¡äž ...</string>
+ <string name="something_bad_happened">çŒçé¯èª€ãæª¢èŠæ¥èªæª</string>
+ <string name="unable_to_read_hidden_service_name">ç¡æ³è®åé±èæåçåçš±</string>
+ <string name="unable_to_start_tor">ç¡æ³åå TorïŒ</string>
+ <string name="pref_use_persistent_notifications">ç¶ Orbot é£ç·æåæïŒçžœæ¯åšå·¥å
·å顯瀺å®çå瀺</string>
+ <string name="pref_use_persistent_notifications_title">çžœæ¯é¡¯ç€ºé£ç·éç¥</string>
+ <string name="pref_use_expanded_notifications">åšéç¥äžé¡¯ç€º Tor åºå£é»çåå®¶å IP</string>
+ <string name="pref_use_expanded_notifications_title">詳现çéç¥</string>
+ <string name="set_locale_title">èªèš</string>
+ <string name="no_internet_connection_tor">æ²æç¶²è·¯é£ç·ïŒTor åŸ
æ©äž ...</string>
+ <string name="pref_disable_network_title">ç¡ç¶²è·¯æèªåäŒç </string>
+ <string name="pref_disable_network_summary">ç¶æ²æç¶²è·¯å¯çšæïŒè® Tor äŒç </string>
+ <string name="newnym">æšå·²åæå°æ°ç Tor 身åïŒ</string>
+ <string name="no_network_connectivity_putting_tor_to_sleep_">æ²æç¶²è·¯é£ç·ãæ£åšå« Tor äŒç ...</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">網路é£ç·è¯å¥œïŒæ£åšåé Tor ...</string>
+ <string name="updating_settings_in_tor_service">æŽæ° Tor çèšå®</string>
+ <string name="pref_socks_title">Tor SOCKS 代ç</string>
+ <string name="pref_socks_summary">Tor æäŸ SOCKS 代çç飿¥å (é èšïŒ9050ïŒè¥èšçº 0 åéé)</string>
+ <string name="pref_socks_dialog">èšå® SOCKS 飿¥å </string>
+ <string name="pref_transport_title">Tor ééåŒä»£ç飿¥å </string>
+ <string name="pref_transport_summary">Tor æäŸééåŒä»£çç飿¥å (é èšïŒ9040ïŒè¥èšçº 0 åéé)</string>
+ <string name="pref_transport_dialog">èšå®ééåŒä»£ç飿¥å </string>
+ <string name="pref_dnsport_title">Tor DNS å </string>
+ <string name="pref_dnsport_summary">Tor æäŸååè§£ææåïŒDNSïŒç飿¥å (é èšïŒ5400ïŒè¥èšçº0åéé)</string>
+ <string name="pref_dnsport_dialog">DNS飿¥å èšå®</string>
+ <string name="pref_torrc_title">Torrc èªèšèšçœ®</string>
+ <string name="pref_torrc_summary">å
éå°å®¶ïŒèŒžå
¥ torrc èšå®æä»€</string>
+ <string name="pref_torrc_dialog">èªèš Torrc</string>
+ <string name="kbps">kbps</string>
+ <string name="mbps">mbps</string>
+ <string name="kb">KB</string>
+ <string name="mb">MB</string>
+ <string name="bridges_updated">ç¶²æ©å·²æŽæ°</string>
+ <string name="restart_orbot_to_use_this_bridge_">è«éæ°åå Orbot äŸè®èšå®çæã</string>
+ <string name="menu_qr">QR 碌</string>
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">åŠæè¡å網路䞻åå°å°é Tor å¯ä»¥äœ¿çš\"æ©æ¥äŒºæåš\"äœçºæ¿ä»£æ¹åŒ.éžæäžåéžé
äœèšå®å枬詊</string>
+ <string name="bridge_mode">ç¶²æ©æš¡åŒ</string>
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+ <string name="activate">åçš</string>
+ <string name="apps_mode">VPN æš¡åŒ</string>
+ <string name="send_email">å¯éé»åä¿¡ä»¶</string>
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">æšå¯ä»¥éé email ååŸç¶²æ©äœåïŒæè
åšç¶²éç¶²è·¯äžæå°ïŒæè
ææç¶²æ©ç QR 碌ãåšäžé¢éžæ \'Email\' æè
\'Web\' äŸååŸç¶²æ©äœåã\n\nååŸç¶²æ©äœååŸïŒå°å®è€è£œè²Œäžå°ïœ¢ç¶²æ©ïœ£çèšå®é
äžïŒç¶åŸéæ°åå Orbotã</string>
+ <string name="vpn_default_world">å
šå(èªå)</string>
+ <string name="hidden_services">é±èæå</string>
+ <string name="title_activity_hidden_services">é±èæå</string>
+ <string name="menu_hidden_services">é±èæå</string>
+ <string name="save">å²å</string>
+ <string name="local_port">æ¬å°ç«¯å£</string>
+ <string name="onion_port">æŽè¥ç«¯å£</string>
+ <string name="name">åçš±</string>
+ <string name="done">已宿!</string>
+ <string name="invalid_port">ç¡æå </string>
+ <string name="copy_address_to_clipboard">è€è£œå°åå°åªè²Œç°¿</string>
+ <string name="show_auth_cookie">顯瀺 auth cookie</string>
+ <string name="backup_service">å仜æå</string>
+ <string name="delete_service">åªé€æå</string>
+ <string name="backup_saved_at_external_storage">å仜æªå²ååšå€éšå²ååš</string>
+ <string name="backup_restored">å仜已éå</string>
+ <string name="filemanager_not_available">æªæ¡ç®¡çå¡äžå¯çš</string>
+ <string name="please_grant_permissions_for_external_storage">è«ææ¬å€æ¥å²ååšäœ¿çš</string>
+ <string name="restore_backup">éåå仜</string>
+ <string name="create_a_backup_first">å
åµç«å仜</string>
+ <string name="name_can_t_be_empty">åçš±äžå¯ç©ºçœ</string>
+ <string name="fields_can_t_be_empty">æ¬äœäžå¯ç©ºçœ</string>
+ <string name="start_tor_again_for_finish_the_process">忬¡éå Tor 以宿æ€éçš</string>
+ <string name="confirm_service_deletion">ç¢ºèªæååªé€</string>
+ <string name="click_again_for_backup">忬¡é»éžä»¥é²è¡å仜</string>
+ <string name="service_type">æåé¡å</string>
+ <string name="auth_cookie">Auth cookie</string>
+ <string name="copy_cookie_to_clipboard">è€è£œ Cookie å°åªè²Œç°¿</string>
+ <string name="auth_cookie_was_not_configured">Auth cookie æªèšå®</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">è«éæ°åå Orbot äŸè®èšå®çæã</string>
+ <string name="client_cookies">å®¢æ¶ cookies</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">ç¡æç .onion å°å</string>
+ <string name="cookie_from_QR">ç± QR 碌è®å</string>
+ <string name="backup_cookie">åå cookie</string>
+ <string name="delete_cookie">åªé€ cookie</string>
+ <string name="confirm_cookie_deletion">確èªåªé€ cookie</string>
+ <string name="hosted_services">äž»æ©çæå</string>
+ <string name="share_as_qr">å©çš QR 碌å享</string>
+ <string name="disable">éé</string>
+ <string name="enable">åçš</string>
+ <string name="consider_disable_battery_optimizations">èæ
®åæ¶é»æ± çæé©å</string>
+ <string name="consider_enable_battery_optimizations">èæ
®éå黿± çæé©å</string>
+ <string name="pref_isolate_dest">å€ç«ç®çå°å°å</string>
+ <string name="pref_isolate_dest_summary">æ¯åç®çå°äœ¿çšäžåçé»è·¯</string>
+ <string name="no_transproxy_warning_short">èŠå: äžåæ¯æŽ Transproxying </string>
+ <string name="no_transproxy_warning">èŠå: äžæ¯æŽéæç代ç, è«çš Orbot Apps VPN æ¿ä»£</string>
+ <string name="pref_connection_padding">飿¥ä¿è·</string>
+ <string name="pref_connection_padding_summary">å
šéšåçšé£æ¥ä¿è·ä»¥é²æ¢äžäºæµéåæææ®µ
+é»èª: auto</string>
+ <string name="pref_reduced_connection_padding">æžå°é£æ¥ä¿è·</string>
+ <string name="pref_reduced_connection_padding_summary">ééäžç¹Œé£æ¥äžŠå³éå°æžä¿è·å°å
äŸæžå°è³æå黿± ççšé</string>
+ <string name="app_shortcuts">Tor æ¯æçæçš</string>
+ <string name="testing_bridges">æž¬è©Šæ©æ¥é£ç·å° Tor</string>
+ <string name="testing_bridges_success">æå,æ©æ¥èšå®è¯å¥œ!</string>
+ <string name="testing_bridges_fail">倱æ,å詊å
¶å®éžé
</string>
+ <string name="bridge_direct_connect">çŽæ¥é£äžæŽè¥è·¯ç±ç¶²è·¯(æäœ³)</string>
+ <string name="bridge_community">éé瀟å䌺æåšé£æ¥</string>
+ <string name="bridge_cloud">ééé²ç«¯äŒºæåšé£æ¥</string>
+ <string name="bridges_get_new">è«æ±æ°çæ©æ¥... (åŠæå
¶å®éœå€±æ)</string>
+ <string name="trouble_connecting">é£ç·éäžåé¡?</string>
+ <string name="full_device_vpn">å
šèšå VPN</string>
+ <string name="vpn_disabled">VPN éé</string>
+</resources>
diff --git a/app-mini/src/main/res/values/arrays.xml b/app-mini/src/main/res/values/arrays.xml
new file mode 100644
index 00000000..d5c86e36
--- /dev/null
+++ b/app-mini/src/main/res/values/arrays.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<resources>
+
+ <string-array name="array_hs_types">
+ <item>@string/user_services</item>
+ <item>@string/app_services</item>
+ </string-array>
+</resources>
diff --git a/app-mini/src/main/res/values/colors.xml b/app-mini/src/main/res/values/colors.xml
new file mode 100644
index 00000000..dcbbcd60
--- /dev/null
+++ b/app-mini/src/main/res/values/colors.xml
@@ -0,0 +1,11 @@
+
+ <resources>
+ <color name="panel_background_main">#efefef</color>
+ <color name="bright_green">#ccff2a</color>
+ <color name="dark_green">#669901</color>
+ <color name="dark_purple">#3f2b4f</color>
+ <color name="light_purple">#E6CCFF</color>
+ <color name="light_green">#E1FFC0</color>
+ <color name="light_gray">#EFEFEF</color>
+
+ </resources>
diff --git a/app-mini/src/main/res/values/dimens.xml b/app-mini/src/main/res/values/dimens.xml
new file mode 100644
index 00000000..c1ac42e8
--- /dev/null
+++ b/app-mini/src/main/res/values/dimens.xml
@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="utf-8"?><!--
+/* //device/apps/common/assets/res/any/dimens.xml
+**
+** Copyright 2006, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources>
+ <!-- The width that is used when creating thumbnails of applications. -->
+ <!-- The height that is used when creating thumbnails of applications. -->
+ <!-- The standard size (both width and height) of an application icon that
+ will be displayed in the app launcher and elsewhere. -->
+ <!-- The maximum number of action buttons that should be permitted within
+ an action bar/action mode. This will be used to determine how many
+ showAsAction="ifRoom" items can fit. "always" items can override this. -->
+ <!-- Height of the status bar -->
+ <!-- Height of the bottom navigation / system bar. -->
+ <!-- Height of the bottom navigation bar in portrait; often the same as @dimen/navigation_bar_height -->
+ <!-- Width of the navigation bar when it is placed vertically on the screen -->
+ <!-- Height of notification icons in the status bar -->
+ <!-- Size of the giant number (unread count) in the notifications -->
+ <!-- Height of the system bar (combined status & navigation); used by
+ SystemUI internally, not respected by the window manager. -->
+ <!-- Height of notification icons in the system bar -->
+ <!-- Margin at the edge of the screen to ignore touch events for in the windowshade. -->
+
+ <!-- Minimum size of the fastscroll overlay -->
+ <!-- Text size of the fastscroll overlay -->
+ <!-- Padding of the fastscroll overlay -->
+ <!-- Width of the fastscroll thumb -->
+ <!-- Height of the fastscroll thumb -->
+ <!-- Min width for a tablet device -->
+
+ <!-- Default height of a key in the password keyboard for alpha (used by keyguard) -->
+ <!-- Default height of a key in the password keyboard for numeric (used by keyguard) -->
+ <!-- Default correction for the space key in the password keyboard (used by keyguard) -->
+ <!-- Default horizontal gap between keys in the password keyboard (used by keyguard) -->
+ <!-- Default vertical gap between keys in the password keyboard (used by keyguard) -->
+
+ <!-- Size of lockscreen outerring on unsecure unlock LockScreen -->
+
+ <!-- Default target placement radius for GlowPadView. Should be 1/2 of outerring diameter. -->
+
+ <!-- Default glow radius for GlowPadView -->
+
+ <!-- Default distance beyond which GlowPadView snaps to the matching target -->
+
+ <!-- Default distance from each snap target that GlowPadView considers a "hit" -->
+
+ <!-- Preference activity side margins -->
+ <!-- Preference activity side margins negative-->
+ <!-- Preference activity top margin -->
+ <!-- Preference activity bottom margin -->
+ <!-- Preference widget area width (to the left of the text) -->
+ <!-- Preference fragment padding, bottom -->
+ <!-- Preference fragment padding, sides -->
+ <!-- Weight of the left pane in a multi-pane preference layout. -->
+ <!-- Weight of the right pane in a multi-pane preference layout. So the split is 40:60 -->
+ <!-- Padding to the left of the preference panel breadcrumb -->
+ <!-- Padding to the right of the preference panel breadcrumb -->
+ <!-- Minimum space to allocate to the left of a preference item for an icon.
+ This helps in aligning titles when some items have icons and some don't. When space is
+ at a premium, we don't pre-allocate any space. -->
+ <!-- The platform's desired minimum size for a dialog's width when it
+ is along the major axis (that is the screen is landscape). This may
+ be either a fraction or a dimension. -->
+
+ <!-- The platform's desired fixed width for a dialog along the major axis
+ (the screen is in landscape). This may be either a fraction or a dimension.-->
+ <!-- The platform's desired fixed width for a dialog along the minor axis
+ (the screen is in portrait). This may be either a fraction or a dimension.-->
+ <!-- The platform's desired fixed height for a dialog along the major axis
+ (the screen is in portrait). This may be either a fraction or a dimension.-->
+ <!-- The platform's desired fixed height for a dialog along the minor axis
+ (the screen is in landscape). This may be either a fraction or a dimension.-->
+
+ <!-- Preference activity, vertical padding for the header list -->
+
+ <!-- outsideOverlay -->
+
+ <!-- outsideOverlay -->
+
+ <!-- The platform's desired minimum size for a dialog's width when it
+ is along the minor axis (that is the screen is portrait). This may
+ be either a fraction or a dimension. -->
+
+ <!-- The width of the big icons in notifications. -->
+ <dimen name="notification_large_icon_width">64dp</dimen>
+ <!-- The width of the big icons in notifications. -->
+ <dimen name="notification_large_icon_height">64dp</dimen>
+
+ <!-- Minimum width of the search view text entry area. -->
+
+ <!-- Preferred width of the search view. -->
+
+ <!-- Dialog title height -->
+ <!-- Dialog button bar height -->
+
+ <!-- Default height of an action bar. -->
+ <!-- Vertical padding around action bar icons. -->
+ <!-- Text size for action bar titles -->
+ <!-- Text size for action bar subtitles -->
+ <!-- Top margin for action bar subtitles -->
+ <!-- Bottom margin for action bar subtitles -->
+
+ <!-- Size of clock font in LockScreen on Unsecure unlock screen. -->
+
+ <!-- Size of status line font on Unsecure unlock LockScreen. -->
+
+ <!-- Size of right margin on Unsecure unlock LockScreen -->
+
+ <!-- Size of top margin on Clock font to edge on unlock LockScreen -->
+
+ <!-- Size of top margin on Clock font to edge on unlock LockScreen -->
+
+ <!-- Padding on left margin of PIN text entry field to center it when del button is showing -->
+
+ <!-- Height of FaceUnlock view in keyguard -->
+
+ <!-- Minimum popup width for selecting an activity in ActivityChooserDialog/ActivityChooserView. -->
+
+ <!-- The default gap between components in a layout. -->
+
+ <!-- Text padding for dropdown items -->
+
+ <!-- Text padding for dropdown items -->
+
+ <!-- Width of the icon in a dropdown list -->
+
+ <!-- Default width for a textview error popup -->
+
+ <!-- Volume panel y offset -->
+
+ <!-- Default padding to apply to AppWidgetHostViews containing widgets targeting API level 14 and up. -->
+
+ <!-- Minimum width for an action button in the menu area of an action bar -->
+
+ <!-- Maximum height for a stacked tab bar as part of an action bar -->
+
+ <!-- Maximum width for a stacked action bar tab. This prevents
+ action bar tabs from becoming too wide on a wide screen when only
+ a few are present. -->
+
+ <!-- Size of notification text (see TextAppearance.StatusBar.EventContent) -->
+ <!-- Size of notification text titles (see TextAppearance.StatusBar.EventContent.Title) -->
+ <!-- Size of smaller notification text (see TextAppearance.StatusBar.EventContent.Line2, Info, Time) -->
+ <dimen name="notification_subtext_size">12dp</dimen>
+
+ <!-- Keyguard dimensions -->
+ <!-- TEMP -->
+
+ <!-- Height of security view in keyguard. -->
+
+ <!-- Width of widget view in keyguard. -->
+
+ <!-- Height of widget view in keyguard. -->
+
+ <!-- Size of the clock font in keyguard's status view -->
+
+ <!-- Size of the date font in keyguard's status view -->
+
+ <!-- Size of the generic status lines keyguard's status view -->
+
+ <!-- Size of margin on the right of keyguard's status view -->
+
+ <!-- Top margin for the clock view -->
+
+ <!-- Horizontal gap between keys in PIN and SIM PIN numeric keyboards in keyguard -->
+
+ <!-- Horizontal gap between keys in PIN and SIM PIN numeric keyboards in keyguard -->
+
+ <!-- Horizontal gap between keys in PIN and SIM PIN numeric keyboards in keyguard -->
+
+ <!-- Space reserved at the bottom of secure views (pin/pattern/password/SIM pin/SIM puk) -->
+
+ <!-- The height of the runway lights strip -->
+
+ <!-- The height of the runway lights strip -->
+
+ <!-- Horizontal padding for the widget pager -->
+
+ <!-- Top padding for the widget pager -->
+
+ <!-- Bottom padding for the widget pager -->
+
+ <!-- Top margin for the runway lights. We add a negative margin in large
+ devices to account for the widget pager padding -->
+
+ <!-- Touch slop for the global toggle accessibility gesture -->
+
+ <!-- Width of the sliding KeyguardSecurityContainer (includes 2x keyguard_security_view_margin) -->
+
+ <!-- Height of the sliding KeyguardSecurityContainer (includes 2x keyguard_security_view_margin) -->
+
+ <!-- Margin around the various security views -->
+
+ <!-- Margin around the various security views -->
+
+ <!-- Stroke width of the frame for the circular avatars. -->
+
+ <!-- Shadow radius under the frame for the circular avatars. -->
+
+ <!-- Size of the avator on hte multiuser lockscreen. -->
+
+ <!-- Size of the text under the avator on the multiuser lockscreen. -->
+
+ <!-- Size of the region along the edge of the screen that will accept
+ swipes to scroll the widget area. -->
+
+ <!-- If the height if keyguard drops below this threshold (most likely
+ due to the appearance of the IME), then drop the multiuser selector. -->
+
+ <!-- The height of widgets which do not support vertical resizing. This is only
+ used on tablets; on phones, this size is determined by the space left by the
+ security mode. -->
+
+ <!-- Rounded corner radius for video subtitles. -->
+
+ <!-- Shadow radius for video subtitles. -->
+
+ <!-- Shadow offset for video subtitles. -->
+
+ <!-- Outline width for video subtitles. -->
+
+ <!-- width of ImmersiveModeConfirmation (-1 for match_parent) -->
+ <!-- Default screen margins, per the Android Design guidelines. -->
+ <dimen name="activity_horizontal_margin">16dp</dimen>
+ <dimen name="activity_vertical_margin">16dp</dimen>
+ <dimen name="fab_margin">16dp</dimen>
+</resources>
diff --git a/app-mini/src/main/res/values/ic_launcher_background.xml b/app-mini/src/main/res/values/ic_launcher_background.xml
new file mode 100644
index 00000000..60983412
--- /dev/null
+++ b/app-mini/src/main/res/values/ic_launcher_background.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <color name="ic_launcher_background">#68B030</color>
+</resources>
\ No newline at end of file
diff --git a/app-mini/src/main/res/values/poestrings.xml b/app-mini/src/main/res/values/poestrings.xml
new file mode 100644
index 00000000..af8d5580
--- /dev/null
+++ b/app-mini/src/main/res/values/poestrings.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="bridges_sometimes">"Sometimes you need a bridge to get to Tor."</string>
+ <string name="action_more">"TELL ME MORE"</string>
+
+ <string name="vpn_setup">"You can enable any app to go through Tor using our built-in VPN."</string>
+ <string name="vpn_setup_sub">"This won\'t make you anonymous, but it will help get through firewalls."</string>
+ <string name="action_vpn_choose">"CHOOSE APPS"</string>
+
+ <string name="hello">"Hello"</string>
+ <string name="welcome">"Welcome to Tor on mobile."</string>
+
+ <string name="browser_the_internet">"Browse the internet how you expect you should."</string>
+ <string name="no_tracking">"No tracking. No censorship."</string>
+
+</resources>
diff --git a/app-mini/src/main/res/values/strings.xml b/app-mini/src/main/res/values/strings.xml
new file mode 100644
index 00000000..42bc1674
--- /dev/null
+++ b/app-mini/src/main/res/values/strings.xml
@@ -0,0 +1,258 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="app_name">orbotmini</string>
+ <string name="app_description">Orbot is a free proxy app that empowers other apps to use the internet more securely. Orbot uses Tor to encrypt your Internet traffic and then hides it by bouncing through a series of computers around the world. Tor is free software and an open network that helps you defend against a form of network surveillance that threatens personal freedom and privacy, confidential business activities and relationships, and state security known as traffic analysis.</string>
+ <string name="status_starting_up">Orbot is starting…</string>
+ <string name="status_activated">Connected to the Tor network</string>
+ <string name="status_disabled">Orbot is deactivated</string>
+ <string name="status_shutting_down">TorService is shutting down</string>
+ <string name="tor_process_starting">Starting Tor client…</string>
+ <string name="tor_process_complete">complete.</string>
+ <string name="menu_settings">Settings</string>
+ <string name="menu_log">Log</string>
+ <string name="menu_start">Start</string>
+ <string name="menu_stop">Stop</string>
+ <string name="menu_about">About</string>
+ <string name="main_layout_download">Download</string>
+ <string name="main_layout_upload">Upload</string>
+ <string name="button_about">About</string>
+ <string name="menu_exit">Exit</string>
+ <string name="menu_scan">Scan BridgeQR</string>
+ <string name="menu_share_bridge">Share BridgeQR</string>
+ <string name="btn_okay">Okay</string>
+ <string name="btn_cancel">Cancel</string>
+ <!--Welcome Wizard strings (DJH)-->
+ <string name="wizard_details">Some Orbot Details</string>
+ <string name="wizard_details_msg">Orbot is an open-source application that contains Tor, Obfs4Proxy, BadVPN Tun2Socks, LibEvent and Polipo. It provides a local HTTP proxy (8118) and a SOCKS proxy (9050) into the Tor network. Orbot also has the ability, on rooted device, to send all internet traffic through Tor.</string>
+ <!--END Welcome Wizard strings (DJH)-->
+ <string name="pref_general_group">General</string>
+ <string name="pref_start_boot_title">Start Orbot on Boot</string>
+ <string name="pref_start_boot_summary">Automatically start Orbot and connect Tor when your Android device boots</string>
+ <!--New Wizard Strings-->
+ <!--Title Screen-->
+ <!--Warning screen-->
+ <!--Permissions screen-->
+ <!--TipsAndTricks screen-->
+ <!--Transparent Proxy screen-->
+ <string name="pref_node_configuration">Node Configuration</string>
+ <string name="pref_node_configuration_summary">These are advanced settings that can reduce your anonymity</string>
+ <string name="pref_entrance_node">Entrance Nodes</string>
+ <string name="pref_entrance_node_summary">Fingerprints, nicks, countries and addresses for the first hop</string>
+ <string name="pref_entrance_node_dialog">Enter Entrance Nodes</string>
+ <string name="pref_allow_background_starts_title">Allow Background Starts</string>
+ <string name="pref_allow_background_starts_summary">Let any app tell Orbot to start Tor and related services</string>
+
+ <string name="pref_proxy_title">Outbound Network Proxy (Optional)</string>
+
+ <string name="pref_proxy_type_title">Outbound Proxy Type</string>
+ <string name="pref_proxy_type_summary">Protocol to use for proxy server: HTTP, HTTPS, SOCKS4, SOCKS5</string>
+ <string name="pref_proxy_type_dialog">Enter Proxy Type</string>
+
+ <string name="pref_proxy_host_title">Outbound Proxy Host</string>
+ <string name="pref_proxy_host_summary">Proxy Server hostname</string>
+ <string name="pref_proxy_host_dialog">Enter Proxy Host</string>
+
+ <string name="pref_proxy_port_title">Outbound Proxy Port</string>
+ <string name="pref_proxy_port_summary">Proxy Server port</string>
+ <string name="pref_proxy_port_dialog">Enter Proxy port</string>
+
+ <string name="pref_proxy_username_title">Outbound Proxy Username</string>
+ <string name="pref_proxy_username_summary">Proxy Username (Optional)</string>
+ <string name="pref_proxy_username_dialog">Enter Proxy Username</string>
+
+ <string name="pref_proxy_password_title">Outbound Proxy Password</string>
+ <string name="pref_proxy_password_summary">Proxy Password (Optional)</string>
+ <string name="pref_proxy_password_dialog">Enter Proxy Password</string>
+
+
+ <string name="couldn_t_start_tor_process_">Couldn\'t start Tor process: </string>
+ <string name="error">Error</string>
+ <string name="your_reachableaddresses_settings_caused_an_exception_">Your ReachableAddresses settings caused an exception!</string>
+ <string name="your_relay_settings_caused_an_exception_">Your relay settings caused an exception!</string>
+ <string name="exit_nodes">Exit Nodes</string>
+ <string name="fingerprints_nicks_countries_and_addresses_for_the_last_hop">Fingerprints, nicks, countries and addresses for the last hop</string>
+ <string name="enter_exit_nodes">Enter Exit Nodes</string>
+ <string name="exclude_nodes">Exclude Nodes</string>
+ <string name="fingerprints_nicks_countries_and_addresses_to_exclude">Fingerprints, nicks, countries and addresses to exclude</string>
+ <string name="enter_exclude_nodes">Enter Exclude Nodes</string>
+ <string name="strict_nodes">Strict Nodes</string>
+ <string name="use_only_these_specified_nodes">Use *only* these specified nodes</string>
+ <string name="bridges">Bridges</string>
+ <string name="use_bridges">Use Bridges</string>
+ <string name="enable_alternate_entrance_nodes_into_the_tor_network">Enable alternate entrances into the Tor Network</string>
+ <string name="ip_address_and_port_of_bridges">IP address and port of bridges</string>
+ <string name="enter_bridge_addresses">Enter Bridge Addresses</string>
+ <string name="relays">Relays</string>
+ <string name="relaying">Relaying</string>
+ <string name="enable_your_device_to_be_a_non_exit_relay">Enable your device to be a non-exit relay</string>
+ <string name="relay_port">Relay Port</string>
+ <string name="listening_port_for_your_tor_relay">Listening port for your Tor relay</string>
+ <string name="enter_or_port">Enter OR port</string>
+ <string name="relay_nickname">Relay nickname</string>
+ <string name="the_nickname_for_your_tor_relay">The nickname for your Tor relay</string>
+ <string name="enter_a_custom_relay_nickname">Enter a custom relay nickname</string>
+ <string name="reachable_addresses">Reachable Addresses</string>
+ <string name="run_as_a_client_behind_a_firewall_with_restrictive_policies">Run as a client behind a firewall with restrictive policies</string>
+ <string name="reachable_ports">Reachable ports</string>
+ <string name="ports_reachable_behind_a_restrictive_firewall">Ports reachable behind a restrictive firewall</string>
+ <string name="enter_ports">Enter ports</string>
+ <string name="enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_">Enable debug log to output (must use adb or aLogcat to view)</string>
+ <string name="project_home">Project Home(s): </string>
+ <string name="project_urls">https://www.torproject.org/docs/android\nhttps://guardianproject.info/apps/…</string>
+ <string name="third_party_software">3rd-Party-Software: </string>
+ <string name="tor_version">Tor: https://www.torproject.org</string>
+ <string name="libevent_version">LibEvent: http://www.monkey.org/~provos/libevent/</string>
+ <string name="polipo_version">Polipo: https://github.com/jech/polipo</string>
+ <string name="obfsproxy_version">Obfs4proxy: https://github.com/Yawning/obfs4</string>
+ <string name="openssl_version">OpenSSL: http://www.openssl.org</string>
+ <string name="hidden_service_request">An app wants to open onion server port %1$s to the Tor network. This is safe if you trust the app.</string>
+ <string name="found_existing_tor_process">found existing Tor process…</string>
+ <string name="something_bad_happened">Something bad happened. Check the log</string>
+ <string name="unable_to_read_hidden_service_name">unable to read onion service name</string>
+ <string name="unable_to_start_tor">Unable to start Tor:</string>
+
+ <string name="pref_use_persistent_notifications">Always keep the icon in toolbar when Orbot is connected</string>
+ <string name="pref_use_persistent_notifications_title">Always-On Notifications</string>
+
+ <string name="pref_use_expanded_notifications">Show expanded notification with Tor exit country and IP</string>
+ <string name="pref_use_expanded_notifications_title">Expanded Notifications</string>
+
+ <string name="set_locale_title">Language</string>
+ <string name="no_internet_connection_tor">No internet connection; Tor is on standbyâŠ</string>
+ <string name="pref_disable_network_title">No Network Auto-Sleep</string>
+ <string name="pref_disable_network_summary">Put Tor to sleep when there is no internet available</string>
+ <string name="newnym">You\'ve switched to a new Tor identity!</string>
+
+ <string name="pref_open_proxy_on_all_interfaces_title">Open Proxy on All Interfaces</string>
+ <string name="pref_open_proxy_on_all_interfaces_summary">Allow Wi-Fi peers, tethered devices and anyone else who can connect to your IP, to access Tor</string>
+
+ <string name="no_network_connectivity_putting_tor_to_sleep_">No network connectivity. Putting Tor to sleepâŠ</string>
+ <string name="network_connectivity_is_good_waking_tor_up_">Network connectivity is good. Waking Tor upâŠ</string>
+ <string name="updating_settings_in_tor_service">updating settings in Tor service</string>
+
+ <string name="pref_socks_title">Tor SOCKS</string>
+ <string name="pref_socks_summary">Port that Tor offers its SOCKS proxy on (default: 9050 or 0 to disable)</string>
+ <string name="pref_socks_dialog">SOCKS Port Config</string>
+
+ <string name="pref_http_title">Tor HTTP</string>
+ <string name="pref_http_summary">Port that Tor offers its HTTP proxy on (default: 8118 or 0 to disable)</string>
+ <string name="pref_http_dialog">HTTP Port Config</string>
+
+ <string name="pref_transport_title">Tor TransProxy Port</string>
+ <string name="pref_transport_summary">Port that Tor offers its Transparent Proxy on (default: 9040 or 0 to disable)</string>
+ <string name="pref_transport_dialog">TransProxy Port Config</string>
+
+
+ <string name="pref_dnsport_title">Tor DNS Port</string>
+ <string name="pref_dnsport_summary">Port that Tor offers its DNS on (default: 5400 or 0 to disable)</string>
+ <string name="pref_dnsport_dialog">DNS Port Config</string>
+
+
+ <string name="pref_torrc_title">Torrc Custom Config</string>
+ <string name="pref_torrc_summary">EXPERTS ONLY: enter direct torrc config lines</string>
+ <string name="pref_torrc_dialog">Custom Torrc</string>
+
+
+ <string name="kbps">kbps</string>
+
+ <string name="mbps">mbps</string>
+
+ <string name="kb">KB</string>
+
+ <string name="mb">MB</string>
+
+ <string name="bridges_updated">Bridges Updated</string>
+
+ <string name="restart_orbot_to_use_this_bridge_">Please restart Orbot to enable the changes</string>
+
+ <string name="menu_qr">QR Codes</string>
+
+ <string name="if_your_mobile_network_actively_blocks_tor_you_can_use_a_tor_bridge_to_access_the_network_another_way_to_get_bridges_is_to_send_an_email_to_bridges_torproject_org_please_note_that_you_must_send_the_email_using_an_address_from_one_of_the_following_email_providers_riseup_gmail_or_yahoo_">If your mobile network actively blocks Tor, you can use a \'Bridge Server\' as an alternate way in. SELECT one of the options to configure and test...</string>
+
+ <string name="bridge_mode">Request New Bridge</string>
+
+ <string name="get_bridges_email">Email</string>
+ <string name="get_bridges_web">Web</string>
+
+ <string name="activate">Activate</string>
+
+ <string name="apps_mode">VPN Mode</string>
+
+ <string name="send_email">Send Email</string>
+
+ <string name="you_must_get_a_bridge_address_by_email_web_or_from_a_friend_once_you_have_this_address_please_paste_it_into_the_bridges_preference_in_orbot_s_setting_and_restart_">You can get a bridge address through email, the web or by scanning a bridge QR code. Select \'Email\' or \'Web\' below to request a bridge address.\n\nOnce you have an address, copy & paste it into the \"Bridges\" preference in Orbot\'s settings and restart.</string>
+
+ <string name="vpn_default_world">Global (Auto)</string>
+ <string name="hidden_services">Onion Services</string>
+ <string name="title_activity_hidden_services">Onion Services</string>
+ <string name="menu_hidden_services">Onion Services</string>
+ <string name="save">Save</string>
+ <string name="local_port">Local Port</string>
+ <string name="onion_port">Onion Port</string>
+ <string name="name">Name</string>
+ <string name="done">Done!</string>
+ <string name="invalid_port">Invalid Port</string>
+ <string name="copy_address_to_clipboard">Copy address to clipboard</string>
+ <string name="show_auth_cookie">Show auth cookie</string>
+ <string name="backup_service">Backup Service</string>
+ <string name="delete_service">Delete Service</string>
+ <string name="backup_saved_at_external_storage">Backup saved at external storage</string>
+ <string name="backup_restored">Backup restored</string>
+ <string name="filemanager_not_available">Filemanager not available</string>
+ <string name="please_grant_permissions_for_external_storage">Please grant permissions for external storage</string>
+ <string name="restore_backup">Restore Backup</string>
+ <string name="create_a_backup_first">Create a backup first</string>
+ <string name="name_can_t_be_empty">Name can\'t be empty</string>
+ <string name="fields_can_t_be_empty">Fields can\'t be empty</string>
+ <string name="start_tor_again_for_finish_the_process">Start Tor again for finish the process</string>
+ <string name="confirm_service_deletion">Confirm service deletion</string>
+ <string name="click_again_for_backup">Click again for backup</string>
+ <string name="service_type">Service type</string>
+ <string name="auth_cookie">Auth cookie</string>
+ <string name="copy_cookie_to_clipboard">Copy cookie to clipboard</string>
+ <string name="auth_cookie_was_not_configured">Auth cookie was not configured</string>
+ <string name="please_restart_Orbot_to_enable_the_changes">Please restart Orbot to enable the changes</string>
+ <string name="client_cookies">Client cookies</string>
+ <string name="onion">.onion</string>
+ <string name="invalid_onion_address">Invalid .onion address</string>
+ <string name="cookie_from_QR">Read from QR</string>
+ <string name="backup_cookie">Backup cookie</string>
+ <string name="delete_cookie">Delete cookie</string>
+ <string name="confirm_cookie_deletion">Confirm cookie deletion</string>
+ <string name="hosted_services">Hosted Services</string>
+ <string name="share_as_qr">Share as QR</string>
+ <string name="disable">Disable</string>
+ <string name="enable">Enable</string>
+ <string name="consider_disable_battery_optimizations">Consider disable battery optimizations</string>
+ <string name="consider_enable_battery_optimizations">Consider enable battery optimizations</string>
+ <string name="pref_isolate_dest">Isolate destination addresses</string>
+ <string name="pref_isolate_dest_summary">Use a different circuit for each destination address</string>
+ <string name="no_transproxy_warning_short">WARNING: Transproxying no longer supported</string>
+ <string name="no_transproxy_warning">WARNING: Transparent proxying not supported. Use Orbot Apps VPN instead.</string>
+ <string name="pref_connection_padding">Connection padding</string>
+ <string name="pref_connection_padding_summary">Always enables connection padding to defend against some forms of traffic analysis. Default: auto</string>
+ <string name="pref_reduced_connection_padding">Reduced connection padding</string>
+ <string name="pref_reduced_connection_padding_summary">Closes relay connections sooner and sends less padding packets to reduce data and battery usage</string>
+ <string name="pref_prefer_ipv6">Prefer IPv6 connections</string>
+ <string name="pref_prefer_ipv6_summary">Tells exits that IPv6 addresses are preferred</string>
+ <string name="pref_disable_ipv4">Disable IPv4 connections</string>
+ <string name="pref_disable_ipv4_summary">Tells exits not to connect to IPv4 addresses</string>
+ <string name="app_shortcuts">Tor-Enabled Apps</string>
+ <string name="testing_bridges">Testing bridge connection to Tor....</string>
+ <string name="testing_bridges_success">Success. Bridge configuration is good!</string>
+ <string name="testing_bridges_fail">FAILED. Try another option</string>
+ <string name="bridge_direct_connect">Connect directly to Tor (Best)</string>
+ <string name="bridge_community">Connect through community servers</string>
+ <string name="bridge_cloud">Connect through cloud servers</string>
+ <string name="bridges_get_new">Request New Bridges... (If all else fails)</string>
+ <string name="trouble_connecting">Trouble connecting?</string>
+ <string name="full_device_vpn">Full Device VPN</string>
+ <string name="vpn_disabled">VPN Disabled</string>
+
+ <string name="menu_new_identity">New Identity</string>
+
+ <string name="user_services">User services</string>
+ <string name="app_services">App services</string>
+ <string name="default_socks_http">SOCKS: - HTTP: -</string>
+ <string name="refresh_apps">Refresh Apps</string>
+</resources>
diff --git a/app-mini/src/main/res/values/styles.xml b/app-mini/src/main/res/values/styles.xml
new file mode 100644
index 00000000..b2e69a53
--- /dev/null
+++ b/app-mini/src/main/res/values/styles.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <style name="DefaultTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
+
+ <style name="DefaultTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
+</resources>
diff --git a/app-mini/src/main/res/values/theme.xml b/app-mini/src/main/res/values/theme.xml
new file mode 100644
index 00000000..a0ba3593
--- /dev/null
+++ b/app-mini/src/main/res/values/theme.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<resources>
+ <style name="DefaultTheme" parent="Theme.AppCompat.Light.NoActionBar">
+ </style>
+
+</resources>
+
diff --git a/app-mini/src/main/res/xml/hidden_services_paths.xml b/app-mini/src/main/res/xml/hidden_services_paths.xml
new file mode 100644
index 00000000..073732b6
--- /dev/null
+++ b/app-mini/src/main/res/xml/hidden_services_paths.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<paths xmlns:android="http://schemas.android.com/apk/res/android">
+ <files-path name="hidden-services" path="hidden_services/" />
+</paths>
\ No newline at end of file
diff --git a/app-mini/src/main/res/xml/preferences.xml b/app-mini/src/main/res/xml/preferences.xml
new file mode 100644
index 00000000..bda86acc
--- /dev/null
+++ b/app-mini/src/main/res/xml/preferences.xml
@@ -0,0 +1,301 @@
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <PreferenceCategory android:title="@string/pref_general_group">
+ <ListPreference
+ android:key="pref_default_locale"
+ android:title="@string/set_locale_title"
+ android:enabled="true"
+ android:selectable="true" />
+
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:enabled="true"
+ android:key="pref_start_boot"
+ android:summary="@string/pref_start_boot_summary"
+ android:title="@string/pref_start_boot_title" />
+
+ <!--
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:enabled="true"
+ android:key="pref_persistent_notifications"
+ android:summary="@string/pref_use_persistent_notifications"
+ android:title="@string/pref_use_persistent_notifications_title" />
+
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:enabled="true"
+ android:key="pref_expanded_notifications"
+ android:summary="@string/pref_use_expanded_notifications"
+ android:title="@string/pref_use_expanded_notifications_title" />
+
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:key="pref_allow_background_starts"
+ android:summary="@string/pref_allow_background_starts_summary"
+ android:title="@string/pref_allow_background_starts_title" />
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="pref_open_proxy_on_all_interfaces"
+ android:summary="@string/pref_open_proxy_on_all_interfaces_summary"
+ android:title="@string/pref_open_proxy_on_all_interfaces_title" />
+
+ -->
+ <!--
+ <ListPreference
+ android:defaultValue="en"
+ android:key="pref_default_locale"
+ android:summary="@string/set_locale_summary"
+ android:title="@string/set_locale_title" />-->
+
+ </PreferenceCategory>
+ <!--
+ <PreferenceCategory android:title="@string/pref_trans_proxy_group">
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="has_root"
+ android:title="@string/pref_has_root"
+ android:summary="@string/pref_has_root_summary"
+ android:enabled="true"/>
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="pref_transparent"
+ android:title="@string/pref_trans_proxy_title"
+ android:summary="@string/pref_trans_proxy_summary"
+ android:enabled="true"/>
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="pref_transparent_all"
+ android:summary="@string/pref_transparent_all_summary"
+ android:enabled="true"
+ android:title="@string/pref_transparent_all_title"/>
+
+ <Preference
+ android:defaultValue=""
+ android:key="pref_transparent_app_list"
+ android:title="@string/pref_select_apps"
+ android:summary="@string/pref_select_apps_summary"
+ android:enabled="true"/>
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="pref_transparent_tethering"
+ android:summary="@string/pref_transparent_tethering_summary"
+ android:enabled="true"
+ android:title="@string/pref_transparent_tethering_title"/>
+
+
+ </PreferenceCategory>
+ -->
+ <PreferenceCategory
+ android:summary="@string/pref_node_configuration_summary"
+ android:title="@string/pref_node_configuration">
+
+ <EditTextPreference
+ android:dialogTitle="@string/pref_entrance_node_dialog"
+ android:key="pref_entrance_nodes"
+ android:summary="@string/pref_entrance_node_summary"
+ android:title="@string/pref_entrance_node" />
+ <EditTextPreference
+ android:dialogTitle="@string/enter_exit_nodes"
+ android:key="pref_exit_nodes"
+ android:summary="@string/fingerprints_nicks_countries_and_addresses_for_the_last_hop"
+ android:title="@string/exit_nodes" />
+ <EditTextPreference
+ android:dialogTitle="@string/enter_exclude_nodes"
+ android:key="pref_exclude_nodes"
+ android:summary="@string/fingerprints_nicks_countries_and_addresses_to_exclude"
+ android:title="@string/exclude_nodes" />
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="pref_strict_nodes"
+ android:summary="@string/use_only_these_specified_nodes"
+ android:title="@string/strict_nodes" />
+
+ </PreferenceCategory>
+ <PreferenceCategory android:title="@string/bridges">
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:key="pref_bridges_enabled"
+ android:summary="@string/enable_alternate_entrance_nodes_into_the_tor_network"
+ android:title="@string/use_bridges" />
+
+ <EditTextPreference
+ android:dialogTitle="@string/enter_bridge_addresses"
+ android:inputType="textMultiLine|textNoSuggestions"
+ android:key="pref_bridges_list"
+ android:summary="@string/ip_address_and_port_of_bridges"
+ android:title="@string/bridges" />
+
+ </PreferenceCategory>
+
+ <!--
+ <PreferenceCategory android:title="@string/relays">
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:enabled="true"
+ android:key="pref_or"
+ android:summary="@string/enable_your_device_to_be_a_non_exit_relay"
+ android:title="@string/relaying" />
+
+ <EditTextPreference
+ android:defaultValue="9001"
+ android:dialogTitle="@string/enter_or_port"
+ android:inputType="number"
+ android:key="pref_or_port"
+ android:summary="@string/listening_port_for_your_tor_relay"
+ android:title="@string/relay_port" />
+
+ <EditTextPreference
+ android:defaultValue="OrbotRelay"
+ android:dialogTitle="@string/enter_a_custom_relay_nickname"
+ android:key="pref_or_nickname"
+ android:summary="@string/the_nickname_for_your_tor_relay"
+ android:title="@string/relay_nickname" />
+
+ </PreferenceCategory>-->
+
+ <PreferenceCategory android:title="ReachableAddresses">
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:enabled="true"
+ android:key="pref_reachable_addresses"
+ android:summary="@string/run_as_a_client_behind_a_firewall_with_restrictive_policies"
+ android:title="@string/reachable_addresses" />
+
+ <EditTextPreference
+ android:defaultValue="*:80,*:443"
+ android:dialogTitle="@string/enter_ports"
+ android:key="pref_reachable_addresses_ports"
+ android:summary="@string/ports_reachable_behind_a_restrictive_firewall"
+ android:title="@string/reachable_ports" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="Connectivity">
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:enabled="true"
+ android:key="pref_isolate_dest"
+ android:summary="@string/pref_isolate_dest_summary"
+ android:title="@string/pref_isolate_dest" />
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:enabled="true"
+ android:key="pref_prefer_ipv6"
+ android:summary="@string/pref_prefer_ipv6_summary"
+ android:title="@string/pref_prefer_ipv6" />
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:enabled="true"
+ android:key="pref_disable_ipv4"
+ android:summary="@string/pref_disable_ipv4_summary"
+ android:title="@string/pref_disable_ipv4" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="ConnectionPadding">
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:enabled="true"
+ android:key="pref_connection_padding"
+ android:summary="@string/pref_connection_padding_summary"
+ android:title="@string/pref_connection_padding" />
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:enabled="true"
+ android:key="pref_reduced_connection_padding"
+ android:summary="@string/pref_reduced_connection_padding_summary"
+ android:title="@string/pref_reduced_connection_padding" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="@string/pref_proxy_title">
+ <EditTextPreference
+ android:dialogTitle="@string/pref_proxy_type_dialog"
+ android:key="pref_proxy_type"
+ android:summary="@string/pref_proxy_type_summary"
+ android:title="@string/pref_proxy_type_title" />
+ <EditTextPreference
+ android:dialogTitle="@string/pref_proxy_host_dialog"
+ android:key="pref_proxy_host"
+ android:summary="@string/pref_proxy_host_summary"
+ android:title="@string/pref_proxy_host_title" />
+ <EditTextPreference
+ android:dialogTitle="@string/pref_proxy_port_dialog"
+ android:inputType="number"
+ android:key="pref_proxy_port"
+ android:summary="@string/pref_proxy_port_summary"
+ android:title="@string/pref_proxy_port_title" />
+
+ <EditTextPreference
+ android:dialogTitle="@string/pref_proxy_username_dialog"
+ android:key="pref_proxy_username"
+ android:summary="@string/pref_proxy_username_summary"
+ android:title="@string/pref_proxy_username_title" />
+ <EditTextPreference
+ android:dialogTitle="@string/pref_proxy_password_dialog"
+ android:inputType="textPassword"
+ android:key="pref_proxy_password"
+ android:summary="@string/pref_proxy_password_summary"
+ android:title="@string/pref_proxy_password_title" />
+ </PreferenceCategory>
+
+ <PreferenceCategory android:title="Debug">
+
+ <EditTextPreference
+ android:defaultValue="auto"
+ android:dialogTitle="@string/pref_socks_dialog"
+ android:key="pref_socks"
+ android:summary="@string/pref_socks_summary"
+ android:title="@string/pref_socks_title" />
+
+ <EditTextPreference
+ android:defaultValue="auto"
+ android:dialogTitle="@string/pref_http_dialog"
+ android:key="pref_http"
+ android:summary="@string/pref_http_summary"
+ android:title="@string/pref_http_title" />
+
+ <EditTextPreference
+ android:defaultValue="auto"
+ android:dialogTitle="@string/pref_transport_dialog"
+ android:key="pref_transport"
+ android:summary="@string/pref_transport_summary"
+ android:title="@string/pref_transport_title" />
+
+ <EditTextPreference
+ android:defaultValue="auto"
+ android:dialogTitle="@string/pref_dnsport_dialog"
+ android:key="pref_dnsport"
+ android:summary="@string/pref_dnsport_summary"
+ android:title="@string/pref_dnsport_title" />
+
+ <EditTextPreference
+ android:dialogTitle="@string/pref_torrc_dialog"
+ android:inputType="textMultiLine|textNoSuggestions"
+ android:key="pref_custom_torrc"
+ android:summary="@string/pref_torrc_summary"
+ android:title="@string/pref_torrc_title" />
+
+
+ <CheckBoxPreference
+ android:defaultValue="false"
+ android:enabled="true"
+ android:key="pref_enable_logging"
+ android:summary="@string/enable_debug_log_to_output_must_use_adb_or_alogcat_to_view_"
+ android:title="Debug Log" />
+
+<!--
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:enabled="true"
+ android:key="pref_disable_network"
+ android:summary="@string/pref_disable_network_summary"
+ android:title="@string/pref_disable_network_title" />
+-->
+ </PreferenceCategory>
+</PreferenceScreen>
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 8e3b6014..c4a78d65 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -70,14 +70,14 @@
android:stateNotNeeded="true"
android:theme="@android:style/Theme.Translucent" />
<activity
- android:name=".vpn.VPNEnableActivity"
+ android:name=".mini.vpn.VPNEnableActivity"
android:exported="false"
android:label="@string/app_name" />
<activity
- android:name=".settings.SettingsPreferences"
+ android:name=".mini.settings.SettingsPreferences"
android:label="@string/app_name" />
<activity
- android:name=".ui.AppManagerActivity"
+ android:name=".mini.ui.AppManagerActivity"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat" />
@@ -124,7 +124,7 @@
</receiver>
<activity
- android:name=".ui.hiddenservices.HiddenServicesActivity"
+ android:name=".mini.ui.hiddenservices.HiddenServicesActivity"
android:label="@string/title_activity_hidden_services"
android:theme="@style/DefaultTheme">
<meta-data
@@ -133,12 +133,12 @@
</activity>
<provider
- android:name=".ui.hiddenservices.providers.HSContentProvider"
- android:authorities="org.torproject.android.ui.hiddenservices.providers"
+ android:name=".mini.ui.hiddenservices.providers.HSContentProvider"
+ android:authorities="org.torproject.android.mini.ui.hiddenservices.providers"
android:exported="false" />
<provider
android:name="android.support.v4.content.FileProvider"
- android:authorities="org.torproject.android.ui.hiddenservices.storage"
+ android:authorities="org.torproject.android.mini.ui.hiddenservices.storage"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
@@ -147,7 +147,7 @@
</provider>
<activity
- android:name=".ui.hiddenservices.ClientCookiesActivity"
+ android:name=".mini.ui.hiddenservices.ClientCookiesActivity"
android:label="@string/client_cookies"
android:theme="@style/DefaultTheme">
<meta-data
@@ -155,12 +155,12 @@
android:value=".OrbotMainActivity" />
</activity>
- <activity android:name=".ui.onboarding.OnboardingActivity"/>
- <activity android:name=".ui.onboarding.BridgeWizardActivity"/>
+ <activity android:name=".mini.ui.onboarding.OnboardingActivity"/>
+ <activity android:name=".mini.ui.onboarding.BridgeWizardActivity"/>
<provider
- android:name=".ui.hiddenservices.providers.CookieContentProvider"
- android:authorities="org.torproject.android.ui.hiddenservices.providers.cookie"
+ android:name=".mini.ui.hiddenservices.providers.CookieContentProvider"
+ android:authorities="org.torproject.android.mini.ui.hiddenservices.providers.cookie"
android:exported="false" />
</application>
diff --git a/app/src/main/java/org/torproject/android/OnBootReceiver.java b/app/src/main/java/org/torproject/android/OnBootReceiver.java
index 21984952..64a2ac76 100644
--- a/app/src/main/java/org/torproject/android/OnBootReceiver.java
+++ b/app/src/main/java/org/torproject/android/OnBootReceiver.java
@@ -9,7 +9,7 @@ import android.os.Build;
import org.torproject.android.service.util.Prefs;
import org.torproject.android.service.TorService;
import org.torproject.android.service.TorServiceConstants;
-import org.torproject.android.vpn.VPNEnableActivity;
+import org.torproject.android.mini.vpn.VPNEnableActivity;
public class OnBootReceiver extends BroadcastReceiver {
diff --git a/app/src/main/java/org/torproject/android/OrbotApp.java b/app/src/main/java/org/torproject/android/OrbotApp.java
index e92083d3..a4f9cd3e 100644
--- a/app/src/main/java/org/torproject/android/OrbotApp.java
+++ b/app/src/main/java/org/torproject/android/OrbotApp.java
@@ -20,8 +20,8 @@ import com.github.javiersantos.appupdater.enums.UpdateFrom;
import org.torproject.android.service.OrbotConstants;
import org.torproject.android.service.util.Prefs;
-import org.torproject.android.settings.Languages;
-import org.torproject.android.settings.LocaleHelper;
+import org.torproject.android.mini.settings.Languages;
+import org.torproject.android.mini.settings.LocaleHelper;
import java.util.Locale;
diff --git a/app/src/main/java/org/torproject/android/OrbotMainActivity.java b/app/src/main/java/org/torproject/android/OrbotMainActivity.java
index fcb8bd0c..3404e380 100644
--- a/app/src/main/java/org/torproject/android/OrbotMainActivity.java
+++ b/app/src/main/java/org/torproject/android/OrbotMainActivity.java
@@ -23,19 +23,19 @@ import org.torproject.android.service.TorServiceConstants;
import org.torproject.android.service.util.TorServiceUtils;
import org.torproject.android.service.vpn.VpnConstants;
import org.torproject.android.service.vpn.VpnPrefs;
-import org.torproject.android.settings.Languages;
-import org.torproject.android.settings.LocaleHelper;
-import org.torproject.android.settings.SettingsPreferences;
-import org.torproject.android.ui.AppManagerActivity;
-import org.torproject.android.ui.Rotate3dAnimation;
-import org.torproject.android.ui.onboarding.BridgeWizardActivity;
-import org.torproject.android.ui.onboarding.OnboardingActivity;
-import org.torproject.android.ui.hiddenservices.ClientCookiesActivity;
-import org.torproject.android.ui.hiddenservices.HiddenServicesActivity;
-import org.torproject.android.ui.hiddenservices.backup.BackupUtils;
-import org.torproject.android.ui.hiddenservices.permissions.PermissionManager;
-import org.torproject.android.ui.hiddenservices.providers.HSContentProvider;
-import org.torproject.android.vpn.VPNEnableActivity;
+import org.torproject.android.mini.settings.Languages;
+import org.torproject.android.mini.settings.LocaleHelper;
+import org.torproject.android.mini.settings.SettingsPreferences;
+import org.torproject.android.mini.ui.AppManagerActivity;
+import org.torproject.android.mini.ui.Rotate3dAnimation;
+import org.torproject.android.mini.ui.onboarding.BridgeWizardActivity;
+import org.torproject.android.mini.ui.onboarding.OnboardingActivity;
+import org.torproject.android.mini.ui.hiddenservices.ClientCookiesActivity;
+import org.torproject.android.mini.ui.hiddenservices.HiddenServicesActivity;
+import org.torproject.android.mini.ui.hiddenservices.backup.BackupUtils;
+import org.torproject.android.mini.ui.hiddenservices.permissions.PermissionManager;
+import org.torproject.android.mini.ui.hiddenservices.providers.HSContentProvider;
+import org.torproject.android.mini.vpn.VPNEnableActivity;
import android.app.ActivityManager;
import android.app.ActivityManager.RunningServiceInfo;
@@ -718,7 +718,7 @@ public class OrbotMainActivity extends AppCompatActivity
Uri contentUri = getUriForFile(
context,
- "org.torproject.android.ui.hiddenservices.storage",
+ "org.torproject.android.mini.ui.hiddenservices.storage",
hidden_service_key
);
diff --git a/app/src/main/java/org/torproject/android/mini/settings/Languages.java b/app/src/main/java/org/torproject/android/mini/settings/Languages.java
new file mode 100644
index 00000000..5fe04a62
--- /dev/null
+++ b/app/src/main/java/org/torproject/android/mini/settings/Languages.java
@@ -0,0 +1,228 @@
+package org.torproject.android.mini.settings;
+
+import android.annotation.SuppressLint;
+import android.app.Activity;
+import android.content.ContextWrapper;
+import android.content.Intent;
+import android.content.res.AssetManager;
+import android.content.res.Configuration;
+import android.content.res.Resources;
+import android.os.Build;
+import android.text.TextUtils;
+import android.util.DisplayMetrics;
+
+import java.util.Collections;
+import java.util.LinkedHashSet;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeMap;
+
+public class Languages {
+ public static final String TAG = "Languages";
+
+ public static final Locale defaultLocale;
+ public static final Locale TIBETAN = new Locale("bo");
+ static final Locale localesToTest[] = {
+ Locale.ENGLISH, Locale.FRENCH, Locale.GERMAN,
+ Locale.ITALIAN, Locale.JAPANESE, Locale.KOREAN,
+ Locale.TRADITIONAL_CHINESE, Locale.SIMPLIFIED_CHINESE,
+ TIBETAN, new Locale("af"), new Locale("am"),
+ new Locale("ar"), new Locale("ay"), new Locale("az"), new Locale("bg"),
+ new Locale("bn"), new Locale("ca"), new Locale("cs"),
+ new Locale("da"), new Locale("el"), new Locale("es"),
+ new Locale("et"), new Locale("eu"), new Locale("fa"),
+ new Locale("fi"), new Locale("gl"), new Locale("hi"),
+ new Locale("hr"), new Locale("hu"), new Locale("hy"),
+ new Locale("in"), new Locale("hy"), new Locale("in"),
+ new Locale("is"), new Locale("it"), new Locale("iw"),
+ new Locale("ka"), new Locale("kk"), new Locale("km"),
+ new Locale("kn"), new Locale("ky"), new Locale("lo"),
+ new Locale("lt"), new Locale("lv"), new Locale("mk"),
+ new Locale("ml"), new Locale("mn"), new Locale("mr"),
+ new Locale("ms"), new Locale("my"), new Locale("nb"),
+ new Locale("ne"), new Locale("nl"), new Locale("pl"),
+ new Locale("pt"), new Locale("rm"), new Locale("ro"),
+ new Locale("ru"), new Locale("si"), new Locale("sk"),
+ new Locale("sl"), new Locale("sn"), new Locale("sr"),
+ new Locale("sv"), new Locale("sw"), new Locale("ta"),
+ new Locale("te"), new Locale("th"), new Locale("tl"),
+ new Locale("tr"), new Locale("uk"), new Locale("ur"),
+ new Locale("uz"), new Locale("vi"), new Locale("zu"),
+ };
+
+ private static final String USE_SYSTEM_DEFAULT = "";
+ private static final String defaultString = "Use System Default";
+
+ private static Locale locale;
+ private static Languages singleton;
+ private static Class<?> clazz;
+ private static int resId;
+ private static Map<String, String> tmpMap = new TreeMap<String, String>();
+ private static Map<String, String> nameMap;
+
+ static {
+ defaultLocale = Locale.getDefault();
+ }
+
+ private Languages(Activity activity) {
+ AssetManager assets = activity.getAssets();
+ Configuration config = activity.getResources().getConfiguration();
+ // Resources() requires DisplayMetrics, but they are only needed for drawables
+ DisplayMetrics ignored = new DisplayMetrics();
+ activity.getWindowManager().getDefaultDisplay().getMetrics(ignored);
+ Resources resources;
+ Set<Locale> localeSet = new LinkedHashSet<Locale>();
+ for (Locale locale : localesToTest) {
+ config.locale = locale;
+ resources = new Resources(assets, ignored, config);
+ if (!TextUtils.equals(defaultString, resources.getString(resId))
+ || locale.equals(Locale.ENGLISH))
+ localeSet.add(locale);
+ }
+
+ for (Locale locale : localeSet) {
+ if (locale.equals(TIBETAN)) {
+ // include English name for devices without Tibetan font support
+ tmpMap.put(TIBETAN.toString(), "Tibetan àœàœŒàœàŒàœŠàŸàœàŒ"); // Tibetan
+ } else if (locale.equals(Locale.SIMPLIFIED_CHINESE)) {
+ tmpMap.put(Locale.SIMPLIFIED_CHINESE.toString(), "äžæ (äžåœ)"); // Chinese (China)
+ } else if (locale.equals(Locale.TRADITIONAL_CHINESE)) {
+ tmpMap.put(Locale.TRADITIONAL_CHINESE.toString(), "äžæ (å°ç£)"); // Chinese (Taiwan)
+ } else {
+ tmpMap.put(locale.toString(), locale.getDisplayLanguage(locale));
+ }
+ }
+
+ /* USE_SYSTEM_DEFAULT is a fake one for displaying in a chooser menu. */
+ // localeSet.add(null);
+ // tmpMap.put(USE_SYSTEM_DEFAULT, activity.getString(resId));
+ nameMap = Collections.unmodifiableMap(tmpMap);
+ }
+
+ /**
+ * Get the instance of {@link Languages} to work with, providing the
+ * {@link Activity} that is will be working as part of, as well as the
+ * {@code resId} that has the exact string "Use System Default",
+ * i.e. {@code R.string.use_system_default}.
+ * <p/>
+ * That string resource {@code resId} is also used to find the supported
+ * translations: if an included translation has a translated string that
+ * matches that {@code resId}, then that language will be included as a
+ * supported language.
+ *
+ * @param clazz the {@link Class} of the default {@code Activity},
+ * usually the main {@code Activity} from where the
+ * Settings is launched from.
+ * @param resId the string resource ID to for the string "Use System Default",
+ * e.g. {@code R.string.use_system_default}
+ * @return
+ */
+ public static void setup(Class<?> clazz, int resId) {
+ if (Languages.clazz == null) {
+ Languages.clazz = clazz;
+ Languages.resId = resId;
+ } else {
+ throw new RuntimeException("Languages singleton was already initialized, duplicate call to Languages.setup()!");
+ }
+ }
+
+ /**
+ * Get the singleton to work with.
+ *
+ * @param activity the {@link Activity} this is working as part of
+ * @return
+ */
+ public static Languages get(Activity activity) {
+ if (singleton == null) {
+ singleton = new Languages(activity);
+ }
+ return singleton;
+ }
+
+ @SuppressLint("NewApi")
+ public static void setLanguage(final ContextWrapper contextWrapper, String language, boolean refresh) {
+ if (locale != null && TextUtils.equals(locale.getLanguage(), language) && (!refresh)) {
+ return; // already configured
+ } else if (language == null || language == USE_SYSTEM_DEFAULT) {
+ locale = defaultLocale;
+ } else {
+ /* handle locales with the country in it, i.e. zh_CN, zh_TW, etc */
+ String localeSplit[] = language.split("_");
+ if (localeSplit.length > 1) {
+ locale = new Locale(localeSplit[0], localeSplit[1]);
+ } else {
+ locale = new Locale(language);
+ }
+ }
+
+ setLocale(contextWrapper, locale);
+
+ }
+
+ @SuppressWarnings("deprecation")
+ private static void setLocale(final ContextWrapper contextWrapper, Locale locale){
+ Resources resources = contextWrapper.getResources();
+ Configuration configuration = resources.getConfiguration();
+ DisplayMetrics displayMetrics = resources.getDisplayMetrics();
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1){
+ configuration.setLocale(locale);
+ contextWrapper.getApplicationContext().createConfigurationContext(configuration);
+ }
+ else{
+ configuration.locale=locale;
+ resources.updateConfiguration(configuration,displayMetrics);
+ }
+ }
+
+ /**
+ * Force reload the {@link Activity to make language changes take effect.}
+ *
+ * @param activity the {@code Activity} to force reload
+ */
+ public static void forceChangeLanguage(Activity activity) {
+ Intent intent = activity.getIntent();
+ if (intent == null) // when launched as LAUNCHER
+ return;
+ intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
+ activity.finish();
+ activity.overridePendingTransition(0, 0);
+ activity.startActivity(intent);
+ activity.overridePendingTransition(0, 0);
+ }
+
+ /**
+ * Return the name of the language based on the locale.
+ *
+ * @param locale
+ * @return
+ */
+ public String getName(String locale) {
+ String ret = nameMap.get(locale);
+ // if no match, try to return a more general name (i.e. English for
+ // en_IN)
+ if (ret == null && locale.contains("_"))
+ ret = nameMap.get(locale.split("_")[0]);
+ return ret;
+ }
+
+ /**
+ * Return an array of the names of all the supported languages, sorted to
+ * match what is returned by {@link Languages#getSupportedLocales()}.
+ *
+ * @return
+ */
+ public String[] getAllNames() {
+ return nameMap.values().toArray(new String[nameMap.size()]);
+ }
+
+ /**
+ * Get sorted list of supported locales.
+ *
+ * @return
+ */
+ public String[] getSupportedLocales() {
+ Set<String> keys = nameMap.keySet();
+ return keys.toArray(new String[keys.size()]);
+ }
+}
diff --git a/app/src/main/java/org/torproject/android/mini/settings/LocaleHelper.java b/app/src/main/java/org/torproject/android/mini/settings/LocaleHelper.java
new file mode 100644
index 00000000..2d84e988
--- /dev/null
+++ b/app/src/main/java/org/torproject/android/mini/settings/LocaleHelper.java
@@ -0,0 +1,87 @@
+package org.torproject.android.mini.settings;
+
+import android.annotation.TargetApi;
+import android.content.Context;
+import android.content.res.Configuration;
+import android.content.res.Resources;
+import android.os.Build;
+
+import org.torproject.android.service.util.Prefs;
+
+import java.util.Locale;
+
+/**
+ * This class is used to change your application locale and persist this change for the next time
+ * that your app is going to be used.
+ * <p/>
+ * You can also change the locale of your application on the fly by using the setLocale method.
+ * <p/>
+ * Created by gunhansancar on 07/10/15.
+ * https://gunhansancar.com/change-language-programmatically-in-android/
+ */
+public class LocaleHelper {
+
+ private static final String SELECTED_LANGUAGE = "Locale.Helper.Selected.Language";
+
+ public static Context onAttach(Context context) {
+ String lang = getPersistedData(context, Locale.getDefault().getLanguage());
+ return setLocale(context, lang);
+ }
+
+ public static Context onAttach(Context context, String defaultLanguage) {
+ String lang = getPersistedData(context, defaultLanguage);
+ return setLocale(context, lang);
+ }
+
+ public static String getLanguage(Context context) {
+ return getPersistedData(context, Locale.getDefault().getLanguage());
+ }
+
+ public static Context setLocale(Context context, String language) {
+ persist(context, language);
+
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
+ return updateResources(context, language);
+ }
+
+ return updateResourcesLegacy(context, language);
+ }
+
+ private static String getPersistedData(Context context, String defaultLanguage) {
+ return Prefs.getDefaultLocale();
+ }
+
+ private static void persist(Context context, String language) {
+ Prefs.setDefaultLocale(language);
+ }
+
+ @TargetApi(Build.VERSION_CODES.N)
+ private static Context updateResources(Context context, String language) {
+ Locale locale = new Locale(language);
+ Locale.setDefault(locale);
+
+ Configuration configuration = context.getResources().getConfiguration();
+ configuration.setLocale(locale);
+ configuration.setLayoutDirection(locale);
+
+ return context.createConfigurationContext(configuration);
+ }
+
+ @SuppressWarnings("deprecation")
+ private static Context updateResourcesLegacy(Context context, String language) {
+ Locale locale = new Locale(language);
+ Locale.setDefault(locale);
+
+ Resources resources = context.getResources();
+
+ Configuration configuration = resources.getConfiguration();
+ configuration.locale = locale;
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
+ configuration.setLayoutDirection(locale);
+ }
+
+ resources.updateConfiguration(configuration, resources.getDisplayMetrics());
+
+ return context;
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/org/torproject/android/settings/SettingsPreferences.java b/app/src/main/java/org/torproject/android/mini/settings/SettingsPreferences.java
similarity index 98%
rename from app/src/main/java/org/torproject/android/settings/SettingsPreferences.java
rename to app/src/main/java/org/torproject/android/mini/settings/SettingsPreferences.java
index 040b7b57..e613b5a7 100644
--- a/app/src/main/java/org/torproject/android/settings/SettingsPreferences.java
+++ b/app/src/main/java/org/torproject/android/mini/settings/SettingsPreferences.java
@@ -1,7 +1,7 @@
/* Copyright (c) 2009, Nathan Freitas, Orbot / The Guardian Project - http://openideals.com/guardian */
/* See LICENSE for licensing information */
-package org.torproject.android.settings;
+package org.torproject.android.mini.settings;
import android.content.Context;
import android.content.Intent;
diff --git a/app/src/main/java/org/torproject/android/ui/AppManagerActivity.java b/app/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
similarity index 95%
rename from app/src/main/java/org/torproject/android/ui/AppManagerActivity.java
rename to app/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
index f5970a25..5311897e 100644
--- a/app/src/main/java/org/torproject/android/ui/AppManagerActivity.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/AppManagerActivity.java
@@ -1,10 +1,8 @@
/* Copyright (c) 2009, Nathan Freitas, Orbot / The Guardian Project - http://openideals.com/guardian */
/* See LICENSE for licensing information */
-package org.torproject.android.ui;
+package org.torproject.android.mini.ui;
-import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -13,15 +11,10 @@ import java.util.Iterator;
import java.util.List;
import java.util.StringTokenizer;
-import org.torproject.android.OrbotMainActivity;
import org.torproject.android.service.OrbotConstants;
import org.torproject.android.R;
-import org.torproject.android.service.util.Prefs;
import org.torproject.android.service.util.TorServiceUtils;
import org.torproject.android.service.vpn.TorifiedApp;
-import org.torproject.android.settings.SettingsPreferences;
-import org.torproject.android.ui.hiddenservices.ClientCookiesActivity;
-import org.torproject.android.ui.hiddenservices.HiddenServicesActivity;
import android.Manifest;
import android.content.Intent;
@@ -48,8 +41,6 @@ import android.widget.ListAdapter;
import android.widget.ProgressBar;
import android.widget.TextView;
-import com.google.zxing.integration.android.IntentIntegrator;
-
import static org.torproject.android.service.vpn.VpnPrefs.PREFS_KEY_TORIFIED;
public class AppManagerActivity extends AppCompatActivity implements OnClickListener, OrbotConstants {
diff --git a/app/src/main/java/org/torproject/android/mini/ui/NoPersonalizedLearningEditText.java b/app/src/main/java/org/torproject/android/mini/ui/NoPersonalizedLearningEditText.java
new file mode 100644
index 00000000..a5d67d79
--- /dev/null
+++ b/app/src/main/java/org/torproject/android/mini/ui/NoPersonalizedLearningEditText.java
@@ -0,0 +1,13 @@
+package org.torproject.android.mini.ui;
+
+import android.content.Context;
+import android.support.v7.widget.AppCompatEditText;
+import android.util.AttributeSet;
+import android.view.inputmethod.EditorInfo;
+
+public class NoPersonalizedLearningEditText extends AppCompatEditText {
+ public NoPersonalizedLearningEditText(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ setImeOptions(getImeOptions() | EditorInfo.IME_FLAG_NO_PERSONALIZED_LEARNING);
+ }
+}
diff --git a/app/src/main/java/org/torproject/android/mini/ui/Rotate3dAnimation.java b/app/src/main/java/org/torproject/android/mini/ui/Rotate3dAnimation.java
new file mode 100644
index 00000000..ac8de549
--- /dev/null
+++ b/app/src/main/java/org/torproject/android/mini/ui/Rotate3dAnimation.java
@@ -0,0 +1,76 @@
+package org.torproject.android.mini.ui;
+
+import android.graphics.Camera;
+import android.graphics.Matrix;
+import android.view.animation.Animation;
+import android.view.animation.Transformation;
+
+/**
+ * An animation that rotates the view on the Y axis between two specified angles.
+ * This animation also adds a translation on the Z axis (depth) to improve the effect.
+ */
+public class Rotate3dAnimation extends Animation {
+ private final float mFromDegrees;
+ private final float mToDegrees;
+ private final float mCenterX;
+ private final float mCenterY;
+ private final float mDepthZ;
+ private final boolean mReverse;
+ private Camera mCamera;
+
+ /**
+ * Creates a new 3D rotation on the Y axis. The rotation is defined by its
+ * start angle and its end angle. Both angles are in degrees. The rotation
+ * is performed around a center point on the 2D space, definied by a pair
+ * of X and Y coordinates, called centerX and centerY. When the animation
+ * starts, a translation on the Z axis (depth) is performed. The length
+ * of the translation can be specified, as well as whether the translation
+ * should be reversed in time.
+ *
+ * @param fromDegrees the start angle of the 3D rotation
+ * @param toDegrees the end angle of the 3D rotation
+ * @param centerX the X center of the 3D rotation
+ * @param centerY the Y center of the 3D rotation
+ * @param reverse true if the translation should be reversed, false otherwise
+ */
+ public Rotate3dAnimation(float fromDegrees, float toDegrees,
+ float centerX, float centerY, float depthZ, boolean reverse) {
+ mFromDegrees = fromDegrees;
+ mToDegrees = toDegrees;
+ mCenterX = centerX;
+ mCenterY = centerY;
+ mDepthZ = depthZ;
+ mReverse = reverse;
+ }
+
+ @Override
+ public void initialize(int width, int height, int parentWidth, int parentHeight) {
+ super.initialize(width, height, parentWidth, parentHeight);
+ mCamera = new Camera();
+ }
+
+ @Override
+ protected void applyTransformation(float interpolatedTime, Transformation t) {
+ final float fromDegrees = mFromDegrees;
+ float degrees = fromDegrees + ((mToDegrees - fromDegrees) * interpolatedTime);
+
+ final float centerX = mCenterX;
+ final float centerY = mCenterY;
+ final Camera camera = mCamera;
+
+ final Matrix matrix = t.getMatrix();
+
+ camera.save();
+ if (mReverse) {
+ camera.translate(0.0f, 0.0f, mDepthZ * interpolatedTime);
+ } else {
+ camera.translate(0.0f, 0.0f, mDepthZ * (1.0f - interpolatedTime));
+ }
+ camera.rotateY(degrees);
+ camera.getMatrix(matrix);
+ camera.restore();
+
+ matrix.preTranslate(-centerX, -centerY);
+ matrix.postTranslate(centerX, centerY);
+ }
+}
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/ClientCookiesActivity.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/ClientCookiesActivity.java
similarity index 92%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/ClientCookiesActivity.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/ClientCookiesActivity.java
index e6939800..42608a8d 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/ClientCookiesActivity.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/ClientCookiesActivity.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices;
+package org.torproject.android.mini.ui.hiddenservices;
import android.content.ContentResolver;
import android.content.ContentValues;
@@ -25,13 +25,13 @@ import com.google.zxing.integration.android.IntentResult;
import org.json.JSONException;
import org.json.JSONObject;
import org.torproject.android.R;
-import org.torproject.android.settings.LocaleHelper;
-import org.torproject.android.ui.hiddenservices.adapters.ClientCookiesAdapter;
-import org.torproject.android.ui.hiddenservices.dialogs.AddCookieDialog;
-import org.torproject.android.ui.hiddenservices.dialogs.CookieActionsDialog;
-import org.torproject.android.ui.hiddenservices.dialogs.SelectCookieBackupDialog;
-import org.torproject.android.ui.hiddenservices.permissions.PermissionManager;
-import org.torproject.android.ui.hiddenservices.providers.CookieContentProvider;
+import org.torproject.android.mini.settings.LocaleHelper;
+import org.torproject.android.mini.ui.hiddenservices.adapters.ClientCookiesAdapter;
+import org.torproject.android.mini.ui.hiddenservices.dialogs.AddCookieDialog;
+import org.torproject.android.mini.ui.hiddenservices.dialogs.CookieActionsDialog;
+import org.torproject.android.mini.ui.hiddenservices.dialogs.SelectCookieBackupDialog;
+import org.torproject.android.mini.ui.hiddenservices.permissions.PermissionManager;
+import org.torproject.android.mini.ui.hiddenservices.providers.CookieContentProvider;
public class ClientCookiesActivity extends AppCompatActivity {
public final int WRITE_EXTERNAL_STORAGE_FROM_COOKIE_ACTIONBAR = 3;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/HiddenServicesActivity.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/HiddenServicesActivity.java
similarity index 92%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/HiddenServicesActivity.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/HiddenServicesActivity.java
index d7c1f313..22beee07 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/HiddenServicesActivity.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/HiddenServicesActivity.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices;
+package org.torproject.android.mini.ui.hiddenservices;
import android.content.ContentResolver;
@@ -22,13 +22,13 @@ import android.widget.Spinner;
import android.widget.Toast;
import org.torproject.android.R;
-import org.torproject.android.settings.LocaleHelper;
-import org.torproject.android.ui.hiddenservices.adapters.OnionListAdapter;
-import org.torproject.android.ui.hiddenservices.dialogs.HSActionsDialog;
-import org.torproject.android.ui.hiddenservices.dialogs.HSDataDialog;
-import org.torproject.android.ui.hiddenservices.dialogs.SelectHSBackupDialog;
-import org.torproject.android.ui.hiddenservices.permissions.PermissionManager;
-import org.torproject.android.ui.hiddenservices.providers.HSContentProvider;
+import org.torproject.android.mini.settings.LocaleHelper;
+import org.torproject.android.mini.ui.hiddenservices.adapters.OnionListAdapter;
+import org.torproject.android.mini.ui.hiddenservices.dialogs.HSActionsDialog;
+import org.torproject.android.mini.ui.hiddenservices.dialogs.HSDataDialog;
+import org.torproject.android.mini.ui.hiddenservices.dialogs.SelectHSBackupDialog;
+import org.torproject.android.mini.ui.hiddenservices.permissions.PermissionManager;
+import org.torproject.android.mini.ui.hiddenservices.providers.HSContentProvider;
public class HiddenServicesActivity extends AppCompatActivity {
public final int WRITE_EXTERNAL_STORAGE_FROM_ACTIONBAR = 1;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/BackupAdapter.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/BackupAdapter.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/BackupAdapter.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/BackupAdapter.java
index 196023b3..d7537118 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/BackupAdapter.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/BackupAdapter.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.adapters;
+package org.torproject.android.mini.ui.hiddenservices.adapters;
import android.content.Context;
import android.view.LayoutInflater;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/ClientCookiesAdapter.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/ClientCookiesAdapter.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/ClientCookiesAdapter.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/ClientCookiesAdapter.java
index bbc317a6..a27f293b 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/ClientCookiesAdapter.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/ClientCookiesAdapter.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.adapters;
+package org.torproject.android.mini.ui.hiddenservices.adapters;
import android.content.ContentResolver;
import android.content.ContentValues;
@@ -14,7 +14,7 @@ import android.widget.TextView;
import android.widget.Toast;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.providers.CookieContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.CookieContentProvider;
public class ClientCookiesAdapter extends CursorAdapter {
private LayoutInflater cursorInflater;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/OnionListAdapter.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/OnionListAdapter.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/OnionListAdapter.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/OnionListAdapter.java
index 9824c773..493589db 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/adapters/OnionListAdapter.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/adapters/OnionListAdapter.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.adapters;
+package org.torproject.android.mini.ui.hiddenservices.adapters;
import android.content.ContentResolver;
import android.content.ContentValues;
@@ -14,7 +14,7 @@ import android.widget.TextView;
import android.widget.Toast;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.providers.HSContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.HSContentProvider;
public class OnionListAdapter extends CursorAdapter {
private LayoutInflater cursorInflater;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/backup/BackupUtils.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/backup/BackupUtils.java
similarity index 97%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/backup/BackupUtils.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/backup/BackupUtils.java
index a4790dd8..f6b3eae1 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/backup/BackupUtils.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/backup/BackupUtils.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.backup;
+package org.torproject.android.mini.ui.hiddenservices.backup;
import android.content.ContentResolver;
import android.content.ContentValues;
@@ -12,9 +12,9 @@ import org.json.JSONException;
import org.json.JSONObject;
import org.torproject.android.R;
import org.torproject.android.service.TorServiceConstants;
-import org.torproject.android.ui.hiddenservices.providers.CookieContentProvider;
-import org.torproject.android.ui.hiddenservices.providers.HSContentProvider;
-import org.torproject.android.ui.hiddenservices.storage.ExternalStorage;
+import org.torproject.android.mini.ui.hiddenservices.providers.CookieContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.HSContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.storage.ExternalStorage;
import java.io.File;
import java.io.FileInputStream;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/backup/ZipIt.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/backup/ZipIt.java
similarity index 97%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/backup/ZipIt.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/backup/ZipIt.java
index 130b56bb..6b26845e 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/backup/ZipIt.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/backup/ZipIt.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.backup;
+package org.torproject.android.mini.ui.hiddenservices.backup;
import android.support.annotation.NonNull;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/database/HSDatabase.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/database/HSDatabase.java
similarity index 96%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/database/HSDatabase.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/database/HSDatabase.java
index 18bc7aa0..4c0b28a3 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/database/HSDatabase.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/database/HSDatabase.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.database;
+package org.torproject.android.mini.ui.hiddenservices.database;
import android.content.Context;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/AddCookieDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/AddCookieDialog.java
similarity index 95%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/AddCookieDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/AddCookieDialog.java
index 8441d53f..d0af6aa4 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/AddCookieDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/AddCookieDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
@@ -14,7 +14,7 @@ import android.widget.EditText;
import android.widget.Toast;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.providers.CookieContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.CookieContentProvider;
public class AddCookieDialog extends DialogFragment {
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/CookieActionsDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/CookieActionsDialog.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/CookieActionsDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/CookieActionsDialog.java
index 7b5a2cfe..0d66bd5b 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/CookieActionsDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/CookieActionsDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
@@ -14,8 +14,8 @@ import android.widget.Button;
import android.widget.Toast;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.backup.BackupUtils;
-import org.torproject.android.ui.hiddenservices.permissions.PermissionManager;
+import org.torproject.android.mini.ui.hiddenservices.backup.BackupUtils;
+import org.torproject.android.mini.ui.hiddenservices.permissions.PermissionManager;
public class CookieActionsDialog extends DialogFragment {
public static final int WRITE_EXTERNAL_STORAGE_FROM_COOKIE_ACTION_DIALOG = 4;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/CookieDeleteDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/CookieDeleteDialog.java
similarity index 91%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/CookieDeleteDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/CookieDeleteDialog.java
index 60c4d8e3..eab21aa4 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/CookieDeleteDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/CookieDeleteDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
@@ -10,7 +10,7 @@ import android.support.v4.app.DialogFragment;
import android.support.v7.app.AlertDialog;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.providers.CookieContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.CookieContentProvider;
public class CookieDeleteDialog extends DialogFragment {
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSActionsDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSActionsDialog.java
similarity index 95%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSActionsDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSActionsDialog.java
index 5be76917..2aa41968 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSActionsDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSActionsDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
@@ -16,8 +16,8 @@ import android.widget.Button;
import android.widget.Toast;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.backup.BackupUtils;
-import org.torproject.android.ui.hiddenservices.permissions.PermissionManager;
+import org.torproject.android.mini.ui.hiddenservices.backup.BackupUtils;
+import org.torproject.android.mini.ui.hiddenservices.permissions.PermissionManager;
public class HSActionsDialog extends DialogFragment {
public static final int WRITE_EXTERNAL_STORAGE_FROM_ACTION_DIALOG = 2;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSCookieDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSCookieDialog.java
similarity index 95%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSCookieDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSCookieDialog.java
index 39c1b510..8a7df0bd 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSCookieDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSCookieDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
import android.content.ClipData;
@@ -18,7 +18,7 @@ import com.google.zxing.integration.android.IntentIntegrator;
import org.json.JSONException;
import org.json.JSONObject;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.providers.CookieContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.CookieContentProvider;
public class HSCookieDialog extends DialogFragment {
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSDataDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSDataDialog.java
similarity index 96%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSDataDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSDataDialog.java
index 01e09dff..dac8f13b 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSDataDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSDataDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
@@ -15,7 +15,7 @@ import android.widget.EditText;
import android.widget.Toast;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.providers.HSContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.HSContentProvider;
public class HSDataDialog extends DialogFragment {
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSDeleteDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSDeleteDialog.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSDeleteDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSDeleteDialog.java
index ac5df743..11036950 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/HSDeleteDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/HSDeleteDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
@@ -11,7 +11,7 @@ import android.support.v7.app.AlertDialog;
import org.torproject.android.R;
import org.torproject.android.service.TorServiceConstants;
-import org.torproject.android.ui.hiddenservices.providers.HSContentProvider;
+import org.torproject.android.mini.ui.hiddenservices.providers.HSContentProvider;
import java.io.File;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/SelectCookieBackupDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/SelectCookieBackupDialog.java
similarity index 90%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/SelectCookieBackupDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/SelectCookieBackupDialog.java
index de5b7848..c36e0308 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/SelectCookieBackupDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/SelectCookieBackupDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
import android.content.DialogInterface;
@@ -11,9 +11,9 @@ import android.widget.AdapterView;
import android.widget.ListView;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.adapters.BackupAdapter;
-import org.torproject.android.ui.hiddenservices.backup.BackupUtils;
-import org.torproject.android.ui.hiddenservices.storage.ExternalStorage;
+import org.torproject.android.mini.ui.hiddenservices.adapters.BackupAdapter;
+import org.torproject.android.mini.ui.hiddenservices.backup.BackupUtils;
+import org.torproject.android.mini.ui.hiddenservices.storage.ExternalStorage;
import java.io.File;
import java.io.FilenameFilter;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/SelectHSBackupDialog.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/SelectHSBackupDialog.java
similarity index 90%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/SelectHSBackupDialog.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/SelectHSBackupDialog.java
index a6e3bac9..a8d17d97 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/dialogs/SelectHSBackupDialog.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/dialogs/SelectHSBackupDialog.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.dialogs;
+package org.torproject.android.mini.ui.hiddenservices.dialogs;
import android.app.Dialog;
import android.content.DialogInterface;
@@ -11,9 +11,9 @@ import android.widget.AdapterView;
import android.widget.ListView;
import org.torproject.android.R;
-import org.torproject.android.ui.hiddenservices.adapters.BackupAdapter;
-import org.torproject.android.ui.hiddenservices.backup.BackupUtils;
-import org.torproject.android.ui.hiddenservices.storage.ExternalStorage;
+import org.torproject.android.mini.ui.hiddenservices.adapters.BackupAdapter;
+import org.torproject.android.mini.ui.hiddenservices.backup.BackupUtils;
+import org.torproject.android.mini.ui.hiddenservices.storage.ExternalStorage;
import java.io.File;
import java.io.FilenameFilter;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/permissions/PermissionManager.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/permissions/PermissionManager.java
similarity index 98%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/permissions/PermissionManager.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/permissions/PermissionManager.java
index a9df5a95..910c06e3 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/permissions/PermissionManager.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/permissions/PermissionManager.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.permissions;
+package org.torproject.android.mini.ui.hiddenservices.permissions;
import android.Manifest;
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/providers/CookieContentProvider.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/providers/CookieContentProvider.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/providers/CookieContentProvider.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/providers/CookieContentProvider.java
index f420a6d8..29d34a08 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/providers/CookieContentProvider.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/providers/CookieContentProvider.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.providers;
+package org.torproject.android.mini.ui.hiddenservices.providers;
import android.content.ContentProvider;
import android.content.ContentUris;
@@ -12,7 +12,7 @@ import android.provider.BaseColumns;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
-import org.torproject.android.ui.hiddenservices.database.HSDatabase;
+import org.torproject.android.mini.ui.hiddenservices.database.HSDatabase;
public class CookieContentProvider extends ContentProvider {
@@ -22,7 +22,7 @@ public class CookieContentProvider extends ContentProvider {
ClientCookie.AUTH_COOKIE_VALUE,
ClientCookie.ENABLED
};
- private static final String AUTH = "org.torproject.android.ui.hiddenservices.providers.cookie";
+ private static final String AUTH = "org.torproject.android.mini.ui.hiddenservices.providers.cookie";
public static final Uri CONTENT_URI =
Uri.parse("content://" + AUTH + "/cookie");
//UriMatcher
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/providers/HSContentProvider.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/providers/HSContentProvider.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/providers/HSContentProvider.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/providers/HSContentProvider.java
index d7b558fd..f6394d99 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/providers/HSContentProvider.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/providers/HSContentProvider.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.providers;
+package org.torproject.android.mini.ui.hiddenservices.providers;
import android.content.ContentProvider;
import android.content.ContentUris;
@@ -12,7 +12,7 @@ import android.provider.BaseColumns;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
-import org.torproject.android.ui.hiddenservices.database.HSDatabase;
+import org.torproject.android.mini.ui.hiddenservices.database.HSDatabase;
public class HSContentProvider extends ContentProvider {
@@ -27,7 +27,7 @@ public class HSContentProvider extends ContentProvider {
HiddenService.CREATED_BY_USER,
HiddenService.ENABLED
};
- private static final String AUTH = "org.torproject.android.ui.hiddenservices.providers";
+ private static final String AUTH = "org.torproject.android.mini.ui.hiddenservices.providers";
public static final Uri CONTENT_URI =
Uri.parse("content://" + AUTH + "/hs");
//UriMatcher
diff --git a/app/src/main/java/org/torproject/android/ui/hiddenservices/storage/ExternalStorage.java b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/storage/ExternalStorage.java
similarity index 94%
rename from app/src/main/java/org/torproject/android/ui/hiddenservices/storage/ExternalStorage.java
rename to app/src/main/java/org/torproject/android/mini/ui/hiddenservices/storage/ExternalStorage.java
index c50108b7..bc72353f 100644
--- a/app/src/main/java/org/torproject/android/ui/hiddenservices/storage/ExternalStorage.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/hiddenservices/storage/ExternalStorage.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.hiddenservices.storage;
+package org.torproject.android.mini.ui.hiddenservices.storage;
import android.os.Environment;
diff --git a/app/src/main/java/org/torproject/android/ui/onboarding/BridgeWizardActivity.java b/app/src/main/java/org/torproject/android/mini/ui/onboarding/BridgeWizardActivity.java
similarity index 98%
rename from app/src/main/java/org/torproject/android/ui/onboarding/BridgeWizardActivity.java
rename to app/src/main/java/org/torproject/android/mini/ui/onboarding/BridgeWizardActivity.java
index 7561ae07..2efc387e 100644
--- a/app/src/main/java/org/torproject/android/ui/onboarding/BridgeWizardActivity.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/onboarding/BridgeWizardActivity.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.onboarding;
+package org.torproject.android.mini.ui.onboarding;
import android.app.AlertDialog;
import android.app.Dialog;
@@ -17,9 +17,8 @@ import android.widget.RadioButton;
import android.widget.TextView;
import org.torproject.android.R;
-import org.torproject.android.service.OrbotConstants;
import org.torproject.android.service.util.Prefs;
-import org.torproject.android.settings.LocaleHelper;
+import org.torproject.android.mini.settings.LocaleHelper;
import java.io.IOException;
import java.net.InetSocketAddress;
diff --git a/app/src/main/java/org/torproject/android/ui/onboarding/CustomSlideBigText.java b/app/src/main/java/org/torproject/android/mini/ui/onboarding/CustomSlideBigText.java
similarity index 97%
rename from app/src/main/java/org/torproject/android/ui/onboarding/CustomSlideBigText.java
rename to app/src/main/java/org/torproject/android/mini/ui/onboarding/CustomSlideBigText.java
index 35f5a55a..954a1221 100644
--- a/app/src/main/java/org/torproject/android/ui/onboarding/CustomSlideBigText.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/onboarding/CustomSlideBigText.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.onboarding;
+package org.torproject.android.mini.ui.onboarding;
import android.os.Bundle;
import android.support.annotation.Nullable;
diff --git a/app/src/main/java/org/torproject/android/ui/onboarding/OnboardingActivity.java b/app/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
similarity index 90%
rename from app/src/main/java/org/torproject/android/ui/onboarding/OnboardingActivity.java
rename to app/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
index bceb0ada..2b19d841 100644
--- a/app/src/main/java/org/torproject/android/ui/onboarding/OnboardingActivity.java
+++ b/app/src/main/java/org/torproject/android/mini/ui/onboarding/OnboardingActivity.java
@@ -1,4 +1,4 @@
-package org.torproject.android.ui.onboarding;
+package org.torproject.android.mini.ui.onboarding;
import android.content.Context;
import android.content.Intent;
@@ -10,10 +10,10 @@ import android.view.View;
import com.github.paolorotolo.appintro.AppIntro;
import org.torproject.android.R;
-import org.torproject.android.settings.LocaleHelper;
-import org.torproject.android.ui.AppManagerActivity;
-import org.torproject.android.ui.hiddenservices.permissions.PermissionManager;
-import org.torproject.android.vpn.VPNEnableActivity;
+import org.torproject.android.mini.settings.LocaleHelper;
+import org.torproject.android.mini.ui.AppManagerActivity;
+import org.torproject.android.mini.ui.hiddenservices.permissions.PermissionManager;
+import org.torproject.android.mini.vpn.VPNEnableActivity;
public class OnboardingActivity extends AppIntro {
diff --git a/app/src/main/java/org/torproject/android/mini/vpn/VPNEnableActivity.java b/app/src/main/java/org/torproject/android/mini/vpn/VPNEnableActivity.java
new file mode 100644
index 00000000..29492d3e
--- /dev/null
+++ b/app/src/main/java/org/torproject/android/mini/vpn/VPNEnableActivity.java
@@ -0,0 +1,120 @@
+package org.torproject.android.mini.vpn;
+
+import org.torproject.android.service.util.Prefs;
+import org.torproject.android.service.TorService;
+import org.torproject.android.service.TorServiceConstants;
+
+import android.content.Intent;
+import android.net.VpnService;
+import android.os.Build;
+import android.os.Bundle;
+import android.os.Handler;
+import android.support.v7.app.AppCompatActivity;
+import android.util.Log;
+import android.view.Window;
+
+/**
+ * To combat background service being stopped/swiped
+ */
+public class VPNEnableActivity extends AppCompatActivity {
+
+ private final static int REQUEST_VPN = 7777;
+ private Intent intent = null;
+ private boolean checkVpn = true;
+ private Handler h = new Handler();
+
+ @Override
+ public void onCreate(Bundle icicle ) {
+ requestWindowFeature(Window.FEATURE_NO_TITLE);
+
+ super.onCreate( icicle );
+
+ Log.d("VPNEnableActivity","prompting user to start Orbot VPN");
+ }
+
+ public void onResume() {
+ super.onResume();
+
+ if (checkVpn)
+ {
+ intent = VpnService.prepare(this);
+
+ if (intent != null)
+ promptStartVpnService();
+ else
+ startVpnService ();
+
+ checkVpn = false;
+ }
+ }
+
+ public void promptStartVpnService () {
+ // todo no actual prompting happens here and this should be refactored
+ startVpnService();
+ }
+
+ private void startVpnService ()
+ {
+ if (intent == null)
+ {
+ Prefs.putUseVpn(true);
+
+ Log.d("VPNEnableActivity","VPN enabled, starting Tor...");
+ sendIntentToService(TorServiceConstants.CMD_VPN);
+
+ Handler h = new Handler();
+ h.postDelayed(new Runnable () {
+
+ public void run ()
+ {
+ sendIntentToService(TorServiceConstants.ACTION_START);
+ finish();
+ }
+ }, 100);
+
+
+ }
+ else
+ {
+ Log.w("VPNEnableActivity","prompt for VPN");
+ startActivityForResult(intent,REQUEST_VPN);
+
+ }
+
+ }
+
+ public static final int ACTIVITY_RESULT_VPN_DENIED = 63;
+
+ @Override
+ protected void onActivityResult(int request, int response, Intent data) {
+ super.onActivityResult(request, response, data);
+
+ if (request == REQUEST_VPN && response == RESULT_OK) {
+ sendIntentToService(TorServiceConstants.CMD_VPN);
+ h.postDelayed(new Runnable () {
+ @Override
+ public void run () {
+ sendIntentToService(TorServiceConstants.ACTION_START);
+ finish();
+ }
+ }, 1000);
+ }
+ else if (request == REQUEST_VPN && response == RESULT_CANCELED) {
+ setResult(ACTIVITY_RESULT_VPN_DENIED);
+ finish();
+ }
+ }
+
+
+ private void sendIntentToService(String action) {
+ Intent torService = new Intent(this, TorService.class);
+ torService.setAction(action);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ startForegroundService(torService);
+ }
+ else
+ {
+ startService(torService);
+ }
+ }
+}
diff --git a/app/src/main/res/layout/activity_bridge_wizard.xml b/app/src/main/res/layout/activity_bridge_wizard.xml
index 7ff470c9..cc23654c 100644
--- a/app/src/main/res/layout/activity_bridge_wizard.xml
+++ b/app/src/main/res/layout/activity_bridge_wizard.xml
@@ -6,7 +6,7 @@
android:layout_height="match_parent"
android:background="@color/dark_purple"
- tools:context="org.torproject.android.ui.onboarding.BridgeWizardActivity">
+ tools:context="org.torproject.android.mini.ui.onboarding.BridgeWizardActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/content_bridge_wizard.xml b/app/src/main/res/layout/content_bridge_wizard.xml
index a5b7995b..15387fff 100644
--- a/app/src/main/res/layout/content_bridge_wizard.xml
+++ b/app/src/main/res/layout/content_bridge_wizard.xml
@@ -6,7 +6,7 @@
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
- tools:context="org.torproject.android.ui.onboarding.BridgeWizardActivity"
+ tools:context="org.torproject.android.mini.ui.onboarding.BridgeWizardActivity"
tools:showIn="@layout/activity_bridge_wizard">
<TextView
diff --git a/app/src/main/res/layout/layout_activity_client_cookies.xml b/app/src/main/res/layout/layout_activity_client_cookies.xml
index b8f0626e..5c5bf936 100644
--- a/app/src/main/res/layout/layout_activity_client_cookies.xml
+++ b/app/src/main/res/layout/layout_activity_client_cookies.xml
@@ -5,7 +5,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
- tools:context="org.torproject.android.ui.hiddenservices.ClientCookiesActivity">
+ tools:context="org.torproject.android.mini.ui.hiddenservices.ClientCookiesActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/layout_add_client_cookie_dialog.xml b/app/src/main/res/layout/layout_add_client_cookie_dialog.xml
index 2f4b9885..f28a8282 100644
--- a/app/src/main/res/layout/layout_add_client_cookie_dialog.xml
+++ b/app/src/main/res/layout/layout_add_client_cookie_dialog.xml
@@ -15,7 +15,7 @@
android:textAppearance="@style/TextAppearance.AppCompat.Widget.PopupMenu.Small"
android:paddingLeft="5dp" />
- <org.torproject.android.ui.NoPersonalizedLearningEditText
+ <org.torproject.android.mini.ui.NoPersonalizedLearningEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
@@ -29,7 +29,7 @@
android:textAppearance="@style/TextAppearance.AppCompat.Widget.PopupMenu.Small"
android:paddingLeft="5dp" />
- <org.torproject.android.ui.NoPersonalizedLearningEditText
+ <org.torproject.android.mini.ui.NoPersonalizedLearningEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
diff --git a/app/src/main/res/layout/layout_content_client_cookies.xml b/app/src/main/res/layout/layout_content_client_cookies.xml
index 2517d8e1..5295641c 100644
--- a/app/src/main/res/layout/layout_content_client_cookies.xml
+++ b/app/src/main/res/layout/layout_content_client_cookies.xml
@@ -9,7 +9,7 @@
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
- tools:context="org.torproject.android.ui.hiddenservices.ClientCookiesActivity"
+ tools:context="org.torproject.android.mini.ui.hiddenservices.ClientCookiesActivity"
tools:showIn="@layout/layout_activity_client_cookies">
<ListView
diff --git a/app/src/main/res/layout/layout_hs_data_dialog.xml b/app/src/main/res/layout/layout_hs_data_dialog.xml
index a4ac590e..20a1e2b2 100644
--- a/app/src/main/res/layout/layout_hs_data_dialog.xml
+++ b/app/src/main/res/layout/layout_hs_data_dialog.xml
@@ -15,7 +15,7 @@
android:textAppearance="@style/TextAppearance.AppCompat.Widget.PopupMenu.Small"
android:paddingLeft="5dp" />
- <org.torproject.android.ui.NoPersonalizedLearningEditText
+ <org.torproject.android.mini.ui.NoPersonalizedLearningEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"
@@ -29,7 +29,7 @@
android:textAppearance="@style/TextAppearance.AppCompat.Widget.PopupMenu.Small"
android:paddingLeft="5dp" />
- <org.torproject.android.ui.NoPersonalizedLearningEditText
+ <org.torproject.android.mini.ui.NoPersonalizedLearningEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
@@ -43,7 +43,7 @@
android:textAppearance="@style/TextAppearance.AppCompat.Widget.PopupMenu.Small"
android:paddingLeft="5dp" />
- <org.torproject.android.ui.NoPersonalizedLearningEditText
+ <org.torproject.android.mini.ui.NoPersonalizedLearningEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
diff --git a/app/src/main/res/layout/layout_hs_list_view.xml b/app/src/main/res/layout/layout_hs_list_view.xml
index 4981877d..9c3f5599 100644
--- a/app/src/main/res/layout/layout_hs_list_view.xml
+++ b/app/src/main/res/layout/layout_hs_list_view.xml
@@ -5,7 +5,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
- tools:context="org.torproject.android.ui.hiddenservices.HiddenServicesActivity">
+ tools:context="org.torproject.android.mini.ui.hiddenservices.HiddenServicesActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/layout_hs_list_view_main.xml b/app/src/main/res/layout/layout_hs_list_view_main.xml
index 183ea28a..ba907e6e 100644
--- a/app/src/main/res/layout/layout_hs_list_view_main.xml
+++ b/app/src/main/res/layout/layout_hs_list_view_main.xml
@@ -9,7 +9,7 @@
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
- tools:context="org.torproject.android.ui.hiddenservices.HiddenServicesActivity"
+ tools:context="org.torproject.android.mini.ui.hiddenservices.HiddenServicesActivity"
tools:showIn="@layout/layout_hs_list_view">
<ListView
diff --git a/build.gradle b/build.gradle
index ad5ff6ed..e75c784c 100644
--- a/build.gradle
+++ b/build.gradle
@@ -5,7 +5,7 @@ buildscript {
google()
}
dependencies {
- classpath 'com.android.tools.build:gradle:3.4.2'
+ classpath 'com.android.tools.build:gradle:3.5.0'
}
}
diff --git a/external/pluto b/external/pluto
deleted file mode 160000
index 64faf224..00000000
--- a/external/pluto
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 64faf224a90ec3ef8a806f9ec45c1caffafea768
diff --git a/orbotservice/build.gradle b/orbotservice/build.gradle
index f8e96bf5..a62d4590 100644
--- a/orbotservice/build.gradle
+++ b/orbotservice/build.gradle
@@ -29,6 +29,10 @@ android {
abortOnError false
}
+ packagingOptions {
+ exclude 'assets/arm/obfs4proxy' //this is redundant
+ }
+
}
dependencies {
diff --git a/orbotservice/src/main/java/org/torproject/android/service/TorEventHandler.java b/orbotservice/src/main/java/org/torproject/android/service/TorEventHandler.java
index 9214df4e..15ec4bc0 100644
--- a/orbotservice/src/main/java/org/torproject/android/service/TorEventHandler.java
+++ b/orbotservice/src/main/java/org/torproject/android/service/TorEventHandler.java
@@ -112,6 +112,7 @@ public class TorEventHandler implements EventHandler, TorServiceConstants {
if (read != lastRead || written != lastWritten)
{
+ /**
StringBuilder sb = new StringBuilder();
sb.append(formatCount(read));
sb.append(" \u2193");
@@ -125,6 +126,7 @@ public class TorEventHandler implements EventHandler, TorServiceConstants {
iconId = R.drawable.ic_stat_tor_xfer;
mService.showToolbarNotification(sb.toString(), mService.getNotifyId(), iconId);
+ **/
mTotalTrafficWritten += written;
mTotalTrafficRead += read;
diff --git a/orbotservice/src/main/java/org/torproject/android/service/TorService.java b/orbotservice/src/main/java/org/torproject/android/service/TorService.java
index fc518024..3a1068e5 100644
--- a/orbotservice/src/main/java/org/torproject/android/service/TorService.java
+++ b/orbotservice/src/main/java/org/torproject/android/service/TorService.java
@@ -136,8 +136,8 @@ public class TorService extends Service implements TorServiceConstants, OrbotCon
private ArrayList<Bridge> alBridges = null;
- private static final Uri HS_CONTENT_URI = Uri.parse("content://org.torproject.android.ui.hiddenservices.providers/hs");
- private static final Uri COOKIE_CONTENT_URI = Uri.parse("content://org.torproject.android.ui.hiddenservices.providers.cookie/cookie");
+ private static final Uri HS_CONTENT_URI = Uri.parse("content://org.torproject.android.mini.ui.hiddenservices.providers/hs");
+ private static final Uri COOKIE_CONTENT_URI = Uri.parse("content://org.torproject.android.mini.ui.hiddenservices.providers.cookie/cookie");
private Handler mHandler;
diff --git a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor.png b/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor.png
deleted file mode 100644
index b4d2e333..00000000
Binary files a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor_xfer.png
deleted file mode 100644
index 3d757218..00000000
Binary files a/orbotservice/src/main/res/drawable-hdpi-v11/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-hdpi-v9/ic_stat_tor.png b/orbotservice/src/main/res/drawable-hdpi-v9/ic_stat_tor.png
deleted file mode 100644
index 1dfdc09a..00000000
Binary files a/orbotservice/src/main/res/drawable-hdpi-v9/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png
index 0f3b147e..3091474e 100644
Binary files a/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor_xfer.png
deleted file mode 100644
index d222fb67..00000000
Binary files a/orbotservice/src/main/res/drawable-hdpi/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-ldpi-v11/ic_stat_tor.png b/orbotservice/src/main/res/drawable-ldpi-v11/ic_stat_tor.png
deleted file mode 100644
index 0f24ee8a..00000000
Binary files a/orbotservice/src/main/res/drawable-ldpi-v11/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-ldpi-v9/ic_stat_tor.png b/orbotservice/src/main/res/drawable-ldpi-v9/ic_stat_tor.png
deleted file mode 100644
index 82d54466..00000000
Binary files a/orbotservice/src/main/res/drawable-ldpi-v9/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-ldpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-ldpi/ic_stat_tor.png
deleted file mode 100644
index 3cd399db..00000000
Binary files a/orbotservice/src/main/res/drawable-ldpi/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_tor.png b/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_tor.png
deleted file mode 100644
index a34840dc..00000000
Binary files a/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_tor_xfer.png
deleted file mode 100644
index fe291e76..00000000
Binary files a/orbotservice/src/main/res/drawable-mdpi-v11/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-mdpi-v9/ic_stat_tor.png b/orbotservice/src/main/res/drawable-mdpi-v9/ic_stat_tor.png
deleted file mode 100644
index c150cede..00000000
Binary files a/orbotservice/src/main/res/drawable-mdpi-v9/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png
index 6649e14a..a10c654d 100644
Binary files a/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor_xfer.png
deleted file mode 100644
index 73ab2330..00000000
Binary files a/orbotservice/src/main/res/drawable-mdpi/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_tor.png
deleted file mode 100644
index e742ae7b..00000000
Binary files a/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_tor_xfer.png
deleted file mode 100644
index 27e86725..00000000
Binary files a/orbotservice/src/main/res/drawable-xhdpi-v11/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png
deleted file mode 100644
index 9e56f4fc..00000000
Binary files a/orbotservice/src/main/res/drawable-xhdpi-v9/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png
index 11254d2b..25bf4549 100644
Binary files a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor_xfer.png
deleted file mode 100644
index 522d6530..00000000
Binary files a/orbotservice/src/main/res/drawable-xhdpi/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi-v11/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxhdpi-v11/ic_stat_tor.png
deleted file mode 100644
index 1451c505..00000000
Binary files a/orbotservice/src/main/res/drawable-xxhdpi-v11/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png
deleted file mode 100644
index 59e63d4d..00000000
Binary files a/orbotservice/src/main/res/drawable-xxhdpi-v11/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png
index 778cc1e2..fb7bce8a 100644
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor_xfer.png
deleted file mode 100644
index eb8809c4..00000000
Binary files a/orbotservice/src/main/res/drawable-xxhdpi/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor.png
deleted file mode 100644
index a78d2907..00000000
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png
deleted file mode 100644
index 30fe5893..00000000
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi-v11/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png b/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png
index a2ff338a..32595644 100644
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png and b/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor.png differ
diff --git a/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor_xfer.png b/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor_xfer.png
deleted file mode 100644
index 8f967793..00000000
Binary files a/orbotservice/src/main/res/drawable-xxxhdpi/ic_stat_tor_xfer.png and /dev/null differ
diff --git a/settings.gradle b/settings.gradle
index c72325d7..05e4830c 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1 +1 @@
-include ':orbotservice',':app'
+include ':orbotservice',':app',':app-mini'
1
0