Category: Development Tips

Android BLE

Unpacking BLE frames in a readable way.

Ever wondered why does unpacking Bluetooth data you receive is so much work compared to automatic unpacking done by Retrofit via GSon/etc? This is caused because BLE data is usually very tightly packed and data format varies greatly between devices. Some devices can send Int values as one/two/three/four bytes, sometimes they are big-endian, sometimes little-endian. […]

Android RxJava Tips Tricks

RxJava

Do you want to make sure that your Rx Java Disposables are disposed from the viewModel when they are no longer needed?

Pure Rx Java solution Create CompositeDisposable as field Register all your Disposables via its add method. When you don’t need to receive more updates call clear: public class RxLifecycleViewModel extends ViewModel { private final CompositeDisposable disposables = new CompositeDisposable(); public void onAttach(final ViewInterface view) { disposables.add(Observable.interval(1, TimeUnit.SECONDS) .subscribe(aLong -> { view.updateText(aLong); })); } public void […]

Kotlin

Tips – clean code & less boilerplate

A few tips on how to keep the code clean and testable 1. Don't want to have Android dependencies in viewModel, but still want it to handle clicks? Create an onClick BindingAdapter that does not pass View, or use one from SecretSauce library. 2. Do you want to auto refresh your data in view by [...]

Development Tips Materiały Android

10 najlepszych urządzeń dla programistów Androida

Często na szkoleniach z Androida dostaję pytanie: Jakie urządzenia z Androidem warto kupić, aby móc testować napisane przez siebie aplikacje. Prawidłowa odpowiedź brzmi: to zależy. Istnieje wiele czynników, które wpływają na zawartość takiej listy np. grupa docelowa użytkowników, wymagania sprzętowe aplikacji (NFC, Bluetooth 4.0), budżet na sprzęt. Postanowiłem jednak sporządzić listę zakupów dla osób, które […]

Android Course Development Tips Materiały Android

Te amerykańskie uniwersytety nauczą Cię Androida. Za darmo!

Podawałem już wiele źródeł, gdzie można podszkolić się z Androida. W internecie pełno jest tutoriali i kursów na ten temat. Większość tych lepszych jest płatna, choć zdarzają się chlubne wyjątki. W zeszłym roku natrafiłem na kompletny kurs Androida na platformie Coursera, który na pierwszy rzut oka był płatny $49. Gdy wczytałem się w warunki, okazało […]

Development Tips

Tips: Jak włączyć logowanie zapytań w ORMLite

ORMLite to świetne narzędzie do mapowania obiektowo-relacyjnego, ale czasem przydałoby się widzieć, na jakie zapytania mapują się nasze akcje. Domyślnie ORMLite loguje niewiele: I/TableUtils( 254): creating table ‘simpledata’ I/TableUtils( 254): creating index ‘simpledata_string_idx’ for table ‘simpledata I/TableUtils( 254): executed create table statement changed 1 rows: CREATE TABLE `simpledata` (`date` VARCHAR, `id` INTEGER PRIMARY KEY AUTOINCREMENT […]