Daniels Blog

Small SMS to Email gateway with Tasker, Android and a webserver

I wanted to forward SMS text messages to email. Tasker has an email action, but it won't automatically send the email, just provide the composing window.

Gladly Tasker can do HTTP-requests and read SMS, so we can forward the SMS to our own webserver to mail it from there.


Tasker part:

  • Create Profile "Incoming SMS"
  • Make it run Task "SMS2Email" when Event "Received Text SMS" is triggered.


  • Create new Task "SMS2Email"
  • In Task "SMS2Email:
  • Make sure mobile data is turned on
  • Do the following HTTP POST Action:

Server: https://www.myserver.com

Path: smsgateway.php

Data / File: sms=%SMSRF / %SMSRN / %SMSRB / %MMSRS / %SMSRD / %SMSRT

Trust any certificate: check


Webserver part on www.myserver.com:

# /var/www/smsgateway.php
$sms = $_POST["sms"];
$sms_parts = explode("/", $sms);

$sms_num = $sms_parts[0];
$sms_nam = $sms_parts[1];
$sms_txt = $sms_parts[2];
$sms_dat = $sms_parts[4];
$sms_tim = $sms_parts[5];

$body ="
$sms_dat $sms_tim


mail("targetemail@myserver.com", "SMS $sms_nam $sms_num", $body, "From: Snappy Sendername <smsservice@myserver.com>");

Here we go. After receiving a SMS, Tasker makes the HTTP-request, delivering the content of the SMS to the webserver. PHP sends the content out by mail.

If you don't want to forward all SMS, you can add additional filters in Taskers event "Received Text SMS".

Make sure your PHP setup is able to deliver mail. Check if messages go to spam.

veröffentlicht unter: Android, Linux keine Kommentare

Android – Increase headphones volume in Android 7 Nougat / Lineage OS

Time for bleeding ears:

- Mount /etc read/writeable with your favourite file explorer (Root Explorer can do it for example)
- Locate /etc/mixer_paths.xml
- Open it with your favourite text editor.
- Play with the values for "RX1 Digital Volume" and "RX2 Digital Volume" in the "Headphones" path
- Save
- Reboot
- Check the results

Be careful, it can get very loud and noisy if you push it too far. I guess it might even damage your headphones/ears, so start your tests with a low volume. I set mine to 93 on my bullhead device (Nexus 5x) and it's too loud for some of my MP3 at max volume, still great for most of my others.

veröffentlicht unter: Android keine Kommentare

Shell commands for hardware management in Android 6 Marshmallow / Cyanogenmod 13

android-shellIf you are using an automation app like Tasker, Llama or Automate, you can toggle / turn on / turn off WIFI, Data, GPS etc. with shell commands. I collected these little sniplets for my own setup. They work on my device (Nexus 5x with Cyanogenmod 13). They should work on other Android 6 devices as well.

Run all shell commands as root.


svc wifi enable
svc wifi disable


svc data enable
svc data disable


# turn GPS on
settings put secure location_providers_allowed +gps 
# turn GPS off
settings put secure location_providers_allowed -gps 


# Flightmode on
settings put global airplane_mode_on 1
am broadcast -a android.intent.action.AIRPLANE_MODE

# Flightmode off
settings put global airplane_mode_on 0
am broadcast -a android.intent.action.AIRPLANE_MODE

Turn off screen without locking device (emulate power button keypress)

input keyevent 26

Toggle Network mode (2G/3G/4G)
I have been searching for a long time, but there seems to be no direct way to do this.
The best solution I have found requires xposed framework and gravitybox installed.

I found the available network types here:

Identify the right settings for your device:

# Disable your automation app, set networking mode with the preferences in your devices GUI.
# Then run

settings get global preferred_network_mode 

# The currently set network mode number will be shown in shell

Just send the following intent to toggle network mode:

Send Intent [
Action: gravitybox.intent.action.CHANGE_NETWORK_TYPE
Cat: None
Mime Type:
Extra: networkType:1
Target: Broadcast Receiver]

networkType enum values are: 
0: WCDMA Preferred 
1: GSM only <-- This would be "2G" on GSM networks
2: WCDMA only <--WCDMA is "3G" on GSM networks. You may know it as HSPA
3: GSM auto (PRL)
4: CDMA auto (PRL)
5: CDMA only <-- This would be "2G" on CDMA networks
6: EvDo only <-- EvDo is "3G" on CDMA networks
7: GSM/CDMA auto (PRL)
8: LTE/CDMA auto (PRL)
9: LTE/GSM auto (PRL)
10: LTE/GSM/CDMA auto (PRL)
11: LTE only
12: "unknown"

Disable captive portal detection
This needs to be set at boottime. It doesn't survive a reboot.

settings put global captive_portal_detection_enabled 0
settings put global captive_portal_server

Force a DNS of your choice
Google removed the option to change the DNS for mobile data. (ugly, ugly, ugly)
You can force your device to use your fav DNS with iptables for mobile data:

/system/bin/iptables -t nat -A OUTPUT ! -o wlan0 -p udp --dport 53 -j DNAT --to-destination

In case you have found a better way to switch network mode, I'd really appreciate your comment 🙂


Disabling Captive Portal in Android Cyanogenmod 13+ Marshmallow

If you have seen that stupid ! beside your WIFI or MobileData icons in Android, you have discovered the "Captive Portal Detection" which has been added in KitKat or so. It's terribly bugged if you are using a firewall in Android plus if you don't, your device connects to Google every time you go online.

Since Marshmallow this behaviour can't be disabled permanently. Captive Portal Detection is being reenabled after every boot.
So use your favourite script runner app (Tasker can do it) to run these commands at boot time to disable the crap:

settings put global captive_portal_detection_enabled 0
settings put global captive_portal_server localhost
veröffentlicht unter: Android keine Kommentare

Changing DNS for mobile data in Cyanogenmod 12+ and Android Kitkat Marshmallow

You need root for this.

In my (probably never ending) mission to remove Google from my Android device, I recently found out, that I missed a very important detail. When using mobile data, the phone gets its IP and DNS information from the cell provider. With recent android versions, the cell providers DNS is sometimes being ignored and Googles DNS server ( is used instead. This allows Google to mine data on every DNS request done by many Android devices in the world. The DNS setting for mobile data can't be changed in the GUI. There are older shell commands which used to work in KitKat to change the mobile data DNS on Android but they are being silently ignored. If is not set, your cell providers DNS is used which most probably also mines your resolved domains. If you are into privacy, it's always a good idea to use a trustworthy DNS for your connection. It's kinda creepy, that there is no uncomplicated way to change the mobile data DNS in Android.

But there is a hackish solution that works.
You need AFWall for it. As you reached this article I asume, that you are already using it. It's an iptables fireall implementation for Android that allows you to block internet access for certain apps and run custom iptable commands automatically.

- Open Afwall
- Menu
- Set custom script

You can set 2 custom scripts here. One runs after the firewall is being enabled, the other one runs after the firewall is being stopped.

# Enable script
# Route all outgoing traffic with a destination port of 53 (DNS) to another DNS server

$IT -t nat -A OUTPUT -p tcp --dport 53 -j DNAT --to-destination $DNS:53
$IT -t nat -A OUTPUT -p udp --dport 53 -j DNAT --to-destination $DNS:53
# Disable script
# Remove the 2 rules from the NAT table

$IT -t nat -D OUTPUT 1
$IT -t nat -D OUTPUT 1

You can check your used DNS server(s) here: https://www.perfect-privacy.com/german/dns-leaktest/

A few more trustworthy DNS servers can be found here (scroll down): https://www.ccc.de/censorship/dns-howto/

Shame on you Google. I have to tinker with iptables to set such a basic thing as a DNS server?
Ugly. Ugly. Ugly.

The Afwall method didn't work well on my device after some testing. Sometimes I was unable to use DNS at all. Running the iptables rule from any startup script during boot works fine though (Tasker can do it). I changed the script a bit to only affect mobile data DNS because changing it for Wifi as well (in the original script) broke other things in my LAN.

# Enable script
# Route all outgoing traffic going thru rmnet interfaces (androids mobile data interfaces) with a destination port of 53 (DNS) to another DNS server

$IT -t nat -A OUTPUT -i rmnet+ -p tcp --dport 53 -j DNAT --to-destination $DNS:53
$IT -t nat -A OUTPUT -i rmnet+ -p udp --dport 53 -j DNAT --to-destination $DNS:53
veröffentlicht unter: Android keine Kommentare

Cleaning up Cyanogenmod 13 Nexus 5x (bullhead)

This is just the backup of my personal crap removal and tweak script for CM13


echo "MOUNTING /system r/w"
mount -o rw,remount,rw /system

echo "KILLING CRAP from /system/app"

rm -rf /system/app/NfcNci
rm -rf /system/app/PrintSpooler
rm -rf /system/app/LockClock
rm -rf /system/app/RCSBootstraputil
rm -rf /system/app/RcsImsBootstraputil
rm -rf /system/app/Profiles

echo "KILLING CRAP from /system/priv-app"
rm -rf /system/priv-app/AudioFX
rm -rf /system/priv-app/CellBroadcastReceiver
rm -rf /system/priv-app/CMBugReport
rm -rf /system/priv-app/CNEService
rm -rf /system/priv-app/GCS
rm -rf /system/priv-app/HotwordEnrollment
rm -rf /system/priv-app/LifetimeService
rm -rf /system/priv-app/ManagedProvisioning
rm -rf /system/priv-app/ThemeChooser
rm -rf /system/priv-app/ThemesProvider
rm -rf /system/priv-app/CMBugReport
rm -rf /system/priv-app/OneTimeInitializer

chmod ugo-rwx /system/media/audio/ui/camera_click.ogg
chmod ugo-rwx /system/media/audio/ui/camera_focus.ogg
chmod ugo-rwx /system/media/audio/ui/VideoRecord.ogg
chmod ugo-rwx /system/media/audio/ui/VideoStop.ogg
chmod ugo-rwx /system/media/audio/ui/Lock.ogg

echo "MOUNTING /system r/o"
mount -o ro,remount,ro /system

echo "FIXING Volume"
mount -o rw,remount,rw /
cp /sdcard/mixer_paths.xml /etc
mount -o ro,remount,ro /

echo "DONE"

veröffentlicht unter: Android keine Kommentare

Increase headphones volume in CyanogenMod 13

Time for bleeding ears:

- Mount /etc read/writeable with your favourite file explorer (Root Explorer can do it for example)
- Locate /etc/mixer_paths.xml
- Open it with your favourite text editor.
- Play with the values for "RX1 Digital Volume" and "RX2 Digital Volume" in the "Headphones" path
- Save
- Reboot
- Check the results

Be careful, it can get very loud and noisy if you push it too far. I set mine to 94 on a serranoltex device (SAMSUNG S4 Mini INT) and it's too loud for some of my MP3 at max volume, still great for most of my others.


Increase Headphone Volume in Cyanogenmod 12

Being used to the extremely loud headphone volume of AIWA walkmen from the 1990s, my Android volume was always a bit too low for my ears.

I tried to play around with CMs included "DSP Manager" but it never worked as I expected and I disliked to need an additional app to increase volume on my device.

In Cyanogenmod headphone volumes are configured in /system/etc/snd_soc_msm/snd_soc_msm_2x
(Maybe this will work in every recent Android distribution, no idea though, I am on CM12 Lollipop)

Just edit this file and search for the stanzas called "Headphones" and "PROXY Rx Headphones"

Inside of those you will find "RX# Digital Volume" with a percentage value.

Mine were set to 69.4%. I rose them to 75% and rebooted. Now my ears bleed. Nice.

The settings will be lost after updates so I created a small script to run after updates which will replace the original file with my modified one.

# The file on /sdcard is my modified backup
cp /sdcard/snd_soc_msm_2x /system/etc/snd_soc_msm/snd_soc_msm_2x
veröffentlicht unter: Android keine Kommentare

Android Kernel und weitere Images unter Ubuntu flashen mit adb und fastboot

apt-get install android-tools-fastboot

# USB-Debugging im Handy aktivieren
# Handy per USB connecten

adb devices
# gerät sollte angezeigt werden
adb reboot-bootloader

# Gerät rebootet in Fastboot Mode

fastboot devices
fastboot flash boot filename_of_boot.img
fastboot reboot

# Weitere Images flashen
fastboot flash bootloader bootloader.img
fastboot reload-bootloader

fastboot flash radio radio.img

fastboot flash recovery recovery.img

fastboot flash system system.img

fastboot flash vendor vendor.img


Using Android without Google – The hard way

I have been trying to get rid of Google completely on my Android phone. As I have made some nice progress I'd like to share what I did and which problems I had to overcome:

OS I removed my stock version of Android and replaced it with Cyanogen Mod (http://www.cyanogenmod.org/) CM doesn't ship the Google Services, you have to install them manualy afterwards. I didn't do that, so most of Google was gone already. This produced a lot of problems, because Google Play isn't available plus the Maps Framework is used by many 3rd party apps.

Appstore The biggest showstopper is the missig appstore. I installed F-Droid (https://f-droid.org/) which is a nice appstore that provides open-source apps only. This provided me with some apps i use regualry (Twitter-client and some others) but is in no way a replacement for Google Play. Now I had to decide if I wanted to trust other 3rd party appstores or not. I decided to don't. Amazon has it's own "trustworthy" appstore, but apps are patched and crippled. didn't want to have that. Decided to download needed apps with another Android device. After that I grab them from /data/app on the other device with Root Explorer (https://play.google.com/store/apps/details?id=com.speedsoftware.rootexplorer&hl=de) and sync them to my real device with Owncloud. This ugly process basicly made me use less apps on my phone because it's such a hassle to get them on it. I got used to it after some time and reduced my app selection to a sane minimum.

Contacts, Mail and Calendar sync I setup an installation of Horde Groupware (http://www.horde.org) on my personal server. Horde features "Microsoft Active Sync" compatibility. On Android, I just had to add an Active Sync Account to sync all my stuff to my own server. Works perfectly.

Maps Framework Many apps that embed a Google Map somewhere use the "Google Maps Framework" which comes with Google Maps. A specific app I use often depends on the framework. The app won't start without the framework, even I don't need the embedded maps inside. Luckyly some guy from XDA wrote a script that simulates an installed Maps framework without it being there actually. (Couldn't find link, too long ago)

Maps Checked out many mapping applications based on OpenStreetMaps. MapFactor worked best for me (https://play.google.com/store/apps/details?id=com.mapfactor.navigator&hl=de). It's not as good as Google Maps but it works.

Browser Andorid browser that ships with Android has builtin Google-Search. I replaced it with Lightning (https://play.google.com/store/apps/details?id=acr.browser.barebones), a small and quick open souce browser which can be configured to use many different search engines. I set it to Startpage.

Music My PlayStore license for Poweramp didn't work on my devices without Google Licensing Services, provided by Play (a problem with many pay-apps, not all though). Luckily the dev offers a version, bound to an e-mail account. I re-bought the software.

That's basicly it. I'll sniff the traffic of my phone, if I find the time, to verfiy I really got rid of Google on my phone. (I bet i forgot something)


Hoher Akkuverbrauch bei Android: surfaceflinger und mediaserver verursachen eine hohe CPU-Last

Auf meinem ewigen Quest die Akkulaufzeit meiner Androidgeräte möglichst gut zu optimieren, bin ich seit einer Zeit immer wieder über zwei Systemprozesse gestolpert, die ohne ersichtlichen Grund an meiner Batterielaufzeit genagt haben: surfaceflinger und mediaserver.


1. surfaceflinger

surfaceflinger managed den Android-Framebuffer. Dieser wird im Endeffekt benötig um Ausgaben auf dem Bildschirm auszugeben. Leider scheint surfaceflinger seit einigen Androidversionen im Zusammenspiel mit bestimmten Roms fehlerhaft zu sein.

Ein wenig Recherche im Internet brachte mich auf eine funktionierende Lösung: Wenn man Einstellungen -> Display -> "Display automatisch drehen" deaktiviert, verhält sich surfaceflinger sofort wieder normal. Da ich ein Smartphone mit ausschiebbarer Tastatur habe, benötige ich die automatische Drehung nicht wirklich. Ich kann den Screen manuell durch das Öffnen der Tastatur drehen. Androidnutzer ohne Tastatur müssen wohl zur Zeit auf ein Widget zum Drehen des Bildschirmes zurückgreifen oder mit der Energieverschwendung leben.

2. mediaserver

mediaserver war bei mir Stromfresser Nummer 2. Der Prozess kümmert sich um das Bereitstellen von Medien für verschiedene Applikationen und um den Mediascan der SD-Karte. Dieser ist bei mir nach jedem Reboot aber auch unnachvollziehbar im laufenden Betrieb angesprungen. Er frisst sehr viel Batterie, verlangsamt das Telefon stark und ist in meinem Fall unnütz, da er lediglich Bilder und Musikdateien für die internen Android-Applikationen bereitstellt (Galerie, Mediaplayer). Ich nutze als Bildbetrachter "Quickpic" und als Musikplayer "Poweramp". Beide bringen ihre eigenen Sacnroutinen mit, deshalb konnte ich die Scanfunktion des Mediaservers ohne Probleme abschalten.

pm disable com.android.providers.media/com.android.providers.media.MediaScannerReceiver

Danach werden interne Androidapps nicht mehr über neue Medien informiert und der Scanner läuft gar nicht mehr.
Um ihn wieder zu aktivieren führt man ein

pm enable com.android.providers.media/com.android.providers.media.MediaScannerReceiver

im lokalen Android Terminal aus (zum Beispiel mit der App ConnectBot)

Durch das Bändigen der beiden Prozesse im Zusammenspiel mit den Verändeurngen aus dem oben verlinkten älteren Blogartikel von mir komme ich wieder auf angenehme 1,5% - 2,0% Akkuverbrauch pro Stunde.


13 Tricks um den Android Akku zu schonen für eine bessere Batterie-Laufzeit

Die Akkulaufzeiten bei Smartphones sind ein Rückschritt. Das gute alte Nokia 3210 hielt locker 5 Tage durch, heute ist man schon froh, wenn das Handy einen Tag schafft. Der große technische Durchbruch für bessere Akkus scheint nicht unmittelbar bevorzustehen, also mußte ich mir selbst helfen. Alle Tricks die ich hier beschreibe sind sicherlich nicht der Königsweg um das Problem zu lösen. Da Stromsparen auch immer einen Komfortverlust bedeutet, muß man individuell entscheiden, welche Maßnahmen sich lohnen und welche nerven.

Um wirklich alle Möglichkeiten des Akkuschonens auszureizen, kommt man leider nicht darum herum, sein Telefon zu rooten oder ein Custom ROM einzuspielen, da viele Einstellungen auf einem "normalen" Androiden gar nicht erst vom Benutzer verändert werden können.

1. Der Akku

Die von der Herstellern mitgelieferten Akkus sind zwar meistens gut und genau auf das entsprechende Device abgestimmt, aber besonders bei preiswerten Geräten wird hier auch gespart. Die Leistung eines Akkus ist so gut wie immer auf dem Akku selbst in Milliamperestunden (mAh) aufgedruckt. Mit einer Suche bei Amazon findet man in der Regel Ersatzakkus für jedes Gerät. Stärkere Akkus für die Geräte sind meist größer als das Originalzubehör, so dass man eine spezielle neue Abdeckhaube für das Handy benötigt. Diese Haube liegt den Akkus bei, macht das Gerät aber dicker, damit der größere Akku Platz findet. Für viele nicht die ideale Lösung, aber eine zuverlässige Möglichkeit, auf jeden Fall eine höhere Laufleistung zu erreichen.

2. CPU-Taktung

Ein großer Verbraucher neben dem Bildschirm ist die CPU bei Smartphones. Hier fallen besonders Apps und Services ins Gewicht, die im Hintergrund arbeiten und die CPU belasten, gerade wenn das Smartphone im Standby ist und eigentlich gar nicht vom Benutzer gebraucht wird. Man wundert sich am dann Abend, dass das Gerät schon wieder fast leer ist, obwohl man es gar nicht benutzt hat. Die Prozesse im Hintergrund haben den ganzen Tag irgendetwas getan und den Akku so leergesaugt.

Die Beste Möglichkeit um das Problem zu beheben wäre natürlich die Prozesse zu bändigen. Mit einer dynmaischen CPU-Taktung kann man den Verbrauch aber zumindest deckeln, wenn das Gerät im Standby ist.

Die Geschwindigkeit mit der eine CPU maximal rechnen darf, kann in fast allen Smartphones geregelt werden. Normalerweise macht das System dies selbst - je nach voreingestellter Herstellerkonfiguration. Diese kann akkuschonend oder sehr belastend sein. Als Benutzer hat man jedoch bei einem gerooteten Gerät die Möglichkeit, das Verhalten selbst zu steuern. Zum Beispiel mit der App "CPU Tuner" . Hier kann man eine Regel erstellen, die bewirkt, dass der Prozessor bei ausgeschaltetem Bildschirm auf Minimalleistung heruntertaktet und beim Einschalten des Bildschirms wieder auf maximale Leistung taktet. So können wildgelaufene Prozesse nur noch mit geringer Geschwindigkeit am Akku nagen. Das ist jedoch bestenfalls ein Notnagel. Besser ist es, zu wissen welche Prozesse auf dem Telefon laufen müssen und die restlichen zu deaktivieren. Ein übler Nachteil diser Methode ist es, dass das Telefon nach dem Aktivieren des Screens nicht sofort schnell reagiert. Besonders wenn man auf ein schnelles Interface und auf die sofortige Annahme von eingehenden Gesprächen wert legt, ist eine zu niedrige CPU-Taktung im Standy ein No-Go.

3. Laufende Programme und Dienste

Eindeutig das Hauptproblem für eine schlechte Laufleistung sind im Hintergrund laufende Dienste und Apps. Leider hat die Offenheit von Android das System in eine ähnliche Lage gebracht wie damals Windows XP. Applikationen dürfen sich nach Belieben selbst starten zu den unterschiedlichsten Gelegenheiten. Dies kann durch "nicht root" Benutzer nicht konfiguriert werden. Die einzige Möglichkeit die Apps daran zu hindern ist, sie zu deinstallieren.

Oft wird versucht dem Problem mit "Taskkillern" Herr zu werden. Diese beenden alle oder ausgewählte laufende Apps. Da Apps und Dienste jedoch selbst neu starten können, helfen "Taskkiller" nicht. Im Gegenteil. Durch den CPU-intensiven Neustart nach dem Beenden durch den Taskkiller saugen sie noch einmal zusätzlich am Akku und verschlimmern das Problem.

Dazu kommt das Problem von laufenden Systemdiensten. Besonders bei gebrandeten Herstellertelefonen werden häufig zusätzlich zum offiziellen Android aus dem AOSP Dienste installiert. Zum Beispiel für den Musikshop des Herstellers, Herstellerdienste für Social Networks und viele weitre Anpassungen, die man unter Umständen gar nicht braucht, die sich aber ungeniert am Akku bedienen.

4. Unnötige Apps entfernen

Da man meistens gar nicht weiss, welche Dinge so im Hintergrund laufen, sollte man dies zuerst untersuchen. Ich habe das mit der App "System Panel" getan. Sie bietet einen Historymodus, der konstant protokolliert, welche App wie viel CPU-Leistung benötigt. Hier sollte man nach 2-3 Tagen aussagekräftige Ergebnisse finden. Auf meinem bereits optimierten Telefon sieht es so aus: Nun ist man in Besitz einer Liste von allen Apps und Services, die in den letzten Tagen Strom verbraucht haben. Vielleicht findet man hier bereits normale Apps, die man gar nicht benötigt. Diese kann man jetzt mit Android-Bordmitteln deinstallieren.

5. Unnötige Dienste entfernen

Schwieriger wird es mit den Systemdiensten. diese sind über das normale Deinstallationsinterface nicht erreichbar und es kann zu Problemen kommen, wenn man die falschen Dienste entfernt. Zusätzlich sind manche Dienste auch noch kryptisch benannt, so dass man nicht sicher sein kann, wofür ein Dienst überhaupt zuständig ist. Hier muß man leider selbst recherchieren. Ein guter Anlaufpunkt ist das XDA-Forum. Hier findet sich zu fast jedem Handymodell ein Thread, der die Dienste näher beschreibt und nach Nutzererfahrungen mitteilt, welche gefahrlos deaktiviert werden können.

Hat man die überflüssigen Dienste (es sind lediglich einzelne Dateien im Dateisystem des Smartphones) mit einem Dateisystem-Filemanager wie zum Beispiel Root Explorer entfernt, hat man schon eine Menge für den Akku getan.

6. Autostart von Apps verhindern

Nun hat man zwar die Anzahl der Installierten Apps und Prozesse reduzuiert, aber sie können sich nach wie vor selbst starten. Man sollte also die Autostarts für alle Apps die im Protokoll aufgetaucht sind, die aber nicht ständig laufen müssen, deaktivieren. Das geht (leider recht unkomfortabel) mit dem "Gemini App Manager"

Jede App kann sich bei Android an Trigger hängen um einen Autostart auszulösen. Zum Beispiel "starte App, wenn WLAN eingeschaltet wird". Leider müssen alle diese Trigger von Hand per App deaktiviert werden. Das kann bei vielen Apps einige Zeit in Anspruch nehmen. Danach starten die Apps jedoch nur noch, wenn man sie selbst aufruft.

7. Besseres Taskkillen mit Autokiller

Android verwaltet die laufenden und zu killenden Apps selbst. Für diesen Zweck sind im System Grenzwerte festgelegt. (Wenn nicht genügend freier Speicher frei ist, kille nicht benötigte Apps). Der Android "Autokiller" funktioniert sehr gut und tötet intelligent Apps, die schon lange nicht mehr benötigt wurden. Allerdings sind die Standardwerte meistens sehr großzügig eingestellt. Es wird kauf freier Speicher vorgehalten. Das System ist langsam in der Benutzung, da erst aufgeräumt wird, wenn der Nutzer aktiv Speicher benötigt (zum Beispiel beim starten einer App). Dieses Caching Verhalten kann mit dem Tool Autokiller angepasst werden. Es gilt Einstellungen zu finden, die das System schnell machen, aber trotzdem die benötigten Apps leben lassen. Hier spart man Akku und gewinnt gleichzeitig Geschwindigkeit.

8. Aktivierte Hardware

Hier fallen besonders WLAN, GPS und Bluetooth ins Gewicht. Man sollte diese Dienste entweder mit Disziplin selbst deaktivieren, wenn sie nicht benötigt werden oder besser ihre Einstellungen automatisieren. Dazu mehr am Ende dieses Artikels.

9. Genutzte Mobilfunktechnik

Normalerweise befinden sich Smartphones im UMTS-Modus, wenn er verfügbar ist, da dieser schnelleres Internet ermöglicht. Allerdings verbraucht er auch mehr Akku, als der alte GSM-Modus. Die Modi dauernd per Hand zu switchen ist möglich, aber nervig. Auch hier ist eine Automatisierung die bessere Wahl. GSM im Standby erhöht die Akkulaufzeit enorm.

10. Datenverkehr

Viele Smartphones sind ständig online. Jeder Datenverkehr verbraucht Akku. Falls man das Internet nur benötigt, wenn man das Smartphone aktiv benutzt, kann man manuell oder automatisiert das Internet ausschalten. Möchte oder muß man immer online sein, kann man zumindest mit einer Firewall wie Droidwall einzelnen Apps verbieten online zu gehen. Viele gratis Spiele funken den ganzen Tag nach Hause und sollten schon aus Datenschutzgründen daran gehindert werden.

Zusätzlich kann man das Nachladen von Werbung mit einem Adblocker wie Adfree unterbinden.

11. Bildschirmhelligkeit

Der Bildschirm ist der größte Verbraucher, wenn das Gerät aktiv genutzt wird. Hier sollte man mit der Helligkeitseinstellung experimientieren und einen Wert finden, mit dem man dauerhaft leben kann. Ich habe meine Helligkeit auf ca 50% des Maximums heruntergeregelt und hatte nach Gewöhnung keinen Komfortverlust.

12. Vibrationen

Vibrationen sind einzeln nicht tragisch, aber können in Summe auch am Akku nagen. Generell sollte man zu viele Benachrichtungen mit Vibration vermeiden.

13. Automatisierung

Nun ist es an der Zeit das Smartphone ein wenig smarter zu machen. Dienste sollten sich von selbst abschalten, wenn sie nicht mehr benötigt werden. Falls man WIFI, GPS, Bluetooth, etc. nicht manuell dauernd an- und ausschalten möchte empfiehlt sich eine Automatisierungsapp.

Sehr gut geeignet ist hier Llama. Hier kann man selbst Regeln vergeben. Unten im Bild sieht man meine Regel für einen Bildschirm, der gerade ausgeschaltet wurde. Man kann sehr individuell die Stromfresser nach eigenem Gusto in die Schranken weisen. In Verbindung mit Secure Settings wird Llama noch mächtiger. Secure Settings kann manche Einstellungen regeln, auf die LLama nicht zugreifen kann.




Mein SONY Experia Mini Pro sk17i (mango)  schafft inzwischen statt knapp einem Tag eine Laufzeit von 2.5 bis 3 Tagen.

(Kamarush Kernel, MiniCMSandwich Lite AOSP ROM, Android 4.0, Sony Ericsson EP500 Akku CBA-0002027 1160mAh)