diff options
| -rw-r--r-- | AndroidManifest.xml | 4 | ||||
| -rw-r--r-- | res/layout/faq.xml | 8 | ||||
| -rw-r--r-- | res/values/strings.xml | 2 | ||||
| -rw-r--r-- | src/de/blinkt/openvpn/FaqFragment.java | 18 | 
4 files changed, 21 insertions, 11 deletions
| diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 70ff7769..ad16b0ad 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -17,8 +17,8 @@  <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" /> 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 69fb9e35..a0d1a4f0 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -227,4 +227,6 @@      <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. <p> While these packets are small and do not use much traffic, they keep the mobile radio network busy and increase the energy consumption. <p> This keepalive setting cannot be changed on the client. Only the system administrator of the OpenVPN can change the setting. <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 <a href=\"http://sites.inka.de/bigred/devel/tcp-tcp.html\">Why TCP Over TCP Is A Bad Ide</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()); +	} +  } | 
