Android/Apps
F-Droid
F-Droid is an installable catalogue of FOSS (Free and Open Source Software) applications for the Android platform. The .apk can be downloaded from their website and has to be installed - of course we have to enable Security → Unknown sources to get the .apk installed.
However, F-Droid is not a system app[1] and every time we want to install an application from the F-Droid store we would have to enable the Unknown sources checkbox again. We have to install F-Droid as a system app [2] to keep this unchecked.
Download F-Droid:
wget https://f-droid.org/FDroid.apk
Use adb to install the package on the phone:
adb push FDroid.apk /mnt/sdcard/ adb shell su mount -o remount,rw /system cp -i /mnt/sdcard/FDroid.apk /system/app/ # Use /system/priv-app/ for Android 4.4 and later chmod 0644 /system/app/FDroid.apk mount -o remount,ro /system
Reboot the phone, F-Droid should now be a system app.
OpenVPN
The OpenVPN Installer failed to install the OpenVPN binary on this Nexus 4 device, so we had to do this manually.
Fetch the package to a local machine:
adb pull /data/app/de.schaeuffelhut.android.openvpn.installer-1.apk unzip de.schaeuffelhut.android.openvpn.installer-1.apk assets/openvpn-2.1.1-static-busyboxinxbin adb push assets/openvpn-2.1.1-static-busyboxinxbin /mnt/sdcard/openvpn
On the device again, as root:
# mount | grep /system
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
# mount -o remount,rw /system
# mv /mnt/sdcard/openvpn /system/xbin/openvpn
Remount readonly again:
# mount -o remount,ro /system # mount | grep /system /dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
Note: As OpenVPN Installer still would not get the VPN going (and not providing any error messages) I went with OpenVPN Connect after all.
See also:
Rerware Backup
Rerware Backup expects its backups[3] in the following directory structure:
/mnt/sdcard/rerware/MyBackup/
The first part can be configured, the last part seems to be hardcoded.
SD Rescan
With Android 4.4, rescanning the SD card for new/changed files[4] does not work anymore[5], because the "MEDIA_MOUNTED" broadcast intent has been restricted to system applications[6]
This means that apps like Rescan Media won't work on Android 4.4. Use SD Scanner instead.
VoIP
The native SIP client[7] is a very basic SIP client and tends to have echo issues[8][9] too.
For that reason we're using csipsimple to make internet calls:
- In Settings, select Media and enable Echo cancellation (if not already enabled)
- To set a trunk prefix (e.g. "use 0 to dial out") select Modify Account and choose Filters. In here, add two rules:
- Starts with 0 → Prefix by 0
- Starts with + → Replace match by 000. Adjust the last 2 zeros with the calling code of your country.
References
- ↑ Android System App 101
- ↑ Installing F-Droid as a system-app
- ↑ MyBackup Pro not recognizing the folder I saved everything to!
- ↑ Can I trigger a media scan via the the command line?
- ↑ Android 4.4 Kitkat Emulator : Dev tools getting STOPPED when SD card is scanned using Media Provider->Scan SD CARD
- ↑ How do I refresh/rescan the SD memory in Android 4.4 KitKat
- ↑ Place an Internet call
- ↑ Loud echo with native SIP on Nexus 5 / Android 4.4
- ↑ Loud echo with SIP client in Nexus 4