SmsPrice 1.0.1

0

Ponad 3 miesiące minęły od wydania pierwszej Androidowej wersji prościutkiej aplikacji SmsPrice. W dniu dzisiejszym wydaję wersję 1.0.1, która przynosi… 1 zmianę.

Zmiana ta to ustawienie nowego domyślnego motywu dla Androida 3.x – Holo, a także dla Androida 4.x i nowszych – DeviceDefault (czyli, jak nietrudno się domyślić, domyślnego systemowego motywu). Oznacza to w praktyce tyle, że od teraz SmsPrice w urządzeniach z Androidem nowszym niż 2.x będzie wyglądał bardziej natywnie; przybierze wygląd reszty aplikacji. Łatwo się również domyślić, że nie ma większego sensu instalacja aktualizacji w Androidzie z serii 2.x.

Przewiduję natomiast pewne usprawnienia w nowszych wersjach. Aplikacja mogłaby, dla przykładu, mieć swój własny widżet, dzięki czemu nie byłoby wymagane uruchamianie programu, by uzyskać informacje na temat określonego numeru. Planuję także dodanie do bazy informacji o nowych numerach telefonów.

Zapraszam więc wszystkich użytkowników Androida >= 3.0 do pobierania.

Amen.

Android i pierwsza aplikacja na niego

0

Około 2 tygodnie temu stałem się posiadaczem wynalazku zwanego smartfonem z Androidem, a dokładniej Samsunga Galaxy Ace 2. Już po tych dwóch tygodniach (wczoraj konkretnie) zainteresowałem się pisaniem aplikacji na system operacyjny z zielonym robocikiem w logo…

O samym Androidzie nie będę się zbytnio rozpisywał, bo to nie miejsce na to, jednak powiem co nieco na temat pisania na niego aplikacji. Programowanie bowiem na Androida jest wbrew pozorom bardzo wygodne. O ile na J2ME trzeba było się zazwyczaj męczyć z emulatorami, a potem ręczną instalacją aplikacji na realnym sprzęcie, o tyle w przypadku Androida życie mamy znacznie ułatwione. Wystarczy podpiąć smartfona do komputera, włączyć debugowanie USB (na Windowsie również zainstalować sterowniki…), aby móc wcisnąć „Run” w Eclipsie, a po sekundzie czy dwóch – oglądać wyniki na ekranie urządzenia. Otwieramy sobie dodatkowo okno LogCata w Eclipsie, i…? I mamy podgląd standardowego wyjścia (które jest, jak wiadomo, niezastąpione przy debugowaniu), wyrzucone, niezłapane  wyjątki, oraz inne przydatne rzeczy. Ogromny plus jeśli chodzi o tworzenie aplikacji.

Pokrótce mogę również pochwalić Eclipse’a (czy raczej plugin Android Development Tools) za znakomity edytor RAD, pozwalający w prosty sposób zaprojektować GUI nawet złożonych aplikacji, oraz samego Androida za system zarządzania zasobami aplikacji. Zarządza się nimi bowiem za pomocą plików XML – to właśnie w XML-u składowane są aktywności (odpowiedniki okien), ciągi znaków, ścieżki do obrazków i inne.

Jeśli chodzi o spostrzeżenia związane z programowaniem programów i gier na platformę Android, to póki co – tyle, albowiem w tej kwestii nie zagłębiałem się jeszcze zbytnio. Przejdźmy teraz natomiast do właściwej części wpisu, czyli do samej aplikacji…

„Cóż to za aplikacja” – zapewne zastanawiacie się. Patrząc na jej nazwę dochodzę do wniosku, że to już jest chyba tradycja, że portuję ją niemal na każdą nową platformę, na którą uczę się pisać aplikacje. Pewnie już wiecie o czym mówię. Tak, chodzi o aplikację…

SmsPrice

której pierwsza wersja została opublikowana na m4txblogu 7 lipca 2010 roku w wersji na Windowsa. 10 lipca 2011 roku został opublikowany jej port na platformę Java Platform, Micro Edition. Teraz powstał natomiast kolejny port, dodający po raz kolejny nowe „ficzery”, ponownie na platformę mobilną, tym razem na Androida.

Co zostało ulepszone? Przede wszystkim, dodałem numery 8XXX, 5XXX, oraz 6XXX. Z racji, iż numery 5XXX oraz 6XXX dotyczą SMS-ów przychodzących, dodałem wyświetlanie informacji na temat czy płaci się za SMS-y wysyłane, czy zwrotne. Zamiast starego „Za tego SMS-a zapłacisz: X.XXzł z VAT (X.XXzł bez VAT)”, jest „Cena netto: X,XXzł” i „Cena brutto: X,XXzł”, w osobnych linijkach. Nie jest już wyświetlana cena SMS-a 0,00zł; teraz po prostu jest napisane „SMS darmowy”. Dodałem przycisk usuwający wpisany numer telefonu oraz okno „O programie” (co prawda było ono w wersji Windowsowej, jednak pozbyłem się go w wersji J2ME; teraz ponownie wraca). Jeśli chodzi o porównanie nowej wersji SmsPrice’a ze starymi, to to by było na tyle. Zapraszam więc tradycyjnie do downloadu i pozdrawiam 🙂

Premiera mobilnego SmsPrice

2

Tak, tak – SmsPrice powraca. Napisany niedawno po założeniu bloga program przychodzi ponownie, tym razem w wersji mobilnej.

Ostatnio zacząłem interesować się bowiem takim językiem programowania, jakim jest Java. I co mogę powiedzieć?

Java jest językiem dosyć specyficznym. Kod źródłowy napisany w Javie jest kompilowany do kodu pośredniego, który potem może być wykonany przez wirtualną maszynę Javy. Dzięki temu faktowi, jeden plik .jar może być uruchamiany przez wiele systemów. Niesie to jednak pewną istotną wadę – programy napisane w Javie mają słabą wydajność.

Podczas, gdy C++ jest językiem proceduralno-obiektowym, Java jest silnie nastawiona na obiektowość. Oznacza to, że wszystko jest w niej uporządkowane w klasy obiektów.

Nie będę tu jednak wymieniał wszystkich zalet i wad Javy zwłaszcza, że zacząłem dopiero jej naukę, jednak stwierdzam, że jest to język, którym każdy programista powinien się zainteresować. Zapowiada się bowiem naprawdę ciekawie.

Wracając do SmsPrice’a – hm, dużo powiedzieć raczej nie muszę. Działa tak, jak jego desktopowy odpowiednik, jednak w wersji mobilnej mocno zmniejszyła się ilość kodu, a ponadto dodałem automatyczne obliczanie ceny z VATem. Dodatkowo mobilny SmsPrice ma otwarty kod źródłowy i jest udostępniany na licencji Creative Commons Uznanie autorstwa-Na tych samych warunkach 3.0 Unported License. Tak więc nie będę dalej przeciągał, zapraszam do Downloadu!

Aktualizacje!

0

GBX Thumb Extractor

Wreszcie obiecywany GBX Thumb Extractor ujrzał światło dzienne. Prawie, bo niestety potrzebuje do działania kilku „składników”. Przede wszystkim wymagany jest program jpegtran.exe, który musi znajdować się w głównym katalogu programu, a oprócz tego ścieżka do pliku wyjściowego nie może zawierać spacji. W przeciwnym wypadku wynikowy obraz będzie odwrócony w pionie. No cóż, program jednak działa poprawnie.

Przede wszystkim zdecydowałem się na użycie interfejsu identycznego, jak w przypadku Duplicate Lines Finder’a, spora część kodu pochodzi też z tego programu. Jeszcze wspomnę o tym odwracaniu w pionie – jeżeli ktoś zna jakiś sposób na to odwracanie bez użycia zewnętrznych aplikacji, w C++ oraz współpracujący z kompilatorem MinGW32 – proszę o kontakt, nawet poprzez komentarz.

No, więc kończę tu opowiadanie o GBX Thumb Extractorze, żeby znowu nie wyszło jak z Duplicate Lines Finder’em i zapodaję link do progsa:

Link do programu GBX Thumb Extractor

SmsPrice 1.1

SmsPrice doczekał się aktualizacji. Zmiany są głównie kosmetyczne, można o nich poczytać w Changelog’u, ale usunąłem też trochę denerwujący błąd, który zawiesza program. Nie będę się tu rozpisywał, bo w zasadzie nie ma o czym, zapraszam do ściągnięcia najnowszej wersji:

Link do programu SmsPrice

Duplicate Lines Finder 1.1

No tak, wydałem GBX Thumb Extractor’a, zaaktualizowałem SmsPrice, możnaby się domyślać, że aktualizacji doczeka także Duplicate Lines Finder. Zgadza się.

Tu zmian jest więcej: przede wszystkim dodałem możliwość wyboru separatora – dzięki temu, jeżeli ciągi znaków są oddzielone np. spacjami, można w takim pliku także wyeliminować duplikaty. Dodałem także statystyki, dzięki którym dokładnie widać, ile zyskano miejsca, ile w pliku było duplikatów, oraz jak długo program wykonywał swoją operację. Dodałem dymki z informacjami, co dany przycisk lub coś innego robi. Wprowadziłem ignorowanie pustych linii a także wsparcie dla Windows’owego systemu kodowania – program mógł czasami nie działać, gdyż Windows nieco inaczej koduje znak nowej linii. O reszcie zmian można przeczytać w Changelog’u, a teraz po raz trzeci i ostatni w tym wpisie zarzucam link:

Link do programu Duplicate Lines Finder

Miłego używania! 😉

Premiera programu SmsPrice

0

Dziś wydaję program SmsPrice. Program ten służy do sprawdzania ceny, jaką zapłacimy wysyłając wiadomość SMS na podany numer usługi SMS Premium. Nie jest to może zbyt skomplikowana aplikacja… No, ale może komuś się przyda. Może.

Jest to natomiast moja pierwsza aplikacja stworzona w całości w WinAPI, bez używania wizualnej funkcji tworzenia okien dialogowych. Pisanie aplikacji w całości z poziomu kodu jest dużo trudniejsze, niż przy korzystaniu np. z Visual Studio, czy wxWidgets, ale wiąże się to z kilkoma zaletami.
– Nauka programowania w WinAPI
– Większa wiedza, co się w programie znajduje
– Mniejszy rozmiar wynikowego pliku
– Mniejsze zużycie zasobów systemowych (pamięć RAM)

Link do programu SmsPrice

No, ale już koniec o SmsPrice. Zapowiadany wcześniej GBX Thumb Extractor będzie musiał niestety poczekać, aż go przerobię z Visual Studio na WinAPI. No, a to może trochę potrwać, zwłaszcza, że muszę się zająć też aktualizacjami SmsPrice. Niedługo napiszę poradnik o zmiennych w C++. Nie pozostaje wam nic innego, tylko czekać, kolejne aktualizacje na blogu już wkrótce!