SMS arhiválás Androidról
Több évvel ezelőtt az akkori telefonom adta lehetőségek kapcsán merült fel bennem, hogy készíteni kéne egy olyan alkalmazást, ami képes a beérkezett és elküldött sms üzeneteket arhíválási célzattal tárolni és kereshetővé tenni.
Ennek megoldására született akkor egy C#-ban implementált WinForms alkalmazás, mely képes volt a Nokia PC Suite által létrehozott szöveges fájlokat egy MS SQL adatbázisba importálni, majd név, telefonszám és dátum alapján listázhatóvá tenni. Ezt követően idő hiányában létrejött egy "nyomtatási kép importáló" funkció, ami az időközben beszerzett Samsung telefonomról volt képes az üzenetek importálására. Könnyen látható, hogy egyik megoldás sem biztos, hogy igazán kényelmes, különösen az utóbbi, mely még korrekt megoldásnak sem nevezhető igazán (ellenben a célnak megfelelt, működött), ráadásul az egyre elterjedtebbé és divatosabbá is váló okostelefonok képességeit sem használja ki.
Ezt követően 2011 decemberében karácsonyi lazításként elkezdtem foglalkozni a frissen beszerzett Android operációs rendszerű telefonomhoz egy hasonló megoldáson. Bár az Android Market-ben találtam hasonló alkalmazást, különböző okokból kifolyólag mégis inkább a saját készítése mellett döntöttem.
A tervezés során fontos szempont volt az okostelefon nyújtotta lehetőségek minél mélyebb kihasználnása és hogy a megszületendő alkalmazás a későbbiek során akár másokszámára is hasznos lehessen, így az elődjénél meglévő túlzott fapadossággal is szakítani kívántam. Ennek eredményeként a tárolt sms üzenetek megjelenítésére egy Google Web Toolkit (GWT) segítségével, Java-ban elkészítendő webalkalamzást választottam.
A megvalósítandó Android klies feladata csupán a telefonon lévő üzenetek kiszolgálóoldalnak történő elküldése, helyi biztonsági másolat készítése (általánosan is használt formátumban, pl UTF-8 CSV), majd az eredeti üzenetek törlése kell legyen, egy minimális funkcionalitást biztosító felhasználói felület mellett.
Az Android alkalmazás elkészült, azonban a webes felület jelen pillanatban még nem rendelkezik a megfelelő szűrési képességekkel.
Az alábbi képen az elkészült Android kliens képe látható.