W Internecie pełno jest porad, zaleceń i porównań dotyczących mobilnych systemów operacyjnych. Wśród wszystkich systemów liczą się naprawdę tylko dwa i złośliwi twierdzą, że między nimi jest wybór, jak między dżumą i cholerą. Zobaczmy, czy mają rację.

Z jednej strony działający tylko ze sobą system zamknięty, w którym bardzo proste czynności, znane od lat, są niemożliwe do wykonania bez łamania zabezpieczeń (współdzielenie plików lub synchronizacja z pecetem via Bluetooth), przygotowanie firmowej aplikacji jest równie kłopotliwe, co trudne, a czas działania na jednym ładowaniu akumulatora rzadko przekracza dobę intensywnej pracy. W samym systemie były, są i będą luki w bezpieczeństwie oraz prawdopodobne tylne drzwi dla producenta i być może agencji rządowych. Z drugiej strony barykady jest system, w którym bardzo dużo wolno, firmowe oprogramowanie pisze się całkiem sprawnie, da się zainstalować praktycznie każdą aplikację, ale bardzo wiele z nich zawiera malware, a w samym systemie były, są i będą luki w bezpieczeństwie (łatane albo nie), a także przypuszczalnie tylne drzwi dla producenta i być może agencji rządowych. Bezpieczeństwo obu systemów pozostawia wiele do życzenia, ten drugi jest pod tym względem znacznie gorszy przy domyślnych ustawieniach. Z kolei inne systemy nie spełniają wręcz podstawowych moich potrzeb. Ergo – idealny dla mnie system mobilny nie istnieje.

Jaki zatem powinien być „przynajmniej dobry” system mobilny? Co powinien mieć?

Prawdziwy multitasking

Obsługę wielu pracujących równocześnie aplikacji, przy czym pod pojęciem pracy rozumiem nie tylko aplikację uruchomioną z osobnym procesem serwisowym ale normalną pracę w tle. Po to, by w trakcie rozmowy można było uruchomić notatnik, zapisać coś, uruchomić arkusz kalkulacyjny i przełączać się między tymi aplikacjami.
Najbliższy ideałowi – Symbian OS, Windows Mobile 2003 – oba te systemy miały pełny multitasking, o ile starczyło pamięci RAM. Obecnie tak działa Android (włącznie z podziałem okien w Samsungach) i być może kiedyś ten stan osiągnie iOS.

Stabilność

Najważniejsze składniki systemu muszą być napisane w solidny sposób by system nie wymagał częstych restartów. Dotyczy to nie tylko aplikacji usługowych (telefon, kontakty), ale także interfejsu użytkownika i połączeń sieciowych (Bluetooth, Wi-Fi, EDGE/3G/LTE). System operacyjny telefonu nie ma prawa załamywać się po kilkudniowej eksploatacji z włączonym 3G/LTE, nie powinna mu „wypadać” obsługa Bluetooth ani innych urządzeń peryferyjnych.
Najbliższy ideałowi – BlackBerry OS. W porównaniu do dzisiejszych systemów był stabilny jak skała.

Sprawna obsługa poczty elektronicznej

To jest standard, ale który z dzisiejszych systemów potrafi uruchomić wyszukiwanie na serwerze? Który umie automatycznie odpytać firmową książkę adresową i uzupełnić adresy? Który z nich umie automatycznie reformatować wiadomość e-mail do czystego tekstu, gdy wykryje powolne połączenie internetowe? Który potrafi wyświetlić wiadomość bez pobierania całego załącznika? Który przy tym pozwala na edycję cytowanej wiadomości, by wyciąć długiego „węża” kolejnych odpowiedzi?
Najbliższy ideałowi – BlackBerry OS oraz programowy klient BlackBerry w telefonach Nokia 9300 (wada – brak edycji cytowanego tekstu). Częściowo klient Exchange w Nokiach z Symbianem S60v3.

Możliwość dostosowania interfejsu

Od kolejności ikonek w menu aplikacji, przez ich położenie w folderach, aż po przypisanie opcji do przycisków. To wszystko chcę dostosować, by telefon działał dokładnie tak, jak ja chcę.
Najbliższy ideałowi – (praktycznie ideał) Symbian OS. Na drugim miejscu Android, ale BlackBerry mi też odpowiadało, bo opcje były tam, gdzie się ich spodziewałem.

Zerowe zaufanie do aplikacji

System musi zawierać skuteczny mechanizm, który pozwala aplikacjom tylko na to, co rzeczywiście jest niezbędne. Dotyczy to dostępu do kluczowych zasobów, takich jak kontakty lub pliki. To musi dać się ustawić z poziomu zaawansowanego użytkownika i żadna aplikacja nie może mieć domyślnie prawa dostępu do zasobów, nawet jeśli o to prosi. Może mieć co najwyżej odblokowane, jeśli użytkownik się na to zdecyduje. Po co latarce dostęp do kontaktów? Po co notatnik ma wysyłać SMS? Niestety dzisiejsze systemy działają inaczej – jeśli aplikacja już znalazła się w telefonie, to ma dostęp niemal do wszystkiego.

Najbliższy ideałowi – specjalnie przygotowane buildy Androida, w tym niektóre telefony z rodziny GoClever oraz modowane chińskie smartfony sprzedawane pod różnymi brandami. Posiadają one kontrolę dostępu do kontaktów, ale wymagają rootowania, by użyć firewalla.

Posiadać pełną kontrolę dostępu do sieci

Pełną = per aplikacja lub biblioteka
Dostęp dla aplikacji do Internetu powinien być wyjątkiem, a nie regułą. Oznacza to, że żadna z aplikacji nie ma prawa mieć dostępu do żadnego łącza internetowego bez zgody użytkownika. Opcja ta powinna umożliwiać także wybór punktu dostępu.
W systemie Symbian OS wybór APN i kontrola dostępu działała bez zastrzeżeń, można było przydzielić jednej aplikacji dostęp przez GPRS, innej tylko przez Wi-Fi, aplikacja MMS korzystała z własnego, osobno definiowanego punktu dostępu, a aplikacje nie miały domyślnie dostępu do transmisji danych.
W Androidzie kontrola dostępu do Internetu nie istnieje, chyba że telefon zostanie zrootowany. To samo iOS, ten system nigdy nie potrafił poprawnie zarządzać APNem, z kolei w BlackBerry restrykcje dało się nałożyć tylko na poziomie serwera. Tymczasem wbudowany firewall powinien domyślnie blokować gadatliwe aplikacje takie jak choćby SwiftKey.
Aktywność internetowa SwiftKey

Najbliższy ideałowi – Symbian OS, rootowany Android z poprawnie ustawioną apką Afwall+ (polecam!).

Wydruk do sieciowych drukarek

BARDZO cenna opcja gdy masz szybko przygotowany dokument, który chcesz wydrukować na lokalnie dostępnej drukarce bez pośrednictwa peceta.

Najbliższy ideałowi – Symbian OS na Nokii E72 – działało bez pudła praktycznie do każdej drukarki HP z JetDirectem, działało także na Kyocerach i niektórych OKI. Nieco gorzej działał wydruk na Windows Mobile, ale też dało się to ogarnąć. Androidowy Cloud Print to już nie to samo. Ogólnie dzisiejsze smartfony wypadają w tej dziedzinie bardzo słabo, wręcz fatalnie.

Kontrola transmisji danych w roamingu

Dziś roaming GPRS to standard, ale nadal nie wszystkie systemy potrafią poprawnie zarządzać dostępem do danych zależnie od używanego APN oraz sieci komórkowej. Ograniczenia powinny być zachowane per aplikacja lub biblioteka, zależnie od dostępu, a zatem poczta elektroniczna oraz komunikator internetowy mogłyby korzystać z GPRS w roamingu, ale na przykład przeglądarka internetowa lub aplikacja youtube mogłyby działać tylko z Wi-Fi, a z sieci komórkowej wyłącznie w sieci macierzystej. Z kolei aplikacja obsługująca MMS działałaby tylko w sieci komórkowej, z własnego APN.
Najbliższy ideałowi – BlackBerry, ze względu na tanią usługę paczki BB BES roaming pack. Nawet Android z aplikacją Afwall+ nie ochroni wystarczająco i lepiej transmisję danych za granicą wyłączyć – chyba że posiada się abonament GPRS w roamingu.

Żadnych zaszytych na stałe usług chmurowych

System może, a nawet powinien korzystać z dedykowanych usług chmurowych, takich jak backup aplikacji, ich ustawień, a także danych użytkownika oraz inne usługi. Niemniej jednak całe oprogramowanie odpowiedzialne za synchronizację powinno być uruchamiane osobno. Musi być możliwość jego trwałej deinstalacji lub trwałej dekonfiguracji (bezwzględnie jedna z tych dwóch opcji) lub rekonfiguracji na firmowe serwery (jeśli to tylko możliwe). Firewall i opcje prywatności to tylko półśrodek i absolutnie się do tego celu nie nadaje.
Całkowitej dyskwalifikacji podlegają zarówno iOS, jak i Android (z nielicznymi wyjątkami) oraz Windows Phone. Jeśli doniesienia o działaniu telemetrii w systemach Windows Phone się sprawdzą, to będzie to jeszcze bardziej inwazyjny telefon pod względem prywatności od Androida. Powód dyskwalifikacji – automatyczne wysyłanie na serwery producenta listy używanego oprogramowania. Telefon nie ma prawa sam „zadzwonić do domu”.

Najbliższy ideałowi – Symbian OS, Windows Mobile.

Obsługiwać fizyczną klawiaturę

Oczywiście nie w każdym modelu. Oprócz normalnej klawiatury QWERTY dobrze byłoby, by obsługiwał także klawisze funkcyjne. Tak, jak moim zdaniem najlepszy telefon biznesowy w historii – Nokia Communicator oraz Nokia 9300i i jej następcy. Telefony od początku projektowane pod kątem użytkownika profesjonalnego, wyposażone we wszystko, co potrzebne – bardzo dobrą obsługę poczty (włącznie z programowym klientem BlackBerry oraz Exchange, arkusz kalkulacyjny, edytor tekstu, dobry kalkulator i notatnik, także głosowy. Wszystkich tych aplikacji można było użyć w trakcie rozmowy!

Najbliższy ideałowi – Symbian OS w telefonach Nokia 9300i, po części BlackBerry OS, dużo dalej pod względem wygody plasuje się Android w telefonach takich jak Motorola Droid 2 (w Europie znana jako Milestone 2) lub HTC ChaCha.

Dobrze obsługiwać karty pamięci

Powinien obsługiwać karty pamięci, zakładając przy tym sensowne szyfrowanie zawartości (AES, klucz pozostaje wyłącznie w telefonie). Oczywiście musi istnieć sposób migracji danych między pecetem a zasobami w telefonie – zatem niech karta po prostu będzie dostępna jako usb-storage po podaniu PINu w telefonie i szyfrowaniu/deszyfrowaniu w locie. Karta musi być wymienna po to, by można było część informacji przechować i przełożyć karty w miarę potrzeb. Nadmienię, że są pliki legalne w Polsce, ale w USA lub UK już niekoniecznie. Do tego dochodzą mapy offline danego regionu, przechowywane właśnie na karcie pamięci. Dlatego za granicę trzeba wziąć drugą kartę pamięci.
Najbliższy ideałowi – BlackBerry OS, w którym tak to właśnie działa, specjalnie przygotowane buildy Androida (testowałem taki telefon), częściowo Symbian S60v3

Dostosować system do telefonu

Obsługiwać klawisze sprzętowe telefonu, drugi wyświetlacz ściśle telefoniczny (może być monochromatyczny) oraz sam telefon bez wybudzania całego systemu. Do tego jakość dźwięku powinna być właściwa dla dobrych starszych telefonów. Dzisiejsze smartfony do dzwonienia się nie nadają w ogóle.
Najbliższy ideałowi – Symbian OS w Nokii 9300i, ale ma działać szybciej. Po części także BlackBerry OS.

Umożliwiać łatwe współdzielenie ekranu na projektor

Wystarczy podłączyć standardowy przewód, by zawartość ekranu urządzenia wyświetlić na projektorze. Dodatkowo to samo można wykonać przez Wi-Fi. Najlepiej, gdyby powstał program, który umożliwi aplikacji w rodzaju Quickoffice wyświetlanie prostych prezentacji na projektorze bez konieczności podłączania laptopa.
Najbliższy ideałowi – Android na niektórych urządzeniach (wystarczy przejściówka), iOS.

Posiadać dobry sklep z aplikacjami

To jest oczywiste, bo ludzie tego chcą. Dla mnie oznacza to także informacje o tym, jakie są uprawnienia aplikacji, jakie jest jej działanie i co się będzie działo po instalacji danej apki. Wyrugowanie złośliwego oprogramowania z aplikacji w sklepie.
Najbliższy ideałowi – iOS.

Umożliwiać instalację aplikacji spoza sklepu dla świadomych użytkowników

To dla tych, którzy wiedzą, co robią lub chcą uruchamiać własne aplikacje.
Najbliższy ideałowi – Android oraz stara wersja Symbian OS

Obsługiwać stare aplikacje Java

Ktoś, kto napisał obsługę komunikatora Gadu-Gadu i Tlen za pomocą własnej aplikacji w Javie, by porozmawiać ze starymi znajomymi nie będzie chciał pisać jej ponownie dla nowego systemu i wolałby nie przechodzić całego korowodu przy rejestracji do sklepu z aplikacjami (iOS). Ważne także dla miłośników „gierek” Java używanych dawniej na starych telefonach.
Najbliższy ideałowi – Symbian OS w praktycznie dowolnej wersji. Android z emulatorem JBED (http://forum.xda-developers.com/showthread.php?t=2326484). Częściowo także BlackBerry OS. Do tego wiele telefonów „bez systemu”.

Posiadać sensowne zarządzanie energią

Musi być to system, który umożliwi pracę aplikacji przy minimalnym zużyciu energii. Oczekiwałbym tutaj czasu standby na standardowej baterii nie krótszego niż 3 dni, zakładając godzinę rozmów dziennie, synchronizację jednego konta pocztowego przy aktywnej usłudze EDGE, przez połowę doby telefon jest w zasięgu Wi-Fi, okresowo przeglądanie Internetu, aktywny komunikator.
4dni aktywności na jednym ładowaniu
Najbliższy ideałowi – BlackBerry OS, Symbian OS (praktycznie w każdej wersji) oraz niektóre telefony z Androidem wyposażone w akumulator rzędu 4000mAh. Mam taki telefon.

Natywną obsługę dwóch kart sim

To sprawa oczywista dla kogoś, kto korzysta z telefonu w podróży lub łączy w jednym urządzeniu sprawy prywatne i służbowe. Ideał zakłada pełną separację kontaktów dla każdej z kart, to samo dotyczy wiadomości SMS i MMS oraz odpowiednich APN dla nich.
Najbliższy ideałowi – Android z customowymi nakładkami (posiadam taki telefon, ale do ideału w postaci separacji kontaktów mu jeszcze daleko), Windows Phone 8 oraz Android dual sim z firmowymi aplikacjami w kontenerach Citriksa (sprawdzałem, działa na Kruger&Matz Drive).

Pełna obsługa Bluetooth

Czyli oba profile telefoniczne (headset, handset), transfer dźwięku stereo w lepszej jakości, wysyłanie oraz odbieranie obiektów via push, dostęp do plików na nośniku wymiennym. To na szczęście potrafi bez pudła wiele telefonów.
Najbliższy ideałowi – Symbian OS, BlackBerry OS, Android

Skuteczne blokowanie obcej zawartości

Dotyczy to nie tylko przeglądarki, ale całego telefonu. Narzędzia powinny umożliwić zablokowanie niepożądanych treści lub całych serwerów oraz klas IP po to, by niepotrzebnie nie pobierać danych. Przy okazji skutecznie zablokuje wszelkie reklamy. Całość musi być kontrolowana przez świadomego użytkownika. Protezą może być firewall dla systemu oraz Firefox z dodatkiem Bluehell firewall.

Najbliższy ideałowi – Android z aplikacją Adblock Plus oraz odpowiednio dostosowanymi filtrami Afwall+. Brakuje rozwiązania systemowego.

Płynnie działający interfejs użytkownika

A zatem jeśli są jakiekolwiek animacje, to niech się wykonują płynnie, bez zacięć. Jeśli aplikacja pracuje, to niech jej interfejs umożliwia inne akcje, niech aplikację da się zminimalizować po to, by dalej pracowała, ale z niższym priorytetem.
Najbliższy ideałowi – iOS.

A zatem

Najlepszy dla mnie system operacyjny nie istnieje

Co było do udowodnienia.