diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml
index a16aa1846..c076c21be 100644
--- a/.github/workflows/validate.yml
+++ b/.github/workflows/validate.yml
@@ -15,8 +15,10 @@ jobs:
strategy:
matrix:
version:
- - "StableFullRelease"
- - "StableFdroidRelease"
+ - "OoniStableFullRelease"
+ - "OoniStableFdroidRelease"
+ - "DwStableFullRelease"
+ - "DwStableFdroidRelease"
steps:
- name: Set up JDK 17
@@ -47,14 +49,14 @@ jobs:
uses: actions/checkout@v4
- name: Run unit tests
- run: ./gradlew testStableFullRelease
+ run: ./gradlew testOoniStableFullRelease
- name: Uploads test reports
uses: actions/upload-artifact@v4
if: failure()
with:
name: test-report
- path: app/build/test-results/testStableFullDebugUnitTest
+ path: app/build/test-results/testOoniStableFullReleaseUnitTest
instrumented-test:
name: Run instrumented tests
@@ -85,14 +87,14 @@ jobs:
profile: pixel_3_xl
ram-size: 4096M
disable-animations: true
- script: ./gradlew connectedStableFullDebugAndroidTest
+ script: ./gradlew connectedOoniStableFullDebugAndroidTest
- name: uploads test reports
uses: actions/upload-artifact@v4
if: failure()
with:
name: emulator-test-reports
- path: app/build/reports/androidTests/connected/debug/flavors/stableFull/
+ path: app/build/reports/androidTests/connected/debug/flavors/ooniStableFull/
assemble-archive:
name: Archive APKs
@@ -101,10 +103,13 @@ jobs:
strategy:
matrix:
version:
- - "StableFullDebug"
- - "StableFdroidDebug"
- - "DevFullDebug"
- - "DevFullDebugAndroidTest"
+ - "OoniStableFullDebug"
+ - "OoniStableFdroidDebug"
+ - "OoniDevFullDebug"
+ - "OoniDevFullDebugAndroidTest"
+ - "DwStableFullDebug"
+ - "DwStableFdroidDebug"
+ - "DwDevFullDebug"
needs: [ build ]
steps:
@@ -148,10 +153,13 @@ jobs:
with:
name: ${{ matrix.version }}Apk
path: |
- app/build/outputs/apk/devFull/debug/app-dev-full-debug.apk
- app/build/outputs/apk/androidTest/devFull/debug/app-dev-full-debug-androidTest.apk
- app/build/outputs/apk/stableFull/debug/app-stable-full-debug.apk
- app/build/outputs/apk/stableFdroid/debug/app-stable-fdroid-debug.apk
+ app/build/outputs/apk/ooniStableFull/debug/app-ooni-stable-full-debug.apk
+ app/build/outputs/apk/ooniStableFdroid/debug/app-ooni-stable-fdroid-debug.apk
+ app/build/outputs/apk/ooniDevFull/debug/app-ooni-dev-full-debug.apk
+ app/build/outputs/apk/androidTest/ooniDevFull/debug/app-ooni-dev-full-debug-androidTest.apk
+ app/build/outputs/apk/dwStableFull/debug/app-dw-stable-full-debug.apk
+ app/build/outputs/apk/dwStableFdroid/debug/app-dw-stable-fdroid-debug.apk
+ app/build/outputs/apk/dwDevFull/debug/app-dw-dev-full-debug.apk
distribute:
name: Upload artifact to Firebase App Distribution
@@ -165,7 +173,7 @@ jobs:
- name: Download app APK
uses: actions/download-artifact@v4
with:
- name: DevFullDebugApk
+ name: OoniDevFullDebugApk
- name: Upload artifact to Firebase App Distribution
uses: wzieba/Firebase-Distribution-Github-Action@v1.7.0
@@ -174,7 +182,7 @@ jobs:
appId: ${{secrets.FIREBASE_APP_ID}}
serviceCredentialsFileContent: ${{ secrets.CREDENTIAL_FILE_CONTENT }}
groups: testers
- file: devFull/debug/app-dev-full-debug.apk
+ file: ooniDevFull/debug/app-ooni-dev-full-debug.apk
- name: Write Summary
run: |
echo "View this release in the Firebase console: ${{ steps.uploadArtifact.outputs.FIREBASE_CONSOLE_URI }}" >> $GITHUB_STEP_SUMMARY
\ No newline at end of file
diff --git a/README.md b/README.md
index f2053aabb..1f5ae7346 100644
--- a/README.md
+++ b/README.md
@@ -61,6 +61,8 @@ implement the following flavours:
- `full` and `fdroid` (dimension: `license`).
+- `ooni` and `dw` (dimension: `brand`).
+
The `testing` dimension controls whether we're building a release
or a more unstable version. We build releases using the `stable`
flavour. The `dev` flavour builds the version of the app that should
@@ -68,78 +70,75 @@ be released on the store as the beta channel. The `experimental`
flavour, instead, allows a developer to build a one-off version of
the app that uses a custom build of the `oonimkall` library.
-For `stable` and `dev`, we fetch `oonimkall` from the
-[Maven central](https://search.maven.org/artifact/org.ooni/oonimkall)
-repository. The `experimental` flavour, instead, requires you to
-put the `oonimkall.aar` you built inside `engine-experimental`.
-
The `license` dimension controls which proprietary libraries to include
into the build. The `full` flavour includes all such dependencies,
while the `fdroid` flavour does not include any of them.
-The variant names are therefore:
+The `brand` dimension controls the branding of the application. The `ooni` flavour is the default branding, while the `dw` flavour is for the "News Media Scan" branding.
-- `experimentalFullDebug`
-- `experimentalFullRelease`
-- `devFullDebug`
-- `devFullRelease`
-- `stableFullDebug`
-- `stableFullRelease`
+The variant names are therefore:
-We additionally have `stableFdroidDebug` and `stableFdroidRelease`.
+- `ooniExperimentalFullDebug`
+- `ooniExperimentalFullRelease`
+- `ooniDevFullDebug`
+- `ooniDevFullRelease`
+- `ooniStableFullDebug`
+- `ooniStableFullRelease`
+- `dwExperimentalFullDebug`
+- `dwExperimentalFullRelease`
+- `dwDevFullDebug`
+- `dwDevFullRelease`
+- `dwStableFullDebug`
+- `dwStableFullRelease`
+
+We additionally have `ooniStableFdroidDebug`, `ooniStableFdroidRelease`, `dwStableFdroidDebug` and `dwStableFdroidRelease`.
All of this is controlled by [app/build.gradle](app/build.gradle).
## Gradle modules
- [app](app) contains the mobile app;
-- [engine](engine) contains wrappers for `oonimkall`, the
-measurement engine library;
-- [engine-experimental](engine-experimental) allows us
-to implement the `experimental` build flavour where you
-put the `oonimkall.aar` file you built inside `engine-experimental`
-rather than downloading it from Maven Central.
+- [engine](engine) contains wrappers for `oonimkall`, the measurement engine library;
+- [engine-experimental](engine-experimental) allows us to implement the `experimental` build flavour where you put the `oonimkall.aar` file you built inside `engine-experimental` rather than downloading it from Maven Central.
## Building an apk
-Ensure you have Android Studio and Android SDK installed. Build the `devFullRelease`
+Ensure you have Android Studio and Android SDK installed. Build the `ooniDevFullRelease`
variant using Android Studio or this command line:
-```
-./gradlew assembleDevFullRelease
+```sh
+./gradlew assembleOoniDevFullRelease
```
## Building the app for f-droid
-Instead to build the app to stay compliant to F-Droid use `fdroid`, which
-contains small tweaks required to have the app accepted by [f-droid](https://f-droid.org/).
+Instead to build the app to stay compliant to F-Droid use `fdroid`, which contains small tweaks required to have the app accepted by [f-droid](https://f-droid.org/).
-```
-./gradlew assembleFdroid
+```sh
+./gradlew assembleOoniDevFullRelease
```
## Testing
-Run unit tests
+Run unit tests/
-```
-./gradlew testStableFullDebug
+```sh
+./gradlew testOoniStableFullDebug
```
Run instrumented tests
-_Note: To also run the automation tests (to generate screenshots), set the Build Config flag
-`RUN_AUTOMATION` as true._
+_Note: To also run the automation tests (to generate screenshots), set the Build Config flag `RUN_AUTOMATION` as true._
-```
-./gradlew connectedStableFullDebugAndroidTest
+```sh
+./gradlew connectedOoniStableFullDebugAndroidTest
```
Generate code coverage report (after all unit and instrumented tests successfully passed)
-```
+```sh
./gradlew jacocoAndroidTestReport
-```
+```
## Managing translations
diff --git a/app/build.gradle b/app/build.gradle
index 9e71efbb1..bb2209c71 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -23,6 +23,7 @@ android {
buildConfigField 'String', 'SOFTWARE_NAME', 'BASE_SOFTWARE_NAME+IS_DEBUG'
buildConfigField 'String', 'COUNTLY_KEY', '"146836f41172f9e3287cab6f2cc347de3f5ddf3b"'
buildConfigField "boolean", "RUN_AUTOMATION", "false"
+ buildConfigField "boolean", "SHOW_DISABLED_CARDS", "true"
}
buildTypes {
@@ -46,8 +47,21 @@ android {
}
}
- flavorDimensions 'testing', 'license'
+ flavorDimensions = ['brand', 'testing', 'license']
+
productFlavors {
+ ooni {
+ getIsDefault().set(true)
+ dimension 'brand'
+ }
+ dw {
+ dimension 'brand'
+ applicationId 'com.dw.ooniprobe'
+ resValue "string", "APP_ID", 'com.dw.ooniprobe'
+ resValue "string", "APP_NAME", "News Media Scan"
+ buildConfigField 'String', 'BASE_SOFTWARE_NAME', '"news-media-scan-android"'
+ buildConfigField "boolean", "SHOW_DISABLED_CARDS", "false"
+ }
stable {
dimension 'testing'
buildConfigField 'String', 'BASE_SOFTWARE_NAME', '"ooniprobe-android"'
@@ -58,7 +72,6 @@ android {
versionNameSuffix resolveVersionSuffix('beta')
versionCode resolveVersionCode()
buildConfigField 'String', 'BASE_SOFTWARE_NAME', '"ooniprobe-android-dev"'
- resValue "string", "APP_ID", 'org.openobservatory.ooniprobe.dev'
resValue "string", "APP_NAME", "OONI Dev"
buildConfigField 'String', 'COUNTLY_KEY', '"e6c2cfe53e85951d50567467cef3f9fa2eab32c3"'
}
@@ -68,7 +81,6 @@ android {
versionNameSuffix resolveVersionSuffix('experimental')
versionCode resolveVersionCode()
buildConfigField 'String', 'BASE_SOFTWARE_NAME', '"ooniprobe-android-experimental"'
- resValue "string", "APP_ID", 'org.openobservatory.ooniprobe.experimental'
resValue "string", "APP_NAME", "OONI Exp"
buildConfigField 'String', 'COUNTLY_KEY', '"e6c2cfe53e85951d50567467cef3f9fa2eab32c3"'
}
@@ -79,6 +91,16 @@ android {
dimension 'license'
}
}
+
+ bundle {
+ language {
+ enableSplit = false
+ }
+ }
+
+ applicationVariants.all { variant ->
+ variant.resValue "string", "APP_ID", "\"${applicationId}\""
+ }
variantFilter { variant ->
def names = variant.flavors*.name
if (names.contains("fdroid") && (names.contains("experimental") || names.contains("dev"))) {
diff --git a/app/src/dw/AndroidManifest.xml b/app/src/dw/AndroidManifest.xml
new file mode 100644
index 000000000..28e5acf9b
--- /dev/null
+++ b/app/src/dw/AndroidManifest.xml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/README.md b/app/src/dw/README.md
new file mode 100644
index 000000000..a282682f0
--- /dev/null
+++ b/app/src/dw/README.md
@@ -0,0 +1,4 @@
+# Changes required.
+
+- [] Translation updates
+- [] Onboarding override
\ No newline at end of file
diff --git a/app/src/dw/assets/anim/websites.json b/app/src/dw/assets/anim/websites.json
new file mode 100644
index 000000000..191d14e4f
--- /dev/null
+++ b/app/src/dw/assets/anim/websites.json
@@ -0,0 +1 @@
+{"v":"5.1.1","fr":30,"ip":0,"op":90,"w":1125,"h":1125,"nm":"Websites","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Layer 2/Animations Outlines","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[566,560,0],"ix":2},"a":{"a":0,"k":[81,81,0],"ix":1},"s":{"a":0,"k":[272.84,272.84,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[44.57,0],[0,-44.433],[-44.433,0],[0,44.433]],"o":[[-44.433,0],[0,44.433],[44.57,0],[0,-44.433]],"v":[[-0.137,-80.475],[-80.474,0.001],[-0.137,80.475],[80.474,0.001]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[-7.705,-13.344],[0,0],[4.815,8.942]],"o":[[0,0],[-2.614,-10.042],[14.858,5.09]],"v":[[55.714,-32.189],[31.915,-32.189],[20.772,-60.803]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ind":2,"ty":"sh","ix":3,"ks":{"a":0,"k":{"i":[[-6.741,9.767],[-3.439,-11.556],[0,0]],"o":[[6.74,9.63],[0,0],[3.439,-11.556]],"v":[[0.001,-64.104],[15.407,-32.189],[-15.407,-32.189]],"c":true},"ix":2},"nm":"Path 3","mn":"ADBE Vector Shape - Group","hd":false},{"ind":3,"ty":"sh","ix":4,"ks":{"a":0,"k":{"i":[[0,0],[0,5.503],[-1.238,5.09],[0,0],[0,-5.503],[-0.55,-5.364]],"o":[[-1.238,-5.089],[0,-5.503],[0,0],[-0.688,5.365],[0,5.503],[0,0]],"v":[[-62.316,16.094],[-64.379,0.001],[-62.316,-16.094],[-35.078,-16.094],[-36.179,0.001],[-35.078,16.094]],"c":true},"ix":2},"nm":"Path 4","mn":"ADBE Vector Shape - Group","hd":false},{"ind":4,"ty":"sh","ix":5,"ks":{"a":0,"k":{"i":[[7.704,13.344],[0,0],[-4.814,-8.942]],"o":[[0,0],[2.613,10.042],[-14.856,-5.09]],"v":[[-55.713,32.191],[-31.914,32.191],[-20.772,60.803]],"c":true},"ix":2},"nm":"Path 5","mn":"ADBE Vector Shape - Group","hd":false},{"ind":5,"ty":"sh","ix":6,"ks":{"a":0,"k":{"i":[[2.476,-10.042],[0,0],[-14.719,5.09]],"o":[[0,0],[7.704,-13.344],[-4.815,8.942]],"v":[[-31.914,-32.189],[-55.713,-32.189],[-20.909,-60.803]],"c":true},"ix":2},"nm":"Path 6","mn":"ADBE Vector Shape - Group","hd":false},{"ind":6,"ty":"sh","ix":7,"ks":{"a":0,"k":{"i":[[6.74,-9.766],[3.439,11.555],[0,0]],"o":[[-6.741,-9.629],[0,0],[-3.302,11.555]],"v":[[0.001,64.104],[-15.407,32.191],[15.27,32.191]],"c":true},"ix":2},"nm":"Path 7","mn":"ADBE Vector Shape - Group","hd":false},{"ind":7,"ty":"sh","ix":8,"ks":{"a":0,"k":{"i":[[0.688,-5.364],[0,0],[0,5.503],[-0.688,5.227],[0,0],[0,-5.503]],"o":[[0,0],[-0.688,-5.364],[0,-5.503],[0,0],[0.688,5.227],[0,5.503]],"v":[[18.846,16.094],[-18.845,16.094],[-20.084,0.001],[-18.845,-16.094],[18.846,-16.094],[20.085,0.001]],"c":true},"ix":2},"nm":"Path 8","mn":"ADBE Vector Shape - Group","hd":false},{"ind":8,"ty":"sh","ix":9,"ks":{"a":0,"k":{"i":[[14.72,-5.09],[-2.613,10.042],[0,0]],"o":[[4.814,-8.942],[0,0],[-7.705,13.344]],"v":[[20.91,60.803],[32.052,32.191],[55.714,32.191]],"c":true},"ix":2},"nm":"Path 9","mn":"ADBE Vector Shape - Group","hd":false},{"ind":9,"ty":"sh","ix":10,"ks":{"a":0,"k":{"i":[[0,0],[0,5.503],[0.551,5.365],[0,0],[0,-5.503],[1.238,-5.089]],"o":[[0.687,-5.364],[0,-5.503],[0,0],[1.238,5.09],[0,5.503],[0,0]],"v":[[35.079,16.094],[36.179,0.001],[35.079,-16.094],[62.316,-16.094],[64.38,0.001],[62.316,16.094]],"c":true},"ix":2},"nm":"Path 10","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-200.124,258.76],[1729.926,258.76],[1729.926,-199.874],[-200.124,-199.874]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-200.124,-199.874],[1729.921,-199.874],[1729.921,258.76],[-200.124,258.76]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"ix":12,"mn":"ADBE Vector Group","hd":false},{"ty":"mm","mm":4,"nm":"Merge Paths 2","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[80.724,80.725],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":14,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":90,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Bottom Right","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[79.5,65.5],[51.5,187.5],[141.5,155.5],[167.5,81.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":1,"op":14,"st":1,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Bottom Center","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-62.5,71.5],[-10.5,211.5],[53.5,81.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":18,"op":31,"st":19,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Bottom Left","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 2","np":2,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-174.5,75.5],[-151.816,134.922],[-76.5,191.5],[-48.5,161.5],[-88.5,79.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":2,"mn":"ADBE Vector Group","hd":false}],"ip":74,"op":88,"st":74,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Center Right","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[81.5,-62.5],[81.5,59.5],[189.5,53.5],[183.5,-58.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":61,"op":75,"st":63,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":"Center","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[69.5,-50.5],[-70.5,-50.5],[-68.5,53.5],[67.5,59.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":30,"op":39,"st":19,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"Center Left","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-86.5,-56.5],[-196.5,-54.5],[-188.5,59.5],[-88.5,49.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":45,"op":61,"st":51,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":"Top Right","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[45.5,-180.5],[71.5,-82.5],[167.5,-78.5],[93.5,-190.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":34,"op":46,"st":14,"bm":0},{"ddd":0,"ind":9,"ty":4,"nm":"Middle Top","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[5.5,-196.5],[-38.5,-154.5],[-50.5,-84.5],[51.5,-80.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":9,"op":21,"st":-24,"bm":0},{"ddd":0,"ind":10,"ty":4,"nm":"Top Left","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-96.5,-182.5],[-176.5,-78.5],[-82.5,-74.5],[-38.5,-178.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":0,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Shape 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":67,"op":77,"st":15,"bm":0},{"ddd":0,"ind":11,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[562.5,562.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"rc","d":1,"s":{"a":0,"k":[1241,1147.094],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"r":{"a":0,"k":0,"ix":4},"nm":"Rectangle Path 1","mn":"ADBE Vector Shape - Rect","hd":false},{"ty":"st","c":{"a":0,"k":[1,1,1,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2,"ix":5},"lc":1,"lj":1,"ml":4,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"fl","c":{"a":0,"k":[0.827,0.149,0.145,0],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[2.562,-4.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100.585,103.871],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":90,"st":0,"bm":0}],"markers":[]}
diff --git a/app/src/dw/dev/README.md b/app/src/dw/dev/README.md
new file mode 100644
index 000000000..0a5ecbd1f
--- /dev/null
+++ b/app/src/dw/dev/README.md
@@ -0,0 +1,3 @@
+# News Media Scan Dev
+This is a collection of resources to be used by the News Media Scan specific flavors of the application.
+A corresponding directory exits in [app/src/ooni](../../ooni).
\ No newline at end of file
diff --git a/app/src/dw/dev/google-services.json b/app/src/dw/dev/google-services.json
new file mode 100644
index 000000000..23ae6af0f
--- /dev/null
+++ b/app/src/dw/dev/google-services.json
@@ -0,0 +1,56 @@
+{
+ "project_info": {
+ "project_number": "951667061699",
+ "firebase_url": "https://ooniprobe-android.firebaseio.com",
+ "project_id": "ooniprobe-android",
+ "storage_bucket": "ooniprobe-android.appspot.com"
+ },
+ "client": [
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:951667061699:android:6293922d7e8d4180374376",
+ "android_client_info": {
+ "package_name": "com.dw.ooniprobe.dev"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "951667061699-6ijvga26pl048jrqfnd33o60bqcn0g7c.apps.googleusercontent.com",
+ "client_type": 1,
+ "android_info": {
+ "package_name": "com.dw.ooniprobe.dev",
+ "certificate_hash": "a8f4bc5bef49e43d386647bdffdad32c07a8d3b8"
+ }
+ },
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyBsbX_pOQoqlyOOyZ6yf7CJf0lZZn6O1yg"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ },
+ {
+ "client_id": "951667061699-tuprsdjjv9eje6506lkvkski1p6v87lp.apps.googleusercontent.com",
+ "client_type": 2,
+ "ios_info": {
+ "bundle_id": "org.openobservatory.ooniprobe",
+ "app_store_id": "1199566366"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/app/src/dw/experimental/google-services.json b/app/src/dw/experimental/google-services.json
new file mode 100644
index 000000000..ea8eb8a3e
--- /dev/null
+++ b/app/src/dw/experimental/google-services.json
@@ -0,0 +1,56 @@
+{
+ "project_info": {
+ "project_number": "951667061699",
+ "firebase_url": "https://ooniprobe-android.firebaseio.com",
+ "project_id": "ooniprobe-android",
+ "storage_bucket": "ooniprobe-android.appspot.com"
+ },
+ "client": [
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:951667061699:android:6293922d7e8d4180374376",
+ "android_client_info": {
+ "package_name": "com.dw.ooniprobe.experimental"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "951667061699-6ijvga26pl048jrqfnd33o60bqcn0g7c.apps.googleusercontent.com",
+ "client_type": 1,
+ "android_info": {
+ "package_name": "com.dw.ooniprobe.experimental",
+ "certificate_hash": "a8f4bc5bef49e43d386647bdffdad32c07a8d3b8"
+ }
+ },
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyBsbX_pOQoqlyOOyZ6yf7CJf0lZZn6O1yg"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ },
+ {
+ "client_id": "951667061699-tuprsdjjv9eje6506lkvkski1p6v87lp.apps.googleusercontent.com",
+ "client_type": 2,
+ "ios_info": {
+ "bundle_id": "org.openobservatory.ooniprobe",
+ "app_store_id": "1199566366"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/app/src/dw/ic_launcher-playstore.png b/app/src/dw/ic_launcher-playstore.png
new file mode 100644
index 000000000..6c0f273d6
Binary files /dev/null and b/app/src/dw/ic_launcher-playstore.png differ
diff --git a/app/src/dw/res/drawable-xxxhdpi/info_banner.png b/app/src/dw/res/drawable-xxxhdpi/info_banner.png
new file mode 100644
index 000000000..a5eac374b
Binary files /dev/null and b/app/src/dw/res/drawable-xxxhdpi/info_banner.png differ
diff --git a/app/src/dw/res/drawable/button_dialog_false.xml b/app/src/dw/res/drawable/button_dialog_false.xml
new file mode 100644
index 000000000..7940fd35a
--- /dev/null
+++ b/app/src/dw/res/drawable/button_dialog_false.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
diff --git a/app/src/dw/res/drawable/button_dialog_true.xml b/app/src/dw/res/drawable/button_dialog_true.xml
new file mode 100644
index 000000000..d44622869
--- /dev/null
+++ b/app/src/dw/res/drawable/button_dialog_true.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
diff --git a/app/src/dw/res/drawable/dialog_quiz.xml b/app/src/dw/res/drawable/dialog_quiz.xml
new file mode 100644
index 000000000..afc306e8c
--- /dev/null
+++ b/app/src/dw/res/drawable/dialog_quiz.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/drawable/logo.png b/app/src/dw/res/drawable/logo.png
new file mode 100644
index 000000000..1652b9e23
Binary files /dev/null and b/app/src/dw/res/drawable/logo.png differ
diff --git a/app/src/dw/res/drawable/ooni_bw.xml b/app/src/dw/res/drawable/ooni_bw.xml
new file mode 100644
index 000000000..a8b409b1d
--- /dev/null
+++ b/app/src/dw/res/drawable/ooni_bw.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/drawable/ooni_logo.xml b/app/src/dw/res/drawable/ooni_logo.xml
new file mode 100644
index 000000000..dac2aa518
--- /dev/null
+++ b/app/src/dw/res/drawable/ooni_logo.xml
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/res/drawable/ooniprobe_logo.xml b/app/src/dw/res/drawable/ooniprobe_logo.xml
new file mode 100644
index 000000000..122a1508a
--- /dev/null
+++ b/app/src/dw/res/drawable/ooniprobe_logo.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
diff --git a/app/src/dw/res/drawable/outline_info.xml b/app/src/dw/res/drawable/outline_info.xml
new file mode 100644
index 000000000..fc4f1222f
--- /dev/null
+++ b/app/src/dw/res/drawable/outline_info.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/dw/res/drawable/test_websites.xml b/app/src/dw/res/drawable/test_websites.xml
new file mode 100644
index 000000000..6a86d4752
--- /dev/null
+++ b/app/src/dw/res/drawable/test_websites.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/res/layout/activity_info.xml b/app/src/dw/res/layout/activity_info.xml
new file mode 100644
index 000000000..06b5a7bf9
--- /dev/null
+++ b/app/src/dw/res/layout/activity_info.xml
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/layout/banner.xml b/app/src/dw/res/layout/banner.xml
new file mode 100644
index 000000000..5a985ddf2
--- /dev/null
+++ b/app/src/dw/res/layout/banner.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/layout/fragment_dashboard.xml b/app/src/dw/res/layout/fragment_dashboard.xml
new file mode 100644
index 000000000..c85ee98e5
--- /dev/null
+++ b/app/src/dw/res/layout/fragment_dashboard.xml
@@ -0,0 +1,112 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/layout/fragment_onboarding_1.xml b/app/src/dw/res/layout/fragment_onboarding_1.xml
new file mode 100644
index 000000000..7fce2d4be
--- /dev/null
+++ b/app/src/dw/res/layout/fragment_onboarding_1.xml
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/layout/fragment_onboarding_2.xml b/app/src/dw/res/layout/fragment_onboarding_2.xml
new file mode 100644
index 000000000..c1d9aa90c
--- /dev/null
+++ b/app/src/dw/res/layout/fragment_onboarding_2.xml
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/layout/fragment_onboarding_3.xml b/app/src/dw/res/layout/fragment_onboarding_3.xml
new file mode 100644
index 000000000..3a34b0b1c
--- /dev/null
+++ b/app/src/dw/res/layout/fragment_onboarding_3.xml
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/res/layout/fragment_onboarding_autotest.xml b/app/src/dw/res/layout/fragment_onboarding_autotest.xml
new file mode 100644
index 000000000..d6683c2f8
--- /dev/null
+++ b/app/src/dw/res/layout/fragment_onboarding_autotest.xml
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/res/layout/fragment_onboarding_crash.xml b/app/src/dw/res/layout/fragment_onboarding_crash.xml
new file mode 100644
index 000000000..8f11866eb
--- /dev/null
+++ b/app/src/dw/res/layout/fragment_onboarding_crash.xml
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/res/layout/fragment_onboarding_dialog_popquiz.xml b/app/src/dw/res/layout/fragment_onboarding_dialog_popquiz.xml
new file mode 100644
index 000000000..a8efac577
--- /dev/null
+++ b/app/src/dw/res/layout/fragment_onboarding_dialog_popquiz.xml
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/dw/res/mipmap-anydpi-v26/ic_launcher.xml
new file mode 100644
index 000000000..036d09bc5
--- /dev/null
+++ b/app/src/dw/res/mipmap-anydpi-v26/ic_launcher.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/dw/res/mipmap-anydpi-v26/ic_launcher_round.xml
new file mode 100644
index 000000000..036d09bc5
--- /dev/null
+++ b/app/src/dw/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/mipmap-hdpi/ic_launcher.webp b/app/src/dw/res/mipmap-hdpi/ic_launcher.webp
new file mode 100644
index 000000000..fbc81ff7d
Binary files /dev/null and b/app/src/dw/res/mipmap-hdpi/ic_launcher.webp differ
diff --git a/app/src/dw/res/mipmap-hdpi/ic_launcher_foreground.webp b/app/src/dw/res/mipmap-hdpi/ic_launcher_foreground.webp
new file mode 100644
index 000000000..100e7e171
Binary files /dev/null and b/app/src/dw/res/mipmap-hdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/dw/res/mipmap-hdpi/ic_launcher_round.webp b/app/src/dw/res/mipmap-hdpi/ic_launcher_round.webp
new file mode 100644
index 000000000..a8c417e3b
Binary files /dev/null and b/app/src/dw/res/mipmap-hdpi/ic_launcher_round.webp differ
diff --git a/app/src/dw/res/mipmap-mdpi/ic_launcher.webp b/app/src/dw/res/mipmap-mdpi/ic_launcher.webp
new file mode 100644
index 000000000..2864dad29
Binary files /dev/null and b/app/src/dw/res/mipmap-mdpi/ic_launcher.webp differ
diff --git a/app/src/dw/res/mipmap-mdpi/ic_launcher_foreground.webp b/app/src/dw/res/mipmap-mdpi/ic_launcher_foreground.webp
new file mode 100644
index 000000000..49603584d
Binary files /dev/null and b/app/src/dw/res/mipmap-mdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/dw/res/mipmap-mdpi/ic_launcher_round.webp b/app/src/dw/res/mipmap-mdpi/ic_launcher_round.webp
new file mode 100644
index 000000000..7ef33b41b
Binary files /dev/null and b/app/src/dw/res/mipmap-mdpi/ic_launcher_round.webp differ
diff --git a/app/src/dw/res/mipmap-xhdpi/ic_launcher.webp b/app/src/dw/res/mipmap-xhdpi/ic_launcher.webp
new file mode 100644
index 000000000..0e1664673
Binary files /dev/null and b/app/src/dw/res/mipmap-xhdpi/ic_launcher.webp differ
diff --git a/app/src/dw/res/mipmap-xhdpi/ic_launcher_foreground.webp b/app/src/dw/res/mipmap-xhdpi/ic_launcher_foreground.webp
new file mode 100644
index 000000000..717230aa6
Binary files /dev/null and b/app/src/dw/res/mipmap-xhdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/dw/res/mipmap-xhdpi/ic_launcher_round.webp b/app/src/dw/res/mipmap-xhdpi/ic_launcher_round.webp
new file mode 100644
index 000000000..03ff72093
Binary files /dev/null and b/app/src/dw/res/mipmap-xhdpi/ic_launcher_round.webp differ
diff --git a/app/src/dw/res/mipmap-xxhdpi/ic_launcher.webp b/app/src/dw/res/mipmap-xxhdpi/ic_launcher.webp
new file mode 100644
index 000000000..457895891
Binary files /dev/null and b/app/src/dw/res/mipmap-xxhdpi/ic_launcher.webp differ
diff --git a/app/src/dw/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/app/src/dw/res/mipmap-xxhdpi/ic_launcher_foreground.webp
new file mode 100644
index 000000000..c02d89f36
Binary files /dev/null and b/app/src/dw/res/mipmap-xxhdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/dw/res/mipmap-xxhdpi/ic_launcher_round.webp b/app/src/dw/res/mipmap-xxhdpi/ic_launcher_round.webp
new file mode 100644
index 000000000..141b2b35c
Binary files /dev/null and b/app/src/dw/res/mipmap-xxhdpi/ic_launcher_round.webp differ
diff --git a/app/src/dw/res/mipmap-xxxhdpi/ic_launcher.webp b/app/src/dw/res/mipmap-xxxhdpi/ic_launcher.webp
new file mode 100644
index 000000000..11a5a647b
Binary files /dev/null and b/app/src/dw/res/mipmap-xxxhdpi/ic_launcher.webp differ
diff --git a/app/src/dw/res/mipmap-xxxhdpi/ic_launcher_foreground.webp b/app/src/dw/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
new file mode 100644
index 000000000..8b2d3063f
Binary files /dev/null and b/app/src/dw/res/mipmap-xxxhdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/dw/res/mipmap-xxxhdpi/ic_launcher_round.webp b/app/src/dw/res/mipmap-xxxhdpi/ic_launcher_round.webp
new file mode 100644
index 000000000..81b79df6f
Binary files /dev/null and b/app/src/dw/res/mipmap-xxxhdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/dw/res/values-de/strings.xml
similarity index 100%
rename from app/src/main/res/values-de/strings.xml
rename to app/src/dw/res/values-de/strings.xml
diff --git a/app/src/dw/res/values-es/strings.xml b/app/src/dw/res/values-es/strings.xml
new file mode 100644
index 000000000..02b0944c5
--- /dev/null
+++ b/app/src/dw/res/values-es/strings.xml
@@ -0,0 +1,533 @@
+
+
+ OONI Probe
+ ¿Qué es OONI Probe?
+ Tu aplicación para medir censura en Internet. \n\n¿Los sitios web y aplicaciones de redes sociales están siendo bloqueados? ¿Tu conexión a Internet es inusualmente lenta?\n\n¡Ejecuta OONI Probe para saberlo!
+ Lo tengo
+ ¡Atención!
+ Los datos de OONI están en el dominio público e incluirán tu información de red.
+ Cualquiera monitoreando tu actividad de Internet (ej., gobierno o ISP) verá que estás ejecutando OONI Probe.
+ Puedes probar sitios web prohibidos (pero puedes elegir qué sitios probar).
+ Entiendo
+ Conocer más
+ Cuestionario sorpresa
+ Verdadero
+ Falso
+ Volver
+ Continuar
+ Pregunta 1/2
+ Si alguien está monitoreando mi actividad de Internet, verán que estoy ejecutando OONI Probe.
+ Advertencia
+ OONI Probe no es una herramienta de privacidad. Cualquiera monitoreando tu actividad de Internet verá qué software estás ejecutando.
+ Pregunta 2/2
+ Cada vez que ejecute OONI Probe, los datos de red que recopile serán automáticamente publicados.
+ Advertencia
+ Para incrementar la transparencia de la censura en Internet, los datos de red de todos los usuarios de OONI Probe son automáticamente publicados (a menos que opten por no hacerlo en las configuraciones).
+ Pruebas automatizadas
+ Para medir la censura en Internet todos los días, por favor habilita las pruebas automáticas, de manera que OONI Probe pueda ejecutar pruebas periódicamente.\n\nNo te preocupes, estaremos muy conscientes del uso de la batería. \n\nPuedes deshabilitar las pruebas automáticas desde la configuración en cualquier momento.
+ Informes de error
+ Para mejorar OONI Probe nos gustaría recolectar informes de error anónimos cuando la aplicación no funcione apropiadamente.\n\n¿Te gustaría optar por enviar informes de error al equipo de desarrollo de OONI?
+ Si
+ No
+ Configuración predeterminada
+ Recopilamos y publicamos:
+ Código de país (ej. IT por Italia)
+ Información de red (incluyendo Número de Sistema Autónomo)
+ Hora y fecha de la prueba
+ Hacemos lo humanamente posible para no publicar tu dirección IP o cualquier otra información potencialmente identificable a nivel personal. \n\nAprende más a través de la [Política de Datos de OONI](https://ooni.org/about/data-policy/).
+ Al pulsar \"Aceptar\", compartirás informes de falla para ayudarnos a mejorar OONI Probe.
+ Vamos
+ Cambiar ajustes
+ Dashboard
+ Ejecutar
+ N/D
+ Ejecutar
+ Prueba anterior:
+ Estimado:
+ Elige sitios web
+ Ejecutando:
+ Tiempo restante estimado:
+ %1$s segundos
+ Preparando prueba
+ Calculando ETA
+ Mostrar registro (\'log\')
+ Cerrar registro
+ Deteniendo prueba...
+ Finalizando las pruebas actualmente pendientes, por favor espera...
+ Proxy en uso
+ Pulsar tarjeta por más
+ ~%1$ss
+ Probar el bloqueo de sitios web
+ Comprobar si los sitios web están bloqueados usando la [prueba conectividad de la Web] de OONI (https://ooni.org/nettest/web-connectivity/).\n\nCada vez que pulsas Ejecutar, pruebas diferentes sitios web incluidos en las listas de pruebas de Citizen Lab [global](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) y [específicas por país](https://github.com/citizenlab/test-lists/tree/master/lists).\n\nPara probar los sitios de tu elección, pulsa el botón Elegir sitios web o selecciona categorías de sitios vía los ajustes de ésta tarjeta.\n\nEsta prueba mide si los sitios web están bloqueados por medio de manipulación de DNS, bloqueo de TCP/IP o por un proxy transparente HTTP.\n\nTus resultados serán publicados en el [Explorador OONI](https://explorer.ooni.org/world/) y la [API OONI](https://api.ooni.io/).
+ Comprueba si los sitios web están bloqueados usando la [prueba conectividad de la Web] de OONI (https://ooni.org/nettest/web-connectivity/).\n\nProbarás los sitios web incluídos en las listas de pruebas de Citizen Lab [global](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) y [específicas por país](https://github.com/citizenlab/test-lists/tree/master/lists).\n\nEsta prueba mide si los sitios web están bloqueados por medio de manipulación de DNS, bloqueo de TCP/IP o por un proxy HTTP transparente.\n\nTus resultados serán publicados en el [Explorador OONI](https://explorer.ooni.org/) y la [API OONI](https://api.ooni.io/).
+ Mide la velocidad y rendimiento de tu red
+ Mide la velocidad y rendimiento de tu red usando la prueba [NDT](https://ooni.org/nettest/ndt/).\n\nMide el rendimiento del streaming de vídeo usando la prueba [DASH](https://ooni.org/nettest/dash/).\n\nEstas pruebas consumen datos dependiendo de la velocidad de tu red.\n\nTus resultados serán publicados en el [Explorador OONI](https://explorer.ooni.org/world/) y la [API OONI](https://api.ooni.io/).\n\nDescargo: Estas pruebas dependen de servidores de terceros. Por lo tanto, no podemos garantizar que tu dirección IP no será recopilada.
+ Al ejecutar las pruebas en esta tarjeta, tu:\n\n- Medirás la velocidad y desempeño de tu red (prueba [NDT](https://ooni.org/nettest/ndt/))\n- Medirás el desempeño del streaming de vídeo (prueba [DASH](https://ooni.org/nettest/dash/))\n- Comprobarás la presencia de [tecnologías middlebox] (https://ooni.org/support/glossary/#middlebox) en tu red (pruebas [HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) y [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/))\n\nEstas pruebas consumen datos dependiendo de la velocidad de tu red.\n\nLos resultados de tus pruebas serán publicados en [Explorador OONI](https://explorer.ooni.org/) y [OONI API](https://api.ooni.io/).\n\n**Descargo:** Las pruebas [NDT](https://ooni.org/nettest/ndt/) y [DASH](https://ooni.org/nettest/dash/) son conducidas en contra de servidores de terceros provistos por [Measurement Lab (M-Lab)](https://www.measurementlab.net/). Si las ejecutas, M-Lab recolectará y publicará tu dirección IP (por propósitos de investigación), independientemente de tus ajustes de OONI Probe. Aprende más acerca de la política de datos de M-Lab’s a través de su [declaración de privacidad](https://www.measurementlab.net/privacy/).
+ Detecta middleboxes en tu red
+ Los Proveedores de Servicio de Internet a menudo usan dispositivos de red (middleboxes) para varios propósitos técnicos (tales como cacheo). A veces estos middleboxes son usados para implementar censura y/o vigilancia de Internet.\n\nEncuentra middleboxes en tu red usando las pruebas de OONI [HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) y [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/).\n\nTus resultados serán publicados en el [Explorador OONI](https://explorer.ooni.org/world/) y la [API OONI](https://api.ooni.io/).
+ Prueba el bloqueo de aplicaciones de mensajería instantánea.
+ Comprueba si [WhatsApp](https://ooni.org/nettest/whatsapp/), [Facebook Messenger](https://ooni.org/nettest/facebook-messenger/), [Telegram](https://ooni.org/nettest/telegram/) y [Signal](https://ooni.org/nettest/signal) están bloqueados.\n\nTus resultados serán publicados en el [Explorador OONI](https://explorer.ooni.org/world/) y la [API OONI](https://api.ooni.io/).
+ Probar el bloqueo de herramientas de elusión de censura
+ Comprueba si [Psiphon](https://ooni.org/nettest/psiphon/), [Tor](https://ooni.org/nettest/tor/) o [RiseupVPN](https://ooni.org/nettest/riseupvpn/) están bloqueados.\n\nTus resultados serán publicados en [Explorador OONI] (https://explorer.ooni.org/) y [OONI API](https://api.ooni.io/).
+ Ejecutar nuevas pruebas experimentales
+ Ejecutar las siguientes nuevas pruebas experimentales desarrolladas por el equipo OONI:\n%1$s\n\nTus resultados serán publicados en el [Explorador OONI](https://explorer.ooni.org/) y el [API OONI](https://api.ooni.io/).
+ Las siguientes pruebas solo se ejecutarán como parte de las pruebas automatizadas:
+ Disabled Tests
+ Gbit/s
+ Mbit/s
+ kbit/s
+ ms
+ N/D
+ Desconocido
+ Resultados de la prueba
+ Resultados de la prueba
+ Pruebas
+ Redes
+ Uso de datos
+ Filtrar Pruebas
+ Todas las Pruebas
+ Sitios web
+ Middleboxes
+ Rendimiento
+ Mensajería instantánea
+ Evasión
+ Experimental
+ Ninguna prueba ha sido ejecutada aún. ¡Intenta ejecutar una!
+ %1$s bloqueado
+ %1$s bloqueados
+ %1$s probado
+ %1$s probados
+ Detectado
+ No detectado
+ Falló
+ %1$s bloqueado
+ %1$s bloqueados
+ %1$s accesible
+ %1$s accesibles
+ %1$s bloqueado(s)
+ %1$s bloqueados
+ %1$s disponible(s)
+ %1$s disponible(s)
+ Resultado incompleto
+ Error
+ Error de medición
+ Resultados no se subieron
+ Fecha y Hora
+ Red
+ País
+ Uso de datos
+ Tiempo total ejecución
+ WiFi
+ Datos móviles
+ No hay Internet
+ Falló
+ Probado
+ Probados
+ Bloqueado
+ Bloqueados
+ Sitio web
+ Sitios web
+ Accesible
+ Accesibles
+ Vídeo
+ Calidad
+ Subida
+ Descarga
+ Ping
+ Detectado
+ No detectado
+ Falló
+ Probado
+ Probados
+ Bloqueado
+ Bloqueados
+ Accesible
+ Accesibles
+ Aplicación
+ Aplicaciones
+ Probados
+ Probados
+ Bloqueados
+ Bloqueados
+ Funcionando
+ Funcionando
+ Herramienta
+ Herramientas
+ Tiempo de ejecución
+ Metodología
+ Ver registro
+ Datos
+ Copiar URL del explorador
+ Compartir URL del explorador
+ Copiar al portapapeles
+ Mostrar en Explorador OONI
+ Falló
+ Puedes ejecutar esta prueba de nuevo
+ Intenta otra vez
+ Aprende cómo funciona esta prueba [aquí](%1$s).
+ Accesible
+ %1$s es accesible.
+ Probablemente bloqueado
+ %1$s está probablemente bloqueado debido a %2$s.\n\nNota: Falsos positivos pueden ocurrir. Aprende más [aquí](https://ooni.org/support/faq/#what-are-false-positives).
+ Evasión de censura
+ **Manipulación DNS**
+ **Bloqueo basado en TCP/IP**
+ **Bloqueo HTTP (una página de bloqueo puede ser servida)**
+ **Bloqueo HTTP (petición HTTP falló)**
+ Aplicación móvil
+ Aceptar
+ Falló
+ WhatsApp Web
+ Aceptar
+ Falló
+ Registro
+ Aceptar
+ Falló
+ Funcionando
+ Esta prueba se conectó exitosamente a WhatsApp, el servicio de registro y la interfaz web (web.whatsapp.com).
+ Probablemente bloqueado
+ WhatsApp parece estar bloqueado.
+ Aplicación móvil
+ Aceptar
+ Falló
+ Telegram Web
+ Aceptar
+ Falló
+ Funcionando
+ Esta prueba se conectó exitosamente a Telegram y la interfaz web (web.telegram.org).
+ Probablemente bloqueado
+ Telegram parece estar bloqueado.
+ Conexiones TCP
+ Aceptar
+ Falló
+ Búsquedas DNS
+ Aceptar
+ Falló
+ Funcionando
+ Esta prueba se conectó exitosamente a Facebook y se resolvió a direcciones IP de Facebook.
+ Probablemente bloqueado
+ Facebook Messenger parece estar bloqueado.
+ Probablemente bloqueado
+ Signal parece estar bloqueado.
+ Funcionando
+ Esta prueba se conectó exitosamente a los extremos Signal.
+ No se detectaron middleboxes.
+ No se detectó ninguna anomalía de red al comunicarse con nuestros servidores.
+ Manipulación de red
+ El tráfico de red fue manipulado al contactar con nuestros servidores de control.\n\nEsto significa que podría haber un middlebox en tu red, que podría ser responsable por censura y/o vigilancia.
+ No se detectaron middleboxes.
+ No se detectó ninguna anomalía de red al comunicarse con nuestros servidores.
+ Manipulación de red
+ El tráfico de red fue manipulado al contactar con nuestros servidores de control.\n\nEsto significa que podría haber un middlebox en tu red, que podría ser responsable de censura y/o vigilancia.
+ Enviaste
+ Recibiste
+ Subida
+ Descarga
+ Ping
+ Servidor
+ Tasa de Retransmisión
+ Fuera de servicio
+ Ping promedio
+ Estimación de Ping Máxima
+ MSS
+ Tiempos de espera
+ Puedes hacer stream hasta %1$s sin buffering.
+ Mediana de tasa de bits
+ Retardo de transmisión
+ Probablemente bloqueado
+ Funcionando
+ [Psiphon](https://psiphon.ca/) parece estar bloqueado.
+ Pudimos iniciar con éxito una conexión Psiphon. Esto significa que [Psiphon](https://psiphon.ca/) debería funcionar.
+ Tiempo de arranque
+ %1$s s
+ Probablemente bloqueado
+ Funcionando
+ [Tor](https://www.torproject.org/) parece estar bloqueado.
+ Pudimos conectarnos con éxito a los puentes de Tor predeterminados y/o las autoridades de directorio de [Tor](https://www.torproject.org/). Esto significa que Tor debería funcionar.
+ Puentes predeterminados
+ %1$s/%2$s OK
+ Autoridades de directorio
+ %1$s/%2$s OK
+ Nombre
+ Dirección
+ Tipo
+ Conectar
+ Handshake
+ Probablemente bloqueado
+ Funcionando
+ [RiseupVPN](https://riseup.net/vpn) parece estar bloqueado.
+ Fuimos capaces conectarnos exitosamente al servidor de inicio de RiseupVPN y las puertas de salida VPN. Esto significa que [RiseupVPN](https://riseup.net/vpn) debería funcionar.
+ Servidor de inicio
+ Conexiones OpenVPN
+ Conexiones puenteadas
+ Bloqueados
+ %1$s bloqueado(s)
+ %1$s bloqueado(s)
+ OK
+ Esta es una prueba experimental.
+ Lista de suscripciones
+ Lista de suscripciones
+ Aceptar
+ Cancelar
+ No, no preguntar de nuevo
+ Borrar
+ Error
+ Intentar de nuevo
+ Suena genial
+ No, gracias
+ Ahora no
+ Ejecutar de todos modos
+ Deshabilitar VPN
+ Siempre corre
+ Incapaz de ejecutar la prueba. Por favor comprueba tu conectividad de Internet.
+ Incapaz de descargar la lista de URL. Por favor intenta de nuevo.
+ Por favor espera hasta que las pruebas en ejecución terminen, antes de iniciar una nueva.
+ Son requeridos permisos de notificación. Por favor habilítalos en las Configuraciones de tu teléfono y luego en tu aplicación OONI Probe.
+ Ir a las Configuraciones
+ Esta pantalla está bloqueada mientras esté corriendo una prueba.
+ Debes estar conectado a Internet para descargar los datos de medición sin procesar.
+ Resultados no se subieron
+ Algunos de los resultados de tus pruebas no han sido subidos a los servidores OONI. Si te gustaría contribuir al conjunto de datos de OONI, por favor súbelos.
+ Subir
+ Subiendo %1$s ...
+ OONI Probe no se puede ejecutar automáticamente sin optimización de batería. ¿Quieres intentarlo de nuevo?
+ Por favor deshabilita tu conexión VPN.
+ Si ejecutas OONI Probe con una VPN habilitada, los resultados de la prueba podrían aparecer como proviniendo desde el país incorrecto. Por favor deshabilita tu conexión VPN.
+ Algunas mediciones fueron tomadas sobre VPN.
+ Si se suben mediciones tomadas cuando el VPN está activado, los resultados de las pruebas pueden parecer procedentes de un país equivocado.
+ Subida exitosa
+ Mostrar registro de fallos
+ Obtiene actualizaciones sobre censura en Internet
+ ¿Tienes interés en ejecutar pruebas de OONI Probe durante eventos emergentes de censura? Habilita notificaciones para recibir un mensaje cuando escuchemos acerca de censura en Internet cerca tuyo.
+ Para mejorar la precisión de las pruebas, necesitamos permisos para GPS. OONI sólo recopilará una aproximación de tu posición GPS.
+ ¿Deseas eliminar todos los resultados de las pruebas?
+ ¿Deseas eliminar esta prueba?
+ Por favor habilita al menos una prueba
+ Por favor inserte sólo dígitos en este campo.
+ Volver a ejecutar prueba
+ Esta prueba ha fallado. ¿Volver a ejecutarla?
+ Está a punto de volver a probar %1$s sitios web.
+ Ejecutar
+ Tus URLs no serán guardadas cuando dejes esta pantalla. ¿Estás seguro de que quieres dejarla?
+ ¿Habilitar Subida Manual?
+ Esta configuración te permite volver a subir manualmente mediciones no publicadas.
+ Habilitar
+ No, gracias!
+ La subida falló
+ No hemos podido subir las medidas %1$s/%2$s. El registro de fallas ha sido compartido con los desarrolladores de OONI.
+ Archivo de registro no encontrado
+ No se encontraron URL válidas
+ JSON vacío
+ ¿Deseas interrumpir esta prueba?
+ Esto interrumpirá la prueba actual a partir de este momento.
+ ¿Desearías ejecutar pruebas automáticamente?
+ Al habilitar las pruebas automáticas, contribuirás mediciones OONI en forma regular.
+ Por favor permite que la aplicación se ejecute en segundo plano.
+ Recordármelo más tarde
+ Se ha copiado al portapapeles
+ No subido
+ Subir
+ Algunos no subidos
+ Subir todo
+ Sitios web
+ Mensajería instantánea
+ Middleboxes
+ Rendimiento
+ Evasión
+ Experimental
+ Prueba HTTP Invalid Request Line
+ Prueba HTTP Header Field Manipulation
+ Prueba Web Connectivity
+ Prueba de velocidad NDT
+ Prueba de streaming DASH
+ Prueba WhatsApp
+ Prueba Telegram
+ Prueba Facebook Messenger
+ Prueba de Psiphon
+ Prueba de Tor
+ Prueba RiseupVPN
+ Prueba de Signal
+ Configuración
+ La cantidad de tiempo que haz establecido para la duración de la prueba es demasiado baja.
+ Acerca de OONI
+ El Observatorio Abierto de Interferencia de Red (OONI) es un proyecto de software libre bajo el Proyecto Tor que apunta a incrementar la transparencia de la censura en Internet alrededor del mundo.\n\nDesde 2012, la comunidad global de OONI ha estado midiendo redes en más de 200 países. Algunas de estas mediciones sirven como evidencia de la censura en Internet.
+ Conocer más
+ Blog
+ Reportes
+ Política de datos OONI
+ Notificaciones
+ Activado
+ Notificar una vez que la prueba se haya completado
+ Suscripción de noticias
+ Pruebas automatizadas
+ Ejecutar pruebas automáticamente
+ Número de pruebas automatizadas: %1$s.
+ Última prueba automatizada: %1$s.
+ Sólo sobre WiFi
+ Sólo cuando se está cargando
+ Al habilitar pruebas automáticas, OONI Probe las ejecutará automáticamente múltiples veces por día. Los resultados de tus pruebas serán automáticamente publicados en el Explorador OONI: https://explorer.ooni.org/\n\nImportante: Si tienes una VPN habilitada, OONI Probe no ejecutará pruebas automáticamente. Por favor desactiva tu VPN para efectuar pruebas automatizadas con OONI Probe. Aprende más: https://ooni.org/support/faq/#can-i-run-ooni-probe-over-a-vpn
+ Compartir
+ Publicar resultados automáticamente
+ Subida Manual de Resultado
+ Incluir información de red
+ Incluir geolocalización aproximada
+ Incluir mi dirección IP
+ Incluir código del país
+ Esta información (ej., IT por Italia) es requerida para identificar desde qué país son recopiladas las mediciones. ¿Estás seguro que quieres deshabilitar esta opción?
+ Al publicar resultados, estás incrementando la transparencia de la interferencia de red y apoyando a la comunidad de OONI.\n\nCierta información de red (ej., Número de Sistema Autónomo, ASN) es requerida para identificar a Proveedores de Servicio de Internet.
+ Opciones de la prueba
+ Lo que configure a través de los ajustes de prueba anteriores (por ejemplo, desactivar la prueba de WhatsApp) se aplicará a las pruebas ejecutadas manualmente, así como a las pruebas ejecutadas automáticamente (cuando las pruebas automatizadas están activadas).\n
+ Prueba de larga duración
+ ¿Ejecutar pruebas de larga duración en primer plano?
+ Privacidad
+ Enviar informes de errores
+ Avanzado
+ Modo Oscuro
+ Registros de depuración
+ Opción A: (Traducción literal)\n\nVer registros recientes\n\nOpción B: (más apegada a la estructura de OONI):\nVer logs recientes
+ Configuración de Idioma
+ Seleccionar idioma
+ Usar siempre Domain Fronting
+ Proxy de trabajo de OONI
+ Proxy
+ Ninguno
+ Psiphon
+ Proxy personalizado
+ URL del proxy personalizado
+ Protocolo de proxy personalizado
+ Conexión
+ Nombre del servidor
+ Puerto
+ Credenciales (opcional)
+ Nombre de usuario
+ Contraseña
+ Usar Psiphon sobre proxy personalizado
+ ¿No puedes usar OONI Probe? Intenta habilitando [Psiphon] (https://psiphon.ca/) para evadir el bloqueo potencial de OONI Probe. Alternativamente, puedes usar un proxy personalizado.
+ Limite la duración de la prueba
+ Duración de la prueba
+ Categorías de sitios web a probar
+ %1$s categorías habilitadas
+ Editar
+ Deseleccionar Todo
+ Seleccionar todos
+ Guardar
+ Cambios no guardados
+ Has hecho algunos cambios a las categorías habilitadas. ¿Desearías guardarlos?
+ Guardar
+ Descartar
+ Elige sitios web a probar
+ URL
+ No se han introducido URLs
+ Ejecutar
+ Añadir sitio web
+ Cargar desde plantilla
+ Número de sitios web probados (0 significa todos)
+ Probar WhatsApp
+ Probar Telegram
+ Probar Facebook Messenger
+ Probar Signal
+ Ejecutar la prueba HTTP Invalid Request Line
+ Ejecutar la prueba HTTP Header Field Manipulation
+ Ejecutar la prueba de velocidad NDT
+ Selección automática del servidor NDT
+ Dirección del servidor NDT
+ Puerto del servidor NDT
+ Ejecutar la prueba de streaming DASH
+ Selección automática del servidor DASH
+ Servidor DASH
+ Puerto del servidor DASH
+ Probar Psiphon
+ Probar Tor
+ Probar RiseupVPN
+ Avisar cuando la VPN está en uso
+ Enviar correo electrónico al soporte
+ Por favor describe el problema que estás experimentando:
+ Por favor envíe un correo electrónico a bugs@openobservatory.org con información sobre la aplicación y versión de iOS. Pulse \"Copiar al portapapeles\" abajo para copiar nuestro correo electrónico.
+ El idioma actual de la aplicación es %1$s
+ Idioma
+ Uso de almacenamiento
+ Almacenamiento usado
+ Eliminar
+ Borrar
+ Estás a punto de borrar todas las mediciones de OONI de tu dispositivo. Si fueron subidas, aún estarán disponibles en el [Explorador OONI](https://explorer.ooni.org)
+ Finalizó la ejecución
+ Detener la prueba
+ Intentar servidor réplica
+ Cargando...
+ Ocurrió un error inesperado. Por favor recargue esta página.
+ Estás a punto de ejecutar una prueba de OONI Probe.
+ %1$s URLs
+ Nombre de la prueba
+ Detalles de la prueba
+ Ejecutar
+ Desactualizado
+ Para ejecutar esta prueba, necesitas una versión más nueva de OONI Probe
+ Actualizar
+ Cerrar
+ Parámetro inválido
+ El enlace OONI Run está malformado o bien tu aplicación está desactualizada.
+ Probarás una muestra aleatoria de sitios web.
+ Por favor espera hasta que la prueba termine su ejecución antes de clicar en un enlace OONI Run.
+ Drogas y alcohol
+ Religión
+ Pornografía
+ Atuendos provocativos
+ Críticas políticas
+ Cuestiones de Derechos Humanos
+ Medio Ambiente
+ Terrorismo y Militantes
+ Expresión de Odio
+ Medios de Noticias
+ Educación Sexual
+ Salud pública
+ Juego
+ Herramientas de elusión
+ Citas en línea
+ Redes sociales
+ LGBTQ+
+ Intercambio de archivos
+ Herramientas de hackeo
+ Herramientas de comunicación
+ Compartición de medios audiovisuales
+ Alojamiento y blogueo
+ Motores de búsqueda
+ Juegos
+ Cultura
+ Economía
+ Gobierno
+ Comercio electrónico
+ Control de contenido
+ Organizaciones intergubernamentales
+ Contenido misceláneo
+ Uso y ventas de drogas y alcohol
+ Cuestiones religiosas, tanto a favor como en contra
+ Pornografía hardcore y softcore
+ Atuendos provocativos y visualización de mujeres luciendo ropas escasas
+ Puntos de vista políticos críticos
+ Cuestiones de Derechos Humanos
+ Discusión de cuestiones medioambientales
+ Terrorismo, movimientos militantes o separatistas violentos
+ Denigración de grupos particulares basada en raza, sexo, sexualidad u otras características
+ Principales sitios web de noticias, medios de noticias regionales e independientes
+ Cuestiones de salud sexual, incluyendo anticoncepción, enfermedades de transmisión sexual, prevención de violaciones y aborto
+ Cuestiones de salud pública, tales como COVID-19, HIV/AIDS, Ébola
+ Juego y apuestas en línea
+ Anonimización, elusión de censura y cifrado
+ Sitios de citas en línea
+ Herramientas y plataformas de redes sociales en línea
+ Comunidades LGBTQ+ discutiendo cuestiones relacionadas (excluyendo pornografía)
+ Compartición de archivos incluyendo almacenamiento de archivos en la nube, torrentes y P2P
+ Herramientas y noticias de seguridad informática
+ Herramientas de comunicaciones individuales y grupales, incluyendo VoIP, mensajería y correo electrónico web
+ Compartición de vídeo, audio y fotos
+ Alojamiento web, blogueo y otras publicaciones en línea
+ Motores y portales de búsqueda
+ Juegos en línea y plataformas de juego (excluyendo sitios de juego por apuestas)
+ Entretenimiento incluyendo historia, literatura, música, películas, sátira y humor
+ Desarrollo económico general y pobreza
+ Sitios web manejados por gobiernos, incluyendo sitios militares
+ Servicios y productos comerciales
+ Contenido benigno o inocuo usado para control
+ Organizaciones intergubernamentales, incluyendo las Naciones Unidas
+ Sitios que no han sido aún categorizados
+
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/dw/res/values-fr/strings.xml
similarity index 100%
rename from app/src/main/res/values-fr/strings.xml
rename to app/src/dw/res/values-fr/strings.xml
diff --git a/app/src/dw/res/values-night/colors.xml b/app/src/dw/res/values-night/colors.xml
new file mode 100644
index 000000000..8a4525311
--- /dev/null
+++ b/app/src/dw/res/values-night/colors.xml
@@ -0,0 +1,8 @@
+
+
+ #D32625
+ #4B545C
+ @color/color_secondary
+ @color/color_secondary
+ @color/color_secondary
+
\ No newline at end of file
diff --git a/app/src/dw/res/values-pt-rBR/strings.xml b/app/src/dw/res/values-pt-rBR/strings.xml
new file mode 100644
index 000000000..63d934a91
--- /dev/null
+++ b/app/src/dw/res/values-pt-rBR/strings.xml
@@ -0,0 +1,533 @@
+
+
+ OONI Probe
+ O que é o OONI Probe?
+ Seu aplicativo para medir a censura na internet.\n\nOs sites e aplicativos de mídia social estão bloqueados? Sua conexão com a internet é estranhamente lenta?\n\nExecute o OONI Probe para descobrir por quê!
+ Entendi
+ Atenção!
+ Os dados da OONI são publicados abertamente e incluirão as informações da sua rede.
+ Qualquer pessoa que estiver monitorando sua atividade na Internet (por exemplo, governo ou ISP) verá que você está executando o OONI Probe.
+ Você pode testar sites proibidos (mas pode escolher quais sites testar).
+ Compreendo
+ Saber mais
+ Questionário Pop
+ Verdadeiro
+ Falso
+ Voltar
+ Continuar
+ Questão 1/2
+ Se alguém estiver monitorando minha atividade na Internet, eles verão que estou executando o OONI Probe.
+ Atenção
+ OONI Probe não é uma ferramenta de privacidade. Qualquer pessoa que monitore sua atividade na internet verá qual software você está executando.
+ Questão 2/2
+ Toda vez que eu executo o OONI Probe, os dados da rede que eu coleciono são automaticamente publicados.
+ Atenção
+ Para aumentar a transparência sobre a censura na Internet, os dados de rede de todos os usuários do OONI Probe são publicados automaticamente (exceto se essa opção for desativada nas configurações).
+ Teste automatizado
+ Para medir a censura na Internet todos os dias, ative os testes automatizados para que o OONI Probe possa executar testes periodicamente.\n\nNão se preocupe, estaremos atentos ao uso da bateria. \n\nÉ possível desativar o teste automatizado nas configurações a qualquer momento.
+ Relatar falhas
+ Para melhorar o OONI Probe, gostaríamos de coletar relatórios de falhas anônimos quando o aplicativo não funciona corretamente.\n\nVocê gostaria de optar por enviar relatórios de falha para a equipe de desenvolvimento OONI?
+ Sim
+ Não
+ Configurações-Padrão
+ Nós coletamos e publicamos:
+ Código do país (por exemplo, IT para Italy)
+ Informações de rede (incluindo o Número do Sistema Autônomo)
+ Hora e data do teste
+ Fazemos o possível para não publicar seu endereço IP ou qualquer outra informação que identifique você pessoalmente.\n\nAprenda mais através da [política de dados da OONI](https://ooni.org/about/data-policy/).
+ Ao tocar em \"OK\", você compartilhará relatórios de falhas para nos ajudar a melhorar o OONI Probe.
+ Vamos lá
+ Alterar padrões
+ P. Comando
+ Rodar
+ N/A
+ Rodar
+ Último teste:
+ Estimado:
+ Escolha sites
+ Rodando:
+ Tempo restante estimado:
+ %1$s segundos
+ Preparando o teste
+ Calculando ETA
+ Exibir registro
+ Fechar registro
+ Parando o teste…
+ Concluindo os testes atualmente pendentes, por favor aguarde...
+ Proxy em uso
+ Clique para ver outras opções
+ ~%1$ss
+ Teste o bloqueio de sites
+ Verifique se os websites estão bloqueados usando o [Teste de Conectividade Web](https://ooni.org/nettest/web-connectivity/) da OONI.\n\nToda vez que você clica em Executar, você testa diferentes websites das listas de testes [globais](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) e [específicas de cada país](https://github.com/citizenlab/test-lists/tree/master/lists) do Citizen Lab.\n\nPara testar os sites de sua escolha, toque no botão Escolher sites ou selecione categorias de sites através das configurações deste cartão.\n\nEste teste mede se os sites são bloqueados por meio de manipulação de DNS, bloqueio TCP/IP ou por um proxy HTTP transparente.\n\nSeus resultados serão publicados em [Explorador OONI](https://explorer.ooni.org/world/) e [API OONI](https://api.ooni.io/).
+ Verifique se os websites estão bloqueados usando o [teste de conectividade Web da OONI](https://ooni.org/nettest/web-connectivity/).\n\nVocê testará os websites incluídos no Citizen Lab\'s [global](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) e listas de teste [específicas por país](https://github.com/citizenlab/test-lists/tree/master/lists).\n\nEste teste mede se os sites são bloqueados por meio de manipulação de DNS, bloqueio TCP/IP ou por um proxy HTTP transparente.\n\nSeus resultados serão publicados no [OONI Explorer](https://explorer.ooni.org/) e no [OONI API](https://api.ooni.io/).
+ Teste a velocidade e o desempenho de sua rede
+ Meça a velocidade e o desempenho da sua rede usando o teste [NDT](https://ooni.org/nettest/ndt/).\n\nMeça o desempenho da streaming de vídeo usando o [DASH](https://ooni.org/nettest/dash/).\n\nEsses testes consomem dados dependendo da velocidade da sua rede.\n\nSeus resultados serão publicados no [OONI Explorer](https://explorer.ooni.org/world/) e na [OONI API](https://api.ooni.io/).\n\nIsenção de responsabilidade: Esses testes dependem de servidores de terceiros. Portanto, não podemos garantir que seu endereço IP não seja coletado.
+ Ao executar os testes neste cartão, você\n\n- Medirá a velocidade e o desempenho da sua rede ([Teste de NDT](https://ooni.org/nettest/ndt/))\n- Avaliará o desempenho do streaming de vídeo ([Teste de DASH](https://ooni.org/nettest/dash/))\n- Verificará a presença de [tecnologias de caixa intermediária](https://ooni.org/support/glossary/#middlebox) na sua rede ([Linha de solicitação inválida de HTTP](https://ooni.org/nettest/http-invalid-request-line/) e [Teste de manipulação de campo de cabeçalho HTTP](https://ooni.org/nettest/http-header-field-manipulation/))\n\nEsses testes consomem dados de acordo com a velocidade da sua rede.\n\nOs resultados dos seus testes serão publicados no [OONI Explorer](https://explorer.ooni.org/) e no [OONI API](https://api.ooni.io/).\n\n**Isenção de responsabilidade:** Os testes de [NDT](https://ooni.org/nettest/ndt/) e [DASH](https://ooni.org/nettest/dash/) são realizados com servidores de terceiros, fornecidos pela [Measurement Lab (M-Lab)](https://www.measurementlab.net/). Se você executar esses testes, o M-Lab coletará e publicará seu endereço IP (para fins de pesquisa), independentemente das configurações do seu OONI Probe. Saiba mais sobre a governança de dados da M-Lab através de sua [declaração de privacidade](https://www.measurementlab.net/privacy/).
+ Detectar caixas intermediárias na sua rede
+ Os provedores de serviços de Internet geralmente utilizam aparelhos de rede (caixas intermediárias) para vários fins de rede (como o armazenamento em cache). Algumas vezes, essas caixas intermediárias são usadas para implementar censura e/ou vigilância na Internet.\n\nEncontre caixas intermediárias em sua rede usando a OONI [HTTP Linha de Solicitação Inválida](https://ooni.org/nettest/http-invalid-request-line/) e testes [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/) tests.\n\nSeus resultados serão publicados no [OONI Explorer](https://explorer.ooni.org/world/) e no [OONI API](https://api.ooni.io/).
+ Teste o bloqueio de aplicativos de mensagens instantâneas
+ Verifique se [WhatsApp](https://ooni.org/nettest/whatsapp/), [Facebook Messenger](https://ooni.org/nettest/facebook-messenger/), [Telegram](https://ooni.org/nettest/telegram/), e [Signal](https://ooni.org/nettest/signal) estão bloqueados.\n\nSeus resultados serão publicados em [OONI Explorer](https://explorer.ooni.org/world/) e no [OONI API](https://api.ooni.io/).
+ Testar o bloqueio de ferramentas de evasão à censura
+ Verifique se [Psiphon](https://ooni.org/nettest/psiphon/), [Tor](https://ooni.org/nettest/tor/) ou [RiseupVPN](https://ooni.org/nettest/riseupvpn/) estão bloqueados.\n\nSeus resultados serão publicados em [OONI Explorer](https://explorer.ooni.org/) e no [OONI API](https://api.ooni.io/).
+ Executar novos testes experimentais
+ Execute os seguintes novos testes experimentais desenvolvidos pela equipe OONI:\n%1$s\n\nSeus resultados serão publicados em [OONI Explorer](https://explorer.ooni.org/) e [OONI API](https://api.ooni.io/).
+ Os testes a seguir serão executados apenas como parte de testes automatizados:
+ Testes Desabilitados
+ Gbit/s
+ Mbit/s
+ kbit/s
+ ms
+ N/A
+ Desconhecido
+ Resultado dos testes
+ Resultado dos testes
+ Testes
+ Redes
+ Uso de dados
+ Filtrar Testes
+ Todos os Testes
+ Websites
+ Caixas intermediárias
+ Desempenho
+ Mensagem Instantânea
+ Contornar a censura
+ Experimental
+ Nenhum teste foi executado ainda. Tente executar um!
+ %1$s bloqueado
+ %1$s bloqueados
+ %1$s testado
+ %1$s testado
+ Detectado
+ Não detectado
+ Falhou
+ %1$s bloqueado
+ %1$s bloqueados
+ %1$s acessível
+ %1$s acessíveis
+ %1$s bloqueado
+ %1$s bloqueados
+ %1$s disponível
+ %1$s disponíveis
+ Resultado incompleto
+ Erro
+ Erro na medição
+ Resultados não enviados
+ Data e hora
+ Rede
+ País
+ Uso de dados
+ Tempo Total de Execução
+ Wi-Fi
+ Dados Móveis
+ Sem internet
+ Falhou
+ Testado
+ Testado
+ Bloqueado
+ Bloqueados
+ Website
+ Websites
+ Acessível
+ Acessível
+ Vídeo
+ Qualidade
+ Carregar
+ Baixar
+ Ping
+ Detectado
+ Não detectada
+ Falhou
+ Testado
+ Testado
+ Bloqueado
+ Bloqueados
+ Acessível
+ Acessível
+ Aplicativo
+ Aplicativos
+ Testado
+ Testadas
+ Bloqueadas
+ Bloqueado
+ Funcionando
+ Funcionando
+ Ferramenta
+ Ferramentas
+ Tempo de Execução
+ Metodologia
+ Ver log
+ Dados
+ Copiar a URL do Explorer
+ Compartilhar a URL do Explorer
+ Copiar para área de transferência
+ Mostrar no OONI Explorer
+ Falhou
+ Você pode tentar executar este teste novamente
+ Tentar Novamente
+ Saiba como este teste funciona [aqui](%1$s).
+ Acessível
+ %1$s está acessível.
+ Provavelmente bloqueados
+ %1$s provavelmente está bloqueado por meio de %2$s.\n\nNota: Resultados positivos falsos podem ocorrer. Saiba mais [aqui](https://ooni.org/support/faq/#what-are-false-positives).
+ Driblagem de Censura
+ **Adulteração de DNS**
+ **Bloqueio baseado em TCP/IP**
+ **Bloqueio de HTTP (uma página de bloqueio pode ser exibida)**
+ **Bloqueio de HTTP (solicitações de HTTP falharam)**
+ Aplicativo Móvel
+ OK
+ Falhou
+ WhatsApp Web
+ OK
+ Falhou
+ Registro
+ OK
+ Falhou
+ Funcionando
+ Este teste foi conectado com sucesso às URLs do WhatsApp, serviço de registro e interface web (web.whatsapp.com).
+ Provavelmente bloqueado
+ WhatsApp parece estar bloqueado.
+ Aplicativo Móvel
+ OK
+ Falhou
+ Telegram Web
+ OK
+ Falhou
+ Funcionando
+ Este teste foi conectado com sucesso às URLs do Telegram e à interface web (web.telegram.org).
+ Provavelmente bloqueado
+ Telegram parece estar bloqueado.
+ Conexões TCP
+ OK
+ Falhou
+ Pesquisas de DNS
+ OK
+ Falhou
+ Funcionando
+ Este teste foi conectado com sucesso às URLs do Facebook e processado para endereços IP do Facebook.
+ Provavelmente bloqueado
+ Facebook Messenger parece estar bloqueado.
+ Provavelmente bloqueados
+ O sinal parece estar bloqueado.
+ Funcionando
+ Este teste foi conectado com sucesso aos endpoints do Signal.
+ Nenhuma caixa intermediária detectada
+ Nenhuma anomalia de rede foi detectada durante a comunicação com nossos servidores.
+ Adulteração de rede
+ O tráfego de rede foi manipulado ao entrar em contato com nossos servidores de controle.\n\nIsso significa que pode haver uma caixa intermediária na sua rede, que pode ser responsável pela censura e/ou vigilância.
+ Nenhuma caixa intermediária detectada
+ Nenhuma anomalia de rede foi detectada durante a comunicação com nossos servidores.
+ Adulteração de rede
+ O tráfego de rede foi manipulado ao entrar em contato com nossos servidores de controle.\n\nIsso significa que pode haver uma caixa intermediária na sua rede, que pode ser responsável pela censura e/ou vigilância.
+ Você enviou
+ Você Recebeu
+ Carregar
+ Download
+ Ping
+ Servidor
+ Taxa de retransmissão
+ Fora de Ordem
+ Ping Médio
+ Estimativa Máxima de Ping
+ MSS
+ Tempo excedido
+ Você pode transmitir até %1$s sem usar a memória temporária.
+ Taxa média de bits
+ Atraso de Playout
+ Provavelmente bloqueado
+ Funcionando
+ [Tor](https://www.torproject.org/) parece estar bloqueado.
+ Conseguimos reiniciar uma conexão Psiphon com êxito. Isso significa que [Psiphon](https://psiphon.ca/) deveria funcionar.
+ Hora de reiniciar
+ %1$s s
+ Provavelmente bloqueado
+ Funcionando
+ [Tor](https://www.torproject.org/) parece estar bloqueado.
+ Conseguimos nos conectar às pontes Tor padrão e/ou às autoridades do diretório Tor. Isso significa que [Tor](https://www.torproject.org/) deveria funcionar.
+ Pontes padrão
+ %1$s/%2$s OK
+ Autoridades de diretório
+ %1$s/%2$s OK
+ Nome
+ Endereço
+ Tipo
+ Conectar
+ Handshake
+ Provavelmente bloqueados
+ Funcionando
+ [RiseupVPN](https://riseup.net/vpn) parece estar bloqueado.
+ Conseguimos nos conectar com sucesso ao servidor de bootstrap do RiseupVPN e aos gateways VPN. Isso significa que [RiseupVPN](https://riseup.net/vpn) deveria funcionar.
+ Servidor de bootstrap
+ Conexões OpenVPN
+ Conexões em ponte
+ Bloqueado
+ %1$s bloqueados
+ %1$s bloqueados
+ OK
+ Este é um teste experimental.
+ Alimentar
+ Alimentar
+ OK
+ Cancelar
+ Não, não pergunte novamente
+ Apagar
+ Erro
+ Tentar novamente
+ Parece ótimo
+ Não, agradeço
+ Agora não
+ Execute mesmo assim
+ Desativar VPN
+ Sempre executar
+ Não foi possível executar o teste. Por favor, verifique sua conexão com a Internet.
+ Não foi possível baixar a lista de URL\'s. Por favor, tente novamente.
+ Aguarde a conclusão dos testes em execução antes de iniciar um novo teste.
+ Permissões de notificação são necessárias. Por favor, habilite-as nas Configurações do seu telefone e, em seguida, habilite-as em seu aplicativo OONI Probe.
+ Abrir Configurações
+ Esta tela é bloqueada enquanto um teste é executado.
+ Você precisa se conectar à Internet para baixar os dados brutos de medição.
+ Resultados não enviados
+ Alguns dos seus resultados de teste não foram enviados para servidores da OONI. Se você quiser contribuir com o banco de dados da OONI, carregue-os.
+ Carregar
+ Fazendo upload de %1$s ...
+ OONI Probe não pode ser executado automaticamente sem a otimização da bateria. Você quer tentar novamente?
+ Por favor, desative sua conexão VPN.
+ Se você executar OONI Probe com uma VPN habilitada, os resultados do teste podem parecer que vêm do país errado. Por favor, desabilite sua conexão VPN.
+ Algumas medições foram feitas sobre VPN.
+ Se você carregar as medições feitas com a VPN habilitada, os resultados do teste podem parecer vir do país errado.
+ Carregamento bem-sucedido
+ Exibir log de falhas
+ Receba atualizações sobre censura na internet
+ Interessado em executar os testes OONI Probe durante eventos emergentes de censura? Ative as notificações para receber uma mensagem quando soubermos de censura na Internet perto de você.
+ Para melhorar a precisão dos testes, necessitamos de permissões de GPS. OONI coletará somente a sua posição GPS aproximada.
+ Deseja apagar todos os resultados do teste?
+ Você deseja apagar este teste?
+ Por favor, habilite pelo menos um teste
+ Por favor, insira apenas dígitos neste campo.
+ Repetir o teste
+ Este teste falhou. Você deseja fazer um outro teste?
+ Você está prestes a testar novamente os sites %1$s.
+ Executar
+ Suas URLs não serão salvas quando você sair desta tela. Tem certeza de que deseja sair desta tela?
+ Ativar carregamento manual?
+ Essa configuração permite que você carregue manualmente as medidas não publicadas.
+ Habilitar
+ Não, agradeço
+ Falha ao enviar
+ Falha ao carregar %1$s/%2$s medidas. O log de falhas foi compartilhado com as pessoas que desenvolvem o OONI.
+ Arquivo de log não encontrado
+ Nenhuma URL válida encontrada
+ JSON vazio
+ Você quer interromper este teste?
+ Isso interromperá o atual teste imediatamente.
+ Você gostaria de executar testes automaticamente?
+ Ao permitir testes automatizados, você contribuirá com as medições OONI regularmente.
+ Por favor, permita que o aplicativo seja executado em segundo plano.
+ Lembre-me depois
+ Copiado para a área de transferência
+ Não Carregado
+ Carregar
+ Alguns items não carregaram
+ Carregar Todos
+ Websites
+ Mensagem Instantânea
+ Caixas intermediárias
+ Desempenho
+ Contornar a censura
+ Experimental
+ Teste \"HTTP Invalid Request Line Test\"
+ Teste \"HTTP Header Field Manipulation\"
+ Teste de Conexão da Web
+ Teste de Velocidade NDT
+ Teste de Transmissão DASH
+ Teste do WhatsApp
+ Teste do Telegram
+ Teste do Facebook Messenger
+ Teste do Psiphon
+ Teste do Tor
+ Teste RiseupVPN
+ Teste do Signal
+ Configurações
+ A quantidade de tempo que você definiu para a duração do teste é muito baixa.
+ Sobre OONI
+ O Observatório Aberto de Interferência de Rede (OONI) é um projeto de software livre no âmbito do Projeto Tor que visa aumentar a transparência sobre a censura na Internet em todo o mundo.\n\nDesde 2012, a comunidade global da OONI mede redes em mais de 200 países. Algumas dessas medições servem como evidência de censura na Internet.
+ Saber mais
+ Blog
+ Relatórios
+ Política de dados da OONI
+ Notificaçőes
+ Ativado
+ Notificar após a conclusão do teste
+ Notícias
+ Teste automatizado
+ Executar testes automaticamente
+ Número de testes automatizados: %1$s.
+ Último teste automatizado: %1$s.
+ Somente com Wi-Fi
+ Somente durante o carregamento
+ Ao permitir testes automáticos, os testes OONI Probe serão executados automaticamente várias vezes por dia. Os resultados de seus testes serão publicados automaticamente no OONI Explorer: https://explorer.ooni.org/ \n\nIImportante: Se você tiver uma VPN habilitada, a OONI Probe não executará testes automaticamente. Por favor, desligue sua VPN para testes automatizados da OONI Probe. Saiba mais: https://ooni.org/support/faq/#can-i-run-ooni-probe-over-a-vpn
+ Compartilhando
+ Publicar os resultados automaticamente
+ Carregamento manual dos resultados
+ Incluir informações de rede
+ Incluir localização geográfica aproximada
+ Incluir meu endereço IP
+ Inclua o código do país
+ Essas informações (por exemplo, IT para Italy) são necessárias para identificar de quais países as medidas são coletadas. Tem certeza de que deseja desativar essa opção?
+ Ao publicar os resultados, você aumenta a transparência sobre a interferência da rede e dá suporte à comunidade da OONI.\n\nAs informações de rede (ou seja, o número do sistema autônomo) são necessárias para identificar os provedores de serviços de Internet.
+ Opções de teste
+ O que você configura através das opções de teste acima (por ex. desativar o teste WhatsApp) será aplicado aos testes executados manualmente, bem como aos testes executados automaticamente (quando os testes automatizados são ativados).
+ Teste de longa duração
+ Realizar testes de longa duração em primeiro plano?
+ Privacidade
+ Enviar relatórios de erros
+ Avançado
+ Modo escuro
+ Registros de depuração
+ Ver logs recentes
+ Configuração de idioma
+ Selecionar idioma
+ Sempre usar \"domain fronting\"
+ Proxy de back-end do OONI
+ Proxy
+ Nenhum
+ Psiphon
+ Proxy personalizado
+ URL de proxy personalizado
+ Protocolo de proxy personalizado
+ Conexão
+ Nome do hospedeiro
+ Porta
+ Credenciais (opcional)
+ Usuário
+ Senha
+ Usar Psiphon em vez de proxy personalizado
+ Não está conseguindo usar o OONI Probe? Tente habilitar [Psiphon](https://psiphon.ca/) para contornar o bloqueio potencial da Sonda OONI. Como alternativa, você pode usar um proxy personalizado.
+ Limitar a duração do teste
+ Duração do teste
+ Categorias de sites para testar
+ %1$s categorias habilitadas
+ Editar
+ Desmarcar todos
+ Selecionar todos
+ Salvar
+ As modificações não foram salvas
+ Você fez algumas modificações nas categorias habilitadas. Você gostaria de salvá-las?
+ Salvar
+ Descartar
+ Escolha sites para testar
+ URL
+ Nenhuma URL inserida
+ Rodar
+ Adicionar website
+ Carregar de modelo
+ Número de sites testados (0 significa todos)
+ Teste do WhatsApp
+ Teste do Telegram
+ Teste do Facebook Messenger
+ Testar o Signal
+ Executar o teste \"HTTP Invalid Request Line\"
+ Executar o teste \"HTTP Header Field Manipulation\"
+ Execute o teste de velocidade NDT
+ Seleção automática do servidor NDT
+ Endereço do servidor NDT
+ Porta do servidor NDT
+ Executar o Teste de Transmissão DASH
+ Seleção automática do servidor DASH
+ Servidor DASH
+ Porta do servidor DASH
+ Teste Psiphon
+ Teste Tor
+ Testar o RiseupVPN
+ Avise quando a VPN estiver em uso
+ Enviar e-mail para suporte
+ Descreva o problema que você está enfrentando:
+ Por favor, envie um e-mail para bugs@openobservatory.org com informações sobre o aplicativo e a versão do iOS. Toque em \"Copiar para área de transferência,\" abaixo, para copiar nosso endereço de e-mail.
+ O idioma atual da aplicação é %1$s
+ Idioma
+ Uso de armazenamento
+ Armazenamento usado
+ Apagar
+ Limpar
+ Você está prestes a excluir todas as medições OONI do seu dispositivo. Se carregados, eles ainda estarão disponíveis em [OONI Explorer](https://explorer.ooni.org)
+ Execução concluída
+ Parar o teste
+ Tentar espelho
+ Carregando...
+ Um erro inesperado ocorreu. Por favor, recarregue esta página.
+ Você está prestes a executar um teste OONI Probe.
+ %1$s URL\'s
+ Nome de teste
+ Detalhes do teste
+ Executat
+ Desatualizado
+ Você precisa de uma versão mais recente do OONI Probe para executar este teste.
+ Atualizar
+ Fechar
+ Parâmetro inválido
+ O link OONI Run está malformado ou seu aplicativo está desatualizado.
+ Você testará uma amostra aleatória de sites.
+ Por favor, aguarde a execução do teste terminar antes de clicar em um link OONI Run.
+ Drogas e Álcool
+ Religião
+ Pornografia
+ Traje Provocante
+ Crítica Política
+ Questões de direitos humanos
+ Meio Ambiente
+ Terrorismo e Militantes
+ Discurso de ódio
+ Meios de comunicação
+ Educação sexual
+ Saúde pública
+ Jogos de azar
+ Ferramentas para driblar censura
+ Namoro virtual
+ Rede social
+ LGBTQ+
+ Compartilhamento de arquivos
+ Ferramentas de Hacking
+ Ferramentas de comunicação
+ Compartilhamento de mídia
+ Hospedagem e Blog
+ Ferramentas de busca
+ Jogos
+ Cultura
+ Economia
+ Governo
+ Comércio eletrônico
+ Controle de conteúdo
+ Organizações Intergovernamentais.
+ Conteúdo diversos
+ Uso e venda de drogas e álcool
+ Questões religiosas, tanto de apoio como críticas
+ Pornografia leve e pesada
+ Trajes provocativos e retratos de mulheres usando poucas peças de roupa
+ Pontos de vista políticos críticos
+ Questões de direitos humanos
+ Discussões sobre questões ambientais
+ Terrorismo, movimentos violentos militantes ou separatistas
+ Desprezo de grupos específicos com base em raça, sexo, sexualidade ou outras características
+ Principais sites de notícias, agências de notícias regionais e mídia independente
+ Questões de saúde sexual, incluindo contracepção, DSTs, prevenção de estupro e aborto
+ Questões de saúde pública, tais como COVID-19, HIV/AIDS, Ebola
+ Jogos e apostas online
+ Anonimização, driblagem de censura e criptografia
+ Sites de namoro online
+ Ferramentas e plataformas de redes sociais online
+ Comunidades LGBTQ+ discutindo questões relacionadas (excluindo pornografia)
+ Compartilhamento de arquivos, incluindo armazenamento de arquivos em servidores em nuvens, torrents e P2P
+ Ferramentas de segurança da informática e notícias
+ Ferramentas de comunicação individuais e em grupo, incluindo VoIP, mensagens e webmail
+ Vídeo, áudio e compartilhamento de fotos
+ Hospedagem na web, blogs e outras publicações online
+ Ferramentas de busca e portais
+ Jogos online e plataformas de jogos (excluindo sites de jogos de azar)
+ Entretenimento, incluindo história, literatura, música, cinema, sátira e humor
+ Desenvolvimento econômico geral e pobreza
+ Sites administrados pelo governo, inclusive militares
+ Serviços e produtos comerciais
+ Conteúdo benigno ou inócuo usado para controle
+ Organizações intergovernamentais, incluindo as Nações Unidas
+ Sites que ainda não foram categorizados
+
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/dw/res/values-ru/strings.xml
similarity index 100%
rename from app/src/main/res/values-ru/strings.xml
rename to app/src/dw/res/values-ru/strings.xml
diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/dw/res/values-tr/strings.xml
similarity index 100%
rename from app/src/main/res/values-tr/strings.xml
rename to app/src/dw/res/values-tr/strings.xml
diff --git a/app/src/dw/res/values/colors.xml b/app/src/dw/res/values/colors.xml
new file mode 100644
index 000000000..8a4525311
--- /dev/null
+++ b/app/src/dw/res/values/colors.xml
@@ -0,0 +1,8 @@
+
+
+ #D32625
+ #4B545C
+ @color/color_secondary
+ @color/color_secondary
+ @color/color_secondary
+
\ No newline at end of file
diff --git a/app/src/dw/res/values/dimens.xml b/app/src/dw/res/values/dimens.xml
new file mode 100644
index 000000000..4e7c7d491
--- /dev/null
+++ b/app/src/dw/res/values/dimens.xml
@@ -0,0 +1,4 @@
+
+
+ 8dp
+
\ No newline at end of file
diff --git a/app/src/dw/res/values/ic_launcher_background.xml b/app/src/dw/res/values/ic_launcher_background.xml
new file mode 100644
index 000000000..b0e4eba86
--- /dev/null
+++ b/app/src/dw/res/values/ic_launcher_background.xml
@@ -0,0 +1,4 @@
+
+
+ #D32625
+
\ No newline at end of file
diff --git a/app/src/dw/res/values/strings.xml b/app/src/dw/res/values/strings.xml
new file mode 100644
index 000000000..f8a4c9b38
--- /dev/null
+++ b/app/src/dw/res/values/strings.xml
@@ -0,0 +1,533 @@
+
+
+ News Media Scan
+ Are news media sites blocked?
+ Run News Media Scan to find out! News Media Scan is the #1 app to give you transparency about the news landscape in whatever country you currently find yourself. Additionally, by using the app, you are making an important contribution to the measurement of censorship around the world.\n\nThe list you see in the app is a public, community-curated list on GitHub and not curated by DW. It represents an objective range of international and national news media providers.
+ Got It
+ Heads-up!
+ OONI will openly publish the measurement data you send, along with your network information.
+ Anyone monitoring your Internet connection will be able to see you are running News Media Scan.
+ You will be testing news websites that might be banned in the country where you currently find yourself.
+ I understand
+ Learn more
+ Pop Quiz
+ True
+ False
+ Go back
+ Continue
+ Question 1/2
+ If someone is monitoring my internet activity, they will see that I am running News Media Scan.
+ Warning
+ News Media Scan is not a privacy tool. Anyone monitoring your internet activity will see which software you are running.
+ Question 2/2
+ Every time I run News Media Scan, the network data I collect will automatically get published.
+ Warning
+ To increase transparency of internet censorship, the network data of all News Media Scan users is automatically published (unless they opt-out in the settings).
+ Automated testing
+ To measure internet censorship every day, please enable automated testing so that News Media Scan can run tests periodically.\n\nDon’t worry, we’ll be mindful of battery usage.\n\nYou can disable automated testing from the settings at any time.
+ Crash Reporting
+ To improve News Media Scan we would like to collect anonymous crash reports when the app does not work properly.\n\nWould you like to opt-in to submitting crash reports to the OONI development team?
+ Yes
+ No
+ Default Settings
+ We collect and publish:
+ Country code (e.g. IT for Italy)
+ Network information (including Autonomous System Number)
+ Time & date of testing
+ We do our best not to publish your IP address or any other potentially personally identifiable information.\n\nLearn more through [OONI\'s Data Policy](https://ooni.org/about/data-policy/).
+ By tapping \"OK\", you will share crash reports to help us improve OONI Probe.
+ Let\'s go
+ Change defaults
+ Dashboard
+ Run
+ N/A
+ Run
+ Last test:
+ Estimated:
+ Choose websites
+ Running:
+ Estimated time left:
+ %1$s seconds
+ Preparing test
+ Calculating ETA
+ Show Log
+ Close Log
+ Stopping test…
+ Finishing the currently pending tests, please wait…
+ Proxy in use
+ Tap card for more
+ ~%1$ss
+ Checks for blocking of news media websites
+ Check whether websites are blocked using OONI\'s [Web Connectivity test](https://ooni.org/nettest/web-connectivity/).\n\nEvery time you tap Run, you test different websites from the Citizen Lab\'s [global](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) and [country-specific](https://github.com/citizenlab/test-lists/tree/master/lists) test lists.\n\nTo test the sites of your choice, tap the Choose websites button or select categories of sites via the settings of this card. \n\nThis test measures whether websites are blocked by means of DNS tampering, TCP/IP blocking or by a transparent HTTP proxy.\n\nYour results will be published on [OONI Explorer](https://explorer.ooni.org/world/) and [OONI API](https://api.ooni.io/).
+ Check whether websites are blocked using OONI\'s [Web Connectivity test](https://ooni.org/nettest/web-connectivity/).\n\nYou will test the websites included in the Citizen Lab\'s [global](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) and [country-specific](https://github.com/citizenlab/test-lists/tree/master/lists) test lists.\n\nThis test measures whether websites are blocked by means of DNS tampering, TCP/IP blocking or by a transparent HTTP proxy.\n\nYour results will be published on [OONI Explorer](https://explorer.ooni.org/) and [OONI API](https://api.ooni.io/).
+ Test your network speed and performance
+ Measure the speed and performance of your network using the [NDT](https://ooni.org/nettest/ndt/) test.\n\nMeasure video streaming performance using the [DASH](https://ooni.org/nettest/dash/) test.\n\nThese tests consume data depending on your network speed.\n\nYour results will be published on [OONI Explorer](https://explorer.ooni.org/world/) and [OONI API](https://api.ooni.io/).\n\nDisclaimer: These tests rely on third party servers. We therefore cannot guarantee that your IP address will not be collected.
+ By running the tests in this card, you will:\n\n- Measure the speed and performance of your network ([NDT](https://ooni.org/nettest/ndt/) test)\n- Measure video streaming performance ([DASH](https://ooni.org/nettest/dash/) test)\n- Check for the presence of [middlebox technologies](https://ooni.org/support/glossary/#middlebox) on your network ([HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) and [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/) tests)\n\nThese tests consume data depending on your network speed.\n\nYour test results will be published on [OONI Explorer](https://explorer.ooni.org/) and [OONI API](https://api.ooni.io/).\n\n**Disclaimer:** The [NDT](https://ooni.org/nettest/ndt/) and [DASH](https://ooni.org/nettest/dash/) tests are conducted against third-party servers provided by [Measurement Lab (M-Lab)](https://www.measurementlab.net/). If you run these tests, M-Lab will collect and publish your IP address (for research purposes), irrespective of your OONI Probe settings. Learn more about M-Lab’s data governance through its [privacy statement](https://www.measurementlab.net/privacy/).
+ Detect middleboxes in your network
+ Internet Service Providers often use network appliances (middleboxes) for various networking purposes (such as caching). Sometimes these middleboxes are used to implement internet censorship and/or surveillance.\n\nFind middleboxes in your network using OONI\'s [HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) and [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/) tests.\n\nYour results will be published on [OONI Explorer](https://explorer.ooni.org/world/) and [OONI API](https://api.ooni.io/).
+ Test the blocking of instant messaging apps
+ Check whether [WhatsApp](https://ooni.org/nettest/whatsapp/), [Facebook Messenger](https://ooni.org/nettest/facebook-messenger/), [Telegram](https://ooni.org/nettest/telegram/), and [Signal](https://ooni.org/nettest/signal) are blocked.\n\nYour results will be published on [OONI Explorer](https://explorer.ooni.org/world/) and [OONI API](https://api.ooni.io/).
+ Test the blocking of censorship circumvention tools
+ Check whether [Psiphon](https://ooni.org/nettest/psiphon/), [Tor](https://ooni.org/nettest/tor/) or [RiseupVPN](https://ooni.org/nettest/riseupvpn/) are blocked.\n\nYour results will be published on [OONI Explorer](https://explorer.ooni.org/) and [OONI API](https://api.ooni.io/).
+ Run new experimental tests
+ Run the following new experimental tests developed by the OONI team:\n%1$s\n\nYour results will be published on [OONI Explorer](https://explorer.ooni.org/) and [OONI API](https://api.ooni.io/).
+ The following tests will only be run as part of automated testing:
+ Disabled Tests
+ Gbit/s
+ Mbit/s
+ kbit/s
+ ms
+ N/A
+ Unknown
+ Test Results
+ Test Results
+ Tests
+ Networks
+ Data Usage
+ Filter Tests
+ All Tests
+ Websites
+ Middleboxes
+ Performance
+ Instant Messaging
+ Circumvention
+ Experimental
+ No tests have been run yet. Try running one!
+ %1$s blocked
+ %1$s blocked
+ %1$s tested
+ %1$s tested
+ Detected
+ Not detected
+ Failed
+ %1$s blocked
+ %1$s blocked
+ %1$s accessible
+ %1$s accessible
+ %1$s blocked
+ %1$s blocked
+ %1$s available
+ %1$s available
+ Incomplete Result
+ Error
+ Error in Measurement
+ Results not uploaded
+ Date & Time
+ Network
+ Country
+ Data Usage
+ Total Runtime
+ WiFi
+ Mobile Data
+ No internet
+ Failed
+ Tested
+ Tested
+ Blocked
+ Blocked
+ Website
+ Websites
+ Accessible
+ Accessible
+ Video
+ Quality
+ Upload
+ Download
+ Ping
+ Detected
+ Not detected
+ Failed
+ Tested
+ Tested
+ Blocked
+ Blocked
+ Accessible
+ Accessible
+ App
+ Apps
+ Tested
+ Tested
+ Blocked
+ Blocked
+ Working
+ Working
+ Tool
+ Tools
+ Runtime
+ Methodology
+ View log
+ Data
+ Copy Explorer URL
+ Share Explorer URL
+ Copy to clipboard
+ Show in OONI Explorer
+ Failed
+ You can try to run this test again
+ Try Again
+ Learn how this test works [here](%1$s).
+ Accessible
+ %1$s is accessible.
+ Likely blocked
+ %1$s is likely blocked by means of %2$s.\n\nNote: False positives can occur. Learn more [here](https://ooni.org/support/faq/#what-are-false-positives).
+ Censorship Circumvention
+ **DNS tampering**
+ **TCP/IP based blocking**
+ **HTTP blocking (a blockpage might be served)**
+ **HTTP blocking (HTTP requests failed)**
+ Mobile App
+ OK
+ Failed
+ WhatsApp Web
+ OK
+ Failed
+ Registration
+ OK
+ Failed
+ Working
+ This test successfully connected to WhatsApp\'s endpoints, registration service and web interface (web.whatsapp.com).
+ Likely blocked
+ WhatsApp appears to be blocked.
+ Mobile App
+ OK
+ Failed
+ Telegram Web
+ OK
+ Failed
+ Working
+ This test successfully connected to Telegram\'s endpoints and web interface (web.telegram.org).
+ Likely blocked
+ Telegram appears to be blocked.
+ TCP connections
+ OK
+ Failed
+ DNS lookups
+ OK
+ Failed
+ Working
+ This test successfully connected to Facebook\'s endpoints and resolved to Facebook IP addresses.
+ Likely blocked
+ Facebook Messenger appears to be blocked.
+ Likely blocked
+ Signal appears to be blocked.
+ Working
+ This test successfully connected to Signal\'s endpoints.
+ No middleboxes detected
+ No network anomaly was detected when communicating with our servers.
+ Network tampering
+ Network traffic was manipulated when contacting our control servers.\n\nThis means that there may be a middlebox in your network, which could be responsible for censorship and/or surveillance.
+ No middleboxes detected
+ No network anomaly was detected when communicating with our servers.
+ Network tampering
+ Network traffic was manipulated when contacting our control servers.\n\nThis means that there may be a middlebox in your network, which could be responsible for censorship and/or surveillance.
+ You Sent
+ You Received
+ Upload
+ Download
+ Ping
+ Server
+ Retransmission Rate
+ Out of Order
+ Average Ping
+ Max Ping Estimate
+ MSS
+ Timeouts
+ You can stream up to %1$s without buffering.
+ Median Bitrate
+ Playout Delay
+ Likely blocked
+ Working
+ [Psiphon](https://psiphon.ca/) appears to be blocked.
+ We were able to successfully bootstrap a Psiphon connection. This means that [Psiphon](https://psiphon.ca/) should work.
+ Bootstrap Time
+ %1$s s
+ Likely blocked
+ Working
+ [Tor](https://www.torproject.org/) appears to be blocked.
+ We were able to successfully connect to the default Tor bridges and/or Tor directory authorities. This means that [Tor](https://www.torproject.org/) should work.
+ Default Bridges
+ %1$s/%2$s OK
+ Directory Authorities
+ %1$s/%2$s OK
+ Name
+ Address
+ Type
+ Connect
+ Handshake
+ Likely blocked
+ Working
+ [RiseupVPN](https://riseup.net/vpn) appears to be blocked.
+ We were able to successfully connect to RiseupVPN\'s bootstrap server and VPN gateways. This means that [RiseupVPN](https://riseup.net/vpn) should work.
+ Bootstrap server
+ OpenVPN connections
+ Bridged connections
+ Blocked
+ %1$s blocked
+ %1$s blocked
+ OK
+ This is an experimental test.
+ Feed
+ Feed
+ OK
+ Cancel
+ No, don\'t ask again
+ Delete
+ Error
+ Retry
+ Sounds great
+ No, thanks
+ Not now
+ Run anyways
+ Disable VPN
+ Always Run
+ Unable to run the test. Please check your internet connectivity.
+ Unable to download URL list. Please try again.
+ Please wait for the current running tests to finish, before starting a new test.
+ Notification permissions are required. Please enable them in the Settings of your phone and then enable them in your OONI Probe app.
+ Go to the Settings
+ This screen is locked while a test is running.
+ You need to be connected to the internet to download the raw measurement data.
+ Results not uploaded
+ Some of your test results have not been uploaded to OONI servers. If you\'d like to contribute to OONI\'s dataset, please upload them.
+ Upload
+ Uploading %1$s ...
+ OONI Probe cannot run automatically without battery optimization. Do you want to try again?
+ Please disable your VPN connection.
+ If you run OONI Probe with a VPN enabled, the test results may appear to come from the wrong country. Please disable your VPN connection.
+ Some measurements were taken over VPN.
+ If you upload measurements taken when VPN enabled, the test results may appear to come from the wrong country.
+ Upload successful
+ Display failure log
+ Get updates on internet censorship
+ Interested in running OONI Probe tests during emergent censorship events? Enable notifications to receive a message when we hear of internet censorship near you.
+ To improve the accuracy of tests, we need GPS permissions. OONI will only collect an approximation of your GPS position.
+ Do you want to delete all test results?
+ Do you want to delete this test?
+ Please enable at least one test
+ Please insert only digits in this field.
+ Re-run test
+ This test has failed. Re-run the test?
+ You are about to re-test %1$s websites.
+ Run
+ Your URLs will not be saved when you leave this screen. Are you sure you want to leave this screen?
+ Enable Manual Upload?
+ This setting allows you to manually re-upload unpublished measurements.
+ Enable
+ No, thanks
+ Upload failed
+ We have failed to upload %1$s/%2$s measurements. The failure log has been shared with OONI developers.
+ Log file not found
+ No valid URLs found
+ JSON empty
+ Do you want to interrupt this test?
+ This will interrupt the current test from this moment.
+ Would you like to run tests automatically?
+ By enabling automated testing, you will contribute OONI measurements on a regular basis.
+ Please allow the app to run in the background.
+ Remind me later
+ Copied to clipboard
+ Not uploaded
+ Upload
+ Some not uploaded
+ Upload All
+ News Media Websites
+ Instant Messaging
+ Middleboxes
+ Performance
+ Circumvention
+ Experimental
+ HTTP Invalid Request Line Test
+ HTTP Header Field Manipulation Test
+ Web Connectivity Test
+ NDT Speed Test
+ DASH Streaming Test
+ WhatsApp Test
+ Telegram Test
+ Facebook Messenger Test
+ Psiphon Test
+ Tor Test
+ RiseupVPN Test
+ Signal Test
+ Settings
+ The amount of time you have set for the test duration is too low.
+ About News Media Scan
+ This app is the product of close cooperation between Deutsche Welle (DW) and OONI.\n\n_About DW:_ Unbiased information for free minds – that is the DW brand promise. As an independent media company, Germany’s international news broadcaster informs people around the world. With programming in 32 languages, DW connects people across the globe via TV, radio, Internet and on social media. \n\nFurther information:[ About DW](https://corporate.dw.com/en/about-dw/s-30688) \n\n_About OONI:_ Founded in 2012, the Open Observatory of Network Interference (OONI) is a non-profit free software project that aims to empower decentralized efforts in documenting internet censorship around the world. Thanks to their global community, [more than a billion network measurements](https://explorer.ooni.org/) have been published from more than 200 countries, shedding light on cases of internet censorship worldwide. \n\nBe part of the internet freedom movement by providing data from the networks you’re using.
+ Learn more
+ Blog
+ Reports
+ OONI Data Policy
+ Notifications
+ Enabled
+ Notify upon test completion
+ News Feed
+ Automated testing
+ Run tests automatically
+ Number of automated tests: %1$s.
+ Last automated test: %1$s.
+ Only on WiFi
+ Only while charging
+ By enabling automatic testing, OONI Probe tests will run automatically multiple times per day. Your test results will automatically get published on OONI Explorer: https://explorer.ooni.org/ \n\nImportant: If you have a VPN enabled, OONI Probe will not run tests automatically. Please turn off your VPN for automated OONI Probe testing. Learn more: https://ooni.org/support/faq/#can-i-run-ooni-probe-over-a-vpn
+ Sharing
+ Automatically Publish Results
+ Manual Result Upload
+ Include Network Info
+ Include approximate geo-location
+ Include my IP address
+ Include Country Code
+ This information (e.g. IT for Italy) is required to identify which country the measurements are collected from. Are you sure you want to disable this option?
+ By publishing results, you are increasing transparency of network interference and supporting the OONI community. \n\nNetwork information (i.e. Autonomous System Number) is required for identifying Internet Service Providers.
+ Test options
+ What you configure through the above test settings (e.g. disabling the WhatsApp test) will apply to tests run manually, as well as to tests run automatically (when automated testing is enabled).
+ Long running test
+ Run long running tests in foreground?
+ Privacy
+ Send crash reports
+ Advanced
+ Dark Mode
+ Debug logs
+ See recent logs
+ Language Setting
+ Select Language
+ Always use domain fronting
+ Backend proxy
+ Proxy
+ None
+ Psiphon
+ Custom Proxy
+ Custom Proxy URL
+ Custom proxy protocol
+ Connection
+ Hostname
+ Port
+ Credentials (optional)
+ Username
+ Password
+ Use Psiphon over custom proxy
+ Are you unable to use OONI Probe? Try enabling [Psiphon](https://psiphon.ca/) to circumvent potential OONI Probe blocking. Alternatively, you can use a custom proxy.
+ Limit test duration
+ Test duration
+ Website categories to test
+ %1$s categories enabled
+ Edit
+ Deselect All
+ Select All
+ Save
+ Unsaved Changes
+ You made some changes to the enabled categories. Would you like to save them?
+ Save
+ Discard
+ Choose websites to test
+ URL
+ No URLs entered
+ Run
+ Add website
+ Load from template
+ Number of tested websites (0 means all)
+ Test WhatsApp
+ Test Telegram
+ Test Facebook Messenger
+ Test Signal
+ Run the HTTP Invalid Request Line Test
+ Run the HTTP Header Field Manipulation Test
+ Run the NDT Speed Test
+ Automatic NDT server selection
+ NDT server address
+ NDT server port
+ Run the DASH Streaming Test
+ Automatic DASH server selection
+ DASH server
+ DASH server port
+ Test Psiphon
+ Test Tor
+ Test RiseupVPN
+ Warn when VPN is in use
+ Send email to support
+ Please describe the problem you are experiencing:
+ Please send an email to bugs@openobservatory.org with information on the app and iOS version. Tap \"Copy to clipboard\" below to copy our email address.
+ Current app language is %1$s
+ Language
+ Storage usage
+ Storage used
+ Delete
+ Clear
+ You are about to delete all OONI measurements from your device. If uploaded, they will still be available on [OONI Explorer](https://explorer.ooni.org)
+ Finished running
+ Stop test
+ Try mirror
+ Loading...
+ An unexpected error occurred. Please reload this page.
+ You are about to run an OONI Probe test.
+ %1$s URLs
+ Test Name
+ Test Details
+ Run
+ Out of date
+ You need a newer version of OONI Probe to run this test.
+ Update
+ Close
+ Invalid parameter
+ The OONI Run link is either malformed or your app is out of date.
+ You will test a random sample of websites.
+ Please wait for the test to finish running before tapping on an OONI Run link.
+ Drugs & Alcohol
+ Religion
+ Pornography
+ Provocative Attire
+ Political Criticism
+ Human Rights Issues
+ Environment
+ Terrorism and Militants
+ Hate Speech
+ News Media
+ Sex Education
+ Public Health
+ Gambling
+ Circumvention tools
+ Online Dating
+ Social Networking
+ LGBTQ+
+ File-sharing
+ Hacking Tools
+ Communication Tools
+ Media sharing
+ Hosting and Blogging
+ Search Engines
+ Gaming
+ Culture
+ Economics
+ Government
+ E-commerce
+ Control content
+ Intergovernmental Orgs.
+ Miscellaneous content
+ Use and sale of drugs and alcohol
+ Religious issues, both supportive and critical
+ Hard-core and soft-core pornography
+ Provocative attire and portrayal of women wearing minimal clothing
+ Critical political viewpoints
+ Human rights issues
+ Discussions on environmental issues
+ Terrorism, violent militant or separatist movements
+ Disparaging of particular groups based on race, sex, sexuality or other characteristics
+ Major news websites, regional news outlets and independent media
+ Sexual health issues including contraception, STD\'s, rape prevention and abortion
+ Public health issues, such as COVID-19, HIV/AIDS, Ebola
+ Online gambling and betting
+ Anonymization, censorship circumvention and encryption
+ Online dating sites
+ Online social networking tools and platforms
+ LGBTQ+ communities discussing related issues (excluding pornography)
+ File sharing including cloud-based file storage, torrents and P2P
+ Computer security tools and news
+ Individual and group communication tools including VoIP, messaging and webmail
+ Video, audio and photo sharing
+ Web hosting, blogging and other online publishing
+ Search engines and portals
+ Online games and gaming platforms (excluding gambling sites)
+ Entertainment including history, literature, music, film, satire and humour
+ General economic development and poverty
+ Government-run websites, including military
+ Commercial services and products
+ Benign or innocuous content used for control
+ Intergovernmental organizations including The United Nations
+ Sites that haven\'t been categorized yet
+
diff --git a/app/src/dw/res/values/styles.xml b/app/src/dw/res/values/styles.xml
new file mode 100644
index 000000000..f5553cccc
--- /dev/null
+++ b/app/src/dw/res/values/styles.xml
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/dw/res/values/untraslatable.xml b/app/src/dw/res/values/untraslatable.xml
new file mode 100644
index 000000000..60cdf6052
--- /dev/null
+++ b/app/src/dw/res/values/untraslatable.xml
@@ -0,0 +1,22 @@
+
+
+ Automatic
+ English
+ Français
+ Deutsch
+ Português
+ Pусский
+ Español
+ Türkçe
+
+
+ auto
+ en
+ fr
+ de
+ pt_BR
+ ru
+ es
+ tr
+
+
diff --git a/app/src/dw/res/xml/preferences_global.xml b/app/src/dw/res/xml/preferences_global.xml
new file mode 100644
index 000000000..d4ce27210
--- /dev/null
+++ b/app/src/dw/res/xml/preferences_global.xml
@@ -0,0 +1,411 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/dw/stable/full/google-services.json b/app/src/dw/stable/full/google-services.json
new file mode 100644
index 000000000..e52a827d1
--- /dev/null
+++ b/app/src/dw/stable/full/google-services.json
@@ -0,0 +1,101 @@
+{
+ "project_info": {
+ "project_number": "951667061699",
+ "firebase_url": "https://ooniprobe-android.firebaseio.com",
+ "project_id": "ooniprobe-android",
+ "storage_bucket": "ooniprobe-android.appspot.com"
+ },
+ "client": [
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:951667061699:android:6293922d7e8d4180374376",
+ "android_client_info": {
+ "package_name": "com.dw.ooniprobe"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "951667061699-6ijvga26pl048jrqfnd33o60bqcn0g7c.apps.googleusercontent.com",
+ "client_type": 1,
+ "android_info": {
+ "package_name": "com.dw.ooniprobe",
+ "certificate_hash": "a8f4bc5bef49e43d386647bdffdad32c07a8d3b8"
+ }
+ },
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyBsbX_pOQoqlyOOyZ6yf7CJf0lZZn6O1yg"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ },
+ {
+ "client_id": "951667061699-tuprsdjjv9eje6506lkvkski1p6v87lp.apps.googleusercontent.com",
+ "client_type": 2,
+ "ios_info": {
+ "bundle_id": "org.openobservatory.ooniprobe",
+ "app_store_id": "1199566366"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "client_info": {
+ "mobilesdk_app_id": "1:951667061699:android:12ea7e8f6168b9e2",
+ "android_client_info": {
+ "package_name": "org.openobservatory.ooniprobe"
+ }
+ },
+ "oauth_client": [
+ {
+ "client_id": "951667061699-o4i6pjdbeq9daum312u6fhmqc9gr4hu1.apps.googleusercontent.com",
+ "client_type": 1,
+ "android_info": {
+ "package_name": "org.openobservatory.ooniprobe",
+ "certificate_hash": "a8f4bc5bef49e43d386647bdffdad32c07a8d3b8"
+ }
+ },
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ }
+ ],
+ "api_key": [
+ {
+ "current_key": "AIzaSyBsbX_pOQoqlyOOyZ6yf7CJf0lZZn6O1yg"
+ }
+ ],
+ "services": {
+ "appinvite_service": {
+ "other_platform_oauth_client": [
+ {
+ "client_id": "951667061699-2aq9bnbot04qdjbed2bpnl9ee4ro0c39.apps.googleusercontent.com",
+ "client_type": 3
+ },
+ {
+ "client_id": "951667061699-tuprsdjjv9eje6506lkvkski1p6v87lp.apps.googleusercontent.com",
+ "client_type": 2,
+ "ios_info": {
+ "bundle_id": "org.openobservatory.ooniprobe",
+ "app_store_id": "1199566366"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/app/src/dwFullDebug/assets/v2.db b/app/src/dwFullDebug/assets/v2.db
new file mode 100644
index 000000000..4e6f1ac7e
Binary files /dev/null and b/app/src/dwFullDebug/assets/v2.db differ
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1b717a3e5..e3f2e6c47 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,5 +1,6 @@
-
+
diff --git a/app/src/main/java/org/openobservatory/ooniprobe/activity/InfoActivity.java b/app/src/main/java/org/openobservatory/ooniprobe/activity/InfoActivity.java
index b418f26df..1bd4a406f 100644
--- a/app/src/main/java/org/openobservatory/ooniprobe/activity/InfoActivity.java
+++ b/app/src/main/java/org/openobservatory/ooniprobe/activity/InfoActivity.java
@@ -7,6 +7,7 @@
import org.openobservatory.ooniprobe.BuildConfig;
import org.openobservatory.ooniprobe.R;
import org.openobservatory.ooniprobe.databinding.ActivityInfoBinding;
+import io.noties.markwon.Markwon;
public class InfoActivity extends AbstractActivity {
@@ -18,6 +19,9 @@ public class InfoActivity extends AbstractActivity {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
binding.version.setText(getString(R.string.version, BuildConfig.SOFTWARE_NAME, BuildConfig.VERSION_NAME));
+ Markwon.builder(this)
+ .build()
+ .setMarkdown(binding.desc, getString(R.string.Settings_About_Content_Paragraph));
binding.blog.setOnClickListener(v -> onBlogClick());
binding.reports.setOnClickListener(v -> onReportsClick());
binding.learnMore.setOnClickListener(v -> onLearnMoreClick());
diff --git a/app/src/main/java/org/openobservatory/ooniprobe/common/Application.java b/app/src/main/java/org/openobservatory/ooniprobe/common/Application.java
index b00093dc0..a0cc430ee 100644
--- a/app/src/main/java/org/openobservatory/ooniprobe/common/Application.java
+++ b/app/src/main/java/org/openobservatory/ooniprobe/common/Application.java
@@ -64,7 +64,7 @@ public class Application extends android.app.Application {
Measurement.deleteOldLogs(Application.this);
});
ThirdPartyServices.reloadConsents(Application.this);
- LocaleUtils.setLocale(new Locale(_preferenceManager.getSettingsLanguage()));
+ LocaleUtils.setLocale(_preferenceManager.getSettingsLanguage());
LocaleUtils.updateConfig(this, getBaseContext().getResources().getConfiguration());
}
diff --git a/app/src/main/java/org/openobservatory/ooniprobe/common/LocaleUtils.java b/app/src/main/java/org/openobservatory/ooniprobe/common/LocaleUtils.java
index 5b1ac9bf7..6a3cb1085 100644
--- a/app/src/main/java/org/openobservatory/ooniprobe/common/LocaleUtils.java
+++ b/app/src/main/java/org/openobservatory/ooniprobe/common/LocaleUtils.java
@@ -12,7 +12,20 @@ public class LocaleUtils {
private static Locale sLocale;
- public static void setLocale(Locale locale) {
+ /**
+ * Set the app's locale to the one specified by the given string.
+ *
+ * @param localeString The locale in the format: language, language_country, language_country_variant.
+ * e.g., en, fr, pt_BR, zh_CN, zh_TW, etc.
+ */
+ public static void setLocale(String localeString) {
+ String[] parts = localeString.split("_");
+ Locale locale = new Locale(parts[0]);
+ if (parts.length == 2) {
+ locale = new Locale(parts[0], parts[1]);
+ } else if (parts.length == 3) {
+ locale = new Locale(parts[0], parts[1], parts[2]);
+ }
sLocale = locale;
if (sLocale != null) {
Locale.setDefault(sLocale);
@@ -29,7 +42,7 @@ public static void updateConfig(ContextThemeWrapper wrapper) {
public static void updateConfig(Application app, Configuration configuration) {
- if(sLocale != null) {
+ if (sLocale != null) {
//Wrapping the configuration to avoid Activity endless loop
Configuration config = new Configuration(configuration);
config.locale = sLocale;
diff --git a/app/src/main/java/org/openobservatory/ooniprobe/common/PreferenceManager.java b/app/src/main/java/org/openobservatory/ooniprobe/common/PreferenceManager.java
index ba228a80b..83772d8a8 100644
--- a/app/src/main/java/org/openobservatory/ooniprobe/common/PreferenceManager.java
+++ b/app/src/main/java/org/openobservatory/ooniprobe/common/PreferenceManager.java
@@ -13,6 +13,7 @@
import java.net.URISyntaxException;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Date;
import java.util.Locale;
@@ -328,9 +329,12 @@ public boolean isAutomaticTestEnabled() {
public String getSettingsLanguage() {
String language = sp.getString(r.getString(R.string.language_setting), Locale.getDefault().getLanguage());
if (language.equals("auto")) {
- return Locale.getDefault().getLanguage();
+ language = Locale.getDefault().getLanguage();
}
- return language;
+ if (Arrays.asList(r.getStringArray(R.array.language_sort_options_values)).contains(language)) {
+ return language;
+ }
+ return "en";
}
public void enableAutomatedTesting() {
diff --git a/app/src/main/java/org/openobservatory/ooniprobe/fragment/dashboard/DashboardViewModel.kt b/app/src/main/java/org/openobservatory/ooniprobe/fragment/dashboard/DashboardViewModel.kt
index 009a3cab0..99f814071 100644
--- a/app/src/main/java/org/openobservatory/ooniprobe/fragment/dashboard/DashboardViewModel.kt
+++ b/app/src/main/java/org/openobservatory/ooniprobe/fragment/dashboard/DashboardViewModel.kt
@@ -3,13 +3,14 @@ package org.openobservatory.ooniprobe.fragment.dashboard
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
+import org.openobservatory.ooniprobe.BuildConfig
import org.openobservatory.ooniprobe.common.PreferenceManager
import org.openobservatory.ooniprobe.test.TestAsyncTask
import org.openobservatory.ooniprobe.test.suite.AbstractSuite
import javax.inject.Inject
class DashboardViewModel @Inject constructor(private val preferenceManager: PreferenceManager) : ViewModel() {
- private val enabledTitle: String = "Enabled"
+ private val enabledTitle: String = "Enabled"
private val groupedItemList = MutableLiveData>()
val items = MutableLiveData>(TestAsyncTask.getSuites())
@@ -22,10 +23,12 @@ class DashboardViewModel @Inject constructor(private val preferenceManager: Pref
private fun fetchItemList() {
- val groupedItems = items.value!!.sortedBy { it.getTestList(preferenceManager).isEmpty() }
+ val groupedItems = items.value!!.filter {testSuite ->
+ return@filter testSuite.getTestList(preferenceManager).isNotEmpty() || BuildConfig.SHOW_DISABLED_CARDS
+ }.sortedBy { it.getTestList(preferenceManager).isEmpty() }
.groupBy {
return@groupBy if ((it.getTestList(preferenceManager).isNotEmpty())) {
- enabledTitle
+ enabledTitle
} else {
""
}
@@ -33,7 +36,7 @@ class DashboardViewModel @Inject constructor(private val preferenceManager: Pref
val groupedItemList = mutableListOf()
groupedItems.forEach { (status, itemList) ->
- if (status != enabledTitle){
+ if (status != enabledTitle) {
groupedItemList.add(status)
}
groupedItemList.addAll(itemList)
diff --git a/app/src/main/java/org/openobservatory/ooniprobe/test/suite/WebsitesSuite.java b/app/src/main/java/org/openobservatory/ooniprobe/test/suite/WebsitesSuite.java
index 4496152a5..c8cf07e75 100644
--- a/app/src/main/java/org/openobservatory/ooniprobe/test/suite/WebsitesSuite.java
+++ b/app/src/main/java/org/openobservatory/ooniprobe/test/suite/WebsitesSuite.java
@@ -2,6 +2,7 @@
import androidx.annotation.Nullable;
+import org.openobservatory.ooniprobe.BuildConfig;
import org.openobservatory.ooniprobe.R;
import org.openobservatory.ooniprobe.common.PreferenceManager;
import org.openobservatory.ooniprobe.test.test.AbstractTest;
@@ -15,8 +16,8 @@ public WebsitesSuite() {
R.string.Test_Websites_Fullname,
R.string.Dashboard_Websites_Card_Description,
R.drawable.test_websites,
- R.drawable.test_websites_24,
- R.color.color_indigo6,
+ BuildConfig.FLAVOR_brand.equals("dw") ? R.drawable.test_websites : R.drawable.test_websites_24,
+ BuildConfig.FLAVOR_brand.equals("dw") ? R.color.color_base : R.color.color_indigo6,
R.style.Theme_MaterialComponents_Light_DarkActionBar_App_NoActionBar_Websites,
R.style.Theme_MaterialComponents_NoActionBar_App_Websites,
R.string.Dashboard_Websites_Overview_Paragraph,
diff --git a/app/src/main/res/layout/activity_info.xml b/app/src/main/res/layout/activity_info.xml
index cd55d2700..0a69f8b0d 100644
--- a/app/src/main/res/layout/activity_info.xml
+++ b/app/src/main/res/layout/activity_info.xml
@@ -46,6 +46,7 @@
app:layout_behavior="@string/appbar_scrolling_view_behavior">
diff --git a/app/src/main/res/layout/fragment_onboarding_1.xml b/app/src/main/res/layout/fragment_onboarding_1.xml
index ebfc8e328..9024f406b 100644
--- a/app/src/main/res/layout/fragment_onboarding_1.xml
+++ b/app/src/main/res/layout/fragment_onboarding_1.xml
@@ -3,14 +3,15 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="#002B54"
+ android:background="@color/onboarding_background"
android:orientation="vertical">
+ android:src="@drawable/onboarding_1"
+ android:layout_marginBottom="@dimen/onboarding_image_margin_bottom"/>
diff --git a/app/src/main/res/layout/fragment_onboarding_2.xml b/app/src/main/res/layout/fragment_onboarding_2.xml
index b8bb27ff4..2a26d4ce3 100644
--- a/app/src/main/res/layout/fragment_onboarding_2.xml
+++ b/app/src/main/res/layout/fragment_onboarding_2.xml
@@ -3,14 +3,15 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="#0F3E74"
+ android:background="@color/onboarding_background_2"
android:orientation="vertical">
+ android:src="@drawable/onboarding_2"
+ android:layout_marginBottom="@dimen/onboarding_image_margin_bottom"/>
diff --git a/app/src/main/res/layout/fragment_onboarding_3.xml b/app/src/main/res/layout/fragment_onboarding_3.xml
index a7aef3351..17f6c2ef5 100644
--- a/app/src/main/res/layout/fragment_onboarding_3.xml
+++ b/app/src/main/res/layout/fragment_onboarding_3.xml
@@ -3,15 +3,16 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="#001A33"
+ android:background="@color/onboarding_background_3"
android:orientation="vertical">
+ android:background="@color/onboarding_background"
+ android:src="@drawable/onboarding_3"
+ android:layout_marginBottom="@dimen/onboarding_image_margin_bottom" />
diff --git a/app/src/main/res/layout/fragment_onboarding_autotest.xml b/app/src/main/res/layout/fragment_onboarding_autotest.xml
index 1adf30221..1e599ade3 100644
--- a/app/src/main/res/layout/fragment_onboarding_autotest.xml
+++ b/app/src/main/res/layout/fragment_onboarding_autotest.xml
@@ -3,15 +3,16 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="#001A33"
+ android:background="@color/onboarding_background_3"
android:orientation="vertical">
+ android:background="@color/onboarding_background"
+ android:src="@drawable/onboarding_3"
+ android:layout_marginBottom="@dimen/onboarding_image_margin_bottom" />
diff --git a/app/src/main/res/layout/fragment_onboarding_crash.xml b/app/src/main/res/layout/fragment_onboarding_crash.xml
index eb3fb26f2..3e39ea8c6 100644
--- a/app/src/main/res/layout/fragment_onboarding_crash.xml
+++ b/app/src/main/res/layout/fragment_onboarding_crash.xml
@@ -3,15 +3,16 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="#001A33"
+ android:background="@color/onboarding_background_3"
android:orientation="vertical">
+ android:background="@color/onboarding_background"
+ android:src="@drawable/onboarding_3"
+ android:layout_marginBottom="@dimen/onboarding_image_margin_bottom" />
diff --git a/app/src/main/res/layout/item_websites.xml b/app/src/main/res/layout/item_websites.xml
index df2e31473..fd69252e4 100644
--- a/app/src/main/res/layout/item_websites.xml
+++ b/app/src/main/res/layout/item_websites.xml
@@ -26,12 +26,12 @@
android:src="@drawable/test_websites" />
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 8609ce3ba..05028d3c1 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -24,6 +24,9 @@
#056aa6#005f9c#005a99
+ #002B54
+ #001A33
+ #0F3E74#edf2ff#dbe4ff#bac8ff
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
new file mode 100644
index 000000000..ee6847a2c
--- /dev/null
+++ b/app/src/main/res/values/dimens.xml
@@ -0,0 +1,4 @@
+
+
+ 0dp
+
\ No newline at end of file
diff --git a/app/src/main/res/values/untraslatable.xml b/app/src/main/res/values/untraslatable.xml
index f3490ad0d..732ab508a 100644
--- a/app/src/main/res/values/untraslatable.xml
+++ b/app/src/main/res/values/untraslatable.xml
@@ -261,60 +261,10 @@
language_settingAutomatic
- Albanian
- العربية
- Català
- 中文 (S)
- 中文 (T)
- Nederlands
- English
- فارسی
- Français
- Deutsch
- Ελληνικά
- हिन्दी
- Icelandic
- Indonesia
- Italiano
- Português
- Română
- Pусский
- Slovenčina
- Español
- Kiswahili
- ไทย
- Türkçe
- Tiếng Việt
- မြန်မာ
-
+
auto
- sq
- ar
- ca
- zh_CN
- zh_TW
- nl
- en
- fa
- fr
- de
- el
- hi
- is
- id
- it
- pt_BR
- ro
- ru
- sk
- es
- sw
- th
- tr
- vi
- my
-
+
@string/SOCKS5@string/HTTP
diff --git a/app/src/ooni/dev/README.md b/app/src/ooni/dev/README.md
new file mode 100644
index 000000000..c054bb84a
--- /dev/null
+++ b/app/src/ooni/dev/README.md
@@ -0,0 +1,3 @@
+# OONI Dev
+This is a collection of resources to be used by the OONI specific flavors of the application.
+A corresponding directory exits in [app/src/dw](../../dw).
\ No newline at end of file
diff --git a/app/src/dev/google-services.json b/app/src/ooni/dev/google-services.json
similarity index 100%
rename from app/src/dev/google-services.json
rename to app/src/ooni/dev/google-services.json
diff --git a/app/src/dev/ic_launcher-playstore.png b/app/src/ooni/dev/ic_launcher-playstore.png
similarity index 100%
rename from app/src/dev/ic_launcher-playstore.png
rename to app/src/ooni/dev/ic_launcher-playstore.png
diff --git a/app/src/experimental/google-services.json b/app/src/ooni/experimental/google-services.json
similarity index 100%
rename from app/src/experimental/google-services.json
rename to app/src/ooni/experimental/google-services.json
diff --git a/app/src/experimental/ic_launcher-playstore.png b/app/src/ooni/experimental/ic_launcher-playstore.png
similarity index 100%
rename from app/src/experimental/ic_launcher-playstore.png
rename to app/src/ooni/experimental/ic_launcher-playstore.png
diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/ooni/res/values-ar/strings.xml
similarity index 100%
rename from app/src/main/res/values-ar/strings.xml
rename to app/src/ooni/res/values-ar/strings.xml
diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/ooni/res/values-ca/strings.xml
similarity index 100%
rename from app/src/main/res/values-ca/strings.xml
rename to app/src/ooni/res/values-ca/strings.xml
diff --git a/app/src/ooni/res/values-de/strings.xml b/app/src/ooni/res/values-de/strings.xml
new file mode 100644
index 000000000..6a012ba95
--- /dev/null
+++ b/app/src/ooni/res/values-de/strings.xml
@@ -0,0 +1,533 @@
+
+
+ OONI Probe
+ Was ist OONI Probe?
+ Deine App um Internetzensur zu messen.\n\nSind Webseiten oder Social-Media-Apps gesperrt? Ist deine Internetverbindung ungewöhnlich langsam?\n\nNutze OONI Probe, um es herauszufinden!
+ Verstanden
+ Vorsicht!
+ OONI-Daten werden öffentlich publiziert und enthalten Ihre Netzwerkinformationen.
+ Jeder, der deine Internetaktivitäten überwacht (z. B. Regierung oder ISP), wird sehen, dass du OONI Probe benutzt.
+ Möglicherweise testest du verbotene bzw. gesperrte Webseiten (aber du kannst auswählen, welche Webseiten du testen möchtest).
+ Ich verstehe
+ Erfahre mehr
+ Pop Quiz
+ Wahr
+ Falsch
+ Zurückgehen
+ Weiter
+ Frage 1/2
+ Sollte jemand meine Internetaktivitäten überwachen, wird die Person erfahren, dass ich OONI Probe betreibe.
+ Warnung
+ OONI Probe ist kein Datenschutzwerkzeug. Jeder, der deine Internetaktivitäten überwacht, wird feststellen können, welche Software du ausführst.
+ Frage 2/2
+ Bei jedem Start von OONI Probe werden die von mir gesammelten Netzwerkdaten automatisch veröffentlicht.
+ Warnung
+ Um Transparenz im Hinblick auf Internetzensur zu erhöhen, werden die Netzwerkdaten aller OONI Probe-Benutzer automatisch veröffentlicht (sofern dies nicht in den Einstellungen deaktiviert wird).
+ Automatisches Testen
+ Um die Internet-Zensur jeden Tag zu messen, aktiviere bitte die automatische Testfunktion, damit OONI Probe regelmäßig Tests durchführen kann.\n\nKeine Sorge, wir werden auf den Batterieverbrauch achten. \n\nDu kannst die automatischen Tests jederzeit in den Einstellungen deaktivieren.
+ Absturz-Berichterstattung
+ Um OONI Probe zu verbessern, würden wir gerne anonyme Absturzberichte sammeln, wenn die App nicht richtig funktioniert.\n\nMöchtest du dich für das Einsenden von Absturzberichten an das OONI-Entwicklungsteam entscheiden?
+ Ja
+ Nein
+ Vorgabeeinstellungen
+ Wir sammeln und veröffentlichen:
+ Ländercode (z. B. DE für Deutschland)
+ Netzwerkinformationen (einschließlich der Autonomous System Number, ASN)
+ Zeit & Datum des Tests
+ Wir tun unser Bestes, um deine IP-Adresse oder andere potentiell persönlich identifizierbare Informationen nicht zu veröffentlichen.\n\nErfahre mehr über [OONI\'s Daten-Richtlinie](https://ooni.org/about/data-policy/).
+ Indem du auf \"OK\" tippst, teilst du Absturzberichte, um uns dabei zu helfen, OONI Probe zu verbessern.
+ Auf geht\'s
+ Defaults ändern
+ Übersicht
+ Ausführen
+ Nicht verfügbar
+ Ausführen
+ Letzter Test:
+ Voraussichtlich:
+ Wähle Webseiten
+ Laufend:
+ Voraussichtliche Restzeit:
+ %1$s Sekunden
+ Bereite Test vor
+ ETA wird errechnet
+ Zeige Log
+ Log schliessen
+ Test wird gestoppt …
+ Fertigstellung der aktuell ausstehenden Tests, bitte warten ...
+ Proxy in Verwendung
+ Tippe auf die Schaltfläche, um mehr zu erfahren
+ ~%1$ss
+ Teste die Blockierung von Webseiten
+ Prüfe mit dem [Webverbindungstest](https://ooni.org/nettest/web-connectivity/) von OONI, ob Websites blockiert sind.\n\nJedes Mal, wenn du auf Ausführen tippst, testest du verschiedene Websites aus den [globalen](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) und [länderspezifischen](https://github.com/citizenlab/test-lists/tree/master/lists) Testlisten des Citizen Labs.\n\nUm die Websites deiner Wahl zu testen, tippst du auf die Schaltfläche Websites auswählen oder wählst Kategorien von Websites über die Einstellungen dieser Karte aus.\n\nDieser Test misst, ob Websites durch DNS-Manipulation, TCP/IP-Blockierung oder durch einen transparenten HTTP-Proxy blockiert werden.\n\nDeine Ergebnisse werden auf dem [OONI Explorer](https://explorer.ooni.org/world/) und [OONI API](https://api.ooni.io/) veröffentlicht.
+ Prüfe mit dem [Webverbindungstest](https://ooni.org/nettest/web-connectivity/) von OONI, ob Websites blockiert sind.\n\nJedes Mal, wenn du auf Ausführen tippst, testest du verschiedene Websites aus den [globalen](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) und [länderspezifischen](https://github.com/citizenlab/test-lists/tree/master/lists) Testlisten des Citizen Labs.\n\nDieser Test misst, ob Websites durch DNS-Manipulation, TCP/IP-Blockierung oder durch einen transparenten HTTP-Proxy blockiert werden.\n\nDeine Ergebnisse werden auf dem [OONI Explorer](https://explorer.ooni.org/) und [OONI API](https://api.ooni.io/) veröffentlicht.
+ Teste die Geschwindigkeit und Performance deines Netzwerks
+ Miss die Geschwindigkeit und Leistung deines Netzwerks mit dem [NDT](https://ooni.org/nettest/ndt/)-Test.\n\nMiss die Videostreaming-Leistung mit dem [DASH](https://ooni.org/nettest/dash/)-Test.\n\nDiese Tests verbrauchen Daten in Abhängigkeit von deiner Netzwerkgeschwindigkeit.\n\nDeine Ergebnisse werden auf dem [OONI Explorer](https://explorer.ooni.org/world/) und [OONI API](https://api.ooni.io/) veröffentlicht.\n\nHaftungsausschluss: Diese Tests verlassen sich auf Server von Drittanbietern. Wir können daher nicht garantieren, dass deine IP-Adresse nicht gesammelt wird.
+ Wenn Sie die Tests in dieser Karte durchführen, werden Sie:\n\n- die Geschwindigkeit und Leistung Ihres Netzwerks ([NDT](https://ooni.org/nettest/ndt/) Test) messen.\n- Video-Streaming-Leistung messen ([DASH](https://ooni.org/nettest/dash/) test)\n- das Vorhandensein von [Middlebox-Technologien](https://ooni.org/support/glossary/#middlebox) und [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/) Tests) in Ihrem Netzwerk ([HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) prüfen.\n\nDiese Tests verbrauchen Daten abhängig von der Geschwindigkeit Ihres Netzwerks.\n\nIhre Testergebnisse werden auf [OONI Explorer](https://explorer.ooni.org/) und [OONI API](https://api.ooni.io/) veröffentlicht.\n\n**Haftungsausschluss:** Die Tests [NDT](https://ooni.org/nettest/ndt/) und [DASH](https://ooni.org/nettest/dash/) werden gegen Server von Drittanbietern durchgeführt, die von [Measurement Lab (M-Lab)](https://www.measurementlab.net/) bereitgestellt werden. Wenn Sie diese Tests durchführen, wird M-Lab Ihre IP-Adresse (zu Forschungszwecken) erfassen und veröffentlichen, unabhängig von den Einstellungen Ihrer OONI-Sonde. Weitere Informationen über die Datenverwaltung von M-Lab finden Sie in der [Datenschutzerklärung](https://www.measurementlab.net/privacy/).
+ Entdecke Middleboxen in deinem Netzwerk
+ Internetdienstanbieter verwenden häufig Netzwerk-Appliances (Middleboxes) für verschiedene Netzwerkzwecke (z. B. Caching). Manchmal werden diese Middleboxes verwendet, um Internetzensur und/oder Überwachung zu implementieren.\n\nFinde Middleboxes in deinem Netzwerk mit OONI\'s [HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) und [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/)-Tests.\n\nDeine Ergebnisse werden auf dem [OONI Explorer](https://explorer.ooni.org/world/) und [OONI API](https://api.ooni.io/) veröffentlicht.
+ Teste das Blockieren von Instant Messaging-Apps
+ Prüfe, ob [WhatsApp](https://ooni.org/nettest/whatsapp/), [Facebook Messenger](https://ooni.org/nettest/facebook-messenger/), [Telegram](https://ooni.org/nettest/telegram/) und [Signal](https://ooni.org/nettest/signal) blockiert sind.\n\nDeine Ergebnisse werden auf dem [OONI Explorer](https://explorer.ooni.org/world/) und [OONI API](https://api.ooni.io/) veröffentlicht.
+ Test auf Blockierung der Instrumente zur Zensurumgehung
+ Prüfe, ob [Psiphon](https://ooni.org/nettest/psiphon/), [Tor](https://ooni.org/nettest/tor/) oder [RiseupVPN](https://ooni.org/nettest/riseupvpn/) blockiert sind.\n\nDeine Ergebnisse werden auf dem [OONI Explorer](https://explorer.ooni.org/) und [OONI API](https://api.ooni.io/) veröffentlicht.
+ Neue experimentelle Tests durchführen
+ Führe die folgenden neuen, vom OONI-Team entwickelten experimentellen Tests durch:\n%1$s\n\nDeine Ergebnisse werden im [OONI Explorer] veröffentlicht.(https://explorer.ooni.org/) und [OONI API](https://api.ooni.io/).
+ Die folgenden Tests werden nur im Rahmen von automatisierten Tests durchgeführt:
+ Deaktivierte Tests
+ Gbit/s
+ Mbit/s
+ kbit/s
+ ms
+ Nicht verfügbar
+ Unbekannt
+ Testergebnisse
+ Testergebnisse
+ Tests
+ Netzwerke
+ Datennutzung
+ Tests filtern
+ Alle Tests
+ Webseiten
+ Middleboxen
+ Performance
+ Instant Messaging
+ Umgehung
+ experimentell
+ Es wurden noch keine Tests durchgeführt. Probiere, einen auszuführen!
+ %1$s blockiert
+ %1$s blockiert
+ %1$s getestet
+ %1$s getestet
+ Erkannt
+ Nicht erkannt
+ Fehlgeschlagen
+ %1$s blockiert
+ %1$s blockiert
+ %1$s erreichbar
+ %1$s erreichbar
+ %1$s blockiert
+ %1$s blockiert
+ %1$s verfügbar
+ %1$s verfügbar
+ Unvollständiges Resultat
+ Fehler
+ Fehler in Messung
+ Ergebnisse nicht hochgeladen
+ Datum & Zeit
+ Netzwerk
+ Land
+ Datennutzung
+ Gesamtlaufzeit
+ WLAN
+ Mobile Daten
+ Kein Internet
+ Fehlgeschlagen
+ Getestet
+ Getestet
+ Gesperrt
+ Gesperrt
+ Webseite
+ Webseiten
+ Zugänglich
+ Zugänglich
+ Video
+ Qualität
+ Hochladen
+ Herunterladen
+ Ping
+ Erkannt
+ Nicht erkannt
+ Fehlgeschlagen
+ Getestet
+ Getestet
+ Gesperrt
+ Gesperrt
+ Zugänglich
+ Zugänglich
+ App
+ Apps
+ Getestet
+ Getestet
+ Gesperrt
+ Gesperrt
+ Arbeite
+ Arbeite
+ Werkzeug
+ Werkzeuge
+ Laufzeit
+ Methodik
+ Log ansehen
+ Daten
+ Explorer URL kopieren
+ Explorer URL teilen
+ In die Zwischenablage kopieren
+ In OONI Explorer anzeigen
+ Fehlgeschlagen
+ Du kannst versuchen, diesen Test erneut auszuführen
+ Noch einmal versuchen
+ Erfahre [hier](%1$s), wie dieser Test funktioniert.
+ Zugänglich
+ %1$s ist zugänglich.
+ Wahrscheinlich blockiert
+ %1$s ist wahrscheinlich blockiert wegen %2$s.\n\nHinweis: Falsch positive Ergebnisse können auftreten. Erfahre [hier](https://ooni.org/support/faq/#what-are-false-positives) mehr dazu.
+ Zensurumgehung
+ **DNS-Manipulation**
+ **TCP/IP basiertes Blocken**
+ **HTTP blockiert (eventuell wird eine Sperrseite angezeigt)**
+ **HTTP blockiert (HTTP-Anfrage fehlgeschlagen)**
+ Mobile App
+ OK
+ Fehlgeschlagen
+ WhatsApp Web
+ OK
+ Fehlgeschlagen
+ Registrierung
+ OK
+ Fehlgeschlagen
+ Arbeite
+ Dieser Test hat eine erfolgreiche Verbindung zu WhatsApp\'s Endpunkten, Registrierungsservice und Weboberfläche (web.whatsapp.com) hergestellt.
+ Wahrscheinlich blockiert
+ WhatsApp scheint geblockt zu sein.
+ Mobile App
+ OK
+ Fehlgeschlagen
+ Telegram Web
+ OK
+ Fehlgeschlagen
+ Arbeite
+ Dieser Test hat eine erfolgreiche Verbindung zu Telegram\'s Endpunkten und dessen Weboberfläche (web.telegram.org) hergestellt.
+ Wahrscheinlich blockiert
+ Telegram scheint geblockt zu sein.
+ TCP-Verbindungen
+ OK
+ Fehlgeschlagen
+ DNS-Lookups
+ OK
+ Fehlgeschlagen
+ Arbeite
+ Dieser Test hat eine erfolgreiche Verbindung zu den Endpunkten von Facebook hergestellt und wurde zu Facebooks IP-Adressen aufgelöst.
+ Wahrscheinlich blockiert
+ Facebook Messenger scheint geblockt zu sein.
+ Wahrscheinlich blockiert
+ Signal scheint blockiert zu sein.
+ Funktioniert
+ Dieser Test hat erfolgreich eine Verbindung zu den Endpunkten von Signal hergestellt.
+ Keine Middleboxen entdeckt
+ Bei der Kommunikation mit unseren Servern wurde keine Netzwerkanomalie festgestellt.
+ Netzwerkmanipulation
+ Der Netzwerkverkehr wurde während der Kontaktaufnahme mit unseren Steuerungsservern manipuliert.\n\nDies bedeutet, dass in deinem Netzwerk möglicherweise eine Middlebox vorhanden ist, die für Zensur und/oder Überwachung verantwortlich sein kann.
+ Keine Middleboxen entdeckt
+ Bei der Kommunikation mit unseren Servern wurde keine Netzwerkanomalie festgestellt.
+ Netzwerkmanipulation
+ Der Netzwerkverkehr wurde während der Kontaktaufnahme mit unseren Steuerungsservern manipuliert.\n\nDies bedeutet, dass in deinem Netzwerk möglicherweise eine Middlebox vorhanden ist, die für Zensur und/oder Überwachung verantwortlich sein kann.
+ Sie haben gesendet
+ Sie haben empfangen
+ Hochladen
+ Herunterladen
+ Ping
+ Server
+ Weiterleitungsrate
+ Außer Betrieb
+ Durchschnittlicher Ping
+ Maximale Ping-Schätzung
+ MSS
+ Timeouts
+ Du kannst ohne Pufferung bis zu %1$s streamen.
+ Mittlere Bitrate
+ Abspiel-Verzögerung
+ Wahrscheinlich blockiert
+ Funktioniert
+ [Psiphon](https://psiphon.ca/) scheint blockiert zu werden.
+ Wir konnten erfolgreich eine Psiphon-Verbindung herstellen. Das bedeutet, dass [Psiphon](https://psiphon.ca/) funktionieren sollte.
+ Bootstrap Zeit
+ %1$s s
+ Wahrscheinlich blockiert
+ Funktioniert
+ [Tor](https://www.torproject.org/) scheint blockiert zu werden.
+ Wir konnten uns erfolgreich mit den Standard-Tor-Brücken und/oder den Tor-Verzeichnisautoritäten verbinden. Das bedeutet, dass [Tor](https://www.torproject.org/) funktionieren sollte.
+ Standard-Brücken
+ %1$s/%2$s OK
+ Verzeichnisautoritäten
+ %1$s/%2$s OK
+ Name
+ Adresse
+ Typ
+ Verbinden
+ Handschlag
+ Wahrscheinlich blockiert
+ Funktioniert
+ [RiseupVPN](https://riseup.net/vpn) scheint blockiert zu werden.
+ Wir sind in der Lage, uns erfolgreich mit RiseupVPN\'s Bootstrap Server und VPN-Gateways zu verbinden. Das bedeutet, dass [RiseupVPN](https://riseup.net/vpn) funktionieren sollte.
+ Bootstrap Server
+ OpenVPN Verbindungen
+ Überbrückte Verbindungen
+ Gesperrt
+ %1$s blockiert
+ %1$s blockiert
+ OK
+ Dies ist ein experimenteller Test.
+ Feed
+ Feed
+ OK
+ Abbrechen
+ Nein, nicht erneut nachfragen
+ Entfernen
+ Fehler
+ Versuche erneut
+ Hört sich toll an
+ Nein, danke
+ Nicht jetzt
+ Trotzdem ausführen
+ VPN deaktivieren
+ Immer gestartet
+ Test konnte nicht ausgeführt werden. Bitte überprüfe deine Internetverbindung.
+ URL-Liste kann nicht heruntergeladen werden. Bitte versuche es erneut.
+ Bitte warte, bis die laufenden Tests beendet sind, bevor du einen neuen Test startest.
+ Benachrichtigungsberechtigungen sind erforderlich. Bitte aktiviere sie in den Einstellungen deines Telefons und anschließend in deiner OONI Probe App.
+ Gehe zu Einstellungen
+ Dieser Bildschirm ist gesperrt, während ein Test ausgeführt wird.
+ Um die rohen Messdaten herunterladen zu können, müssen Sie mit dem Internet verbunden sein.
+ Ergebnisse nicht hochgeladen
+ Manche deiner Testergebnisse wurden nicht auf OONI-Server hochgeladen. Wenn du zu OONIs Datensatz beitragen möchtest, lade sie bitte hoch.
+ Hochladen
+ Hochladen von %1$s ...
+ OONI Probe kann nicht automatisch ohne Batterieoptimierung laufen. Möchtest du es noch einmal versuchen?
+ Bitte deaktiviere deine VPN-Verbindung.
+ Wenn du OONI Probe mit aktiviertem VPN ausführst, kann es sein, dass die Testergebnisse aus dem falschen Land stammen. Bitte deaktiviere deine VPN-Verbindung.
+ Einige Messungen wurden über VPN durchgeführt.
+ Wenn du Messungen hochlädst, die bei aktiviertem VPN gemacht wurden, kann es sein, dass die Testergebnisse aus dem falschen Land stammen.
+ Hochladen war erfolgreich
+ Fehlerlog anzeigen
+ Aktuelle Informationen zur Internetzensur
+ Bist du daran interessiert, OONI Probe-Tests während auftretender Zensurereignisse durchzuführen? Aktiviere Benachrichtigungen, um eine Nachricht zu erhalten, wenn wir von Internet-Zensur in deiner Nähe erfahren.
+ Um die Genauigkeit von Tests zu verbessern brauchen wir Berechtigung für GPS. OONI wird nur eine ungefähre Position aufnehmen.
+ Möchtest du alle Testergebnisse löschen?
+ Möchtest du diesen Test löschen?
+ Bitte aktiviere mindestens einen Test
+ Bitte gib nur Ziffern in dieses Feld ein.
+ Wiederhole Test
+ Dieser Test ist fehlgeschlagen. Erneut ausführen?
+ Sie sind dabei, %1$s Websites erneut zu testen.
+ Ausführen
+ Deine URLs werden nicht gespeichert, wenn du diesen Bildschirm verlässt. Möchtest du diesen Bildschirm wirklich verlassen?
+ Manuelles Hochladen aktivieren?
+ Mit dieser Einstellung kannst du unveröffentlichte Messungen manuell erneut hochladen.
+ Aktivieren
+ Nein, danke
+ Hochladen fehlgeschlagen
+ Wir haben es nicht geschafft, %1$s/%2$s Messungen hochzuladen. Das Fehlerprotokoll wurde den OONI-Entwicklern zur Verfügung gestellt.
+ Logdatei nicht gefunden
+ Keine gültigen URLs gefunden
+ JSON ist leer
+ Möchten Sie diesen Test unterbrechen?
+ Dies wird den laufenden Test ab diesem Zeitpunkt unterbrechen.
+ Möchtest du Tests automatisch ausführen lassen?
+ Durch die Aktivierung automatisierter Tests wirst du regelmäßig OONI-Messungen durchführen.
+ Bitte lass die App im Hintergrund laufen.
+ Später erinnern
+ In Zwischenablage kopiert
+ Nicht hochgeladen
+ Hochladen
+ Manche nicht hochgeladen
+ Alle hochladen
+ Webseiten
+ Instant Messaging
+ Middleboxen
+ Performance
+ Umgehung
+ experimentell
+ HTTP Invalid Request Line Test
+ HTTP Header Field Manipulation Test
+ Web Connectivity Test
+ NDT Speed Test
+ DASH Streaming Test
+ WhatsApp-Test
+ Telegram-Test
+ Facebook Messenger Test
+ Psiphon Test
+ Tor Test
+ RiseupVPN Test
+ Signal-Test
+ Einstellungen
+ Die eingestellte Zeit für den Test ist zu kurz.
+ Über OONI
+ Open Observatory of Network Interference (OONI) ist ein freies Software Projekt im Rahmen des Tor Projektes und versucht Internetzensur auf der Welt sichtbar zu machen.\n\nSeit 2012 hat OONI\'s globale Gemineschaft Netzwerke in über 200 Ländern vermessen. Manche dieser Messungen zeigen Beweise für Internetzensur.
+ Erfahre mehr
+ Blog
+ Berichte
+ OONI Datenschutzbestimmungen
+ Benachrichtigungen
+ Aktiviert
+ Benachrichtigung nach Abschluss des Tests
+ Neuigkeiten
+ Automatisches Testen
+ Tests automatisch ausführen
+ Anzahl der automatisierten Tests: %1$s.
+ Letzter automatisierter Test: %1$s.
+ Nur bei WLAN
+ Nur während des Ladevorgangs
+ Wenn du das automatische Testen aktivierst, werden die OONI Probe-Tests automatisch mehrmals am Tag ausgeführt. Deine Testergebnisse werden automatisch im OONI Explorer veröffentlicht: https://explorer.ooni.org/ \n\nWichtig: Wenn du ein VPN aktiviert hast, wird OONI Probe die Tests nicht automatisch ausführen. Bitte schalte dein VPN für automatische OONI Probe-Tests aus. Mehr dazu: https://ooni.org/support/faq/#can-i-run-ooni-probe-over-a-vpn
+ Teilen
+ Ergebnisse automatisch veröffentlichen
+ Manuelles Hochladen der Ergebnisse
+ Netzwerkinformationen einbeziehen
+ Ungefähren Standort einbeziehen
+ IP-Addresse einbeziehen
+ Ländercode einbeziehen
+ Diese Information (z. B. IT für Italien) ist notwendig um festzustellen von welchem Land die Messung durchgeführt wurde. Bist du dir sicher, dass du diese Option deaktivieren möchtest?
+ Mit der Veröffentlichung von Ergebnissen erhöhst du die Transparenz um Netzwerkbeeinflussung und unterstützt die OONI Gemeinschaft.\n\nNetzwerkinformationen sind notwendig (z. B. die Autonomous System Nummer) um den Internetanbieter zu identifizieren.\n
+ Testoptionen
+ Was du in den obigen Testeinstellungen konfigurierst (z. B. die Deaktivierung des WhatsApp-Tests), gilt sowohl für manuell durchgeführte Tests als auch für automatisch durchgeführte Tests (wenn automatisierte Tests aktiviert sind).
+ Langzeittest
+ Langzeittests im Vordergrund ausführen?
+ Privatsphäre
+ Sende Absturzberichte
+ Erweitert
+ Dunkelmodus
+ Fehlerprotokolle
+ Aktuelle Protokolle anzeigen
+ Spracheinstellung
+ Sprache auswählen
+ Immer Domain Fronting benutzen
+ OONI Backend Proxy
+ Proxy
+ Nichts
+ Psiphon
+ Benutzerdefinierter Proxy
+ Benutzerdefinierter Proxy URL
+ Benutzerdefiniertes Proxy-Protokoll
+ Verbindung
+ Hostname
+ Anschluss
+ Anmeldedaten (optional)
+ Benutzername
+ Passwort
+ Psiphon über benutzerdefinierten Proxy verwenden
+ Kannst du OONI Probe nicht verwenden? Versuche [Psiphon](https://psiphon.ca/) zu aktivieren, um eine mögliche Blockierung von OONI Probe zu umgehen. Alternativ kannst du auch einen benutzerdefinierten Proxy verwenden.
+ Testdauer begrenzen
+ Testdauer
+ Zu testende Webseiten-Kategorien
+ %1$s aktivierte Kategorien
+ Bearbeiten
+ Alles abwählen
+ Alles auswählen
+ Speichern
+ Ungespeicherte Änderungen
+ Sie haben einige Änderungen an den aktivierten Kategorien vorgenommen. Möchten Sie diese speichern?
+ Speichern
+ Verwerfen
+ Wähle Webseiten zum testen aus
+ URL
+ Keine URLs eingegeben
+ Ausführen
+ Webseite hinzufügen
+ Aus Vorlage laden
+ Anzahl der getesteten Websites (0 bedeutet alle)
+ WhatsApp testen
+ Telegram testen
+ Facebook Messenger testen
+ Test Signal
+ Führe den HTTP Invalid Request Line Test aus
+ Führe den HTTP Header Field Manipulation Test aus
+ Führe den NDT-Geschwindigkeitstest aus
+ Automatische NDT Serverauswahl
+ NDT-Serveradresse
+ NDT-Serverport
+ Führe den DASH Streaming Test aus
+ Automatische DASH Serverauswahl
+ DASH-Server
+ DASH-Serverport
+ Psiphon testen
+ Tor Testen
+ Teste RiseupVPN
+ Warnen, wenn VPN in Gebrauch ist
+ E-Mail an den Support senden
+ Beschreibe bitte das Problem, das bei dir auftritt:
+ Bitte senden Sie eine E-Mail an bugs@openobservatory.org mit Informationen zur App und iOS-Version. Tippen Sie unten auf \"In Zwischenablage kopieren\", um unsere E-Mail Adresse zu kopieren.
+ Aktuelle App-Sprache ist %1$s
+ Sprache
+ Speicherplatz-Nutzung
+ Belegter Speicherplatz
+ Löschen
+ Löschen
+ Du bist im Begriff, alle OONI-Messungen von deinem Gerät zu löschen. Wenn sie hochgeladen wurden, sind sie weiterhin auf dem [OONI Explorer](https://explorer.ooni.org) verfügbar.
+ Vollständig ausgeführt
+ Test anhalten
+ Versuche Mirror
+ Lade...
+ Ein unerwarteter Fehler ist aufgetreten. Bitte lade diese Seite erneut.
+ Du bist im Begriff, einen OONI Probe Test durchzuführen.
+ %1$s URLs
+ Testname
+ Test Details
+ Ausführen
+ Veraltet
+ Du brauchst eine neuere Version von OONI Probe um diesen Test auszuführen.
+ Update
+ Schließen
+ Ungültiger Parameter
+ Der OONI Run-Link ist entweder fehlerhaft oder deine App ist veraltet.
+ Du wirst eine zufällige Auswahl von Webseiten testen.
+ Bitte warten Sie, bis der Test beendet ist, bevor Sie auf einen OONI Run-Link tippen.
+ Drogen & Alkohol
+ Religion
+ Pornografie
+ Provokative Kleidung
+ Politische Kritik
+ Menschenrechtsfragen
+ Umwelt
+ Terrorismus und Militanz
+ Hassrede
+ Nachrichtenmedien
+ Sexuelle Aufklärung
+ Gesundheitswesen
+ Glücksspiel
+ Umgehungswerkzeuge
+ Online-Dating
+ Soziale Netzwerke
+ LGBTQ+
+ Datenaustausch
+ Hacking-Werkzeuge
+ Kommunikations-Werkzeuge
+ Medienaustausch
+ Hosting und Blogging
+ Suchmaschinen
+ Gaming
+ Kultur
+ Wirtschaft
+ Regierung
+ E-Commerce
+ Kontroll-Inhalte
+ Zwischenstaatliche Organisationen
+ Sonstige Inhalte
+ Gebrauch und Verkauf von Drogen und Alkohol
+ Religiöse Fragen, sowohl unterstützend als auch kritisch
+ Hardcore- und Softcore-Pornografie
+ Provokative Kleidung und Darstellung von Frauen mit minimaler Kleidung
+ Kritische politische Standpunkte
+ Menschenrechtsfragen
+ Diskussionen zu Umweltfragen
+ Terrorismus, gewalttätig-militante oder separatistische Bewegungen
+ Herabwürdigung bestimmter Gruppen aufgrund von Rasse, Geschlecht, Sexualität oder anderen Merkmalen
+ Große Nachrichtenseiten, regionale Zeitungen und unabhängige Medien
+ Sexuelle Gesundheitsprobleme einschließlich Verhütung, sexuell übertragbarer Krankheiten, Vergewaltigungsprävention und Abtreibung
+ Fragen der öffentlichen Gesundheit, wie COVID-19, HIV/AIDS, Ebola
+ Online-Glücksspiele und Wetten
+ Anonymisierung, Zensurumgehung und Verschlüsselung
+ Online-Dating-Seiten
+ Online-Tools für soziale Netzwerke und Plattformen
+ LGBTQ+ Communities, die verwandte Themen diskutieren (außer Pornografie).
+ Datentausch inklusive Cloud-basierter Dateispeicherung, Torrents und P2P
+ Tools und Neuigkeiten im Bezug auf Computersicherheit
+ Kommunikationswerkzeuge für Einzelpersonen und Gruppen, inklusive VoIP, Messaging und Webmail
+ Teilen von Video, Audio und Photos
+ Webhosting, Blogs und andere Onlineveröffentlichungen
+ Suchmaschinen und Portale
+ Online-Spiele und Spieleplattformen (Glücksspielseiten ausgenommen)
+ Unterhaltung inklusive Geschichte, Literatur, Musik, Film, Satire und Humor
+ Allgemeine wirtschaftliche Entwicklung und Armut
+ Regierungs-Webseiten, einschließlich Militär
+ Kommerzielle Dienstleistungen und Produkte
+ Gutartiger oder harmloser Inhalt, der als Kontrolle verwendet wird
+ Zwischenstaatliche Organisationen einschließlich der Vereinten Nationen
+ Bisher unkategorisierte Webseiten
+
diff --git a/app/src/main/res/values-el/strings.xml b/app/src/ooni/res/values-el/strings.xml
similarity index 100%
rename from app/src/main/res/values-el/strings.xml
rename to app/src/ooni/res/values-el/strings.xml
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/ooni/res/values-es/strings.xml
similarity index 100%
rename from app/src/main/res/values-es/strings.xml
rename to app/src/ooni/res/values-es/strings.xml
diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/ooni/res/values-fa/strings.xml
similarity index 100%
rename from app/src/main/res/values-fa/strings.xml
rename to app/src/ooni/res/values-fa/strings.xml
diff --git a/app/src/ooni/res/values-fr/strings.xml b/app/src/ooni/res/values-fr/strings.xml
new file mode 100644
index 000000000..f2b9b157c
--- /dev/null
+++ b/app/src/ooni/res/values-fr/strings.xml
@@ -0,0 +1,533 @@
+
+
+ OONI Probe
+ Qu’est-ce qu’OONI Probe ?
+ Votre appli pour mesurer la censure d’Internet. \n\nLes sites Web et les applis de médias sociaux sont-ils bloqués ? Votre connexion Internet est-elle anormalement lente ?\n\nLancez OONI Probe pour le savoir !
+ D’accord
+ À savoir !
+ Les données de l’OONI sont publiées ouvertement et comprendront les renseignements relatifs à votre réseau.
+ Quiconque surveille votre activité sur Internet (p. ex. un gouvernement ou un FAI) verra que vous utilisez OONI Probe.
+ Vous pourriez tester des sites Web interdits (mais vous pouvez choisir quels sites tester).
+ Je comprends
+ En apprendre davantage
+ Jeu-questionnaire
+ Vrai
+ Faux
+ Retour
+ Poursuivre
+ Question 1 de 2
+ Si quelqu’un surveille mon activité sur Internet, il verra que j’exécute OONI Probe.
+ Avertissement
+ OONI Probe n’est pas un outil de protection des données personnelles. Quiconque surveille votre activité sur Internet verra quel logiciel vous utilisez.
+ Question 2 de 2
+ Chaque fois que j’exécute OONI Probe, les données réseau que je recueille seront publiées automatiquement.
+ Avertissement
+ Afin d’accroître la transparence de la censure d’Internet, les données réseau de tous les utilisateurs d’OONI Probe sont publiées automatiquement (à moins qu’ils ne décident de ne pas y participer dans les paramètres).
+ Test automatisé
+ Pour mesurer la censure d’Internet tous les jours, veuillez activer les tests automatisés afin qu’OONI Probe puisse effectuer des tests régulièrement. Ne vous inquiétez pas, nous ferons attention à l’utilisation de la pile. Vous pouvez désactiver les tests automatisés n’importe quand dans les paramètres.
+ Signaler un plantage
+ Afin d’améliorer OONI Probe, nous souhaitons recueillir des relevés anonymes de plantage quand l’appli ne fonctionne pas correctement. Acceptez-vous d’envoyer des rapports de plantage à l’équipe de développement d’OONI ?
+ Oui
+ Non
+ Paramètres par défaut
+ Nous recueillons et publions :
+ Le code de pays (p. ex. IT pour Italie)
+ Des renseignements sur le réseau (dont le numéro de système autonome)
+ L’estampille temporelle du test
+ Nous faisons de notre mieux pour ne publier ni votre adresse IP ni aucun autre renseignement qui pourrait vous identifier.\n\nApprenez-en davantage dans la [Politique sur les données de l’OONI](https://ooni.org/about/data-policy/) (page en anglais).
+ En touchant « Valider », vous partagerez les relevés de plantage afin de nous aider à améliorer OONI Probe.
+ Allons-y
+ Modifier les paramètres
+ Tableau de bord
+ Lancer
+ ND
+ Lancer
+ Dernier test :
+ Estimation :
+ Choisir des sites Web
+ En cours :
+ Temps restant estimé :
+ %1$s secondes
+ Préparation du test
+ Calcul de la fin prévue
+ Afficher le journal
+ Fermer le journal
+ Arrêt du test…
+ Achèvement des tests en attente, veuillez patienter…
+ Le mandataire est en fonction
+ Toucher la carte pour en savoir plus
+ ~%1$ss
+ Testez le blocage de sites Web
+ Vérifiez le blocage des sites Web grâce au [Test de connectivité Web](https://ooni.org/nettest/web-connectivity/) de l’OONI (page en anglais).\n\nChaque fois que vous touchez Lancer, vous testez différents sites Web provenant des listes de tests [mondiale](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) et [propre à un pays](https://github.com/citizenlab/test-lists/tree/master/lists) du « Citizen Lab » (site en anglais).\n\nPour tester les sites de votre choix, touchez le bouton « Choisir des sites Web » ou sélectionnez des catégories de sites dans les paramètres de cette carte. \n\nCe test mesure si les sites Web sont bloqués par une manipulation DNS, par un blocage TCP/IP ou par un mandataire HTTP transparent.\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/world/) et l’[API d’OONI](https://api.ooni.io/) (site en anglais).
+ Vérifiez le blocage des sites Web grâce au [Test de connectivité Web](https://ooni.org/nettest/web-connectivity/) de l’OONI (page en anglais).\n\nVous testerez les sites Web inclus dans les listes de tests [mondiale](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) et [propre à un pays](https://github.com/citizenlab/test-lists/tree/master/lists) du « Citizen Lab » (site en anglais).\n\nCe test mesure si les sites Web sont bloqués par une manipulation DNS, par un blocage TCP/IP ou par un mandataire HTTP transparent.\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/world/) et l’[API d’OONI](https://api.ooni.io/) (site en anglais).
+ Testez la vitesse et les performances de votre réseau
+ Mesurez la vitesse et les performances de votre réseau grâce au test [NDT](https://ooni.org/nettest/ndt/) (page en anglais).\n\nMesurez les performances de la diffusion en continu de vidéos grâce au test [DASH](https://ooni.org/nettest/dash/) (page en anglais).\n\nCes tests consomment des données selon la vitesse de votre réseau.\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/world/) et l’[API d’OONI](https://api.ooni.io/) (site en anglais).\n\nAvis : Ces tests reposent sur des serveurs tiers. Nous ne pouvons donc pas garantir que votre adresse IP ne sera pas recueillie.
+ En effectuant les tests de cette carte vous :\n\n– Mesurez la vitesse et les performances de votre réseau (test [NDT](https://ooni.org/nettest/ndt/)\n– Mesurez les performances de la diffusion en continu de vidéos (test [DASH](https://ooni.org/nettest/dash/))\n– Vérifierez la présence de [technologies de boîtiers intermédiaires]https://ooni.org/support/glossary/#middlebox) sur votre réseau (tests [HTTP Ligne de requête invalide](https://ooni.org/nettest/http-invalid-request-line/) et [HTTP Manipulation champ d’en-tête](https://ooni.org/nettest/http-header-field-manipulation/))\n\nCes tests consomment des données selon la vitesse de votre réseau.\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/world/) et l’[API d’OONI](https://api.ooni.io/).\n\n**Avis :** Les tests [NDT](https://ooni.org/nettest/ndt/) et [DASH](https://ooni.org/nettest/dash/) reposent sur des serveurs tiers fournis par [Measurement Lab (M-Lab)](https://www.measurementlab.net/). Si vous effectuez ces tests, M-Lab recueillera et publiera votre adresse IP (à des fins de recherche), indépendamment de vos paramètres OONI Probe. Apprenez-en davantage sur la gouvernance des données par M-Lab’s dans leur [déclaration sur la confidentialité](https://www.measurementlab.net/privacy/).
+ Détectez les boîtiers intermédiaires dans votre réseau
+ Les fournisseurs d’accès à Internet utilisent souvent des appareils réseau (des boîtiers intermédiaires) pour diverses tâches propres au réseau (telles que la mise en cache). Ces boîtiers intermédiaires sont parfois utilisés pour censurer ou surveiller Internet.\n\nTrouvez des boîtiers intermédiaires dans votre réseau grâce aux tests de l’OONI [HTTP Ligne de requête invalide](https://ooni.org/nettest/http-invalid-request-line/) et [HTTP Manipulation du champ d’en-tête](https://ooni.org/nettest/http-header-field-manipulation/) (site en anglais).\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/world/) et l’[API d’OONI](https://api.ooni.io/) (site en anglais).
+ Testez le blocage des applis de messagerie instantanée
+ Vérifiez si [WhatsApp](https://ooni.org/nettest/whatsapp/), [Facebook Messenger](https://ooni.org/nettest/facebook-messenger/), [Telegram](https://ooni.org/nettest/telegram/) ou [Signal](https://ooni.org/nettest/signal) sont bloqués (site en anglais)..\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/world/) et [l’API d’OONI](https://api.ooni.io/) (site en anglais).
+ Testez le blocage des outils de contournement de la censure
+ Vérifiez si [Psiphon](https://ooni.org/nettest/psiphon/), [Tor](https://ooni.org/nettest/tor/) ou [RiseupVPN](https://ooni.org/nettest/riseupvpn/) sont bloqués (site en anglais).\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/) et l’[API d’OONI](https://api.ooni.io/) (site en anglais).
+ Effectuer les nouveaux tests expérimentaux
+ Effectuer les nouveaux tests expérimentaux suivants conçus par l’équipe d’OONI :\n%1$s\n\nVos résultats seront publiés dans l’[Explorateur OONI](https://explorer.ooni.org/) et l’[API d’OONI](https://api.ooni.io/) (site en anglais).
+ Les tests suivants ne seront exécutés que dans le cadre des tests automatisés :
+ Disabled Tests
+ Gbit/s
+ Mbit/s
+ kbit/s
+ ms
+ ND
+ Inconnu
+ Résultats des tests
+ Résultats des tests
+ Tests
+ Réseaux
+ Utilisation des données
+ Filtrer les tests
+ Tous les tests
+ Sites Web
+ Boîtiers intermédiaires
+ Performances
+ Messagerie instantanée
+ Contournement
+ Expérimental
+ Aucun test n’a encore été effectué. Essayez d’en lancer un !
+ %1$s bloqué
+ %1$s bloqués
+ %1$s testé
+ %1$s testés
+ Détectés
+ Aucun n’a été détecté
+ Échec
+ %1$s bloquée
+ %1$s bloquées
+ %1$s accessible
+ %1$s accessibles
+ %1$s bloqué
+ %1$s bloqués
+ %1$s disponible
+ %1$s disponibles
+ Résultat incomplet
+ Erreur
+ Erreur de mesure
+ Les résultats n’ont pas été téléversés
+ Estampille temporelle
+ Réseau
+ Pays
+ Utilisation des données
+ Temps total d’exécution
+ Wi-Fi
+ Données mobiles
+ Pas d’Internet
+ Échec
+ Testé
+ Testés
+ Bloqué
+ Bloqués
+ Site Web
+ Sites Web
+ Accessible
+ Accessibles
+ Vidéo
+ Qualité
+ Téléversement
+ Téléchargement
+ Ping
+ Détectés
+ Aucun n’a été détecté
+ Échec
+ Testée
+ Testées
+ Bloquée
+ Bloquées
+ Accessible
+ Accessibles
+ Appli
+ Applis
+ Testé
+ Testés
+ Bloqué
+ Bloqués
+ Fonctionne
+ Fonctionnent
+ Outil
+ Outils
+ Temps d’exécution
+ Méthodologie
+ Visualiser le journal
+ Données
+ Copier l’URL de l’explorateur
+ Partager l’URL de l’explorateur
+ Copier dans le presse-papiers
+ Dans l’Explorateur OONI
+ Échec
+ Vous pouvez essayer de relancer ce test
+ Réessayer
+ Apprenez [ici](%1$s) comment ce test fonctionne.
+ Accessible
+ %1$s est accessible.
+ Probablement bloqué
+ %1$s est probablement bloqué par %2$s.\n\nNote : De faux positifs peuvent se produire. Apprenez-en davantage [ici](https://ooni.org/support/faq/#what-are-false-positives) (page en anglais).
+ Contournement de la censure
+ **Manipulation DNS**
+ **Blocage basé sur le TCP/IP**
+ **Blocage HTTP (une page de blocage pourrait être servie)**
+ **Blocage HTTP (échec des requêtes HTTP)**.
+ Appli mobile
+ Positif
+ Échec
+ WhatsApp Web
+ Positif
+ Échec
+ Inscription
+ Positif
+ Échec
+ Fonctionne
+ Ce test s’est connecté avec succès aux extrémités, au service d’inscription et à l’interface Web de WhatsApp (web.whatsapp.com).
+ Probablement bloquée
+ WhatsApp semble être bloquée.
+ Appli mobile
+ Positif
+ Échec
+ Telegram Web
+ Positif
+ Échec
+ Fonctionne
+ Ce test s’est connecté avec succès aux extrémités et à l’interface Web de Telegram (web.telegram.org).
+ Probablement bloquée
+ Telegram semble être bloquée.
+ Connexions TCP
+ Positif
+ Échec
+ Recherches DNS
+ Positif
+ Échec
+ Fonctionne
+ Ce test s’est connecté avec succès aux extrémités de Facebook et a été résolu avec des adresses IP de Facebook.
+ Probablement bloquée
+ Facebook Messenger semble être bloquée.
+ Probablement bloquée
+ Signal semble être bloquée.
+ Fonctionne
+ Ce test s’est connecté avec succès aux extrémités de Signal.
+ Aucun boîtier intermédiaire n’a été détecté
+ Aucune anomalie réseau n’a été détectée lors de la communication avec nos serveurs.
+ Manipulation du réseau
+ Le trafic réseau a été manipulé lors de la communication avec nos serveurs de contrôle.\n\nCela signifie qu’il pourrait y avoir un boîtier intermédiaire sur votre réseau, cause possible de censure ou de surveillance.
+ Aucun boîtier intermédiaire n’a été détecté
+ Aucune anomalie réseau n’a été détectée lors de la communication avec nos serveurs.
+ Manipulation du réseau
+ Le trafic réseau a été manipulé lors de la communication avec nos serveurs de contrôle.\n\nCela signifie qu’il pourrait y avoir un boîtier intermédiaire sur votre réseau, la cause possible de censure ou de surveillance.
+ Vous avez envoyé
+ Vous avez reçu
+ Téléversement
+ Téléchargement
+ Ping
+ Serveur
+ Taux de retransmission
+ Hors service
+ Ping moyen
+ Ping maximal estimé
+ MSS
+ Dépassements de temps
+ Vous pouvez diffuser en continu jusqu’à %1$s sans mise en mémoire tampon.
+ Débit binaire médian
+ Délai de diffusion
+ Probablement bloqué
+ Fonctionne
+ [Psiphon](https://psiphon.ca/) semble être bloqué.
+ Nous avons réussi à amorcer avec succès une connexion vers Psiphon. Cela signifie que [Psiphon](https://psiphon.ca/) devrait fonctionner.
+ Temps d’amorçage
+ %1$s s
+ Probablement bloqué
+ Fonctionne
+ [Tor](https://www.torproject.org/) semble être bloqué.
+ Nous avons réussi à nous connecter avec succès aux ponts Tor par défaut ou aux autorités d’annuaire de Tor. Cela signifie que [Tor](https://www.torproject.org/fr) que devrait fonctionner.
+ Ponts par défaut
+ %1$s/%2$s positif
+ Autorités d’annuaire
+ %1$s/%2$s positif
+ Nom
+ Adresse
+ Type
+ Connexion
+ Prise de contact
+ Probablement bloqué
+ Fonctionne
+ [RiseupVPN](https://riseup.net/vpn) semble être bloqué.
+ Nous avons réussi à nous connecter au serveur d’amorçage et aux passerelles RPV de RiseupVPN. Cela signifie que [RiseupVPN](https://riseup.net/vpn) devrait fonctionner.
+ Serveur d’amorçage
+ Connexions OpenVPN
+ Connexions pontées
+ Bloqués
+ %1$s bloqué
+ %1$s bloqués
+ Valider
+ Ce test est expérimental.
+ Flux
+ Flux
+ Valider
+ Annuler
+ Non, ne plus me demander
+ Supprimer
+ Erreur
+ Réessayer
+ C’est parfait
+ Non, merci
+ Pas maintenant
+ Lancer quand même
+ Désactiver le RPV
+ Toujours exécuter
+ Impossible d’effectuer le test. Veuillez vérifier votre connexion à Internet.
+ Impossible de télécharger la liste des URL. Veuillez réessayer.
+ Veuillez attendre la fin du test en cours avant de lancer un nouveau test.
+ Les autorisations de notification sont nécessaires. Veuillez les activer dans les paramètres de votre téléphone, puis les activer dans votre appli OONI Probe.
+ Aller dans les Paramètres
+ Cet écran est verrouillé pendant qu’un test est en cours.
+ Vous devez être connecté à Internet pour télécharger les données brutes de mesure.
+ Les résultats n’ont pas été téléversés
+ Certains de vos résultats de test n’ont pas été téléversés vers les serveurs de l’OONI. Si vous souhaitez contribuer à l’ensemble de données de l’OONI, veuillez les téléverser.
+ Téléversement
+ Téléversement de %1$s…
+ OONI Probe ne peut pas fonctionner automatiquement sans optimisation de la pile. Voulez-vous réessayer ?
+ Veuillez désactiver votre connexion RPV.
+ Si vous exécutez OONI Probe alors qu’un RPV (réseau privé virtuel) est activé, les résultats des tests pourraient sembler provenir du mauvais pays. Veuillez désactiver votre connexion RPV.
+ Certaines mesures ont été prises connecté à un RPV.
+ Si vous téléversez des mesures prises alors qu’un RPV est activé, les résultats du test pourraient sembler provenir du mauvais pays.
+ Téléversement réussi
+ Afficher le journal des échecs
+ Obtenez des mises à jour sur la censure d’Internet
+ Voulez-vous exécuter les tests d’OONI Probe pendant des événements de censure émergents ? Activez les notifications afin de recevoir un message si nous sommes informés de censure d’Internet près de vous.
+ Pour améliorer la précision des tests, nous avons besoin des autorisations Position. OONI ne recueillera qu’une position GPS approximative.
+ Voulez-vous supprimer tous les résultats de test ?
+ Voulez-vous supprimer ce test ?
+ Veuillez activer au moins un test
+ Veuillez ne saisir que des chiffres dans ce champ.
+ Relancer le test
+ Ce test a échoué. Relancer le test ?
+ Vous êtes sur le point de retester %1$s sites Web.
+ Lancer
+ Vos URL ne seront pas enregistrées si vous quittez cet écran. Voulez-vous vraiment le quitter ?
+ Activer le téléversement manuel ?
+ Ce paramètre vous permet de retéléverser manuellement les mesures non publiées.
+ Activer
+ Non, merci
+ Échec de téléversement
+ Nous n’avons pas réussi à téléverser %1$s mesures sur %2$s. Le journal des échecs a été partagé avec les développeurs d’OONI.
+ Le fichier journal est introuvable
+ Aucune URL valide n’a été trouvée
+ Le JSON est vide
+ Voulez-vous interrompre ce test ?
+ Le test en cours sera interrompu à partir de maintenant.
+ Voulez-vous effectuer les tests automatiquement ?
+ En activant les tests automatisés, vous enverrez des mesures OONI sur une base régulière.
+ Veuillez autoriser l’appli à fonctionner en arrière-plan.
+ Me rappeler plus tard
+ Copié dans le presse-papiers
+ N’a pas été téléversé
+ Téléversement
+ Tout n’a pas été téléversé
+ Tout téléverser
+ Sites Web
+ Messagerie instantanée
+ Boîtiers intermédiaires
+ Performances
+ Contournement
+ Expérimental
+ Test HTTP Ligne de requête invalide
+ Test HTTP Manipulation champ d’en-tête
+ Test de connectivité Web
+ Test de vitesse NDT
+ Test de diffusion en continu DASH
+ Test de WhatsApp
+ Test de Telegram
+ Test de Facebook Messenger
+ Test de Psiphon
+ Test de Tor
+ Test de RiseupVPN
+ Test de Signal
+ Paramètres
+ La durée de test que vous avez définie est trop courte.
+ À propos de l’OONI
+ L’observatoire ouvert des interférences réseau (« Open Observatory of Network Interference » OONI) est un projet de logiciel libre, dans le cadre du projet Tor, qui vise à accroître la transparence de la censure d’Internet dans le monde entier.\n\nDepuis 2012, la communauté internationale de l’OONI prend des mesures des réseaux dans plus de 200 pays. Certaines de ces mesures servent de preuve de censure d’Internet.
+ En apprendre davantage
+ Blogue
+ Relevés
+ OONI Politique sur les données
+ Notifications
+ Activées
+ Aviser à la fin du test
+ Fil d’actualité
+ Test automatisé
+ Lancer les tests automatiquement
+ Nombre de tests automatisés : %1$s.
+ Dernier test automatisé : %1$s.
+ Seulement par Wi-Fi
+ Seulement pendant la charge
+ En activant les tests automatiques, les tests d’OONI Probe auront lieu automatiquement plusieurs fois par jour. Les résultats de vos tests seront publiés automatiquement sur l’Explorateur OONI : https://explorer.ooni.org/ (site en anglais)\n\nImportant : Si vous utilisez un RPV et qu’il est activé, OONI Probe n’effectuera pas de test automatique. Afin que les tests automatisés d’OONI Probe aient lieu, veuillez désactiver votre RPV. Apprenez-en davantage : https://ooni.org/support/faq/#can-i-run-ooni-probe-over-a-vpn (site en anglais)
+ Partage
+ Publier automatiquement les résultats
+ Téléversement manuel des résultats
+ Inclure les renseignements sur le réseau
+ Inclure la position géographique approximative
+ Inclure mon adresse IP
+ Inclure le code de pays
+ Ces renseignements (p. ex. IT pour Italie) sont nécessaires pour identifier le pays d’origine des mesures recueillies. Voulez-vous vraiment désactiver cette option ?
+ En publiant les résultats, vous augmentez la transparence des interférences réseau et soutenez la communauté de l’OONI. \n\nLe renseignement sur le réseau (c.-à-d. le numéro de système autonome) est nécessaire pour identifier les fournisseurs d’accès à Internet.
+ Options de test
+ Le paramétrage de tests ci-dessus (p. ex. désactiver le test de WhatsApp) s’appliquera aussi aux tests effectués manuellement, ainsi qu’aux tests effectués automatiquement (quand les tests automatisés sont activés).
+ Test long
+ Faire tourner les tests longs en avant-plan ?
+ Confidentialité
+ Envoyer des relevés de plantage
+ Avancés
+ Mode sombre
+ Journaux de débogage
+ Voir les journaux récents
+ Paramètres de langue
+ Sélectionner une langue
+ Toujours utiliser un domaine-écran
+ Mandataire vers la dorsale d’OONI
+ Mandataire
+ Aucune
+ Psiphon
+ Mandataire personnalisé
+ URL du mandataire personnalisé
+ Protocole du mandataire personnalisé
+ Connexion
+ Nom d’hôte
+ Port
+ Authentifiants (facultatifs)
+ Nom d’utilisateur
+ Mot de passe
+ Utiliser Psiphon avec un mandataire personnalisé
+ Vous est-il impossible d’utiliser OONI Probe ? Essayez d’activer [Psiphon](https://psiphon.ca/) afin de contourner un blocage possible d’OONI Probe. Vous pouvez aussi utiliser un mandataire personnalisé.
+ Limiter la durée du test
+ Durée du test
+ Catégories de sites Web à tester
+ %1$s catégories sont activées
+ Modifier
+ Tout dessélectionner
+ Tout sélectionner
+ Enregistrer
+ Changements non enregistrés
+ Vous avez apporté des changements aux catégories activées. Voulez-vous les enregistrer ?
+ Enregistrer
+ Abandonner
+ Choisir les sites Web à tester
+ URL
+ Aucune URL n’a été saisie
+ Lancer
+ Ajouter le site Web
+ Charger d’un modèle
+ Nombre de sites Web testés (0 signifie tout)
+ Tester WhatsApp
+ Tester Telegram
+ Tester Facebook Messenger
+ Tester Signal
+ Exécutez le test HTTP Ligne de requête invalide
+ Exécutez le test HTTP Manipulation du champ d’en-tête
+ Exécutez le test de vitesse NDT
+ Sélection automatique du serveur NDT
+ Adresse du serveur NDT
+ Port du serveur NDT
+ Exécutez le test DASH de diffusion en continu
+ Sélection automatique du serveur DASH
+ Serveur DASH
+ Port du serveur DASH
+ Test de Psiphon
+ Test de Tor
+ Tester RiseupVPN
+ Avertir quand un RPV est utilisé
+ Envoyer un courriel à l’assistance
+ Veuillez décrire le problème que vous rencontrez :
+ Veuillez envoyer un courriel à bugs@openobservatory.org avec des renseignements sur la version de l’appli et d’iOS. Touchez « Copier dans le presse-papiers » ci-dessous pour copier votre adresse courriel.
+ La langue actuelle de l’appli est %1$s
+ Langue
+ Utilisation de l’espace de stockage
+ Espace de stockage utilisé
+ Supprimer
+ Effacer
+ Vous êtes sur le point de supprimer toutes les mesures d’OONI de votre appareil. Si vous les avez téléversées, elles seront encore accessibles sur l’[Explorateur OONI](https://explorer.ooni.org)
+ Le test est terminé.
+ Arrêter le test
+ Essayer un miroir
+ Chargement…
+ Une erreur inattendue s’est produite. Veuillez recharger cette page.
+ Vous êtes sur le point d’effectuer un test OONI Probe.
+ %1$s URL
+ Nom du test
+ Détails du test
+ Lancer
+ N’est pas à jour
+ Une version plus récente d’OONI Probe est nécessaire pour effectuer ce test.
+ Mettre à jour
+ Fermer
+ Un paramètre est invalide
+ Soit le lien OONI Run est malformé soit votre appli n’est pas à jour.
+ Vous testerez un échantillon aléatoire de sites Web.
+ Veuillez attendre la fin du test avant d’ouvrir un lien OONI Run.
+ Drogues et alcool
+ Religion
+ Pornographie
+ Tenues provocantes
+ Critiques politiques
+ Droits de la personne
+ Environnement
+ Terrorisme et militants
+ Discours haineux
+ Médias d’information
+ Éducation sexuelle
+ Santé publique
+ Jeux de hasard
+ Outils de contournement
+ Rencontre en ligne
+ Réseautage social
+ LGBTQ+
+ Partage de fichiers
+ Outils de bidouillage
+ Outils de communication
+ Partage multimédia
+ Hébergement et blogage
+ Moteurs de recherche
+ Jeux
+ Culture
+ Économie
+ Gouvernement
+ Commerce électronique
+ Contenu de contrôle
+ Org. intergouvernementales
+ Contenu divers
+ Consommation et vente de drogues et d’alcool
+ Questions religieuses, à la fois favorables et défavorables
+ Pornographie dure et douce
+ Tenues provocantes et représentation de femmes en petites tenues
+ Points de vue politiques critiques
+ Questions relatives aux droits de la personne
+ Discussions sur les questions environnementales
+ Terrorisme, mouvements militants ou séparatistes violents
+ Dénigrement de groupes particuliers d’après la race, le sexe, la sexualité ou d’autres caractéristiques
+ Grands sites Web d’information, organes d’information régionaux et médias indépendants
+ Questions relatives à la santé sexuelle, dont la contraception, les ITS, l’avortement et la prévention du viol
+ Questions de santé publique telles que la COVID-19, le VIH/SIDA, la maladie à virus Ebola
+ Jeux d’argent et pari en ligne
+ Anonymisation, contournement de la censure et chiffrement
+ Sites de rencontre en ligne
+ Outils et plateformes de réseautage social en ligne
+ Communautés reliées à la cause LGBTQ+, qui discutent de questions connexes (sans pornographie)
+ Partage de fichiers, dont le stockage nuagique de fichiers, les torrents et le pair à pair
+ Outils de sécurité informatique et nouvelles connexes
+ Outils de communication individuelle et de groupe, dont la voix sur IP, les messageries et le courriel Web
+ Partage de contenu vidéo, audio et de photos
+ Hébergement Web, blogage et autres publications en ligne
+ Moteurs et portails de recherche
+ Jeux en ligne et plateformes de jeux (sauf les sites de jeux de hasard)
+ Divertissement : histoire, littérature, musique, cinéma, satire et humour.
+ Développement économique général et pauvreté
+ Sites Web gouvernementaux, dont les sites Web militaires
+ Services et produits commerciaux
+ Contenu bénin ou inoffensif utilisé pour le contrôle
+ Organisations intergouvernementales, dont les Nations Unies
+ Sites qui n’ont pas encore été catégorisés
+
diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/ooni/res/values-hi/strings.xml
similarity index 100%
rename from app/src/main/res/values-hi/strings.xml
rename to app/src/ooni/res/values-hi/strings.xml
diff --git a/app/src/main/res/values-id/strings.xml b/app/src/ooni/res/values-id/strings.xml
similarity index 100%
rename from app/src/main/res/values-id/strings.xml
rename to app/src/ooni/res/values-id/strings.xml
diff --git a/app/src/main/res/values-is/strings.xml b/app/src/ooni/res/values-is/strings.xml
similarity index 100%
rename from app/src/main/res/values-is/strings.xml
rename to app/src/ooni/res/values-is/strings.xml
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/ooni/res/values-it/strings.xml
similarity index 100%
rename from app/src/main/res/values-it/strings.xml
rename to app/src/ooni/res/values-it/strings.xml
diff --git a/app/src/main/res/values-my/strings.xml b/app/src/ooni/res/values-my/strings.xml
similarity index 100%
rename from app/src/main/res/values-my/strings.xml
rename to app/src/ooni/res/values-my/strings.xml
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/ooni/res/values-nl/strings.xml
similarity index 100%
rename from app/src/main/res/values-nl/strings.xml
rename to app/src/ooni/res/values-nl/strings.xml
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/ooni/res/values-pt-rBR/strings.xml
similarity index 100%
rename from app/src/main/res/values-pt-rBR/strings.xml
rename to app/src/ooni/res/values-pt-rBR/strings.xml
diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/ooni/res/values-ro/strings.xml
similarity index 100%
rename from app/src/main/res/values-ro/strings.xml
rename to app/src/ooni/res/values-ro/strings.xml
diff --git a/app/src/ooni/res/values-ru/strings.xml b/app/src/ooni/res/values-ru/strings.xml
new file mode 100644
index 000000000..1d493a92e
--- /dev/null
+++ b/app/src/ooni/res/values-ru/strings.xml
@@ -0,0 +1,533 @@
+
+
+ OONI Probe
+ Что такое OONI Probe?
+ Приложение для анализа интернет-цензуры. \n\nЗаблокированы сайты или приложения соцсети? Интернет тормозит больше обычного?\n\nУзнай почему с помощью OONI Probe!
+ ОК
+ Обратите внимание!
+ Данные OONI публикуются в открытом доступе и будут включать информацию о вашей сети.
+ Все, кто могут отслеживать ваши действия в сети (например, правительство или интернет-провайдер), будут видеть, что вы используете OONI Probe.
+ Вы можете тестировать запрещенные сайты (или выбрать свои сайты для тестирования).
+ Я понимаю
+ Подробнее
+ Тест
+ Да
+ Нет
+ Назад
+ Продолжить
+ Вопрос 1/2
+ Если кто-то отслеживает мои действия в сети, они будут видеть, что я использую OONI Probe.
+ Предупреждение
+ OONI Probe не предназначен для обеспечения приватности. Все, кто могут отслеживать ваши действия в сети, будут знать, какие программы вы используете.
+ Вопрос 2/2
+ При каждом запуске OONI Probe сетевые данные, которые я собираю, автоматически публикуются.
+ Предупреждение
+ Для повышения прозрачности OONI Probe, собираемые данные автоматически публикуются в открытом доступе (если вы не отказались от этого в настройках приложения).
+ Автоматическое тестирование
+ Для ежедневного измерения Интернет-цензуры, пожалуйста, подключите автоматическое тестирование, которое позволит OONI Probe самостоятельно переодически проводить тесты.\n\nНе беспокойтесь, мы будем аккуратны с расходом батареи.\n\nВ настройках вы можете отключить автоматические тестирование в любое время.
+ Отчет об ошибке
+ Для улучшения OONI Probe мы хотим собирать анонимные отчеты об ошибках, когда приложение не работает должным образом\n\nХотите подключить функцию отправления отчета об ошибках команде OONI?
+ Да
+ Нет
+ Настройки по умолчанию
+ Мы собираем и публикуем:
+ Код страны (например, IT для Италии)
+ Сетевую информацию (включая номер автономной системы)
+ Время и дату тестирования
+ Мы всегда работаем над тем, чтобы ваш IP-адрес или другие персональные данные не были опубликованы.\n\nУзнайте подробнее в [политике по обработке данных OONI](https://ooni.org/about/data-policy/).
+ Нажав «ОК», вы делитесь отчетом об ошибке, и помогаете улучшить OONI Probe.
+ Начнем
+ Изменить настройки
+ Главное меню
+ Старт
+ Н/П
+ Старт
+ Последний тест:
+ Примерно:
+ Выберите сайты
+ Процесс:
+ Осталось примерно:
+ %1$s сек
+ Подготовка к тесту
+ Вычисляем предполагаемое время
+ Показать журнал
+ Закрыть журнал
+ Останавливаем тест...
+ Заканчиваем текущее тесты, пожалуйста подождите....
+ Используется прокси
+ Нажмите, чтобы получить больше информации
+ ~%1$sс
+ Проверить блокировки сайтов
+ Проверьте блокировки сайтов используя OONI [Web Connectivity тест](https://ooni.org/nettest/web-connectivity/).\n\nКаждый раз нажимая \"Старт\", вы проверяете набор сайтов из списков тестирования Citizen Lab [глобально](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) и [по конкретным странам](https://github.com/citizenlab/test-lists/tree/master/lists).\n\nЧтобы протестировать выбранные сайты, нажмите кнопку «Выбрать» или выберите нужные категории сайтов через настройки на этой карточке.\n\nЭтот тест проверяет заблокирован ли сайт через вмешательство в DNS, блокировки TCP/IP или через прозрачный HTTP-прокси.\n\nРезультаты будут опубликованы в [OONI Explorer](https://explorer.ooni.org/world/) и [OONI API](https://api.ooni.io/).
+ Проверьте блокировку сайтов используя OONI [Web Connectivity тест](https://ooni.org/nettest/web-connectivity/).\n\nТест использует списки сайтов от Citizen Lab: [глобальный](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) и [по странам](https://github.com/citizenlab/test-lists/tree/master/lists).\n\nТест покажет, заблокированы ли эти сайты путем вмешательства в DNS, блокировки TCP/IP или через HTTP-прокси.\n\nПолученные результаты будут опубликованы в [OONI Explorer](https://explorer.ooni.org/) и [OONI API](https://api.ooni.io/).
+ Измерить скорость и производительность сети
+ Скорость и производительность сети можно измерить с помощью [NDT](https://ooni.io/nettest/ndt/).\n\nСкорость видеопотока — с помощью [DASH](https://ooni.io/nettest/dash/).\n\nЭти тесты обрабатывают данные и зависят от скорости вашей сети.\n\nРезультаты будут опубликованы в [OONI Explorer](https://explorer.ooni.io/world/) и [OONI API](https://api.ooni.io/).\n\nВнимание: в этих тестах используются серверы третьих сторон. Мы не можем гарантировать конфиденциальность вашего IP-адреса.
+ Запустив тесты в этой карточке, вы сможете:\n\n- Измерить скорость и производительность сети ([NDT](https://ooni.org/nettest/ndt/) тест)\n- Измерить производительность потоковой передачи видео ([DASH](https://ooni.org/nettest/dash/) тест)\n- Проверить наличие [middlebox-технологий](https://ooni.org/support/glossary/#middlebox) в вашей сети ([HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) и [HTTP Header Field Manipulation](https://ooni.org/nettest/http-header-field-manipulation/) тесты)\n\nЭти тесты обрабатывают данные в зависимости от скорости вашей сети.\n\nРезультаты тестов будут опубликованы на сайте [OONI Explorer](https://explorer.ooni.org/) и [OONI API](https://api.ooni.io/).\n\n**Дисклеймер:** [NDT](https://ooni.org/nettest/ndt/) и [DASH](https://ooni.org/nettest/dash/) тесты проводятся на сторонних серверах, предоставленных [Measurement Lab (M-Lab)](https://www.measurementlab.net). Если вы запускаете эти тесты, M-Lab соберет и опубликует ваш IP-адрес (в исследовательских целях), независимо от ваших настроек OONI Probe. Узнайте больше об управлении данными компании M-Lab в их [политике конфиденциальности](https://www.measurementlab.net/privacy/).
+ Определение устройства middlebox в вашей сети
+ Интернет-провайдеры часто используют сетевые устройства (middlebox) в решении различных сетевых задач (например, для кеширования). Бывает, что middleboxes применяются для интернет-цензуры и/или слежки.\n\nПроверьте, присутствуют ли middleboxes в вашей сети используя OONI тесты [HTTP Invalid Request Line](https://ooni.org/nettest/http-invalid-request-line/) и [HTTP Header Field Manipulation](https://ooni.io/nettest/http-header-field-manipulation/).\n\nРезультаты будут опубликованы в [OONI Explorer](https://explorer.ooni.io/world/) и [OONI API](https://api.ooni.io/).
+ Протестировать блокировку мессенджеров
+ Проверить заблокированы ли [WhatsApp](https://ooni.org/nettest/whatsapp/), [Facebook Messenger](https://ooni.org/nettest/facebook-messenger/), [Telegram](https://ooni.org/nettest/telegram/), и [Signal](https://ooni.org/nettest/signal).\n\nРезультаты будут опубликованы в [OONI Explorer](https://explorer.ooni.org/world/) и [OONI API](https://api.ooni.io/).
+ Протестировать блокировку инструментов обхода цензуры
+ Проверьте заблокирован ли [Psiphon](https://ooni.org/nettest/psiphon/), [Tor](https://ooni.org/nettest/tor/) или [RiseupVPN](https://ooni.org/nettest/riseupvpn/).\n\nРезультаты будут опубликованы в [OONI Explorer](https://explorer.ooni.org/) и [OONI API](https://api.ooni.io/).
+ Запустить новые экспериментальные тесты
+ Попробуйте запустить новые экспериментальные тесты созданные командой OONI:\n%1$s\n\nРезультаты будут опубликованы в [OONI Explorer](https://explorer.ooni.org/) и [OONI API](https://api.ooni.io/).
+ Следующие тесты будут выполняться только в рамках автоматизированного тестирования:
+ Отключенные тесты
+ Гбит/с
+ Мбит/с
+ кбит/с
+ мс
+ Н/П
+ Неизвестно
+ Результаты тестов
+ Результаты тестов
+ Тесты
+ Сети
+ Трафик
+ Фильтровать тесты
+ Все тесты
+ Сайты
+ Middleboxes
+ Производительность
+ Мессенджеры
+ Обход блокировки
+ Экспериментальный режим
+ Тесты еще не проводились. Попробуйте запустить первый!
+ Заблокирован: %1$s
+ Заблокированы: %1$s
+ Протестирован: %1$s
+ Протестированы: %1$s
+ Определено
+ Не определено
+ Ошибка
+ Заблокирован: %1$s
+ Заблокированы: %1$s
+ Доступен: %1$s
+ Доступно: %1$s
+ Заблокировано: %1$s
+ Заблокировано: %1$s
+ Доступно: %1$s
+ Доступно: %1$s
+ Неполный результат
+ Ошибка
+ Ошибка в измерении
+ Результаты не загружены
+ Дата и время
+ Сеть
+ Страна
+ Трафик
+ Общее время
+ Wi-fi
+ Мобильные данные
+ Нет связи с интернетом
+ Ошибка
+ Протестирован
+ Протестированы
+ Заблокирован
+ Заблокированы
+ Cайт
+ Сайты
+ Доступен
+ Доступно
+ Видео
+ Качество
+ Загрузить
+ Скачать
+ Пинг
+ Определено
+ Не определено
+ Ошибка
+ Протестирован
+ Протестированы
+ Заблокирован
+ Заблокированы
+ Доступен
+ Доступно
+ Приложение
+ Приложения
+ Протестировано
+ Протестировано
+ Заблокировано
+ Заблокировано
+ Работает
+ Работает
+ Настройка
+ Настройки
+ Время теста
+ Методология
+ Посмотреть лог
+ Данные
+ Скопировать ссылку на Explorer
+ Поделиться ссылкой на Explorer
+ Скопировать в буфер обмена
+ Показать в OONI Explorer
+ Ошибка
+ Можно попробовать запустить этот тест снова
+ Попробовать снова
+ Узнать как этот тест работает [тут](%1$s).
+ Доступно
+ Сайт %1$s доступен.
+ Похоже, заблокировано
+ Сайт %1$s, по-видимому, заблокирован %2$s. \n\nПримечание: случаются ложные результаты. Подробнее см. [здесь](https://ooni.org/support/faq/#what-are-false-positives).
+ Обход цензуры
+ **Поддельные DNS**
+ **Блокировки на основе TCP/IP**
+ **HTTP-блокировка (м.б. со страницей блокировки)**
+ **Блокируется HTTP (ошибка HTTP-запросов)**
+ Мобильное приложение
+ OK
+ Ошибка
+ Веб-интерфейс WhatsApp
+ OK
+ Ошибка
+ Регистрация
+ OK
+ Ошибка
+ Работает
+ Успешно протестировано соединение с эндпоинтом WhatsApp и веб-интерфейсом web.whatsapp.com.
+ Вероятно, заблокировано
+ Похоже, WhatsApp заблокирован.
+ Мобильное приложение
+ OK
+ Ошибка
+ Веб-интерфейс Telegram
+ OK
+ Ошибка
+ Работает
+ Успешно протестировано соединение с эндпоинтом Telegram и веб--интерфейсом web.telegram.org.
+ Вероятно, заблокировано
+ Похоже, Telegram заблокирован.
+ TCP-подключения
+ OK
+ Ошибка
+ DNS-запросы
+ OK
+ Ошибка
+ Работает
+ Успешно протестировано соединение с эндпоинтами и IP-адресами Facebook.
+ Вероятно, заблокировано
+ Похоже, Facebook мессенджер заблокирован.
+ Вероятно, заблокировано
+ Похоже, Signal заблокирован.
+ Работает
+ Успешно протестировано соединение с эндпоинтами Signal.
+ Middleboxes не обнаружены
+ При соединении с нашими серверами не отмечено аномалий в сети.
+ Вмешательство в сети
+ При анализе сетевого трафика на наших контрольных серверах обнаружено вмешательство в сетевую активность.\n\nВозможно, это следствие работы в вашей сети устройства middlebox, которое может осуществлять функции цензуры и слежки.
+ Middleboxes не обнаружены
+ При соединении с нашими серверами не отмечено аномалий в сети.
+ Вмешательство в сети
+ При анализе сетевого трафика на наших контрольных серверах обнаружено вмешательство в сетевую активность.\n\nВозможно, это следствие работы в твоей сети устройства middlebox, которое может осуществлять функции цензуры и слежки.
+ Ты отправил/а
+ Ты получил/а
+ Загрузить
+ Скачать
+ Пинг
+ Сервер
+ Скорость повторной передачи
+ Не работает
+ Средний пинг
+ Оценка максимального пинга
+ MSS
+ Таймауты
+ Можешь загружать видеопоток до %1$s без буферизации.
+ Средний битрейт
+ Задержка воспроизведения
+ Вероятно, заблокировано
+ Работает
+ Похоже, [Psiphon](https://psiphon.ca/) заблокирован.
+ Нам удалось успешно установить соединение с Psiphon. Это означает, что [Psiphon](https://psiphon.ca/) должен работать.
+ Время бутстрапа
+ %1$s с
+ Вероятно, заблокировано
+ Работает
+ Похоже, [Tor](https://www.torproject.org/) заблокирован.
+ Нам удалось успешно установить соединение со стандартными мостами Tor и/или управляющими списками Tor. Это означает, что [Tor](https://www.torproject.org/) должен работать.
+ Мосты по умолчанию
+ %1$s/%2$s OK
+ Управляющие списками
+ %1$s/%2$s OK
+ Имя
+ Адрес
+ Тип
+ Подключиться
+ Хендшейк
+ Вероятно, заблокировано
+ Работает
+ [RiseupVPN](https://riseup.net/vpn) заблокирован.
+ Мы успешно подключились к серверу начальной загрузки RiseupVPN и к VPN шлюзу. Это означает, что [RiseupVPN](https://riseup.net/vpn) должен работать.
+ Загрузочный сервер
+ OpenVPN подключения
+ Сетевые мосты
+ Заблокировано
+ Заблокировано: %1$s
+ Заблокировано: %1$s
+ OK
+ Это экспериментальный тест.
+ Лента
+ Лента
+ OK
+ Отмена
+ Не спрашивать опять
+ Удалить
+ Ошибка
+ Повторить
+ Звучит отлично
+ Нет, спасибо
+ Не сейчас
+ Тестировать в любом случае
+ Отключить VPN
+ Всегда тестировать
+ Ошибка теста. Пожалуйста, проверьте подключение к интернету.
+ Ошибка скачивания списка адресов. Пожалуйста, попробуйте снова.
+ Пожалуйста, дождитесь окончания текущего теста, чтобы начать новый.
+ Нужно разрешить уведомления. Пожалуйста, включите их в настройках телефона, а затем в приложении OONI Probe.
+ Зайдите в настройки
+ На время теста этот экран заблокирован.
+ Нужно подключение к Интернету для загрузки сырых данных измерения.
+ Результаты не загружены
+ Некоторые из ваших результатов теста не были загружены на серверы OONI. Если хотите помочь проекту OONI с исследовательскими данными, пожалуйста, загрузите результаты на сервер.
+ Загрузить
+ Загружаем %1$s ...
+ OONI Probe не может включаться автоматически без оптимального заряда батареи. Попробовать еще раз?
+ Пожалуйста, отключите VPN.
+ Если запускать OONI Probe с подключенным VPN, то результаты теста могут отображаться как собранные в другой стране. Пожалуйста, отключайте VPN.
+ Некоторые измерения были собраны через VPN.
+ Если загружать измерения сделанные, когда VPN был подключен, то результаты теста могут отображаться как собранные в другой стране.
+ Загрузка успешно завершена
+ Показать список ошибок
+ Получайте новости о случаях интернет-цензуры
+ Хотите проводить тесты OONI Probe во время событий, провоцирующих цензуру? Подключите оповещения, чтобы получать сообщения, когда мы замечаем интернет-цензуру в вашем регионе.
+ Чтобы повысить точность тестов, нам требуется доступ к GPS-данным. OONI собирает только примерные данные о ваших GPS-координатах.
+ Удалить все результаты тестов?
+ Удалить этот тест?
+ Пожалуйста, активируйте хотя бы один тест
+ Пожалуйста, вводите в это поле только цифры.
+ Повторить тест
+ Неудачный тест. Повторить?
+ Вы собираетесь повторно протестировать %1$s сайтов.
+ Старт
+ Если вы закроете этот экран, адреса не сохранятся. Вы уверены, что хотите его закрыть?
+ Активировать ручную загрузку?
+ Эта настройка позволяет вручную перезагружать неопубликованные измерения.
+ Активировать
+ Нет, спасибо
+ Не удалось загрузить
+ Нам не удалось загрузить измерения %1$s/%2$s. Журнал сбоев был передан разработчикам OONI.
+ Лог-файл не найден
+ URL не найдены
+ JSON пуст
+ Прервать тест?
+ Это прекратит текущий тест с этого момента.
+ Запускать тесты автоматически?
+ Подключая автоматическое тестирование, вы помогаете OONI проводить регулярные измерения.
+ Пожалуйста, разрешите приложению работать в фоновом режиме.
+ Напомнить позже
+ Скопировано в буфер обмена
+ Не загружено
+ Загрузить
+ Загружено частично
+ Загрузить все
+ Сайты
+ Мессенджеры
+ Middleboxes
+ Производительность
+ Обход блокировки
+ Экспериментальный режим
+ Тест HTTP Invalid Request Line
+ Тест HTTP Header Field Manipulation
+ Web Connectivity тест
+ Тест скорости NDT
+ Тест видеопотока DASH
+ Тест WhatsApp
+ Тест Telegram
+ Тест Facebook Messenger
+ Тест Psiphon
+ Тест Tor
+ RiseupVPN тест
+ Тест Signal
+ Настройки
+ Вы установили слишком короткое время для теста.
+ Об OONI
+ The Open Observatory of Network Interference (OONI) — проект бесплатного программного обеспечения в рамках The Tor Project. Задача проекта — повысить прозрачность интернет-цензуры по всему миру.\n\nС 2012 года глобальное сообщество OONI проводит исследования сетевой активности в более 200 странах мира. Некоторые из этих измерений служат доказательством цензуры в интернете.
+ Подробнее
+ Блог
+ Отчеты
+ Политика данных OONI
+ Уведомления
+ Включено
+ Известить о завершении теста
+ Новостная лента
+ Автоматическое тестирование
+ Запускать тесты автоматически
+ Количество автоматических тестов: %1$s.
+ Последний автоматический тест: %1$s.
+ Только на Wi-Fi
+ Только во время зарядки
+ Если вы включите автоматическое тестирование в OONI Probe, тесты будут проводиться несколько раз в день. Результаты будут автоматически публиковаться в OONI Explorer: https://explorer.ooni.org/\n\nВажно: Если у вас включен VPN, OONI Probe тесты не будут производиться автоматически. Пожалуйста, выключите VPN для автоматических тестов. Узнать больше: https://ooni.org/support/faq/#can-i-run-ooni-probe-over-a-vpn
+ Обмен
+ Автоматически публиковать результаты
+ Загрузка результатов вручную
+ Включать сетевые данные
+ Включать примерное местонахождение
+ Включать мой IP-адрес
+ Включать код страны
+ Эта информация (например, IT для Италии) нужна, чтобы определять, к какой стране относятся измерения. Отключить эту опцию?
+ Публикуя результаты, вы повышаете прозрачность интернет-цензуры и поддерживаете сообщество OONI.\n\nСетевые данные (в частности, номер автономной системы) нужны для определения интернет-провайдеров.
+ Варианты тестирования
+ Настройки, которые вы установите выше, например, отключение тестирование WhatsApp, будут использованы для всех тестов, как ручных, так и автоматических, если последние включены на вашем устройстве.
+ Долгий тест
+ Вы хотите запустить долгие тесты в первую очередь?
+ Конфиденциальность
+ Отправить отчет об ошибке
+ Расширенные настройки
+ Темный режим
+ Журналы отладки
+ Посмотреть последние логи
+ Язык настроек
+ Выбрать язык
+ Всегда использовать фронтирование домена
+ OONI серверный прокси
+ Прокси
+ Нет
+ Psiphon
+ Пользовательский прокси
+ Пользовательский URL-адрес прокси-сервера
+ Пользовательский протокол прокси
+ Подключение
+ Имя хоста
+ Порт
+ Учетные данные (необязательно)
+ Логин
+ Пароль
+ Используй Psiphon вместо пользовательского прокси
+ Не получается использовать OONI Probe? Попробуйте подключить [Psiphon](https://psiphon.ca/) для обхода возможной блокировки OONI Probe. Либо, можете воспользоваться пользовательским прокси сервером.
+ Ограничить продолжительность теста
+ Продолжительность теста
+ Категории сайтов для тестирования
+ Выбрано категорий: %1$s
+ Редактировать
+ Отменить выбор
+ Выбрать все
+ Сохранить
+ Несохранённые изменения
+ Вы внесли изменения в категории. Сохранить?
+ Сохранить
+ Отменить
+ Выберите сайты для тестирования
+ Ссылка
+ Не указаны адреса
+ Старт
+ Добавить сайт
+ Загрузить из шаблона
+ Количество протестированных сайтов (0 означает все)
+ Тестировать WhatsApp
+ Тестировать Telegram
+ Тестировать Facebook Messenger
+ Тестировать Signal
+ Начать тест HTTP Invalid Request Line
+ Начать тест HTTP Header Field Manipulation
+ Запустить тест скорости NDT
+ Автоматический выбор сервера NDT
+ Адрес сервера NDT
+ Порт сервера NDT
+ Запустить тест видеопотока DASH
+ Автоматический выбор сервера DASH
+ Сервер DASH
+ Порт сервера DASH
+ Тестировать Psiphon
+ Тестировать Tor
+ Тестировать RiseupVPN
+ Предупреждать когда VPN подключен
+ Отправить письмо поддержке
+ Пожалуйста, опишите проблему:
+ Пожалуйста, отправьте письмо на bugs@openobservatory.org с информацией о версиях приложения и iOS. Нажмите «Скопировать в буфер обмена» ниже, чтобы скопировать наш адрес электронной почты.
+ Текущий язык приложения: %1$s
+ Язык
+ Использование хранилища
+ Объем использованного хранилища
+ Удалить
+ Очистить
+ Сейчас вы удаляете все OONI измерения со своего устройства. Если они были загружены в открытый доступ, то их можно будет найти в [OONI Explorer](https://explorer.ooni.org)
+ Завершено
+ Прекратить тест
+ Попробуйте использовать зеркало
+ Загрузка...
+ Возникла неизвестная ошибка. Пожалуйста, перезагрузите страницу.
+ Вы собираетесь запустить тест OONI Probe.
+ Адресов: %1$s
+ Название теста
+ Данные теста
+ Старт
+ Устарело
+ Для этого теста нужна обновленная версия OONI Probe.
+ Обновить
+ Закрыть
+ Неверный параметр
+ Ссылка на OONI Run либо неправильно сформирована, либо ваше приложение устарело.
+ Вы протестируете произвольный набор сайтов.
+ Пожалуйста, подождите завершения теста, перед чем нажать «OONI Run».
+ Наркотики и алкоголь
+ Религия
+ Порнография
+ Провоцирующая одежда
+ Политическая критика
+ Права человека
+ Окружающая среда
+ Терроризм и военные
+ Высказывания ненависти
+ Новостные ресурсы
+ Сексуальное просвещение
+ Общественное здравоохранение
+ Азартные игры
+ Средства обхода цензуры
+ Знакомства онлайн
+ Социальные сети
+ ЛГБТК+
+ Обмен файлами
+ Хакерские инструменты
+ Средства коммуникаций
+ Обмен информацией
+ Хостинг и блоггинг
+ Поисковики
+ Игры
+ Культура
+ Экономика
+ Правительство
+ Электронная коммерция
+ Контроль за контентом
+ Межгосударственные структуры
+ Прочее
+ Потребление и продажа наркотиков и алкоголя
+ Религиозные темы, как поддерживающие, так и критические
+ Жесткое и легкое порно
+ Провоцирующее изображение женщин с минимумом одежды
+ Критические политические высказывания
+ Права человека
+ Дискуссии по вопросам защиты окружающей среды
+ Терроризм, насильственные военные или сепаратистские движения
+ Пренебрежительное/унижающее отношение к определенным группам людей из-за их расы, пола, сексуальных предпочтений или чего-то другого
+ Крупные новостные сайты, региональные источники новостей, независимые медиа
+ Вопросы сексуального здоровья, включая темы контрацепции, венерических заболеваний, изнасилований и абортов
+ Проблемы общественного здравоохранения, такие как COVID-19, ВИЧ/СПИД, Эбола
+ Азартные игры и ставки онлайн
+ Обеспечение анонимности, обход цензуры, шифрование
+ Сайты онлайн-знакомств
+ Социальные сети и аналогичные платформы
+ ЛГБТ+сообщества, обсуждающие смежные проблемы (исключая порнографию)
+ Обмен файлами, включая облачные хранилища, торренты и P2P
+ Инструменты и новости по теме цифровой безопасности
+ Индивидуальные и групповые коммуникации: VoIP, мессенджеры, веб-почта и др.
+ Обмен видео-, аудио- и фотоматериалами
+ Веб-хостинг, ведение блогов и другие инструменты для публикаций
+ Поисковые системы и порталы
+ Онлайн-игры и игровые платформы (исключая азартные игры)
+ Материалы по истории и литературе; музыка, кино, сатира и юмор
+ Общие вопросы экономического развития и тема бедности
+ Правительственные сайты, в том числе военные
+ Коммерческие сервисы и продукты
+ Безвредный контент, используемый для контроля
+ Межправительственные организации, включая ООН
+ Сайты, не вошедшие ни в одну категорию
+
diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/ooni/res/values-sk/strings.xml
similarity index 100%
rename from app/src/main/res/values-sk/strings.xml
rename to app/src/ooni/res/values-sk/strings.xml
diff --git a/app/src/main/res/values-sq/strings.xml b/app/src/ooni/res/values-sq/strings.xml
similarity index 100%
rename from app/src/main/res/values-sq/strings.xml
rename to app/src/ooni/res/values-sq/strings.xml
diff --git a/app/src/main/res/values-sw/strings.xml b/app/src/ooni/res/values-sw/strings.xml
similarity index 100%
rename from app/src/main/res/values-sw/strings.xml
rename to app/src/ooni/res/values-sw/strings.xml
diff --git a/app/src/main/res/values-th/strings.xml b/app/src/ooni/res/values-th/strings.xml
similarity index 100%
rename from app/src/main/res/values-th/strings.xml
rename to app/src/ooni/res/values-th/strings.xml
diff --git a/app/src/ooni/res/values-tr/strings.xml b/app/src/ooni/res/values-tr/strings.xml
new file mode 100644
index 000000000..591a29837
--- /dev/null
+++ b/app/src/ooni/res/values-tr/strings.xml
@@ -0,0 +1,533 @@
+
+
+ OONI Probe
+ OONI Probe nedir?
+ İnternet sansürünü ölçme uygulaması.\n\nSiteler ve sosyal ağ uygulamaları engelleniyor mu? İnternet bağlantınız genel olarak yavaş mı?\n\nSorunu bulmak için OONI Probe uygulamasını çalıştırın!
+ Anladım
+ Hatırlatma!
+ OONI verileri herkese açık olarak yayınlanır ve ağ bilgilerinizi de içerir.
+ İnternet işlemlerinizi izleyenler (hükümet ya da İnternet hizmeti sağlayıcınız) OONI Probe uygulamasını çalıştırdığınızı görebilir.
+ Engellenmiş siteleri sınayabilirsiniz (ancak sınanacak siteleri seçebilirsiniz).
+ Anladım
+ Ayrıntılı bilgi alın
+ Sürpriz sınav
+ Doğru
+ Yanlış
+ Geri dön
+ Devam et
+ Soru 1/2
+ İnternetim izleniyorsa, OONI Probe çalıştırdığım anlaşılabilir.
+ Uyarı
+ OONI Probe bir kişisel gizlilik sağlama aracı değildir. İnternet işlemlerinizi izleyenler çalıştırdığınız uygulamaları görebilir.
+ Soru 2/2
+ OONI Probe uygulamasını çalıştırdığımda topladığım veriler herkese açık olarak yayınlanır.
+ Uyarı
+ İnternet sansürü şeffaflığını sağlamak için tüm OONI Probe kullanıcılarının ağ verileri otomatik olarak yayınlanır (ayarlardan kapatılmadıkça).
+ Otomatik sınama
+ Lütfen İnternet sansürünün OONI Probe tarafından günlük olarak ölçülebilmesi için otomatik sınamayı açın.\n\nEndişelenmeyin, pil kullanımına dikkat edeceğiz.\n\nOtomatik sınamayı istediğiniz zaman ayarlardan kapatabilirsiniz.
+ Çökme bildirimleri
+ OONI Probe uygulamasını iyileştirmek için, sorun çıktığında kişisel veri içermeyen anonim çökme bildirimleri almak istiyoruz.\n\nÇökme bildirimlerinin OONI geliştirme ekibine gönderilmesini ister misiniz?
+ Evet
+ Hayır
+ Varsayılan ayarlar
+ Toplanan ve yayınlanan veriler şunlardır:
+ Ülke kodu (Örnek: Türkiye için TR)
+ Ağ bilgileri (otonom sistem numarası ile)
+ Sınama tarihi ve saati
+ IP adresinizi ya da kim olduğunuzu ortaya çıkarabilecek bilgileri yayınlamamak için elimizden geleni yapıyoruz.\n\nAyrıntılı bilgi almak için [OONI veri işleme ilkesi](https://ooni.io/about/data-policy/) bölümüne bakabilirsiniz.
+ OONI Probe uygulamasını geliştirmemiz için \"Tamam\" üzerine dokunarak, çökme bildirimini bizimle paylaşın.
+ Başlayalım
+ Varsayılanları değiştir
+ Pano
+ Çalıştır
+ Yok
+ Çalıştır
+ Son sınama:
+ Yaklaşık:
+ Siteleri seçin
+ Çalışıyor:
+ Yaklaşık kalan süre:
+ %1$s saniye
+ Sınama hazırlanıyor
+ Öngörülen bitiş süresi hesaplanıyor
+ Günlüğü görüntüle
+ Günlüğü kapat
+ Sınama durduruluyor…
+ Bekleyen sınamalar tamamlanıyor. Lütfen bekleyin…
+ Kullanılan vekil sunucu
+ Ayrıntılar için karta dokunun
+ ~%1$ss
+ Site engellemelerini sınayın
+ OONI [site bağlantısı sınaması](https://ooni.org/nettest/web-connectivity/) özelliğini kullanarak sitelerin engellenip engellenmediğini denetleyebilirsiniz.\n\nÇalıştır üzerine her tıkladığınızda, Citizen Lab [küresel](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) ve [ülkeye özel](https://github.com/citizenlab/test-lists/tree/master/lists) sınama listelerindeki çeşitli siteler denetlenir.\n\nBelirli siteleri sınamak için siteleri seçin düğmesine tıklayın ya da bu kartın ayarlarından kategoriyi ya da siteleri seçin. \n\nBu sınama sitelerin DNS müdahalesi, TCP/IP engelleme ya da görünmez vekil sunucu ile engellenip engellenmediğini ortaya çıkarır.\n\nSonuçlarınız [OONI Explorer](https://explorer.ooni.org/world/) ve [OONI API](https://api.ooni.io/) üzerinde yayınlanır.
+ OONI [site bağlantısı sınaması](https://ooni.org/nettest/web-connectivity/) özelliğini kullanarak sitelerin engellenip engellenmediğini denetleyebilirsiniz.\n\nSınama ile Citizen Lab [küresel](https://github.com/citizenlab/test-lists/blob/master/lists/global.csv) ve [ülkeye özel](https://github.com/citizenlab/test-lists/tree/master/lists) sınama listelerindeki siteler denetlenir.\n\nBu sınama sitelerin DNS müdahalesi, TCP/IP engelleme ya da görünmez vekil sunucu ile engellenip engellenmediğini ortaya çıkarır.\n\nSonuçlarınız [OONI Explorer](https://explorer.ooni.org/world/) ve [OONI API](https://api.ooni.io/) üzerinde yayınlanır.
+ Ağınızın hızını ve başarımını ölçün
+ [NDT](https://ooni.org/nettest/ndt/) sınaması ile ağınızın hızını ve başarımını ölçebilirsiniz.\n\n[DASH](https://ooni.org/nettest/dash/) sınaması ile görüntü akış başarımını ölçebilirsiniz.\n\nBu sınamalar sırasında ağınızın hızına göre belirlenen miktarda çeşitli veriler aktarılır.\n\nSonuçlarınız [OONI Explorer](https://explorer.ooni.org/world/) ve [OONI API](https://api.ooni.io/) üzerinde yayınlanır.\n\nBildirim: Bu sınamalar üçüncü tarafların sunucuları üzerinden yapılır. Bu nedenle IP adresinizin kaydedilmeyeceğini garanti edemeyiz.
+ Bu bölümdeki sınamaları yaparak şu bilgileri edinebilirsiniz:\n\n- Ağınızın hızını ve başarımını ölçebilirsiniz ([NDT](https://ooni.org/nettest/ndt/) sınaması)\n- Görüntü aktarma başarımını ölçebilirsiniz ([DASH](https://ooni.org/nettest/dash/) sınaması)\n- Ağınızdaki [ara aygıt teknolojilerini](https://ooni.org/support/glossary/#middlebox) öğrenebilirsiniz ([HTTP geçersiz istek satırı](https://ooni.org/nettest/http-invalid-request-line/) ve [HTTP üst bilgi değişikliği](https://ooni.org/nettest/http-header-field-manipulation/) sınamaları)\n\nBu sınamalar sırasında ağ hızınıza göre değişen bir miktarda veri aktarılır.\n\nSınama sonuçlarınız [OONI Explorer](https://explorer.ooni.org/) ve [OONI API](https://api.ooni.io/) üzerinde yayınlanır.\n\n**Sorumluluk reddi:** [NDT](https://ooni.org/nettest/ndt/) ve [DASH](https://ooni.org/nettest/dash/) sınamaları, [Measurement Lab (M-Lab)](https://www.measurementlab.net/) tarafından sağlanan üçüncü taraf sunucular kullanılarak gerçekleştirilir. Bu sınamaları yaptığınızda, OONI Probe ayarlarınızdan bağımsız olarak IP adresiniz M-Lab tarafından alınır ve yayınlanır (araştırma amacıyla). Verilerinizin M-Lab tarafından kullanılması hakkında ayrıntılı bilgi almak için [kişisel gizlilik duyurusuna](https://www.measurementlab.net/privacy/) bakabilirsiniz.
+ Ağınızdaki ara kutuları bulun
+ İnternet hizmeti sağlayıcıları sıklıkla bazı ağ uygulamaları için (ön bellekleme gibi) çeşitli aygıtlar (ara kutular) kullanır. Bazen bu ara kutular İnternet sansürü ve izlemesi için kullanılır.\n\nOONI [HTTP geçersiz istek satırı](https://ooni.org/nettest/http-invalid-request-line/) ve [HTTP üst bilgi alanı değişikliği](https://ooni.org/nettest/http-header-field-manipulation/) sınamalarını kullanarak ara kutuları bulabilirsiniz.\n\nSonuçlarınız [OONI Explorer](https://explorer.ooni.org/world/) ve [OONI API](https://api.ooni.io/) üzerinde yayınlanır.
+ Anlık ileti uygulamalarının engellenip engellenmediğini anlayın
+ [WhatsApp](https://ooni.org/nettest/whatsapp/), [Facebook Messenger](https://ooni.org/nettest/facebook-messenger/), [Telegram](https://ooni.org/nettest/telegram/) ve [Signal](https://ooni.org/nettest/signal) uygulamalarının engellenip engellenmediğini kontrol edebilirsiniz.\n\nSonuçlarınız [OONI Explorer](https://explorer.ooni.org/world/) ve [OONI API](https://api.ooni.io/) üzerinde yayınlanır.
+ Sansürü aşma araçları engellemesini sınayın
+ [Psiphon](https://ooni.org/nettest/psiphon/) ve [Tor](https://ooni.org/nettest/tor/) ya da [RiseupVPN](https://ooni.org/nettest/riseupvpn/) engelleniyor mu öğrenin.\n\nSonuçlarınız [OONI Explorer](https://explorer.ooni.org/) ve [OONI API](https://api.ooni.io/) sayfasında yayınlanır.
+ Yeni deneysel sınamaları çalıştır
+ OONI ekibi tarafından geliştirilmiş yeni deneysel sınamaları çalıştırın:\n%1$s\n\nSonuçlarınız [OONI Explorer](https://explorer.ooni.org/) ve [OONI API](https://api.ooni.io/) üzerinde yayınlanır.
+ Şu sınamalar yalnızca otomatik sınamanın bir parçası olarak çalıştırılacak:
+ Kapatılmış sınamalar
+ Gbit/s
+ Mbit/s
+ kbit/s
+ ms
+ YOK
+ Bilinmiyor
+ Sınama sonuçları
+ Sınama sonuçları
+ Sınamalar
+ Ağlar
+ Veri kullanımı
+ Süzgeç sınamaları
+ Tüm sınamalar
+ Siteler
+ Ara kutular
+ Başarım
+ Anlık ileti
+ Sansürü aşma
+ Deneysel
+ Henüz bir sınama yapılmamış. Birini deneyin!
+ %1$s engellenmiş
+ %1$s engellenmiş
+ %1$s sınanmış
+ %1$s sınanmış
+ Algılandı
+ Algılanmadı
+ Tamamlanamadı
+ %1$s engellenmiş
+ %1$s engellenmiş
+ %1$s erişilebilir
+ %1$s erişilebilir
+ %1$s engellenmiş
+ %1$s engellenmiş
+ %1$s kullanılabilir
+ %1$s kullanılabilir
+ Tamamlanmamış sonuç
+ Hata
+ Hatalı ölçüm
+ Sonuçlar yüklenmemiş
+ Tarih ve saat
+ Ağ
+ Ülke
+ Veri kullanımı
+ Toplam çalışma süresi
+ Wi-Fi
+ Mobil veri
+ İnternet yok
+ Başarısız olmuş
+ Sınanmış
+ Sınanmış
+ Engellenmiş
+ Engellenmiş
+ Site
+ Site
+ Erişilebilir
+ Erişilebilir
+ Görüntü
+ Kalite
+ Yükle
+ İndir
+ Gecikme
+ Algılandı
+ Algılanmadı
+ Tamamlanamadı
+ Sınanmış
+ Sınanmış
+ Engellenmiş
+ Engellenmiş
+ Erişilebilir
+ Erişilebilir
+ Uygulama
+ Uygulama
+ Sınanmış
+ Sınanmış
+ Engellenmiş
+ Engellenmiş
+ Çalışıyor
+ Çalışıyor
+ Araç
+ Araçlar
+ Çalışan dosya
+ Yöntem
+ Günlüğü görüntüle
+ Veri
+ Gezgin adresini kopyala
+ Gezgin adresini paylaş
+ Panoya kopyala
+ OONI Explorer üzerinde görüntüle
+ Tamamlanamadı
+ Bu sınamayı yeniden çalıştırmayı deneyebilirsiniz
+ Yeniden dene
+ Bu sınamanın nasıl yapıldığını [buradan](%1$s) öğrenebilirsiniz.
+ Erişilebilir
+ %1$s erişilebilir.
+ Engellenmiş olabilir
+ %1$s, %2$s ile engellenmiş gibi görünüyor.\n\nNot: Hatalı sonuçlar alınabilir. [Buradan](https://ooni.org/support/faq/#what-are-false-positives) ayrıntılı bilgi alabilirsiniz.
+ Sansürü aşma
+ **DNS müdahalesi**
+ **TCP/IP tabanlı engelleme**
+ **HTTP engelleme (bir engelleme sayfası görüntülenebilir)**
+ **HTTP engelleme (karşılanamayan HTTP istekleri)**
+ Mobil uygulama
+ Tamam
+ Tamamlanamadı
+ WhatsApp web
+ Tamam
+ Tamamlanamadı
+ Kayıt
+ Tamam
+ Tamamlanamadı
+ Çalışıyor
+ Bu sınama sırasında WhatsApp bağlantı noktaları, kayıt hizmeti ve internet arayüzü (web.whatsapp.com) ile sorunsuz bağlantı kuruldu.
+ Engellenmiş olabilir
+ WhatsApp engellenmiş gibi görünüyor.
+ Mobil uygulama
+ Tamam
+ Tamamlanamadı
+ Telegram web
+ Tamam
+ Tamamlanamadı
+ Çalışıyor
+ Bu sınama sırasında Telegram bağlantı noktaları ve internet arayüzü (web.telegram.org) ile sorunsuz bağlantı kuruldu.
+ Engellenmiş olabilir
+ Telegram engellenmiş gibi görünüyor.
+ TCP bağlantıları
+ Tamam
+ Tamamlanamadı
+ DNS sorguları
+ Tamam
+ Tamamlanamadı
+ Çalışıyor
+ Bu sınama sırasında Facebook bağlantı noktalarıyla sorunsuz bağlantı kuruldu ve Facebook IP adresleri çözümlendi.
+ Engellenmiş olabilir
+ Facebook Messenger engellenmiş gibi görünüyor.
+ Engellenmiş olabilir
+ Signal engellenmiş gibi görünüyor.
+ Çalışıyor
+ Bu sınama, Signal uç noktaları ile sorunsuz bağlantı kurdu.
+ Herhangi bir ara kutu algılanmadı
+ Sunucularımız ile bağlantı kurulurken herhangi bir ağ anormalliği ile karşılaşılmadı.
+ Ağ müdahalesi
+ Sınama sunucularımız ile bağlantı kurulurken ağ trafiğine müdahale edildi.\n\nBu durum ağınızda sansür ve izleme amacıyla kullanılan bir ara kutu bulunduğunu gösterir.
+ Herhangi bir ara kutu algılanmadı
+ Sunucularımız ile bağlantı kurulurken herhangi bir ağ anormalliği ile karşılaşılmadı.
+ Ağ müdahalesi
+ Sınama sunucularımız ile bağlantı kurulurken ağ trafiğine müdahale edildi.\n\nBu durum ağınızda sansür ve izleme amacıyla kullanılan bir ara kutu bulunduğunu gösterir.
+ Gönderdiğiniz
+ Aldığınız
+ Yükleme
+ İndirme
+ Gidiş dönüş
+ Sunucu
+ Yeniden aktarım hızı
+ Hizmet dışı
+ Ortalama gidiş dönüş
+ En yüksek gidiş dönüş öngörüsü
+ MSS
+ Zaman aşımları
+ Görüntü akışlarında ara bellek kullanmadan en fazla %1$s çözünürlük elde edebilirsiniz.
+ Ortalama bit hızı
+ Kusursuz oynatma gecikmesi
+ Engellenmiş olabilir
+ Çalışıyor
+ [Psiphon](https://psiphon.ca/) engelleniyor gibi görünüyor.
+ Bir Psiphon bağlantısı kurabildik. [Psiphon](https://psiphon.ca/) çalışıyor olmalı.
+ Bootstrap süresi
+ %1$s s
+ Engellenmiş olabilir
+ Çalışıyor
+ [Tor](https://www.torproject.org/) engelleniyor gibi görünüyor.
+ Varsayılan Tor köprüleri ve/veya Tor dizin yöneticileri ile bağlantı kurabildik. [Tor](https://www.torproject.org/) çalışıyor olmalı.
+ Varsayılan köprüler
+ %1$s/%2$s tamam
+ Dizin belirleyiciler
+ %1$s/%2$s tamam
+ Ad
+ Adres
+ Tür
+ Bağlan
+ El sıkışma
+ Engellenmiş olabilir
+ Çalışıyor
+ [RiseupVPN](https://riseup.net/vpn) engelleniyor gibi görünüyor
+ RiseupVPN bootstrap sunucusu ve VPN geçitleri ile bağlantı kurabildik. [RiseupVPN](https://riseup.net/vpn) çalışıyor olmalı.
+ Bootstrap sunucusu
+ OpenVPN bağlantıları
+ Köprülenmiş bağlantılar
+ Engellenmiş
+ %1$s engellenmiş
+ %1$s engellenmiş
+ Tamam
+ Bu deneysel bir sınamadır.
+ Akış
+ Akış
+ Tamam
+ İptal
+ Hayır, bir daha sorma
+ Sil
+ Hata
+ Yeniden dene
+ Harika görünüyor
+ Hayır, teşekkürler
+ Şimdi değil
+ Yine de çalıştır
+ VPN kullanılmasın
+ Her zaman çalışsın
+ Sınama yapılamadı. Lütfen İnternet bağlantınızı denetleyin.
+ Adres listesi indirilemedi. Lütfen yeniden deneyin.
+ Lütfen yeni bir sınama başlatmadan önce sürmekte olan sınamaların tamamlanmasını bekleyin.
+ Bildirim izinleri gerekli. Lütfen telefonunuzun ayarlar bölümünden gerekli izinleri verdikten sonra OONI Probe uygulamanızdan açın.
+ Ayarlar bölümüne git
+ Bu ekran sınama sırasında kilitlidir.
+ Ham ölçüm verilerini indirebilmek için İnternet bağlantınız olmalıdır.
+ Sonuçlar yüklenmemiş
+ Bazı sınama sonuçları OONI sunucularına yüklenmemiş. OONI veri kümesine katkıda bulunmak isterseniz bu sonuçları yükleyin.
+ Yükle
+ %1$s yükleniyor...
+ OONI Probe, pil iyileştirmesi olmadan otomatik olarak çalışamaz. Yeniden denemek ister misiniz?
+ Lütfen VPN bağlantınızı kapatın.
+ OONI Probe uygulamasını VPN açıkken çalıştırırsanız, sınama sonuçları yanlış ülkeden geliyormuş gibi görünebilir. Lütfen VPN bağlantınızı kapatın.
+ Bazı ölçümler VPN üzerinden alınmıştır.
+ VPN kullanılıyorken alınan ölçümleri yüklerseniz, sınama sonuçları yanlış ülkeden geliyormuş gibi görünebilir.
+ Yüklendi
+ Hata günlüğünü görüntüle
+ İnternet sansürleri hakkında güncel bilgileri alın
+ Yeni sansür uygulamaları sırasında OONI Probe sınamaları yapmak ilginizi çeker mi? Yakınınızda bir İnternet sansürü olduğunu öğrendiğimizde size bildirmemiz için bildirimleri açabilirsiniz.
+ Sınamaların ayrıntısını arttırmak için konum izinlerine gerek duyulur. OONI yalnızca yaklaşık GPS konumunuzu kullanır.
+ Tüm sınama sonuçlarını silmek ister misiniz?
+ Bu sınamayı silmek ister misiniz?
+ Lütfen en az bir sınamayı açın
+ Lütfen bu alana sadece sayı yazın.
+ Sınamayı yinele
+ Bu sınama tamamlanamadı. Yeniden sınamak ister misiniz?
+ %1$s siteyi yeniden sınamak üzeresiniz.
+ Çalıştır
+ Bu sayfadan ayrıldığınızda adresleriniz kaydedilmez. Bu sayfadan ayrılmak istediğinize emin misiniz?
+ El ile yükleme yapılabilsin mi?
+ Bu seçenek açıldığında, yayınlanmamış ölçümler el ile yeniden yüklenebilir.
+ Aç
+ Hayır, teşekkürler
+ Yüklenemedi
+ %1$s/%2$s ölçüm yüklenemedi. Sorun ile ilgili günlük kayıtları OONI geliştiricileri ile paylaşıldı.
+ Günlük dosyası bulunamadı
+ Geçerli bir adres bulunamadı
+ JSON boş
+ Bu sınamayı durdurmak istediğinize emin misiniz?
+ Bu işlem şu anda yapılmakta olan sınamayı durduracak.
+ Sınamalar otomatik olarak çalıştırılsın mı?
+ Otomatik sınamayı açarak, OONI ölçümlerinin düzenli olarak yapılmasına katkıda bulunacaksınız.
+ Lütfen uygulamanın arka planda çalışmasına izin verin.
+ Beni hatırla
+ Panoya kopyalandı
+ Yüklenmemiş
+ Yükle
+ Bazıları yüklenmemiş
+ Tümünü yükle
+ Siteler
+ Anlık ileti
+ Ara kutular
+ Başarım
+ Sansürü aşma
+ Deneysel
+ HTTP geçersiz istek satırı sınaması
+ HTTP üst bilgi değişikliği sınaması
+ Site bağlantısı sınaması
+ NDT hız sınaması
+ DASH akış sınaması
+ WhatsApp sınaması
+ Telegram sınaması
+ Facebook messenger sınaması
+ Psiphon sınaması
+ Tor sınaması
+ RiseupVPN sınaması
+ Signal sınaması
+ Ayarlar
+ Sınama süresi için belirlediğiniz süre çok az.
+ OONI hakkında
+ Open Observatory of Network Interference (OONI, ağ müdahalesi açık gözlemevi) Tor Projesi altında yürütülen bir özgür yazılım projesidir ve dünya çapında İnternet sansürünü ortaya daha görünür hale getirmeyi amaçlamıştır.\n\nKüresel OONI topluluğu 2012 yılından beri 200 üzerinde ülkedeki milyonlarca ağ ile ilgili ölçüm sonucunu toplayarak ağ müdahalelerini açığa çıkarmıştır.
+ Ayrıntılı bilgi alın
+ Günlük
+ Raporlar
+ OONI veri işleme ilkesi
+ Bildirimler
+ Açık
+ Sınamanın tamamlandığı bildirilsin
+ Haber akışı
+ Otomatik sınama
+ Sınamalar otomatik olarak çalıştırılsın
+ Otomatik sınama sayısı: %1$s.
+ Son otomatik sınama: %1$s.
+ Yalnızca Wi-Fi kullanılırken
+ Yalnızca şarj edilirken
+ Otomatik sınama açıldığında, OONI Probe sınamaları günde birkaç kez otomatik olarak çalışır. Sınama sonuçlarınız otomatik olarak OONI Explorer üzerinde yayınlanır: https://explorer.ooni.org/\n\nÖnemli: Etkin bir VPN bağlantınız varsa, OONI Probe sınamaları otomatik olarak çalıştırmaz. Otomatik OONI Probe sınaması için lütfen VPN bağlantınızı kapatın. Ayrıntılı bilgi almak için https://ooni.org/support/faq/#can-i-run-ooni-probe-over-a-vpn adresine bakabilirsiniz
+ Paylaşım
+ Sonuçlar otomatik olarak yayınlansın
+ Sonuçları el ile yükle
+ Ağ bilgileri katılsın
+ Yaklaşık coğrafi konum katılsın
+ IP adresim katılsın
+ Ülke kodu katılsın
+ Bu bilgi ölçümlerin hangi ülkeden (Türkiye için TR gibi) yapıldığını belirlemek için istenmektedir. Bu seçeneği kapatmak istediğinize emin misiniz?
+ Sonuçları yayınlayarak ağ müdahalelerinin daha görünür hale gelmesine yardım ederek OONI topluluğuna destek olursunuz.\n\nAğ bilgileri (Otonom Sistem Numarası gibi) İnternet hizmeti sağlayıcılarını belirlemek için gereklidir.
+ Sınama seçenekleri
+ Yukarıdaki sınama ayarları ile yapılandırdığınız şey (örneğin WhatsApp sınamasını kapatmak), el ile çalıştırılan sınamaların yanında otomatik olarak çalıştırılan sınamalara da (otomatik sınama açılmışsa) uygulanır.
+ Uzun süreli sınama
+ Arka planda uzun süreli sınama yapılsın mı?
+ Gizlilik
+ Çökme bildirimleri gönderilsin
+ Gelişmiş
+ Koyu kip
+ Hata ayıklama günlükleri
+ Son günlükleri görüntüle
+ Dil ayarı
+ Dil seçin
+ Araya her zaman etki alanı eklensin (domain fronting)
+ OONI arka uç vekil sunucusu
+ Vekil sunucu
+ Yok
+ Psiphon
+ Özel vekil sunucu
+ Özel vekil sunucu adresi
+ Özel vekil sunucu iletişim kuralı
+ Bağlantı
+ Sunucu adı
+ Bağlantı noktası
+ Kimlik doğrulama bilgileri (isteğe bağlı)
+ Kullanıcı adı
+ Parola
+ Psiphon için özel vekil sunucu kullanılsın
+ OONI Probe uygulamasını kullanamıyor musunuz? Olası OONI Probe engellemesini aşmak için [Psiphon](https://psiphon.ca/) kullanmayı deneyin. Alternatif olarak özel bir vekil sunucu kullanabilirsiniz.
+ Sınama süresi sınırlansın
+ Sınama süresi
+ Sınanacak site kategorileri
+ %1$s kategori açık
+ Düzenle
+ Tümünü bırak
+ Tümünü seç
+ Kaydet
+ Kaydedilmemiş değişiklikler
+ Açılmış kategorilerde bazı değişiklikler yaptınız. Bunları kaydetmek ister misiniz?
+ Kaydet
+ Yok say
+ Sınanacak siteleri seçin
+ Adres
+ Herhangi bir adres yazılmamış
+ Çalıştır
+ Site ekle
+ Kalıptan yükle
+ Sınanan site sayısı (tümü için 0 yazın)
+ WhatsApp sınaması
+ Telegram sınaması
+ Facebook Messenger sınaması
+ Signal sınaması
+ HTTP geçersiz istek satırı sınamasını çalıştır
+ HTTP üst bilgi değişikliği sınamasını çalıştır
+ NDT hız testini çalıştır
+ NDT sunucusu otomatik olarak seçilsin
+ NDT sunucusu adresi
+ NDT sunucusu bağlantı noktası
+ DASH akış sınamasını çalıştır
+ DASH sunucusu otomatik olarak seçilsin
+ DASH sunucusu
+ DASH sunucusu bağlantı noktası
+ Psiphon sınaması
+ Tor sınaması
+ RiseupVPN sınaması
+ VPN kullanılırken uyarılsın
+ Destek ekibine e-posta gönder
+ Lütfen yaşadığınız sorunu anlatın:
+ Lütfen uygulama hakkındaki bilgiler ve iOS sürümünü yazarak bugs@openobservatory.org adresine bir e-posta gönderin. E-posta adresimizi kopyalamak için aşağıdaki \"Panoya kopyala\" seçeneğine dokunun.
+ Geçerli uygulama dili: %1$s
+ Dil
+ Depolama kullanımı
+ Kullanılan depolama
+ Sil
+ Temizle
+ Aygıtınızdaki tüm OONI ölçümlerini silmek üzeresiniz. Yüklenmiş ise ölçümlere hala [OONI Explorer](https://explorer.ooni.org) üzerinden erişilebilir
+ Çalışmayı tamamladı
+ Sınamayı durdur
+ Yansı denensin
+ Yükleniyor...
+ Bilinmeyen bir sorun çıktı. Lütfen bu sayfayı yeniden yükleyin.
+ OONI Probe sınamasını başlatmak üzeresiniz.
+ %1$s adres
+ Sınama adı
+ Sınama ayrıntıları
+ Çalıştır
+ Güncel değil
+ Bu sınamayı yapmak için daha yeni bir OONI Probe sürümü kullanmalısınız.
+ Güncelle
+ Kapat
+ Parametre geçersiz
+ OONI Run bağlantısı bozuk ya da uygulamanız eski.
+ Örnek siteler üzerinde rastgele bir sınama yapılacak.
+ Lütfen OONI Run bağlantısına dokunmadan önce sürmekte olan sınamanın tamamlanmasını bekleyin.
+ Uyuşturucu ve alkol
+ Din
+ Porno
+ Kışkırtıcı giyim
+ Politik eleştiri
+ İnsan hakları sorunları
+ Çevre
+ Terörizm ve militanlar
+ Nefret söylemi
+ Haber yayın organları
+ Cinsel eğitim
+ Kamu sağlığı
+ Kumar
+ Sansürü aşma araçları
+ Çevrim içi arkadaşlık
+ Sosyal ağ
+ LGBTQ+
+ Dosya paylaşımı
+ Bilgisayar korsanlığı araçları
+ İletişim araçları
+ Ortam paylaşma
+ Site barındırma ve günlük yayınlama
+ Arama motorları
+ Oyun
+ Kültür
+ Ekonomi
+ Hükümet
+ E-ticaret
+ İçerik denetimi
+ Hükümetler arası kuruluşlar
+ Çeşitli içerik
+ Uyuşturucu ve alkol kullanımı ve satışı
+ Dini konular, destekleyici ve eleştirel
+ Pornografik içerik
+ Kışkırtıcı giyim ve açık giyinen kadınların tasvirleri
+ Eleştirel politik bakış açısı
+ İnsan hakları sorunları
+ Çevre konuları üzerine tartışmalar
+ Terörizm, askeri şiddet ya da ayrılıkçı hareketler
+ Belirli grupların, ırk, cinsiyet, cinsellik ya da diğer özelliklerine göre aşağılanması
+ Ana haber siteleri, bölgesel haber siteleri ve bağımsız medya
+ Doğum kontrolu, cinsel yolla bulaşan hastalıklar, tecavüz önleme ve kürtaj gibi cinsel sağlık konuları
+ COVID-19, HIV/AIDS, Ebola gibi kamu sağlığı konuları
+ Çevrim içi kumar ve bahis
+ Anonimleşme, sansürü aşma ve şifreleme
+ Çevrim içi arkadaşlık siteleri
+ Çevrim içi sosyal ağ araç ve platformları
+ LGBTQ+ ile ilgili konuları tartışma toplulukları (pornografi dışında)
+ Bulut tabanlı dosya depolama, torrentler ve P2P gibi dosya paylaşımı
+ Bilgisayar güvenliği araçları ve haberler
+ VoIP, ileti gönderme ve internet e-postası gibi bireysel ve grup iletişimi araçları
+ Görüntü, ses ve fotoğraf paylaşımı
+ Site barındırma ve diğer çevrim içi yayın organları
+ Arama motorları ve mecralar
+ Çevrim içi oyunlar ve oyun platformları (kumar siteleri dışında)
+ Tarih, edebiyat, müzik, film, hiciv ve mizah gibi eğlence konuları
+ Genel ekonomik gelişim ve güç konuları
+ Ordu ile birlikte, hükümetin yönettiği siteler
+ Ticari hizmet ve ürünler
+ Denetim için kullanılan iyi niyetli ya da bilinçsiz içerik
+ Birleşmiş Milletler gibi hükümetlerarası kuruluşlar
+ Henüz kategorize edilmemiş siteler
+
diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/ooni/res/values-vi/strings.xml
similarity index 100%
rename from app/src/main/res/values-vi/strings.xml
rename to app/src/ooni/res/values-vi/strings.xml
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/ooni/res/values-zh-rCN/strings.xml
similarity index 100%
rename from app/src/main/res/values-zh-rCN/strings.xml
rename to app/src/ooni/res/values-zh-rCN/strings.xml
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/ooni/res/values-zh-rTW/strings.xml
similarity index 100%
rename from app/src/main/res/values-zh-rTW/strings.xml
rename to app/src/ooni/res/values-zh-rTW/strings.xml
diff --git a/app/src/ooni/res/values/untraslatable.xml b/app/src/ooni/res/values/untraslatable.xml
new file mode 100644
index 000000000..c4c13f6fb
--- /dev/null
+++ b/app/src/ooni/res/values/untraslatable.xml
@@ -0,0 +1,58 @@
+
+
+ Automatic
+ Albanian
+ العربية
+ Català
+ 中文 (S)
+ 中文 (T)
+ Nederlands
+ English
+ فارسی
+ Français
+ Deutsch
+ Ελληνικά
+ हिन्दी
+ Icelandic
+ Indonesia
+ Italiano
+ Português
+ Română
+ Pусский
+ Slovenčina
+ Español
+ Kiswahili
+ ไทย
+ Türkçe
+ Tiếng Việt
+ မြန်မာ
+
+
+ auto
+ sq
+ ar
+ ca
+ zh_CN
+ zh_TW
+ nl
+ en
+ fa
+ fr
+ de
+ el
+ hi
+ is
+ id
+ it
+ pt_BR
+ ro
+ ru
+ sk
+ es
+ sw
+ th
+ tr
+ vi
+ my
+
+
diff --git a/app/src/ooni/stable/full/README.md b/app/src/ooni/stable/full/README.md
new file mode 100644
index 000000000..5484adcd1
--- /dev/null
+++ b/app/src/ooni/stable/full/README.md
@@ -0,0 +1,2 @@
+# OONI Stable Full
+Previously `stableFull`
diff --git a/app/src/stableFull/google-services.json b/app/src/ooni/stable/full/google-services.json
similarity index 100%
rename from app/src/stableFull/google-services.json
rename to app/src/ooni/stable/full/google-services.json
diff --git a/engine/build.gradle b/engine/build.gradle
index a64cced29..4f003fe22 100644
--- a/engine/build.gradle
+++ b/engine/build.gradle
@@ -26,6 +26,9 @@ android {
dev {
dimension 'testing'
}
+ dw {
+ dimension 'testing'
+ }
}
namespace 'org.openobservatory.engine'
}
@@ -35,7 +38,7 @@ dependencies {
// build published at Maven Central.
stableImplementation libs.ooni.oonimkall
devImplementation libs.ooni.oonimkall
-
+ dwImplementation libs.ooni.oonimkall
// For the experimental flavour, you need to compile your own
// oonimkall.aar and put it into the ../engine-experimental dir
experimentalImplementation project(":engine-experimental")
diff --git a/gradle.properties b/gradle.properties
index 71c004f05..b02f897f6 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -11,7 +11,7 @@ android.enableJetifier=true
android.nonFinalResIds=false
android.nonTransitiveRClass=false
android.useAndroidX=true
-org.gradle.jvmargs=-Xmx2048m
+org.gradle.jvmargs=-Xmx4608m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
diff --git a/shared-test/build.gradle b/shared-test/build.gradle
index ed614df70..ed130d76c 100644
--- a/shared-test/build.gradle
+++ b/shared-test/build.gradle
@@ -18,8 +18,14 @@ android {
kotlinOptions {
jvmTarget = JavaVersion.VERSION_17
}
- flavorDimensions = ['testing', 'license']
+ flavorDimensions = ['brand', 'testing', 'license']
productFlavors {
+ ooni {
+ dimension 'brand'
+ }
+ dw {
+ dimension 'brand'
+ }
stable {
dimension 'testing'
}