summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AndroidManifest.xml21
-rw-r--r--res/layout/faq.xml8
-rw-r--r--res/values/strings.xml4
-rw-r--r--src/de/blinkt/openvpn/FaqFragment.java18
4 files changed, 31 insertions, 20 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 6677201f..ad16b0ad 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -17,16 +17,14 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.blinkt.openvpn"
- android:versionCode="51"
- android:versionName="0.5.24" >
+ android:versionCode="52"
+ android:versionName="0.5.25" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
- <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
-
-
-
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
+
<!-- <uses-permission android:name="com.android.vending.BILLING" /> -->
<uses-sdk android:minSdkVersion="14" />
@@ -40,7 +38,7 @@
android:windowSoftInputMode="stateHidden" />
<activity
android:name=".LogWindow"
- android:label="OpenVPN Log" />
+ android:label="@string/openvpn_log" />
<activity android:name=".FileSelect" />
<activity android:name=".MainActivity" >
<intent-filter>
@@ -58,6 +56,7 @@
<action android:name="android.net.VpnService" />
</intent-filter>
</service>
+
<receiver android:name=".OnBootReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
@@ -67,7 +66,7 @@
<activity
android:name=".ConfigConverter"
android:label="Convert Config File" >
- <intent-filter android:label="Import OpenVPN Config" >
+ <intent-filter android:label="@string/import_config" >
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
@@ -75,7 +74,7 @@
<data android:mimeType="application/x-openvpn-profile" />
</intent-filter>
- <intent-filter android:label="Import OpenVPN Config" >
+ <intent-filter android:label="@string/import_config" >
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
@@ -83,7 +82,7 @@
<data android:mimeType="application/ovpn" />
</intent-filter>
- <intent-filter android:label="Import OpenVPN Config" >
+ <intent-filter android:label="@string/import_config" >
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
@@ -116,4 +115,4 @@
</activity-alias>
</application>
-</manifest>
+</manifest> \ No newline at end of file
diff --git a/res/layout/faq.xml b/res/layout/faq.xml
index dc591318..c4fd57f0 100644
--- a/res/layout/faq.xml
+++ b/res/layout/faq.xml
@@ -34,6 +34,14 @@
<TextView
style="@style/faqhead"
+ android:text="@string/battery_consumption_title" />
+
+ <TextView
+ android:id="@+id/faq_battery"
+ style="@style/faqitem" />
+
+ <TextView
+ style="@style/faqhead"
android:text="@string/tap_mode" />
<TextView
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 2625a028..a0d1a4f0 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -225,4 +225,8 @@
<string name="persisttun_summary">Do not fallback to no VPN connection when OpenVPN is reconnecting.</string>
<string name="persistent_tun_title">Persistent tun</string>
<string name="translation">Translation</string>
+ <string name="openvpn_log">OpenVPN Log</string>
+ <string name="import_config">Import OpenVPN configuration</string>
+ <string name="battery_consumption_title">Battery consumption</string>
+ <string name="baterry_consumption">In my personal tests the main reason for high battery consumption of OpenVPN are the keepalive packets. Most OpenVPN servers have a configuration directive like \'keepalive 10 60\' which translates to a keepalive packet from client to server and server to client every ten seconds. &lt;p> While these packets are small and do not use much traffic, they keep the mobile radio network busy and increase the energy consumption. &lt;p> This keepalive setting cannot be changed on the client. Only the system administrator of the OpenVPN can change the setting. &lt;p> Unfortunatly using a keepalive larger than 60 seconds with udp has problems with some NAT gateways which terminate the state for a connnection after a short timeout (60s in my tests). Using TCP with long keepalive timeout works but has the TCP over TCP problem. (See &lt;a href=\"http://sites.inka.de/bigred/devel/tcp-tcp.html\">Why TCP Over TCP Is A Bad Ide&lt;/a>)</string>
</resources>
diff --git a/src/de/blinkt/openvpn/FaqFragment.java b/src/de/blinkt/openvpn/FaqFragment.java
index c4d1913d..79029757 100644
--- a/src/de/blinkt/openvpn/FaqFragment.java
+++ b/src/de/blinkt/openvpn/FaqFragment.java
@@ -3,7 +3,6 @@ package de.blinkt.openvpn;
import android.app.Fragment;
import android.os.Bundle;
import android.text.Html;
-import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.view.LayoutInflater;
import android.view.View;
@@ -23,14 +22,9 @@ public class FaqFragment extends Fragment {
Bundle savedInstanceState) {
View v= inflater.inflate(R.layout.faq, container, false);
- TextView bImages = (TextView) v.findViewById(R.id.brokenimages);
- bImages.setText(Html.fromHtml(getActivity().getString(R.string.broken_images_faq)));
- bImages.setMovementMethod(LinkMovementMethod.getInstance());
-
- TextView quickstart = (TextView) v.findViewById(R.id.faq_howto);
- Spanned htmltext = Html.fromHtml(getActivity().getString(R.string.faq_howto));
- quickstart.setText(htmltext);
- quickstart.setMovementMethod(LinkMovementMethod.getInstance());
+ insertHtmlEntry(v,R.id.brokenimages,R.string.broken_images_faq);
+ insertHtmlEntry(v,R.id.faq_howto,R.string.faq_howto);
+ insertHtmlEntry(v, R.id.faq_battery, R.string.baterry_consumption);
return v;
@@ -38,4 +32,10 @@ public class FaqFragment extends Fragment {
}
+ private void insertHtmlEntry (View v, int viewId, int stringId) {
+ TextView faqitem = (TextView) v.findViewById(viewId);
+ faqitem.setText(Html.fromHtml(getActivity().getString(stringId)));
+ faqitem.setMovementMethod(LinkMovementMethod.getInstance());
+ }
+
}