Programowanie aplikacji na platformy mobilne
17 Styczeń 2010
Napisałbyś aplikację na komórkę? Jeśli tak, to na jaką platformę?
Aplikacje na komórki z roku na rok stają się coraz bardziej popularne. Wraz z większą dostępnością telefonów takich jak iPhone, Blackberry, czy tych opartych na Google Android i Windows Mobile rośnie popyt i dostępność aplikacji pisanych pod te platformy.
Patrząc kiedyś na ilość i różnorodność komórek w moim domu zacząłem się zastanawiać nad ich wykorzystaniem do czegoś nowego – programowania aplikacji mobilnych. Na chwilę obecną u mnie w domu mam dostępne następujące platformy:
- Symbian 9.1 – Nokia E65
- iPhone OS 3.1.2 – Apple iPhone 3Gs
- Windows Mobile 6.1 – HTC TyTN II
- Android 1.6 (Donut) – HTC Magic
- Blackberry OS 4.6 – Blackberry Bold 9000
- Blackberry OS 4.5 – Blackberry Curve 8320
- ?? – Motorola RAZR V3xx
Zasięgnąwszy trochę literatury odkryłem, że byłbym w stanie (w rozumieniu: osiągalne z technicznego punktu widzenia) pisać aplikacje na 4 z wymienionych powyżej platform. A to z racji posiadania odpowiednich narzędzi by:
- aplikację napisać i przetestować dzięki udostępnionym SDK
- aplikację dystrybuować dzięki wsparciu producentów komórek
Sklepów, czy też miejsc gdzie użytkownicy komórek mogą zaopatrzyć się w nowe aplikacje, jest kilka. Są to także miejsca, gdzie programiści mogą sprzedawać swoje programy.
- Android Market – Google, 20 tyś aplikacji, 1 milion potencjalnych klientów (dane na czerwiec 2009)
- App Store – Apple, 115 tyś aplikacji, 50 milionów potencjalnych klientów (dane na wrzesień 2009)
- App World – RIM, 2 tyś aplikacji, 8 milionów klientów (dane na marzec 2007)
- Windows Marketplace for Mobile – Microsoft, 376 aplikacji, niewiadoma ilość potencjalnych klientów
Jednak, aby skorzystać z dobrodziejstw bycia autorem popularnych aplikacji często trzeba ponieść dość spore koszty:
- Android Market – 25$; Google zatrzymuje sobie 30% przychodów z aplikacji; Android SDK za darmo
- App Store – 99$/rok; SDK za darmo dostępne tylko na Mac OS X; Apple zatrzymuje sobie 30% przychodów z aplikacji
- App World – 200$; RIM zatrzymuje sobie 20% przychodów z aplikacji; Blackberry SDK za darmo
- Windows Marketplace for Mobile – 99$/rok, później $99/aplikację po pierwszym roku (studenci nie płacą); Windows Mobile SDK za darmo, Visual Studio płatne
Jeśli każda z platform wydaje się mieć wady i zalety. Która zatem wg. Ciebie platforma jest najlepsza dla Twojej aplikacji i Twojego sukcesu?
Google Analytics nie wspiera ogonków
11 Styczeń 2010
Jeśli masz domenę z polskimi, bądź jakimikolwiek innymi znakami narodowymi i chciałbyś użyć Google Analytics do monitorowania ruchu na stronie, masz problem.
Google Analytics ani oficjalnie ani nieoficjalnie nie wypowiada się na temat wsparcia domen ze znakami narodowymi (IDN). Jednakże podczas próby rejestracji takiej domeny w Analytics nazwy spoza kodu ASCII nie zostaną zaakceptowane przez system. Podobnie, Google Analytics nie lubi punny code, czyli nazwę domeny po konwersji na kod ASCII wg. zasad algorytmu IDN.
Sprawa ciągnie się od 2008 roku, kiedy to zaczęły się pokazywać pierwsze posty na forum pomocy Google Analytics (tutaj i tutaj). W tej sprawie Google milczy do tej pory.
Co warto podkreślić, Google Analytics nie dba o nazwę strony, na której kod jest dodany. Jednakże by dodać do Analytics stronę, która w nazwie ma znaki narodowe, należy użyć nazwy domeny bez znaków narodowych, czyli zamiast domeny ęóąśłżźćń.pl należy użyć eoaslzzzcn.pl.
Małe, ale irytujące.
Rok 2009. Statystyki.
24 Grudzień 2009
Mimo, że do końca roku zostało jeszcze 7 dni postanowiłem już dzisiaj przyjrzeć się statystykom oglądalności mojego bloga. I tak jak było to rok temu i teraz postanowiłem porównać analogiczne okresy lat 2008 i 2009 i spróbować wysnuć jakieś wnioski. Spróbować, ponieważ analiza oglądalności stron czytelników tego bloga może być czasami zaskakująca i nie pasująca do światowych trendów.
Poprzednie lata:
Autoryzacja NTLM w intranecie w Firefox
11 Grudzień 2009
Jeśli używacie Firefox w domenie AD i korzystacie z serwerów www w intranecie, to przy każdym (pierwszym) wejściu na stronę będziecie poproszeni o autoryzację. Internet Explorer robi to automatycznie, korzystając z waszych danych użytkownika wprowadzonych podczas logowania do domeny. Jest to jedna z zalet IE, która jednak nie przyćmiewa powodów, dla którego warto upierać się przy korzystaniu z Firefox w pracy.
Szczęśliwie się składa, Firefox posiada możliwość zmiany ustawień tak, by zachowywał się podobnie do IE. Po zmianie tych ustawień nie będzie już konieczne logowanie na wewnętrzne strony w waszej firmie.
- przejdź do about:config
- znajdź network.automatic-ntlm-auth.trusted-uris (dla Kerberos są to opcje network.negotiate-auth.trusted-uris i network.negotiate-auth.delegation-uris)
- wprowadź adresy URL serwisów, na które chcesz się automatycznie logować używając NTLM; można użyć wielu adresów oddzielając wartości przecinkiem; można też użyć formatu .ad.domena.com (z kropką na początku) by logować się do wszystkich stron na domenie .ad.domena.com
- zamknij i ponownie otwórz przeglądarkę by cieszyć się prostszym życiem
Więcej informacji nt. network.automatic-ntlm-auth.trusted-uris:
Google Chrome też wspiera NTLM, ale na dzień dzisiejszy nie ma możliwości zautomatyzowania logowania, jak to można zrobić w Firefox.
Ten post powstał w ramach przystosowywania się do nowego środowiska pracy, o czym napiszę w przyszłości.
Darmowy OCR od Google?
2 Grudzień 2009
Szukałem dzisiaj oprogramowania do rozpoznawania tekstu. Chciałbym część papierowej korespondencji, jaką prawie codziennie otrzymuję w dużych ilościach, przełożyć na nośniki cyfrowe. Uprościłoby to proces wyszukiwania, składowania, a także odpowiadania na korespondencję.
Większość darmowych programów nie posiada niestety słowników i rozpoznawania tekstu innego niż angielski. A ja potrzebuję min. angielskiego, francuskiego, holenderskiego i polskiego. Z kolei ceny komercyjnych rozwiązań zaczynają się od $100.
Kierując się instynktem wpisałem w jedyną słuszą wyszukiwarkę hasło “google ocr“. I nie pomylicie się, kiedy zgadniecie, że Google ma OCR, na razie w fazie testów. I nie pomylicie się także, że jest darmowy i połączony z Google Docs. A dzięki opcji tłumaczenia wprost z Google Docs z tekstu francuskiego dostałem tekst w języku angielskim.
Skuteczność rozpoznawania tekstu nie jest porażająca, ale mając pod uwagę, że jest to program darmowy, w dodatku z powiązanymi słownikami, lepszy wróbel w garści niż gołąb na dachu.

Link: http://googlecodesamples.com/docs/php/ocr.php
Wymagany login w Google Docs.
Google Analytics już rozpoznaje Windows 7
2 Grudzień 2009
Do wczoraj użytkownicy Windows 7 byli rozpoznawani przez Google Analytics jako użytkownicy Windows NT. Google nie odróżniał nowej wersji systemu i wrzucał nowy i stary system do jednego worka.
Do wczoraj. Google Analytics rozpoznaje już i prawidłowo zlicza wejścia na strony www wszystkich tych, którzy korzystają z nowego systemu.
Przygoda z Android rozpoczęta
27 Listopad 2009
Dostałem dzisiaj paczkę z kupionym na eBay HTC Magic. Telefon ten działa pod systemem Android. Jest to obok iPhone mój drugi telefon (nie wliczam HTC TyTN II, jako że ten kurzy się w piwnicy), który posiada dotykowy ekran, klienta email i przeglądarkę.

Mam zamiar przyjrzeć się Androidowi z bliska i porównać go z iPhone. To będzie bardzo subiektywne porównanie, wsparte być może kilkoma zrzutami ekranu czy filmami na YouTube.
HTC nie jest moim podstawowym telefonem, dlatego będę mógł dość swobodnie modyfikować jego zawartość i oprogramowanie, na którym pracuje.
Z deweloperskiego punktu widzenia, prościej mi będzie (próbować) pisać soft na Android niż na iPhone, którego SDK wymaga MacOS.
Więcej o HTC Magic i o Android:
Dwa filmiki pokazujące Chrome OS w działaniu
22 Listopad 2009
Pierwszy film przedstawia graficzny interfejs użytkownika.
Drugi, to podejrzenie tego co się dzieje “under the hood”. Nie zapominajmy, że Chrome OS to też Linux.
Uruchom sobie ChromeOS na maszynie wirtualnej
20 Listopad 2009
To proste. Wystarczy pobrać źródła i skompilować.
Aby skompilować ChromeOS, należy mieć jakąkolwiek wersję Linuxa, choć Google sugeruje Ubuntu. Ja kompilowałem właśnie na Ubuntu w wersji 9.10 (x86). Dodatkowo, trzeba spełnić kilka wymagań odnośnie zainstalowanego oprogramowania (posiadać gcc, bison, python i kilkanaście innych bibliotek).
Sama kompilacja jest bardzo prosta i nie długa. Google sugeruje stworzenie pliku VMDK by później uruchomić system na maszynie wirtualnej VMWare. Innym rozwiązaniem jest kompilacja na USB i uruchomienie systemu na jednej z sugerowanych platform sprzętowych: Acer Aspire One, ASUS Eee, HP Mini 5101, Lenovo Ideapad S10 czy Dell Mini 10V.
Miałem kilka problemów z dostępem do sieci na VMWare i ostatecznie skonwertowałem VMDK na VDI na Sun VirtualBox. A efekt jest następujący:
Serwerom WWW przeglądarka (bo nic innego na tym systemie nie ma) przedstawia się jako
Mozilla/5.0 (X11; U; CrOS i686 9.10.0;en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.0.253.0 Safari 532.5
Niestety nie dane jest mi zobaczyć panel z aplikacjami. Obecny build jest zablokowany na działanie z kontami w domenie @google.com, a ja nie mam za dużo czasu na ingerencję w kod.
Linki:
- Getting the Chromium OS Source Code
- Getting and Building a Chromium-Based OS
- System Requirements to build Chromium
- Build instructions
- Developer Hardware
Dla leniwych zostaje np. bittorrent, gdzie od wczoraj krążą gotowe dyski dla VMWare.
Dla pragnących poznać system trochę bardziej sugeruję następujący skrót klawiszowy: Ctrl-Alt-T. Otwiera on konsolę systemu.
Co to jest Google Chrome OS?
19 Listopad 2009
Po trwającej nieco ponad półtorej godziny prezentacji nowego systemu operacyjnego (mój komentarz pisany w trakcie prezentacji można znaleźć tutaj) Google przekazał jasno, iż nie staje w szranki z Microsoftem czy Apple i zamiarem firmy nie jest dominacja na rynku systemów operacyjnych.
Dlaczego?
Oto kilka cech nowego systemu rodem z Google:
- system ten, w zamyśle, przeznaczony jest dla dedykowanych komputerów typu netbook z solid state drive, a nie z typowymi, magnetycznymi dyskami twardymi. Netbooki z Google Chrome OS mają ukazać się na rynku w 2010 roku. Nie będzie można zainstalować nowego systemu operacyjnego na dowolnym sprzęcie.
- Google widzi netbook pracujący z Chrome OS jako drugi bądź kolejny komputer osobisty. Wynika to z ograniczeń w stosunku do aplikacji, które można uruchomić na tym systemie. Tylko aplikacje webowe będą działały w Chrome OS, więc aplikacje np. do edycji wideo (jeśli nie ma jeszcze takich on-line) działać na nowym systemie nie będą.
- przeznaczony jest dla użytkowników, którzy mają 24-godzinny dostęp do sieci. Tryb off-line jest jakby dodaną funkcjonalnością.
- wszystkie dane użytkownika, łącznie z konfiguracją systemu przechowywane są na systemach Googla w Internecie (chmura, cloud). Oznacza to także, że każdy użytkownik Chrome OS może korzystać z dowolnego komputera z systemem Chrome OS i zawsze będzie miał dostęp do swoich danych.
- nowy system weryfikuje pliki systemowe podczas uruchamiania i pracy systemu operacyjnego. Jest to dokonane za pomocą cyfrowego podpisy plików (codesign). Jeśli jakikolwiek plik nie przejdzie testu sprawdzenia podpisu cyfrowego poprawna wersja pliku jest ściągana z serwerów Googla, a jeśli to konieczne cały system może być przeinstalowany on-line. Dane użytkownika będą ściągnięte z serwerów Googla.
- Wszystkie aplikacje, ustawienia dostępne są z przeglądarki Chrome, która jest w nowym systemie menedżerem okien
Nowy system operacyjny rodem z Google nie zastąpi nam Windows’a, Linux’a czy MacOS, ale może być bardzo ciekawym dodatkiem i służyć jako doskonałe narzędzie do szybkiej komunikacji ze światem poprzez Internet.
Strona projektu: http://www.chromium.org/chromium-os
Źródła Google Chrome OS: http://src.chromium.org/
