Tworzenie aplikacji na Androida w języku Kotlin

O Kotlinie

Idąc za definicją z Wikipedii, Kotlin to statycznie typowany język programowania działający na maszynie wirtualnej Javy (JVM) i zaprojektowany z myślą o pełnej interoperacyjności z językiem Java. Dla nas oznacza to przede wszystkim tyle, że możemy użyć Kotlina wszędzie tam, gdzie dotychczas króluje Java, a to otwiera całkiem dużo możliwości, wliczając tworzenie aplikacji na system Android.
Kotlin jest stosunkowo nowym i ciągle intensywnie rozwijanym językiem – ukazał się w 2011, ale wersja 1.0 jest dostępna dopiero od lutego 2016. Za stworzenie i rozwój Kotlina odpowiada firma JetBrains – twórcy m.in IntellIJ IDE – środowiska, na którym oparte jest Android Studio.

Czytaj dalej

Wi-Fi Direct

Każdy spotkał się z technologią Wi-Fi. Wielu z nas korzysta z niej na co dzień — zazwyczaj w celu uzyskania dostępu do Internetu. Nie zawsze jednak potrzebny jest nam Internet, aby wykonać określoną czynność. Czasem chcemy po prostu połączyć się z innym urządzeniem i przesłać jakieś dane — wysłać plik, wyświetlić coś na telewizorze Smart TV, zagrać w grę z lokalnym multiplayerem, podesłać dokument do druku w drukarce bezprzewodowej.

Podłączanie routera i konfigurowanie sieci nie jest zbyt poręczne i nie zawsze jest możliwe. Na myśl przychodzi technologia Bluetooth, jednak korzystając z niej, ograniczeni jesteśmy do powolnych połączeń i bardzo małego zasięgu.

Na szczęście istnieje alternatywna technologia do użycia właśnie w takich przypadkach. Jest nią Wi-Fi Direct.

Czytaj dalej

Integracja systemu Android z Facebook-iem

Wprowadzenie

W dzisiejszych czasach największą popularnością wśród społeczeństwa cieszą się media społecznościowe, skupiając w jednym miejscu bardzo wielu użytkowników. Najpopularniejsze platformy, jakie możemy aktualnie znaleźć na rynku, to przede wszystkim Facebook, Twitter, LinkedIn, Instagram. Jako, że są to serwisy, które udostępniają użytkownikom cały wachlarz funkcjonalności, są bezkonkurencyjne wśród innych aplikacji. Jedną z ich zalet jest to, że udostępniają możliwość integracji z innymi aplikacjami, poprzez udostępnianie danych użytkowników. Oczywiście, każdy z tych portali bardzo chroni i zapewnia pełne bezpieczeństwo swoim użytkownikom. Jednak każdy z klientów portali społecznościowych, ma możliwość nadania uprawnienia innym aplikacjom, do pobierania swoich danych, do uwierzytelniania.

Wraz z popularyzacją platformy Android na urządzenia mobilne, a tym samym ze wzrostem komercyjnych aplikacji dostępnych na te urządzenia, integracja tych systemów z dostępnymi na rynku portalami społecznościowymi staje się bardzo ważną funkcjonalnością, udostępnianą dla użytkownika. Klienta interesuje przede wszystkim scentralizowanie swoich kont, a nie ich rozdrobnienie. Użytkownik chce dzielić się swoimi osiągnięciami, w aplikacjach sportowych, grach z innymi użytkownikami. Oprócz możliwości integracji z wyżej wymienionymi mediami społecznościowymi, mamy również możliwość łączenia naszych kont, między innymi z Dropbox-em, Paypal-em, Google+.

Czytaj dalej

JQuery Mobile

Czym jest jQuery Mobile?

JQuery Mobile to framework stworzony przez zespół projektowy jQuery, który jest intensywnie rozwijany od 2010 roku. Rozpowszechniany na licencji open source. JQuery Mobile jest biblioteką, która wywodzi się od popularnej biblioteki JavaScript jQuery i służy do projektowania mobilnych aplikacji internetowych, które działają na różnych urządzeniach. Biblioteka ta pozwala w szybki sposób stworzyć aplikację webową, która wygląda podobnie i działa tak samo na różnych urządzeniach. Pod względem implementacji kodu bardzo przypomina jQuery UI, jednak jQuery Mobile koncentruje się na urządzeniach mobilnych, dzięki temu ma o wiele szersze zastosowanie. W jQuery Mobile wykorzystuje się własności HTML5 oraz CSS3, zmodyfikowane znaczniki pozwalają na uzyskanie spójnego efektu na wielu platformach mobilnych.
Czytaj dalej

Optymalizacja i zaciemnianie kodu w Androidzie

WSTĘP

Platforma Androida w ciągu ostatnich 10 lat niewiarygodnie się rozwinęła. W Internecie znajduje się tysiące tutoriali i poradników jak stworzyć aplikację, a entuzjastów Androida każdego dnia przybywa.

Jednak jest pewna dziedzina tej platformy, która mimo tak prężnego rozwoju, jest bardzo zaniedbana – mianowicie zabezpieczenie kodu przed hakerami. O ile przy implementacji drobnych gier internetowych, nic poważnego się nie stanie jak ktoś pozna kod takiej aplikacji, to przy aplikacjach związanych z płatnościami bankowymi lub z ochroną telefonu przed wirusami, sprawa jest poważniejsza. Znajomość kodu może bardzo wspomóc potencjalnych hakerów w znalezieniu luk bezpieczeństwa, a zdekompilowanie pliku .apk z powrotem do źródeł w javie nie jest żadnym problemem, można bez problemu znaleźć w Internecie instrukcje do tego. Wydawałoby się że zaciemnienie kodu w aplikacjach zawierających dane osobiste, jest czymś oczywistym, jednak biorąc pod uwagę badania z listopada 2015 roku, okazało się że wśród 200 najczęściej używanych aplikacji na GoogleStore,  85 % z nich może być zdekompilowane. Więcej informacji na ten temat można doczytać w tym artykule.

Warto zatem zwrócić szczególną uwagę na zaciemnienie kodu i zabezpieczenie przed niechcianymi oczami. Jest to konieczne przy aplikacjach przechowujących prywatne dane, no ale również dla innych aplikacji jest to istotne. Chyba nie chcemy aby ktoś widział kod naszej aplikacji, może to być wykorzystane na różne sposoby, niekoniecznie do ataku hakerskiego.

W tym artykule będą omówione i porównane 2 najpopularniejsze narzędzia  ProGuard i DexGuard, które służą nie tylko do zaciemnienia kodu, ale także i do jego optymalizacji.

Czytaj dalej