summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArne Schwabe <arne@rfc2549.org>2021-03-12 15:50:04 +0100
committerArne Schwabe <arne@rfc2549.org>2021-03-12 16:00:27 +0100
commitfea8027f679bf6031342f3972cab7c32ad6e095e (patch)
treef943a29bc1f42cd5c6cde70a59cc7eb4a0e79888
parent5359c051f711bdb53706b264a94042fa4033a5c2 (diff)
Add End of service and privacy policy in about dialog
This is a common requirement of Google play store. Even though this app should not really need them and therefore the content is pretty short and redundant.
-rw-r--r--Privacy-policy.md16
-rw-r--r--main/src/main/res/values/untranslatable.xml5
-rw-r--r--main/src/ui/res/layout/about.xml246
3 files changed, 149 insertions, 118 deletions
diff --git a/Privacy-policy.md b/Privacy-policy.md
index 1a4dde42..761f5687 100644
--- a/Privacy-policy.md
+++ b/Privacy-policy.md
@@ -1,8 +1,18 @@
Privacy Policy for OpenVPN for Android
=====================================
-The app OpenVPN for Android does not commuicate to any server other than the
+The app OpenVPN for Android does not communicate to any server other than the
OpenVPN servers provided in configuration files. The author himself does not
collect any data and no therefore also no data is saved. For the privacy
-policy for the server (or other services like GitHub), please refer to
-their respective privacy policy.
+policy for the OpenVPN server/VPN service you are using (or other services related to the project
+like GitHub), please refer to their respective privacy policy.
+
+End of service
+==============
+The program and its components are under open-source licenses that allow you to use this app forever
+according to terms of the open-source licenses for details.
+
+However, the author reserves the right to suspend development or stop publishing the OpenVPN app or updates
+to it at any time.
+
+
diff --git a/main/src/main/res/values/untranslatable.xml b/main/src/main/res/values/untranslatable.xml
index 39f049a9..ac1f8add 100644
--- a/main/src/main/res/values/untranslatable.xml
+++ b/main/src/main/res/values/untranslatable.xml
@@ -27,6 +27,8 @@
Copyright © 1995-1998 Eric Young (eay@cryptsoft.com) All rights reserved.
</string>
<string name="openvpn" translatable="false">OpenVPN</string>
+ <string name="privpolicy" translatable="false">Privacy policy</string>
+
<string name="file_dialog" translatable="false">File Dialog</string>
<string name="lzo" translatable="false">LZO</string>
<string name="openssl" translatable="false">OpenSSL</string>
@@ -72,5 +74,8 @@
<string name="apprest_vpnlist">List of VPN configurations</string>
<string name="apprest_vpnconf">VPN configuration</string>
<string name="apprest_ver">Version of the managed configuration schema (Currently always 1)</string>
+ <string name="privacy_policy">The app OpenVPN for Android does not communicate to any server other than the OpenVPN servers provided in configuration files. The author himself does not collect any data and no therefore also no data is saved. For the privacy policy for the OpenVPN server/VPN service you are using (or other services related to the project like GitHub), please refer to their respective privacy policy.</string>
+ <string name="eol_notice_header">End of service</string>
+ <string name="eol_notice">The program and its components are under open-source licenses that allow you to use this app forever according to terms of the open-source licenses for details.&lt;p&gt; However, the author reserves the right to suspend development or stop publishing the OpenVPN app or updates to it at any time.</string>
</resources>
diff --git a/main/src/ui/res/layout/about.xml b/main/src/ui/res/layout/about.xml
index acb1506f..fb2497ff 100644
--- a/main/src/ui/res/layout/about.xml
+++ b/main/src/ui/res/layout/about.xml
@@ -1,112 +1,127 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
+<?xml version="1.0" encoding="utf-8"?><!--
~ Copyright (c) 2012-2016 Arne Schwabe
~ Distributed under the GNU GPL v2 with additional terms. For full terms see the file doc/LICENSE.txt
-->
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:paddingLeft="@dimen/stdpadding"
- android:scrollbarStyle="outsideOverlay"
- android:paddingRight="@dimen/stdpadding" >
-
- <LinearLayout
+ xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:orientation="vertical" >
+ android:paddingLeft="@dimen/stdpadding"
+ android:paddingRight="@dimen/stdpadding"
+ android:scrollbarStyle="outsideOverlay">
- <TextView
- android:id="@+id/version"
- tools:text="OpenVPN for Anroid 1.2.3"
+ <LinearLayout
android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:textAppearance="?android:attr/textAppearanceLarge"
- tools:ignore="SelectableText" />
+ android:layout_height="match_parent"
+ android:orientation="vertical">
- <Space
- android:layout_width="match_parent"
- android:layout_height="6sp" />
+ <TextView
+ android:id="@+id/version"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceLarge"
+ tools:ignore="SelectableText"
+ tools:text="OpenVPN for Android 1.2.3" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:autoLink="all"
- android:text="@string/copyright_blinktgui" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginVertical="12sp"
+ android:autoLink="all"
+
+ android:text="@string/copyright_blinktgui" />
+
- <Space
- android:layout_width="match_parent"
- android:layout_height="12sp" />
<TextView
android:id="@+id/version_ovpn2"
-
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:layout_marginTop="12sp"
tools:text="OpenVPN version 874981723" />
+
<TextView
android:id="@+id/version_ovpn3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:layout_marginBottom="12sp"
tools:text="OpenVPN3 core version 8df8718283" />
- <Space
+
+
+ <TextView
android:layout_width="match_parent"
- android:layout_height="12sp" />
+ android:layout_height="wrap_content"
+ android:layout_marginVertical="12sp"
+ android:autoLink="all"
+ android:text="@string/copyright_logo" />
+
+
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:autoLink="all"
- android:text="@string/copyright_logo" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginVertical="12sp"
+ android:autoLink="all"
+ android:text="@string/copyright_guicode" />
- <Space
- android:layout_width="match_parent"
- android:layout_height="12sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:autoLink="all"
- android:text="@string/copyright_guicode" />
+ android:id="@+id/translation"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:autoLink="all"
+
+ tools:ignore="SelectableText" />
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="12sp"
+ android:autoLink="all"
+
+ android:text="@string/help_translate" />
<TextView
- android:id="@+id/translation"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:autoLink="all"
- tools:ignore="SelectableText" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="12sp"
+ android:text="@string/privpolicy"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
+
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/privacy_policy" />
- <Space
- android:layout_width="match_parent"
- android:layout_height="12sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:autoLink="all"
- android:text="@string/help_translate" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="12sp"
+ android:text="@string/eol_notice_header"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/eol_notice" />
+
- <Space
- android:layout_width="match_parent"
- android:layout_height="12sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/copyright_others" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="24sp"
+ android:layout_marginBottom="12sp"
+ android:text="@string/copyright_others" />
- <Space
- android:layout_width="match_parent"
- android:layout_height="12sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/openvpn"
- android:textAppearance="?android:attr/textAppearanceMedium" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/openvpn"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
<!--
ImageView
android:layout_width="wrap_content"
@@ -116,84 +131,85 @@
-->
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/opevpn_copyright" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/opevpn_copyright" />
<Space
- android:layout_width="match_parent"
- android:layout_height="20sp" />
+ android:layout_width="match_parent"
+ android:layout_height="20sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/file_dialog"
- android:textAppearance="?android:attr/textAppearanceMedium" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/file_dialog"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/copyright_file_dialog" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/copyright_file_dialog" />
<Space
- android:layout_width="match_parent"
- android:layout_height="20sp" />
+ android:layout_width="match_parent"
+ android:layout_height="20sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/lzo"
- android:textAppearance="?android:attr/textAppearanceMedium" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/lzo"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/lzo_copyright" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/lzo_copyright" />
<Space
- android:layout_width="match_parent"
- android:layout_height="20sp" />
+ android:layout_width="match_parent"
+ android:layout_height="20sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/openssl"
- android:textAppearance="?android:attr/textAppearanceMedium" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/openssl"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/copyright_openssl" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/copyright_openssl" />
<Space
- android:layout_width="match_parent"
- android:layout_height="20sp" />
+ android:layout_width="match_parent"
+ android:layout_height="20sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/bouncy_castle"
- android:textAppearance="?android:attr/textAppearanceMedium" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/bouncy_castle"
+ android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/copyright_bouncycastle" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/copyright_bouncycastle" />
<Space
- android:layout_width="match_parent"
- android:layout_height="150dp" />
+ android:layout_width="match_parent"
+ android:layout_height="150dp" />
+
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/full_licenses"
- android:textAppearance="?android:attr/textAppearanceLarge" />
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/full_licenses"
+ android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:id="@+id/full_licenses"
- android:layout_gravity="center_horizontal" />
+ android:id="@+id/full_licenses"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_gravity="center_horizontal" />
</LinearLayout>
</ScrollView>