Schlagwort-Archive: Android

Amdroid/CM: com.android.phone force-close nach Update

Ja, schmutzig ist praktisch – zumindest wenn es um Updates geht. Obwohl die meisten Entwickler empfehlen möglichst bei jedem Update mit einem frischen System zu beginnen versuche ich meine Daten so lange wie möglich mitzuschleifen („Dirty Flash“) – leider gibt es noch immer unzählige Apps, welche keine brauchbare Backup-Funktion bieten und auch systembasierte Lösungen wie Titanium Backup sind leider nicht unfehlbar.

Zuletzt war ich etwas nachlässig – mein Handy war noch auf Version 2, aktuell Version 9 meiner aktuellen ROM. Zeit zum Aktalisieren, vor allem da Dirty Cow gerade bekannt wurde.

Also, Sideload drüber und – narf. „Telefon reagiert nicht mehr“. Gemeint ist hierbei die Telefon-App, also jene, welche Sprachtelefonie ermöglicht. Brauch ich zwar normal nicht, aber die Popups nerven doch etwas.

Über ADB ließ sich folgendes im Log erspähen:

12-06 16:43:32.820  3708  3708 E AndroidRuntime: FATAL EXCEPTION: main
12-06 16:43:32.820  3708  3708 E AndroidRuntime: Process: com.android.phone, PID: 3708
12-06 16:43:32.820  3708  3708 E AndroidRuntime: java.lang.IllegalArgumentException: column 'user_network_mode' does not exist
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at android.database.AbstractCursor.getColumnIndexOrThrow(AbstractCursor.java:333)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at android.database.CursorWrapper.getColumnIndexOrThrow(CursorWrapper.java:87)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at com.android.internal.telephony.SubscriptionController.getSubInfoRecord(SubscriptionController.java:293)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at com.android.internal.telephony.SubscriptionController.getSubInfoUsingSlotIdWithCheck(SubscriptionController.java:1631)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at com.android.internal.telephony.SubscriptionInfoUpdater.updateSubscriptionInfoByIccId(SubscriptionInfoUpdater.java:593)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at com.android.internal.telephony.SubscriptionInfoUpdater.handleSimLoaded(SubscriptionInfoUpdater.java:421)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at com.android.internal.telephony.SubscriptionInfoUpdater.handleMessage(SubscriptionInfoUpdater.java:338)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:102)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:154)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:6140)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:888)
12-06 16:43:32.820  3708  3708 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:778)

Dankenswerterweise gibt es einen passenden Post von Daan, welcher die Ursache genau beschreibt und einen passenden Befehl zum zurücksetzen der defekten Datenbank anbietet. Hierbei gehen ggf. Einstellungen verloren, diese muss man ggf. später von seiner Datensicherung wieder einspielen.

adb shell
su -
rm -rf /data/user_de/0/com.android.providers.telephony/databases/telephony.*

Nach dem Befehl war dann Ruhe und sogar das telefonieren funktioniert wieder. Fein.

BitBastelei #207 – Vufine Datenbrille & Mobile Computing

BitBastelei #207 - Vufine Datenbrille & Mobile Computing

(60 MB) 00:13:05

2016-08-07 10:00 🛈

Die Vufine ist eine kleine „Datenbrille“, welche ein Bild im Sichtfeld des Trägers anzeigen kann. Im Gegensatz zu den meisten Konkurrenten besitzt sie jedoch ausschließlich eine Anzeigeeinheit und keine eigenen Sensoren, Kameras oder Computersysteme.

Werfen wir einen Blick auf die Datenbrille und vergleichen einige HDMI-fähigen Kleinstcomputer auf ihre Eignung für die Mobilbetrieb.

—snip—

Wie man vermutlich durch die Bildfehler und das etwas mitgenommene Shirt sehen kann ist das Video gleichzeitig Testfeld für meine Videotechnik – die Funktionen des Videoeditors sind beim Motion-Tracking offenbar noch nicht ganz ausgereift…

OnePlusOne / TWRP / Android 6.0.x: Entschlüsseln nicht möglich

…und nur noch schnell ein Backup machen – oder auch nicht. Während der Erstellung eines Handy-Backups über TWRP auf meinem OPO konnte ich plötzlich den verschlüsselten Datenbereich nicht mehr freischalten. Zuletzt nutzte ich diese Funktion unter Android 5, entsprechend dürfte wohl Marshmallow der Verursacher sein.

Bei der Verschlüsselung wird beim OPO eine Funktion des Prozessors genutzt. Die hierzu verwendete API wurde offenbar in CM13 geändert, sodass TWRP an dieser Stelle in’s leere greift. Im passenden Bug-Report wurde das Problem bereits ausführlich behandelt, ein Patch für die Version 3.0.3 angekündigt – welche weiterhin auf sich warten lässt. Für die Übergangszeit hat AtAM1 ein passendes Image bereitgestellt. Mit dem konnte dann auch die Recovery an die Daten ran und ein Backup erstellen. Fein.

BitNotice #93 – Korrektur: Seek Thermal: Bild ausrichten

BitNotice #93 - Korrektur: Seek Thermal: Bild ausrichten

(8 MB) 00:01:42

2015-07-18 16:42 🛈

Kurze Korrektur zu BitBastelei #157 – Seek Thermal Imager – Wärmebildkamera für’s Smartphone – entgegen meiner Aussage lassen sich die Bildpositionen von Handykamera und Wärmebild doch kalibrieren.

BitBastelei #111 – OwnCloud – Installation für Linux & Android

BitBastelei #111 - OwnCloud - Installation für Linux & Android

(24 MB) 00:26:06

2014-08-24 10:00 🛈

Die Cloud ist praktisch – alle Daten auf allen Geräten immer greifbar – doch möchte man „sein Leben“ wirklich Firmen anvertrauen, die ihr Geld mit dem Verkauf von Daten machen? Mit Owncloud könnt ihr das Ruder selbst in die Hand nehmen: Dateien, Kontakte, Kalender u.v.m über den eigenen Server überall synchron.

Gezeigt wird:
00:12 Einführung
01:25 Installation auf einem Server
05:28 Die Owncloud WebApp
10:19 [Linux] Dateizugriff Part 1: WebDAV (online-Zugriff)
11:08 [Linux] Termine mit Thunderbird/Lightning
12:48 [Linux] Kontakte mit Thunderbird/Sogo Connector (http://www.sogo.nu/downloads/frontends.html)
15:41 [Linux] Dateizugriff Part 2: Miral/OwnCloud-Client (syncronisation)
18:48 [Android] Dateien mit OwnCloud (https://play.google.com/store/apps/details?id=com.owncloud.android – 0,79€ + https://play.google.com/store/apps/details?id=com.owncloud.android.workaround.accounts)
20:18 [Android] Kalender mit CalDAV-Sync (https://play.google.com/store/apps/details?id=org.dmfs.caldav.lib – 2,59€ + https://play.google.com/store/apps/details?id=org.dmfs.jb.workaround.caldavsync)
22:27 [Android] Kontakte mit CardDAV-Sync (https://play.google.com/store/apps/details?id=org.dmfs.carddav.sync )
24:06 Audblick & Fazit

Weitere Links:
Owncloud: http://owncloud.org/
Aufgabenverwaltung: https://play.google.com/store/apps/details?id=org.dmfs.tasks

BitNotice #24 – Android Developer Tools (ADT) einrichten

BitNotice #24 - Android Developer Tools (ADT) einrichten

(3 MB) 00:03:04

2014-04-24 10:00 🛈

Android-Handy zur Hand? Keine App da, die dein Problem vernünftig löst? Warum nicht selber etwas basteln? Mit den kostenlosen „Android Developer Tools“ lassen sich relativ einfach eigene Apps entwickeln. In dieser Folge wird erklärt wo man die nötige Software findet und wie man sie unter Linux installiert.

Anm: Unter Windows ist das Vorgehen nahezu identisch.

Links:
http://developer.android.com/

./adb: No such file or directory

Da Eclipse/Java auf all meinen Produktivsystemen – mal wieder – nur am abstürzen ist sollte es „mal schnell“ eine VM richten. Leider gab es bei der Installation der Android Developer Tools den o.g. Fehler. Etwas seltsam, denn die Datei ist vorhanden und lässt sich auch mit less & co lesen. Auch ldd ist keine große Hilfe – statisch gelinkt.

Lösung ist aber in der selben Richtung: Tatsächlich müssen die 32-Bit-Libraries installiert sein. Für Debian/Ubuntu/Mint hilft ein

sudo apt-get install ia32-libs

BitNotice #16 – XMPP statt WhatsApp unter Android

BitNotice #16 - XMPP statt WhatsApp unter Android

(23 MB) 00:17:15

2014-02-27 21:45 🛈

Schon in meiner Ranttime hatte ich erwähnt, dass XMPP (Jabber) als freies und dezentrales Protokoll aus technischer Sicht wesentlich abhörsicherer, leistungsfähiger und ausfallsicherer als andere Messenger sind – doch wie sieht es in der Praxis aus.

Hinweise:
=========

– Vergessen zu erwähnen: In der Verschlüsselungsbranche hat sich das Konzept etabliert, dass ein sicherer Algorithmus offen vorliegt sodass unabhängige Prüfer die Funktionalität des Systems sicher stellen können – die Sicherheit soll im Passwort stecken und nicht darauf beruhen, dass schon keiner herausfinden wird wie der Algorithmus funktioniert.

Links zum Video:
================

Öffentliche XMPP-Server:
————————

http://www.jabber.de/register/
https://web.jabber.ccc.de/
https://xmpp.net/directory.php

Xabber XMPP-Client
——————

http://www.xabber.org/
https://play.google.com/store/apps/details?id=com.xabber.android
https://github.com/redsolution/xabber-android

ChatSecure XMPP-Client
———————-

https://chatsecure.org/
https://play.google.com/store/apps/details?id=info.guardianproject.otr.app.im&hl=en
https://github.com/guardianproject/ChatSecureAndroid