<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CUYDRHs8eip7ImA9WhRUEEs.&quot;"><id>tag:blogger.com,1999:blog-31513326</id><updated>2012-01-20T13:39:35.572+01:00</updated><category term="Python" /><category term="Windows Vista" /><category term="Adobe Integrated Runtime" /><category term="Haxe" /><category term="CURL" /><category term="Flash Lite" /><category term="Flash Remoting" /><category term="Adobe Apollo" /><category term="ActionScript 3" /><category term="Adobe Flash CS3" /><category term="Lublin" /><category term="AJAX" /><category term="offline" /><category term="Java ME" /><category term="Papervision3D" /><category term="Microsoft Silverlight" /><category term="RIA" /><category term="GUI" /><category term="LiveCycle" /><category term="PHP" /><category term="JavaFX Mobile" /><category term="Flash Player 10" /><category term="Adobe Flash Player" /><category term="Flash Player" /><category term="Adobe Flex 3" /><category term="Adobe Media Galery" /><category term="Guasax" /><category term="VRML" /><category term="Django" /><category term="Adobe Media Player" /><category term="WPF/E" /><category term="Weblisko" /><category term="Debug" /><category term="formularze MXML" /><category term="X3D" /><category term="Project Orbit" /><category term="Flash Media Server" /><category term="Ruby on Rails" /><category term="Adobe Flex 2" /><category term="Artemis" /><category term="Google Gears" /><category term="JEE" /><category term="WPF" /><category term="Spry" /><category term="Web 3.0" /><title>Flex 2</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://flex2.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>241</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/Flex2" /><feedburner:info uri="flex2" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CU8MQns8eip7ImA9Wx9bGEU.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-2241044167669914882</id><published>2010-10-26T01:37:00.003+02:00</published><updated>2011-02-28T10:04:43.572+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-28T10:04:43.572+01:00</app:edited><title>Ukrycie Symbiana</title><content type="html">Zmiana Prezesa Nokii odejście sporej starej kadry Nokii. Zmiany w Fundacji Symbian, zwolnienie 1200 ludzi&amp;nbsp;zajmujących&amp;nbsp;się Symbianem w Nokii. To tylko pokazuje, że zmieniają się ludzie a kod pozostaje i ktoś musi nim się opiekować.&lt;br /&gt;
&lt;br /&gt;
Organizacyjnie zmiana szefa powoduje, że&amp;nbsp;większość&amp;nbsp;kadry&amp;nbsp;zarządzającej&amp;nbsp;zmienia się. Kierownicy pojawiają się i odchodzą, natomiast ludzie z średniego szczebla nadal robią to co robią. Fundacja Symbian nie potrzebuje wielu ludzi do zarządzania rozwojem Symbiana. Odejście Samsunga czy SonyEricsona z rozwijania Symbiana jest wyrazem braku wykwalifikowanej kadry z ich strony, która miałaby pomagać rozwijać Symbiana. W praktyce przedstawiciele tych firm okazjonalnie pojawiali&amp;nbsp;się&amp;nbsp;na telekonferencjach czy spotkaniach face-to face. Czarny public relations wokół Nokii i Symbiana wystraszył ich skutecznie. Te firmy tak naprawdę dostawały technologię, produkowały&amp;nbsp;sprzęt do niego i nie zawracały sobie głową rozwojem. Natomiast inne podejście mają Japończycy. Dla nich Symbian jest "ukryty" i "zamknięty" co oznacza tylko tyle że firmy Fujitsu, Sharp i DOCOMO&amp;nbsp;ściśle&amp;nbsp;ze sobą współpracują i wypuszczają nowe modele komórek z Symbianem dla nich samych. Jest inny problem dla użytkowników takich japońskich komórek. Użytkownicy japońskich komórek z Symbianem raczej nie&amp;nbsp;potrzebują&amp;nbsp;instalowania aplikacji, bo większość aplikacji działa na zasadzie korzystania z internetu i uruchamiania w przeglądarce internetowej midletów i-mode czy aplikacji FlashLite 1.0 Silne ograniczenia bardzo korzystnie&amp;nbsp;wpłynęły&amp;nbsp;na rozwój tamtejszych aplikacji. Konieczność przebywania w trybie online w internecie z&amp;nbsp;komórkami&amp;nbsp;z Symbianem sprawiło, że Japończycy byli już "przygotowani" na nadejście inteligetnych komórek z iOS czy Androidem.&lt;br /&gt;
&lt;br /&gt;
Ludzie z Fundacji Symbian doszli do wniosku, że skoro ludziom nie podoba się interfejs uzytkownika Symbiana to poinformowali o tym że zmienią go. Problem okazał się bardziej prozaiczny, nie można zmienić interfejsu użytkownika bez napisania na nowo systemu. Pierwsza koncepcja Symbiana^4&amp;nbsp;polegała&amp;nbsp;na tym, że trzeba by napisać kod interfejsu uzytkownika od nowa co powodowałoby konflikt z istniejącymi aplikacjami. Takie podejście zostało bardzo źle przyjęte przez społeczność&amp;nbsp;użytkowników&amp;nbsp;Symbiana, którzy&amp;nbsp;pamiętają&amp;nbsp;czasy przejścia z S60 2nd na S60 3rd. Programistom Symbiana nie&amp;nbsp;uśmiechało&amp;nbsp;się porzucanie AVKONa. bo przypominało to losy UIQ. Szybki rozwój&amp;nbsp;zespołu&amp;nbsp;odpowiedzialnego za Qt na Symbianie sprawił, że&amp;nbsp;ciężar&amp;nbsp;rozwoju Qt na Symbiana przeniósł&amp;nbsp;się&amp;nbsp;do&amp;nbsp;zewnętrznych&amp;nbsp;firm ściśle&amp;nbsp;współpracujących&amp;nbsp;z Nokią na zasadach kontraktowych (Digia, Tieto, Comarch, &amp;nbsp;Cybercom). W&amp;nbsp;&lt;a href="http://www.theregister.co.uk/2010/05/12/nokia_reorganisation/"&gt;maju 2010 roku w Nokii&lt;/a&gt;&amp;nbsp;nastąpiła&amp;nbsp;pewna zmiana polityki wobec dalszego rozwoju Symbiana. CTO Nokii został &lt;a href="http://www.linkedin.com/pub/rich-green/0/409/88"&gt;Rich Green&lt;/a&gt; któremu rewolucyjne zmiany w interfejsie użytkownika nie były mu na rękę, więc zatrzymał tempo rozwoju nad &lt;a href="http://qt.gitorious.org/uiemo/uiemo-preview"&gt;UIEMO&lt;/a&gt; przez Orbit Team (&lt;a href="http://www.linkedin.com/pub/daniel-zucker/0/8a9/598"&gt;Daniel Zucker&lt;/a&gt; i &lt;a href="http://www.linkedin.com/pub/ray-rischpater/0/3/366"&gt;Ray Rischpater&lt;/a&gt;). Okazało się &amp;nbsp;że &lt;a href="http://www.gorkem-ercan.com/2010/10/my-boss-asked-me-to-use-orbit-ui-and-i.html"&gt;konserwatyzm programistów&lt;/a&gt; był tak silny że zmieniono podejście. &amp;nbsp;Odejście&amp;nbsp;szefa fundacji &lt;a href="http://uk.linkedin.com/pub/lee-williams/1/725/a0"&gt;Lee Williamsa&lt;/a&gt;&amp;nbsp;to konflikt nad wizją rozwoju interfejsu użytkownika. Szef fundacji widział potrzebę zmiany w interfejsie użytkownika, to po zmianie szefa Nokii na &lt;a href="http://www.linkedin.com/pub/stephen-elop/1/3a0/b31"&gt;Stephana Elopa&lt;/a&gt; już nie był taki pewny że to zrealizuje. Nie wiem co &lt;a href="http://uk.linkedin.com/in/scottweiss"&gt;Scott Weiss&lt;/a&gt; zrobi sam bez wsparcia&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;a href="http://www.linkedin.com/pub/elizabeth-dykstra-erickson/0/604/867"&gt;Elizabeth Dykstra-Erickson&lt;/a&gt; i &lt;a href="http://www.linkedin.com/in/saraberg"&gt;Sara Berg&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Nowe podejście do Symbiana wyszło z&amp;nbsp;założenia, że skoro tyle lat interfejs&amp;nbsp;użytkownika&amp;nbsp;dobrze spełniał swoje zadania (szczególnie na komórkach z klawiszami). Programiści wolą nadal korzystać z AVKONA i jak ostatnio z Qt wybrano strategię ukrywania Symbiana, a w przyszłości ponowne jego zamknięcie do spółki z Japończykami. Rolą fundacji Symbiana będzie tylko informowanie świata o rozwoju Symbiana ale tak naprawdę dalszy rozwój fundacji&amp;nbsp;będzie&amp;nbsp;przypominał rozwój fundacji Eclipse czy fundacji Mozilla.&lt;br /&gt;
&lt;br /&gt;
A jaki był problem prac nad interfejsem użytkownika? Sympatycy Fundacji Symbian mają&amp;nbsp;poważny&amp;nbsp;problem w&amp;nbsp;rozwijaniu różnych projektów na przykład przeniesienia &lt;a href="http://developer.symbian.org/wiki/Backporting_Homescreen"&gt;Homescreena&amp;nbsp;z Symbiana^3&lt;/a&gt; do wersji z S60 5th Edition. Te zmagania&amp;nbsp;można&amp;nbsp;było poczytać na &amp;nbsp;&lt;a href="http://developer.symbian.org/forum/showthread.php?t=5368"&gt;forum dyskusyjnym&lt;/a&gt;.&amp;nbsp;Ten wątek jest&amp;nbsp;pasjonujący. Głównym problemem były się&amp;nbsp;zmiany w API jądra Symbiana^3 co uniemożliwiło backportowanie (warto zwrócić uwagę na ten &lt;a href="http://developer.symbian.org/forum/showthread.php?t=5992"&gt;watek&lt;/a&gt; i wpisy w &lt;a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2565"&gt;bugtraqu&lt;/a&gt;) . W tej sytuacji&amp;nbsp;społeczność&amp;nbsp;zainteresowała się tworzeniem nakładki na bazie Qt czyli &lt;a href="http://developer.symbian.org/wiki/Blast_into_Orbit"&gt;Orbitem&lt;/a&gt;&amp;nbsp;i &lt;a href="http://developer.symbian.org/wiki/Build_the_Symbian%5E4_Homescreen"&gt;Homescreenem Symbiana^4&lt;/a&gt;. Nie było to&amp;nbsp;interesujące&amp;nbsp;rozwiązaniem jeżeli&amp;nbsp;chodzi o UI i UX. W Nokii zastały dalsze zmiany bo w zespole MeeGo zatrudniono &lt;a href="http://uk.linkedin.com/pub/peter-skillman/0/499/879"&gt;Petera Skillmana&lt;/a&gt; jako szefa od UX. Sporo zmian spowodowało "zamrożenie" prac zanim nowi ludzie w Nokii odnajdą się.&lt;br /&gt;
&lt;br /&gt;
Istotne jest też że proces prac nad Qt 4.7 do Symbiana w Nokii N8 dopiero się&lt;a href="http://wiki.forum.nokia.com/index.php/Qt_4.7_for_Symbian%5E3_-_developer_version"&gt;&amp;nbsp;rozpoczął&lt;/a&gt;. Do tej pory &lt;a href="http://developer.symbian.org/forum/showthread.php?p=14433#post14433"&gt;Orbit i jak Direct UI&lt;/a&gt; opierały się na tym co maiło do zaoferowania Qt.4.6.3 Teraz&amp;nbsp;dzięki&amp;nbsp;nowym&amp;nbsp;możliwościom&amp;nbsp;QtQuick &amp;nbsp;i jak QtWebKit 2.0 specjaliści od UX mogą na nowo zdefiniować UI. Powoduje to pewien problem zależność UI od aktualnego stanu rozwoju Qt. Jedynym rozwiązaniem jest "ukrycie Symbiana" polega to na tym, że można zostawić AVKONa bez zmian, co pozwoli to na uruchamianie starszych aplikacji. Natomiast użytkownik będzie widział nową nakładkę użytkownika&amp;nbsp;bądź&amp;nbsp;w razie czego ją zmieniał tak jak zmienia się motywy na Symbiana. &amp;nbsp;Gdyby API HomeScreen było bardzo rozbudowane na poziomie&amp;nbsp;interfejsu&amp;nbsp;API a programiści mogliby mieć dowolność w tworzeniu wyglądu. W praktyce oznacza tylko tyle że załadowaniem plików zasobów sterujących interfejsem użytkownika będzie odpowiadać inny silnik&amp;nbsp;dziedziczący od &amp;nbsp;API AVKONa. Jest to trudne, ale konieczne i możliwe do zrealizowania co pokazały takie firmy jak &lt;a href="http://tat.se/"  
onclick="this.href=pageTracker._getLinkerUrl(this.href)"&gt;TAT&lt;/a&gt; (silnik Kastor) czy &lt;a href="http://spb.com/symbian-software/mobileshell/"&gt;SPB&lt;/a&gt; (nakładka Mobile Shell), bądz Acrodea (silnik&amp;nbsp;&lt;a href="http://www.acrodea.com/english/product/ui/index.html"&gt;Vivid&lt;/a&gt;)&lt;br /&gt;
&lt;br /&gt;
Można też&amp;nbsp;zauważyć coś dziwnego: absencję Nokii w pracach nad stworzeniem nowego API który miały stać się API dla nakładek. Japońska firma Acrodea forsuje rozwiązanie zwane &lt;a href="http://developer.symbian.org/wiki/Prop/Common_UI_Engine_Framework"&gt;Common UI Framework&lt;/a&gt;&lt;br /&gt;
(więcej na tym &lt;a href="http://developer.symbian.org/forum/showthread.php?p=20674"&gt;wątku forum&lt;/a&gt;). Faktyczne przyjęcie propozycji&amp;nbsp;Japończyków&amp;nbsp;w Fundacji Symbian wywołało pewne zaniepokojenie w Nokii (w sumie Nokia wstrzymała się w głosowaniu) Japoński framework Vivid UI miał być obok Qt i TAT Kastora jako podstawa do budowy nakładek na Symbiana.&lt;br /&gt;
&lt;br /&gt;
Ciekawostką jest przejęcie przez firmę HTC francuskiej firmy &lt;a href="http://www.htc.com/fr/press.aspx?id=132642&amp;amp;lang=1033"&gt;Abaxia&lt;/a&gt; dla której w&amp;nbsp;Mińsku&amp;nbsp;w Białorusi w firmie BRLSoft pracują tacy inżynierowie od UI Symbiana: &lt;a href="http://www.linkedin.com/pub/ongan-mordeniz/1/34/892"&gt;Organ Modeniz&lt;/a&gt;, &lt;a href="http://www.alexzolotarev.com/"&gt;Alexander Zolotarev&lt;/a&gt; &lt;a href="http://fr.linkedin.com/pub/vadim-abrossimov/1/226/b1a"&gt; Vadim Abrossimov&lt;/a&gt;. Bardzo możliwe, że HTC zainteresuje się Symbianem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-2241044167669914882?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/lNRNR4U9Nhg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/2241044167669914882/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=2241044167669914882" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/2241044167669914882?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/2241044167669914882?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/lNRNR4U9Nhg/ukrycie-symbiana.html" title="Ukrycie Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/10/ukrycie-symbiana.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkIBQng6eCp7ImA9Wx5TGEk.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-4201361143923744278</id><published>2010-08-03T16:09:00.000+02:00</published><updated>2010-08-03T16:09:13.610+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-03T16:09:13.610+02:00</app:edited><title>Szablon aplikacji Qt Quick na Symbiana</title><content type="html">Tak jak wcześniej zauwazyłem, nie można uruchamiać aplikacji Qt Quick w sposób skryptowy. Co oznacza że dla Symbiana trzeba napisać szablon dzięki któremu będzie można testować działanie kodu Qt Quick w QML.&lt;br /&gt;
&lt;br /&gt;
Tworzymy folder Szablon ( u mnie to jest na wirtualnym Windows XP w Windows 7 pod   c:\Projekty\Szablon). Tworzymy plik projektu main.pro&lt;br /&gt;
&lt;pre&gt;# jakich bibliotek Qt chce się uzyć
QT       += core gui declarative
# nazwa aplikacji 
TARGET = Szablon
# informujemy że tworzymy aplikację Qt na Symbiana
TEMPLATE = app
# pliki żródlowe 
SOURCES += main.cpp
# pliki nagłowkowe
HEADERS  +=
# pliki designera Qt
FORMS    +=
# inne pliki używane w Qt (szczególnie pliki QML)
OTHER_FILES = main.qml
# plik zasobów zawierajacy pliki QML
RESOURCES = main.qrc 
# informacje które są potrzebne dla kompilatora dla Symbiana
symbian {
# plik ikonki programu 
ICON = icon.svg
# biblioteki potrzebne do zablokowania położenia aplikacji w orientacji poziomej
LIBS += -lcone -leikcore -lavkon
}
&lt;/pre&gt;Tworzymy plik zasobów main.qrc&lt;br /&gt;
&lt;pre&gt;&amp;lt;RCC&amp;gt;
&amp;lt;qresource prefix="/"&amp;gt;
&amp;lt;file&amp;gt;main.qml&amp;lt;/file&amp;gt;
&amp;lt;/qresource&amp;gt;
&amp;lt;/RCC&amp;gt;
&lt;/pre&gt;&lt;br /&gt;
Zrobimy plik main.qml z kodem QML &lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;import Qt 4.7
 
Rectangle {
    anchors.fill: parent; color: "black"
 
    Rectangle {
        anchors.centerIn: parent
        width: 100; height: 40; radius: 5; color: "lightgray"
 
        Text { anchors.centerIn: parent; text: "Koniec"; color: "black" }
 
        MouseArea {
            anchors.fill: parent
            onClicked: Qt.quit()
        }
    }
} 
&lt;/pre&gt;&lt;br /&gt;
Na koniec pozostał kod wykonywalny z main.cpp&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;#include &amp;lt;QtGui/QApplication&amp;gt;
#include &amp;lt;QDeclarativeView&amp;gt;
#include &amp;lt;QDeclarativeContext&amp;gt;
#include &amp;lt;QDeclarativeEngine&amp;gt;
#include &amp;lt;QGraphicsObject&amp;gt;

// biblioteki potrzebne do zablokowania zmiany orientacji
#ifdef Q_WS_S60
    #include &amp;lt;eikenv.h&amp;gt;
    #include &amp;lt;eikappui.h&amp;gt;
    #include &amp;lt;aknenv.h&amp;gt;
    #include &amp;lt;aknappui.h&amp;gt;
#endif

// funkcja main uruchamiająca aplikację
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
   // kod AVKON blokujący orientację 
#ifdef Q_WS_S60
 CAknAppUi* appUi = dynamic_cast&amp;lt;CAknAppUi*&amp;gt; (CEikonEnv::Static()-&amp;gt;AppUi());
    TRAP_IGNORE(
        if(appUi) {
               appUi-&amp;gt;SetOrientationL(CAknAppUi::EAppUiOrientationLandscape);
        }
    );
#endif
    QDeclarativeView view;
// będzie nam to potrzebne jak zechcemy uzywać innych bibliotek importowanych takich jak
// moduły WebView czy Particles
   view.engine()-&amp;gt;addImportPath(&amp;quot;./imports&amp;quot;);          
// pobieramy plik z zasobów
     view.setSource(QUrl(&amp;quot;qrc:/main.qml&amp;quot;));
// ustawiamy tryb zmiany rozmiaru
    view.setResizeMode(QDeclarativeView::SizeRootObjectToView);

#if defined(Q_WS_S60)
// ustawiamy na sztywno obszar gdzie będzie rysowane 
    view.setGeometry(QRect(0,0,640,360));
// wykonujemy pełne wyświetlenie
    view.showFullScreen();
#endif
// aplikacja ma zostać uruchomiona
    return app.exec();
}
&lt;/pre&gt;&lt;br /&gt;
Do plików w tym folderze trzeba dodać jakaś ikonkę SVG 44x44 z programu inkspace i nazwać ją icon.svg&lt;br /&gt;
&lt;br /&gt;
Pozostało więc popracować nad kompilacją Uruchomiłem Start -&amp;gt; Programy-&amp;gt; Qt for Symbian by Nokia v4.7.0-beta2 (S60) -&amp;gt; Qt for Symbian Command Prompt i wpisałem &lt;br /&gt;
&lt;br /&gt;
cd c:\Projekty\Szablon&lt;br /&gt;
&lt;br /&gt;
następnie zrobiłem pliki potrzebne do komplikacji wpisując &lt;br /&gt;
&lt;br /&gt;
gmake&lt;br /&gt;
&lt;br /&gt;
następnie robię kompilację pod emulatora&lt;br /&gt;
&lt;br /&gt;
make debug-winscw&lt;br /&gt;
&lt;br /&gt;
uruchamiam emulatora&lt;br /&gt;
&lt;br /&gt;
make run&lt;br /&gt;
&lt;br /&gt;
zamykam emulatora i sprzątam po emulatorze poleceniem&lt;br /&gt;
&lt;br /&gt;
abld reallyclean winscw udeb&lt;br /&gt;
&lt;br /&gt;
następnie ustawiam pod kompilację na komórkę&lt;br /&gt;
&lt;br /&gt;
make release-gcce&lt;br /&gt;
&lt;br /&gt;
po skompilowaniu trzeba zrobić paczkę&lt;br /&gt;
&lt;br /&gt;
make sis QT_SIS_OPTIONS=-u&lt;br /&gt;
&lt;br /&gt;
zrobiłem nie podpisaną paczkę i trzeba ją podpisać&lt;br /&gt;
&lt;br /&gt;
signsis -s szablon.sis szablon.sisx c:\key\imobile.cer c:\key\imobile.key  &lt;br /&gt;
&lt;br /&gt;
Instalujemy to na komórce i na koniec pozostaje posprzątanie po kompilacji&lt;br /&gt;
&lt;br /&gt;
abld reallyclean gcce urel&lt;br /&gt;
&lt;br /&gt;
a może jednak lepiej będzie używać polecenia do czyszczenia wszystkiego (łącznie z paczkami)&lt;br /&gt;
&lt;br /&gt;
make distclean &lt;br /&gt;
&lt;br /&gt;
Na zakończenie przyszła mi myśl, że prawdziwego programistę można poznać po tym jak sprząta po sobie.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-4201361143923744278?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/MNU02nea6TQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/4201361143923744278/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=4201361143923744278" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4201361143923744278?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4201361143923744278?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/MNU02nea6TQ/szablon-aplikacji-qt-quick-na-symbiana.html" title="Szablon aplikacji Qt Quick na Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/08/szablon-aplikacji-qt-quick-na-symbiana.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4MQH45fCp7ImA9Wx5TFks.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-288922149002733296</id><published>2010-08-01T14:16:00.000+02:00</published><updated>2010-08-01T14:16:21.024+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-01T14:16:21.024+02:00</app:edited><title>Qt Quick na Symbianie</title><content type="html">Za jedną z najciekawszych technologii uważam QtQuick. Jest to nowy język opisu interfejsu graficznego wzorowany na CSS 3. Składa się z biblioteki Declarative i z języka QML. Ale mnie najbardziej zastanawiało jak będzie można programować w tym pod Symbianem. Przeczuwałem że mogą być problemy z tego powodu że Qt Quick tak naprawdę nie potrzebuje kompilacji kodów, więc przypominało mi to sytuację z programowaniem na Pythona czy m-shell. Wystarczy skompilować program qmlviewer i prawie wszystkie programy Qt Quick uruchamiać przez niego. Ale pomyślałem że takie rozwiązanie to przeczy zasadom bezpieczeństwa w Symbiaznie. Zaintrygowany&amp;nbsp;&amp;nbsp;postanowiłem sprawdzić jak to rozwiązano. &lt;br /&gt;
&lt;br /&gt;
Ściągnąłem&amp;nbsp;Qt 4.7 beta 2 na Symbiana i zainstalowałem to na wirtualnym Windows XP.pod taką ścieżką&amp;nbsp;C:\Qt\4.7.0.b2. Postanowiłem sprawdzić jak pójdzie mi kompilacja z linii poleceń.&lt;br /&gt;
Jest w menu Start -&amp;gt; Programy-&amp;gt;&amp;nbsp;Qt for Symbian by Nokia v4.7.0-beta2 (S60) -&amp;gt;&amp;nbsp;Qt for Symbian Command Prompt. Uruchomiłem to ale zaciekawiony byłem co to za&amp;nbsp;skrót&amp;nbsp;i okazało się że wykonuje on takie działanie:&amp;nbsp;C:\WINDOWS\system32\cmd.exe /K C:\Qt\4.7.0.b2\bin\qtenv.bat Pojawiło mi się czarne okno do &amp;nbsp;wpisywania z linii poleceń. Napisałem tak&lt;br /&gt;
&lt;br /&gt;
cd&amp;nbsp;C:\Qt\4.7.0.b2\tools\qml&lt;br /&gt;
&lt;br /&gt;
byłem już w folderze programu qml wpisałem&lt;br /&gt;
&lt;br /&gt;
qmake&lt;br /&gt;
&lt;br /&gt;
Wygenrowało mi pliki abld.bat, makefile i jak *.mmp. Postanowiłem najpierw zobaczyć jak dziala w emulatorze i wpisałem&lt;br /&gt;
&lt;br /&gt;
make debug-winscw&lt;br /&gt;
&lt;br /&gt;
zrobiło mi binarną wersję na emulatora i pozostało mi uruchomić. Wpisałem&lt;br /&gt;
&lt;br /&gt;
make run&lt;br /&gt;
&lt;br /&gt;
po jakimś czasie emulator uruchomił się z tym programem. Ale zreflektowałem się że w emulatorze nie mam plików z QtQuick. Zamknąłem emulator i przegrałem zawartość z folderu C:\Qt\4.7.0.b2\examples\declarative\animation do folderu C:\S60\devices\S60_5th_Edition_SDK_v1.0\epoc32\winscw\c\animation i uruchomiłem jeszcze raz emulator poleceniem&lt;br /&gt;
&lt;br /&gt;
make run&lt;br /&gt;
&lt;br /&gt;
i uruchomił mi sie program co sprawiło że mogłem wybrać ścieżkę do uruchomienia c:/animation/basic/color-animation.qml i zadziałało. No to teraz skompiluję qml na moją komórkę XM5800&lt;br /&gt;
Najpierw&amp;nbsp;doinstalowywałem&amp;nbsp;na kartę pamięci komórki&amp;nbsp;następujące&amp;nbsp;biblioteki w tej kolejności &lt;br /&gt;
C:\Qt\4.7.0.b2\qt_installer.sis&lt;br /&gt;
C:\Qt\4.7.0.b2\qt.sis&lt;br /&gt;
C:\Qt\4.7.0.b2\qtwebkit.sis&lt;br /&gt;
C:\Qt\4.7.0.b2\qt_demos.sis&lt;br /&gt;
C:\Qt\4.7.0.b2\fluidlauncher.sis&lt;br /&gt;
&lt;br /&gt;
Po zainstalowaniu&amp;nbsp;pomdlałem&amp;nbsp;że znajdę jakieś programy typu oparte na QML. i&amp;nbsp;zalazłem&amp;nbsp;w folderze QtDemos takie jak qmlcalculator, qmlclocks, qmldialcontrol, qmleasing, qmlflickr, qmlphotoviewer, qmltwitter. Gdy&amp;nbsp;uruchomiłem&amp;nbsp;&amp;nbsp;qmldialcontrol to&amp;nbsp;zauważyłem&amp;nbsp;że zmiana&amp;nbsp;położenia&amp;nbsp;komórki blokuje program. doszedłem do wniosku że te programy&amp;nbsp;wykorzystujące&amp;nbsp;QML są jakby osadzone. To spróbuję&amp;nbsp;skompilować&amp;nbsp;na komórkę QML. Wróciłem do okna&amp;nbsp;linii&amp;nbsp;poleceń&amp;nbsp;i wpisałem&lt;br /&gt;
&lt;br /&gt;
make &amp;nbsp;release-gcce&lt;br /&gt;
&lt;br /&gt;
i skompilowało się. Pozostało zrobić paczkę i wpisałem, żeby zrobiło mi paczkę bez podpisu&lt;br /&gt;
&lt;br /&gt;
set QT_SIS_OPTIONS=-u&lt;br /&gt;
&lt;br /&gt;
a potem&lt;br /&gt;
&lt;br /&gt;
make sis&lt;br /&gt;
&lt;br /&gt;
i pojawił się taki komunikat:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auto-patching capabilities for self signed package.&lt;br /&gt;
&lt;br /&gt;
Patching package file and relevant binaries...&lt;br /&gt;
&lt;br /&gt;
Executing elftran -vid 0x0 -capability "NetworkServices ReadUserData" /S60/devic&lt;br /&gt;
es/S60_5th_Edition_SDK_v1.0/epoc32/release/gcce/urel/qmlviewer_patched_caps.exe&lt;br /&gt;
&lt;br /&gt;
NOTE: A patched package should not be used for distribution!&lt;br /&gt;
&lt;br /&gt;
Processing qmlviewer_release-gcce.pkg...&lt;br /&gt;
Created &amp;nbsp;qmlviewer_unsigned.sis.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wygląda na to że nie można używać programu qmlviewer w dystrybucji.&lt;br /&gt;
Podpisałem swoim&amp;nbsp;certyfikatem&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, serif; font-size: 13px; line-height: 20px;"&gt;signsis -s&amp;nbsp;&lt;/span&gt;qmlviewer_unsigned.sis&amp;nbsp;qmlviewer.sisx&lt;span class="Apple-style-span" style="color: #333333; font-family: Georgia, serif; font-size: 13px; line-height: 20px;"&gt;&amp;nbsp;c:\key\imobile.cer c:\key\imobile.key&lt;/span&gt;&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Po zainstalowaniu tego okazało się że nie działa tak jak bym się spodziewał. Uruchamia się ale nie można wybrać żadnego pliku QML a nagłówek tytułowy wskazuje na plik zasobów content/Browser.qml, który nie mógł&amp;nbsp;zostać&amp;nbsp;uruchomiony z powodu restrykcji z dostępem do plików w Symbianie. Zrozumiałem że po zaprogramowaniu plików QML trzeba będzie pakować je w pliki zasobów oraz osadzać je jakby wewnątrz programu. Ale jak? Pewną wskazówkę dawały mi&amp;nbsp;przykłady&lt;br /&gt;
&lt;br /&gt;
C:\Qt\4.7.0.b2\demos\embedded\qmlcalculator&lt;br /&gt;
C:\Qt\4.7.0.b2\demos\embedded\qmlphotoviewer&lt;br /&gt;
C:\Qt\4.7.0.b2\demos\embedded\qmltwitter&lt;br /&gt;
&lt;br /&gt;
Testowałem&amp;nbsp;tworzenie takich paczek z powyższymi przykładami.&amp;nbsp;Wyglądało&amp;nbsp;to obiecująco ale nie do&amp;nbsp;końca.&lt;br /&gt;
Nie wiem jak będę tworzył pliki QML z kodowaniem unicode (utf-8), bo przykłady&amp;nbsp;dotyczą&amp;nbsp;kodowania Latin1.&amp;nbsp;Zauważyłem&amp;nbsp;też że przestają przykłady&amp;nbsp;działać&amp;nbsp;jak zmieni&amp;nbsp;się&amp;nbsp;orientację W sumie to można już myśleć o pisaniu kolejnego&amp;nbsp;artykułu&amp;nbsp;o tym jak zaprogramować własną aplikację Qt Quick, pomimo że to jest jeszcze wersja beta 2 i będziemy jeszcze czekać na wersję Qt 4.7 RC&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-288922149002733296?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/Dqm9KJPd4zQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/288922149002733296/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=288922149002733296" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/288922149002733296?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/288922149002733296?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/Dqm9KJPd4zQ/qt-quick-na-symbianie.html" title="Qt Quick na Symbianie" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/08/qt-quick-na-symbianie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkECQnk8fSp7ImA9Wx5TFU8.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-4615625962648833733</id><published>2010-07-31T00:24:00.000+02:00</published><updated>2010-07-31T00:24:23.775+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-31T00:24:23.775+02:00</app:edited><title>Programowanie Symbiana pod Windows 7</title><content type="html">Zainstalowałem całe środowisko programistyczne na Symbiana, ale okazało się że nie działa tak jakbym się spodziewał. Szczególnie kompilacja z poziomu Carbide.C++ nie kompilowała kodu. Emulator  epoc.exe wywalał się. Polecenie devices wymagałoby zmieniania ręcznego pliku konfiguracyjnego. W tej sytuacji zrozumiałem że potrzebna mi będzie maszyna wirtualna z Windows XP.&lt;br /&gt;
&lt;br /&gt;
Użytkownicy wersji Windows 7 Proffesional, Ultimate i Enterprise mogą zainstalować tak zwany tryb XP. Ten tryb opiera się na zainstalowaniu oprogramowania Windows Virtual PC i jak uaktualnienia do trybu XP. Więc w takim przypadku pod Windows 7 Home Premium sam zainstalowałem Windowsa XP na Windows Virtual PC Po zainstalowaniu Windowsa XP musiałem ściągać ponad 90 poprawek Następnym krokiem było skonfigurowanie wirtualnej maszyny o dodatek &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=e5433d88-685f-4036-b435-570ff53598cd&amp;amp;displaylang=en"&gt;RemoteApp&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Poszukałem w internecie &lt;a href="http://www.google.pl/search?q=ActivePerl-5.6.1.635-MSWin32-x86"&gt;ActivePerl-5.6.1.635-MSWin32-x86.msi&lt;/a&gt; i ściągnąłem. Po zainstalowaniu sprawdziłem czy mam zainstalowane co wystarczyło mi zrobić z linii poleceń wpisać polecenie &lt;br /&gt;
&lt;br /&gt;
perl.exe -version&lt;br /&gt;
&lt;br /&gt;
This is perl, v5.6.1 built for MSWin32-x86-multi-thread...&lt;br /&gt;
&lt;br /&gt;
Kolejny krok to instalacja na wirtualnym XP środowiska wykonawczego Javy czyli &lt;a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html"&gt;JRE&lt;/a&gt; ze strony Oracle i po zainstalowaniu wpisałem z linii poleceń&lt;br /&gt;
&lt;br /&gt;
java.exe -version &lt;br /&gt;
&lt;br /&gt;
i otrzymałem coś takiego &lt;br /&gt;
&lt;br /&gt;
java version "1.6.0_21"&lt;br /&gt;
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)...&lt;br /&gt;
&lt;br /&gt;
Następnie zasinstalowałem SDK  &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html"&gt;S60 5th Edition SDK for Symbian OS&lt;/a&gt; &lt;br /&gt;
(zakładając ze jesteśmy zarejestrowani w Forum Nokia). Instalując SDK trzeba się upewnić że wirtualny Windows XP obsługuje na dysku partycje NTFS i jest uruchomiony jako 32-bitowy.&amp;nbsp;Podczas instalacji jesteśmy proszeni o zainstalowanie CSL Arm Toolchain.&lt;br /&gt;
&lt;br /&gt;
Po zainstalowaniu SDK zacząłem sprawdzać czy wszystko jest we właściwym miejscu w zmiennych środowiskowych. Wpisałem z linii poleceń&lt;br /&gt;
&lt;br /&gt;
devices&lt;br /&gt;
&lt;br /&gt;
pojawiło sie &lt;br /&gt;
&lt;br /&gt;
S60_5th_Edition_SDK_v1.0:com.nokia.s60 - default&lt;br /&gt;
&lt;br /&gt;
Następnie wpisacełem z linii poleceń epoc.exe U mnie to uruchamiało się i znikało. Pomyślałem że to problem ze nie mogę jeszcze uruchamiać emulatora bo nie mam zainstalowanego Carbide.C++&lt;br /&gt;
&lt;br /&gt;
Więc ściągnąłem &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/dbb8841d-832c-43a6-be13-f78119a2b4cb.html"&gt;Carbide.C++&lt;/a&gt; a następnie zainstalowałem. Po instalacji potrzebowałem poprawne skonfigurować Carbide.C++ Pierwszą rzeczą to było aktualizacja do wersji 2.6 z menu i wybrałem Help -&amp;gt; Check for updates. Po zainstalowaniu aktualizacji trzeba było zrobić restart Carbide.C++. Następną rzeczą było uruchomienie ustawień konfiguracyjnych &lt;br /&gt;
C:\Symbian\Tools\ADT_1.4\Carbide.c++\x86Build\env_switch\env_update.exe&lt;br /&gt;
i jak zainstalowanie kompilatora Nokii dla emulatora.&lt;br /&gt;
&lt;br /&gt;
Uruchamiając IDE trzeba pozmieniać pewne domyślne ustawienia. Z menu wybierałem Windows -&amp;gt; Preferences. Pojawiło się okno Preferences, gdzie po lewej stronie miałem takie drzewko i wybierałem stamtąd węzeł Carbide.c++ i podwęzeł Platform Filtering Preferences.&lt;br /&gt;
Przy EKA2 Platforms pozostawiłem tylko Emulation (WinSCW) i GCCE (wszystko co ma w nazwie ARM odznaczyłem). Następnie sprawdziłem czy Carbide.C++ wykryło odpowiednią wersję S60 SDK to wybierałem węzeł SDK Preferences i tam zobaczyłem że Carbide dobrze wykrył S60 5th Edition SDK for Symbian OS. Zamknąłem i uruchomiłem z menu Carbide File -&amp;gt; New -&amp;gt; Symbian OS C++ Project i pojawiło się okno z którego wybrałem węzeł S60 -&amp;gt; GUI Application i przeszedłem krok po kroku wszystkie okna kreatora. Jak kreator zrobił całą strukturę folderów to w menu wybrałem Project -&amp;gt; Build Configuration -&amp;gt; Manage... i pojawiło się okno Add/Remowe Carbide Build Configuration i zaznaczyłem tylko Emulator Debug i Phone Release.&lt;br /&gt;
Zanim zacząłem kompilację to ustawiłem zakładkę Console na aktywną i wybrałem z menu Projekt Build All Configurations. Wtedy Carbide.c++ skompilował kod na wersję na komórkę oraz zrobi paczki w folderze sis a także zrobił wersję binarną dla emulatora. Komunikaty podczas kompilacji obserwowałem w zakładce Console. Uruchomiłem emulator przez wybranie z menu Run -&amp;gt;Run. Po kilku minutach uruchomił mi się emulator ale nale przestał działać. Trzeba liczyć się z tym że przy każdym uruchamianiu emulatora pojawiał się komunikat Alertu zabezpieczeń systemu Windows o pozwolenie na uruchamianie aplikacji w emulatorze. Więc wyłączyłem firewall wirtualnego Windowsa XP. Po przeszuakniu Forum Nokia przyczyny tego problemu doszedłem do wniosku że trzeba będzie sprawdzić komunikaty jakie zapisuje emulatror w pliku epocwnd.out Wszedłem w menu Start -&amp;gt; Uruchom i wpisałem %temp% Po znalezieniu pliku epocwnd.out przeanalizowałem go i wysłałem zapytanie na Forum Nokia to dostałem uwagę żebym wyłączył sterownik karty dźwiękowej.&lt;br /&gt;
Wszedłem w ustawienia Virtual PC dla wirtualnego Windowsa XP i przy ustawieniach intergacji odfajkowałem udostępnienia Audio. Zrobiłem restart wirtualnego PC i po tych zmianach wpisałem znowu z linii poleceń epoc.exe to tym razem uruchomił się bez problemu. Dokonałem rejestracji emulatora. Uruchomiłem Carbide.C++ i emulator zadziałał.&lt;br /&gt;
Denerwowało mnie że przy starcie Carbide.C++ informował mnie że nie może połączyć się z komórką. W tej sytuacji zainstalowałem Nokia PC Suite w wirtualnym Windowsie XP. Gdy podłączyłem Nokię XM 5800 to z menu wirtualnego Windowsa XP trzeba było wybrać USB -&amp;gt;Nokia 5800&amp;nbsp;Dołącz.&amp;nbsp;W tej sytuacji komórka była już przygotowana do debugowania.&lt;br /&gt;
&lt;br /&gt;
Zaciekawiło mnie jak będzie wyglądała kompilacja z linii poleceń. Uruchomiłem z linii polecen:&lt;br /&gt;
&lt;br /&gt;
cd C:\S60\devices\S60_5th_Edition_SDK_v1.0\S60CppExamples\Note\group&lt;br /&gt;
&lt;br /&gt;
potem wpisałem &lt;br /&gt;
&lt;br /&gt;
bldmake bldfiles&lt;br /&gt;
&lt;br /&gt;
i zrobił się plik abld.bat&lt;br /&gt;
&lt;br /&gt;
Następnie wpisałem &lt;br /&gt;
&lt;br /&gt;
abld build gcce urel &lt;br /&gt;
&lt;br /&gt;
co powinno było mi zrobić kompilacje binarną na komórkę. Jak wszystko poszło w porządku to wpisuję &lt;br /&gt;
&lt;br /&gt;
cd C:\S60\devices\S60_5th_Edition_SDK_v1.0\S60CppExamples\Note\sis&lt;br /&gt;
&lt;br /&gt;
a potem &lt;br /&gt;
&lt;br /&gt;
makesis note_gcce.pkg &lt;br /&gt;
&lt;br /&gt;
zrobił się plik  note_gcce.SIS&lt;br /&gt;
&lt;br /&gt;
Następnie zrobiłem folder c:\key gdzie trzymam certyfikaty developerskie od chińczyków&lt;br /&gt;
&lt;br /&gt;
wróciłem do okna i z linii poleceń napisałem&lt;br /&gt;
&lt;br /&gt;
signsis -s note_gcce.sis note_gcce.sisx c:\key\imobile.cer c:\key\imobile.key&lt;br /&gt;
&lt;br /&gt;
otrzymałem plik note_gcce.sisx do zainstalowania w komórce.&lt;br /&gt;
&lt;br /&gt;
Na koniec pozostało wyczyszczenie tego co wygenerowałem podczas kompilacji&lt;br /&gt;
&lt;br /&gt;
cd C:\S60\devices\S60_5th_Edition_SDK_v1.0\S60CppExamples\Note\group\&lt;br /&gt;
&lt;br /&gt;
i wpisałem &lt;br /&gt;
&lt;br /&gt;
abld reallyclean gcce urel&lt;br /&gt;
&lt;br /&gt;
Pozostało sprawdzenie czy działa kompilacja pod emulator i wpisałem &lt;br /&gt;
&lt;br /&gt;
abld build winscw udeb&lt;br /&gt;
&lt;br /&gt;
następnie wpisałem &lt;br /&gt;
&lt;br /&gt;
epoc.exe&lt;br /&gt;
&lt;br /&gt;
i uruchomił mi się emulator&lt;br /&gt;
&lt;br /&gt;
poszukałem programu Note i odpaliłem i zadowolony zamknąłem emulator&lt;br /&gt;
&lt;br /&gt;
i pozostało posprzątanie więc wpisałem &lt;br /&gt;
&lt;br /&gt;
abld reallyclean winscw udeb&lt;br /&gt;
&lt;br /&gt;
tym poleceniem wyinstalowałem z emulatora program.&lt;br /&gt;
Mając już dobrze zainstalowane SDK i skonfigurowane środowisko programistyczne to mogłem już myśleć o programowaniu na Symbiana. Zamknąłem wirtualnego Windowsa XP w poczuciu dobrze zrobionej roboty.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-4615625962648833733?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/TEu_Xw-IU9c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/4615625962648833733/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=4615625962648833733" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4615625962648833733?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4615625962648833733?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/TEu_Xw-IU9c/programowanie-symbiana-pod-windows-7.html" title="Programowanie Symbiana pod Windows 7" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/07/programowanie-symbiana-pod-windows-7.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0INQHo4fyp7ImA9Wx5TEEo.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-5667238927583070471</id><published>2010-07-25T16:36:00.001+02:00</published><updated>2010-07-25T18:33:11.437+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-25T18:33:11.437+02:00</app:edited><title>Ludzie Nokii</title><content type="html">Nokia ogłosiła 22 lipca dane o sprzedaży w drugim kwartale 2010. Podsumowując wyprodukowała 24 mln inteligentnych komórek co przyniosło jej 3429 mln Euro przychodów przy założeniu, że średnia cena inteligentnej komórki to 143 Euro. Wnioski? Pierwszy raz przychody z sprzedaży inteligentnych komórek były większe niż ze zwykłych. Co najważniejsze Nokia utrzymała swój poziom udziałów na rynku inteligentnych komórek, pomimo złej passy medialnej wokół Symbiana i coraz silniejszej konkurencji (Android, RIM) oraz coraz mniejszej sprzedaży w Ameryce Północnej.&lt;br /&gt;
&lt;br /&gt;
Natomiast przez internet przeszły plotka puszczona przez amerykańską prasę o szukaniu nowego szefa Nokii przez radę zarządzająca. Okazało się że ta plotka miała swoje podstawy w wydanej niedawno po fińsku książce Uusi Nokia. Autorem tej książki jest &lt;a href="http://fi.linkedin.com/pub/juhani-risku/0/278/aa2"&gt;Johani Risku&lt;/a&gt;. Ten człowiek w Nokii był szefem zespołu który tworzył interfejs S60 dla Symbiana w latach 2001-2002. W Nokii pracował do sierpnia 2009. Obecnie prowadzi własną firmę. Ta książka jest bardzo cenna i pokazuje aktualny stan w jakiej się znalazła Nokia. Autor nawet założył &lt;a href="http://uusinokia.livejournal.com/"&gt;bloga&lt;/a&gt; dla tej książki (po fińsku). Najciekawszy &lt;a href="http://www.theregister.co.uk/2010/07/22/nokia_manifesto_risku/"&gt;artykuł&lt;/a&gt; o tej książce napisał Andrew Orlowski z brytyjskiego The Register. &lt;br /&gt;
&lt;br /&gt;
W firmie Nokia widać na dłoni cechy które są charakterystyczne dla koorporacji. Przerost biurokracji. Czy ktoś zna tych ludzi z Nokii? Takich jak: &lt;a href="http://ahtisaari.typepad.com/about.html"&gt;Marko Ahtisaari&lt;/a&gt; (odpowiada ze design i UX), Petteri Alinikula (szef laboratorium w Helsinkach), &lt;a href="http://fi.linkedin.com/pub/timo-ali-vehmas/5/419/499"&gt;Timo Ali-Vehmas&lt;/a&gt; (odpowiada za współpracę w branży), &lt;a href="http://fi.linkedin.com/in/markdurrant"&gt;Mark Durrant&lt;/a&gt; (odpowiada za PR),&lt;a href="http://www.linkedin.com/pub/james-harper/3/a61/3a"&gt;  James Harper&lt;/a&gt; (odpowiada za marketing technologii), &lt;a href="http://fi.linkedin.com/pub/sari-st%C3%A5hlberg/0/32/605"&gt;Sari Ståhlberg&lt;/a&gt; (odpowiada za UX z Accessibility), &lt;a href="http://www.nokia.com/A4254075"&gt;Jo Harlow&lt;/a&gt; (odpowiada za marketing inteligentnych komórek w US), &lt;a href="http://www.linkedin.com/pub/dilip-kenchammana/1/51/543"&gt;Dilip Kenchammana&lt;/a&gt; (odpowiada za Qt w Nokii), &lt;a href="http://fi.linkedin.com/pub/kari-tuutti/9/ba6/918"&gt;Kari Tuutti&lt;/a&gt; (koordynuje kampaniami reklamowymi), &lt;a href="http://research.nokia.com/people/henry_tirri"&gt;Henry Tirri&lt;/a&gt; (szef badaczy w Nokii), &lt;a href="http://fi.linkedin.com/in/jpsipponen"&gt;Juha-Pekka Sipponen&lt;/a&gt; (odpowiada za produkcję zwykłych komórek), &lt;a href="http://fi.linkedin.com/in/markollila"&gt;Mark Ollila&lt;/a&gt; (odpowiada za App Wizard Ovi), &lt;a href="http://fi.linkedin.com/pub/axel-meyer/4/b6b/569"&gt;Axel Meyer&lt;/a&gt; (odpowiada za projekty inteligentnych komórek z serii N), &lt;a href="http://www.linkedin.com/in/jloughney"&gt;John Loughney&lt;/a&gt; (odpowiada za rozwój Maemo OS),   &lt;a href="http://fi.linkedin.com/in/ukkol"&gt;Ukko Lappalainen&lt;/a&gt; (odpowiada za rozwój biznesowych telefonów), &lt;a href="http://dk.linkedin.com/pub/alex-lambeek/0/683/737"&gt;Alex Lambeek&lt;/a&gt; (odpowiada za marketing zwykłych komórek), &lt;a href="http://dk.linkedin.com/pub/janne-jakobsen/11/74a/345"&gt;Janne Jakobsen&lt;/a&gt; (szefowa działu multimedialnych inteligetnych komórek), &lt;a href="http://research.nokia.com/people/quinn_jacobson"&gt;Quinn Jacobson&lt;/a&gt; (lider badaczy od GPS), &lt;a href="http://jaaksi.blogspot.com//"&gt;Ari Jaaksi&lt;/a&gt; (odpowiada za rozwój MeeGo), &lt;a href="http://www.nokia.com/A4241133"&gt;Michael Halbherr&lt;/a&gt; (odpowiada za Ovi Map razem z &lt;a href="http://de.linkedin.com/pub/gil-teissier/1/134/221"&gt;Gil Teissier&lt;/a&gt;),  &lt;a href="http://fi.linkedin.com/pub/john-clarke/5/A62/5A1"&gt;John Clarke&lt;/a&gt; (szef działu IT), &lt;a href="http://research.nokia.com/people/peter_pal_boda"&gt;Péter Boda&lt;/a&gt; (naukowiec odpowiedzialny za interfejs użytkownika za pomocą gestów),  &lt;a href="http://uk.linkedin.com/in/nikkibarton"&gt;Nikki Barton&lt;/a&gt; (odpowiedzialna za interfejs użytkownika w cyfrowych mediach), &lt;a href="http://www.rebeccaallen.com/"&gt;Rebecca Allen&lt;/a&gt; (artystka, szefowa centrum badawczego-multimedialnego Nokii w Hollywood), Purnima Kochikar (szefowa Forum Nokia).&lt;br /&gt;
&lt;br /&gt;
Wygląda na to że Ci menadżerowie odpowiadają w pewien sposób za to gdzie teraz jest Nokia? Tak ci którzy teraz są na szczycie kariery w Nokii, staja się bardzo zachowawczy, Nokia ma największy potencjał badawczo rozwojowy, setki patentów. Wystarczy spojrzeć na &lt;a href="http://research.nokia.com/people"&gt;listę naukowców&lt;/a&gt; czym się zajmują się.  Pomimo tego sporo wynalazków czy idei nie zostało zaimplementowanych. (na przykład elementy 3D w interfejsie użytkownika czy interfejs NFC w smartfonach). Im większa biurokracja i skomplikowana budowa inteligentnych komórek powoduje problemy z komunikacją&lt;br /&gt;
&lt;br /&gt;
Sam Risku przytacza anegdotkę w której poprosił o to żeby okno dialogowe było mniejsze o 5 mm. to dostał odpowiedz, że nie mogą znaleźć kodu który by pozwalał na zmniejszenie okna dialogowego bo to wymaga przeszukania 2 milionów linii kodu. Dzisiaj to wywołuje uśmieszek politowania wśród programistów Symbiana takich jak &lt;a href="http://twitter.com/janole/status/19258885413"&gt;Jan Ole Suhr&lt;/a&gt; a nawet Chris Redpath znalazł &lt;a href="http://twitter.com/ChrisRedpath/status/19261334793"&gt;kod&lt;/a&gt; który za to odpowiada w &lt;a href="http://twitter.com/ChrisRedpath/status/19260487150"&gt;ciągu 5 min&lt;/a&gt;  co wywołało &lt;a href="http://twitter.com/janole/status/19261900532"&gt;podziw&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Innym przykładem było to że tworząc serwisy internetowe Ovi menadżerowie do końca nie wiedzieli jak to rozwijać, gdy kierownictwo Nokii nie potrafiło korzystać z mobilnego internetu. Co tłumaczy taką długą stagnację w rozwijaniu przeglądarki internetowej w komórkach Nokii&lt;br /&gt;
&lt;br /&gt;
Cechą biurokracji jest zbieranie wszelkich danych i analizowanie je. Często serwisy internetowe Nokii są tak zaprojektowane że użytkownicy muszą przechodzić testy A/B witryny internetowej, użytkownicy mają do wypełniania jakieś skomplikowane formularze.&lt;br /&gt;
&lt;br /&gt;
Jeden z problemów w Nokii jest "narzucenie" projektantom designu filozofii Contextual Design wg &lt;a href="http://incontextdesign.com/people/karen-holtzblatt/"&gt;Karen Holtzblatt&lt;/a&gt;, która zakładała dogodzenie użytkownikowi podczas projektowania. To ma sens w wzornictwie przemysłowym, ale nie ma zastosowania do innowacji. Bo jak produkt innowacyjny może zostać przetestowany przez użytkowników jak jego nie znają?   Podobnie zauważył że lepszy efekt daje zawężenie portfolio i dostarczenie do sprzedaży wyspecjalizowanych produktów, co już Nokia prawie zrealizowała. Natomiast nadal pozostaje problem wypuszczania do sprzedaży podobnych do siebie modeli co sprawia że potencjalni klienci mają problem z wyborem właściwego modelu dla siebie. W świecie technologii klienci nie lubią mieć wyboru. Wolą jak ktoś im to poleci czy zarekomenduje. &lt;br /&gt;
&lt;br /&gt;
Bardzo duże niebezpieczeństwo dla Nokii wynika z inercji. Brakuje przyspieszania. Często wewnętrzne projekty są anulowane bo nie nadążają z czasem, a do nowych projektów menadżerowie nie są przekonani. Skutkuje to sytuacją w której nie wykorzystuje się potencjału pracowników.  &lt;br /&gt;
&lt;br /&gt;
Od 2006 roku za działania marketingowe Nokii przejmowały firmy, które z marketingiem wysokich technologii nie miały do czynienia. Spowodowało co że masowa reklama Nokii bardziej przypominała reklamę produktów spożywczych. Często też brakowało spójnej koncepcji jak mają wyglądać serwisy internetowe, gdzie jak wspomniałem ciągle eksperymentowano.&lt;br /&gt;
&lt;br /&gt;
Risku zasugerował stworzenie nowego stanowiska  Chief Innovation/Creative/Design Officer który byłby równy rangą CEO. Problem w zarządzaniu Nokią wynika też w tym ze w latach 2003-2008 amerykańscy udziałowcy Nokii próbowali za bardzo wpływać na styl pracy w Nokii. Silnie postuluje żeby na tym stanowisku został ktoś kto jest Finem i zna od środka Nokię.  Ale wskazuje też na istnienie Zasady Petera która mówi, że w organizacji hierarchicznej każdy awansuje aż do osiągnięcia własnego progu niekompetencji. &lt;br /&gt;
&lt;br /&gt;
Sporo dostało się kadrze zarządzającej Nokii. &lt;a href="http://www.nokia.com/about-nokia/corporate-governance/group-executive-board/mary-t-mcdowell"&gt;Mary McDowell&lt;/a&gt; była szefową działu strategii programistycznej, ale sama nic na tym nie znała się. Trzeba było przejąć firmę Symbian i Trolltech. I zapewnić im dużą niezależność.  &lt;a href="http://www.nokia.com/about-nokia/corporate-governance/group-executive-board/dr-tero-ojanpera"&gt;Tero Ojanperä&lt;/a&gt; który jest na stanowisku CTO to jednak Nokia nie wprowadziła żadnych innowacyjnych technologicznie produktów od 2008, najgorsze jest to że nie ma wiarygodności w branży multimedialnej. Właściwie największym przykładem niekompetencji wg Risku jest &lt;a href="http://ahtisaari.typepad.com/about.html"&gt;Marko Ahtisaar&lt;/a&gt;. Wystarczy przejrzeć jego wpisy na Twiterze pod nickiem &lt;a href="http://twitter.com/moia"&gt;@moia&lt;/a&gt; Właściwie to on odpowiada za to ze nic nie dzieje w interfejsie użytkownika.  &lt;a href="http://www.nokia.com/about-nokia/corporate-governance/group-executive-board/olli-pekka-kallasvuo"&gt;Olli-Pekka Kallasvuo&lt;/a&gt; jest uważany za dobrego menadżera, ale czuć jego niekompetencję gdyby miał zarządzać inżynierami. Najbardziej medialną osobą Nokii jest &lt;a href="http://www.nokia.com/about-nokia/corporate-governance/group-executive-board/anssi-vanjoki"&gt;Anssi Vanjoki&lt;/a&gt;, (raczej to też ma związek z jego aktywnością charytatywną wśród osób z niedosłuchem). Jedyne co można mieć zastrzeżenie do niego to czy jest w stanie być elastyczny i szybko dostosowywać się do szybko zmieniających się wymagań rynku.&lt;br /&gt;
&lt;br /&gt;
Ponieważ media amerykanskie są nieprzychylne Nokii to w tej sytuacji były pracownik Nokii Tomi T Ahonen na swoim blogu napisał artykuł &lt;a href="http://communities-dominate.blogs.com/brands/2010/07/obituary-for-opk-wall-street-is-a-cruel-mistress-nokia-searching-for-ceo.html"&gt;Obituary for OPK: Wall Street is a Cruel Mistress - Nokia searching for CEO&lt;/a&gt;. W tym artykule wspomniał 6 czynników które mają wpływ na negatywny wymiar spojrzenia na Nokię ze strony amerykańskich mediów.&lt;br /&gt;
Sytuacja Nokii w 2006 była taka miała inna konkurencję: Motorolę z jej telefonem Rokr i SonyEricssona z serią Walkman. Inteligentne komórki wtedy miały zastosowanie główne biznesowe.&lt;br /&gt;
Nokia postanowiła wejść na rynek amerykański z Symbianem. Symbian był wtedy tworzony na zasadzie partnerstwa pomiędzy udziałowcami. Innym słowem wtedy Nokia nie miała wpływu na to jaki jest Symbian. Idea Finów była taka żeby współpracować przy Symbianie, na efekty współpracy nie trzeba było długo czekać. W 2006 roku Nokia miała 48% udziałów w produkcji inteligentnych komórek i cały rynek miał wtedy wyprodukować 80 mln inteligentnych komórek. W 2007 roku Apple rozpoczęło masową marketingowe działania związane ze sprzedażą iPhone. Nokia wtedy sprzedawała z powodzeniem N95. Stało się coś dziwnego. Marketing Apple zrobił swoje, ludzie na giełdzie amerykańskiej przestali interesować się Nokią. Wtedy amerykańskie media często pisały o końcu rozwoju RIM Blackberry  (co nie było prawdą). Okazało się że mało kto liczył się z faktami. Okazało się ze nagle potrzebny byłby ktoś kto byłby dla Nokii showanamen. CEO Nokii nie nadawał się do tej roli. Styl zarządzania Finów to współpraca i działanie w ciszy i spokoju z dala od mediów. &lt;br /&gt;
&lt;br /&gt;
Dzisiejszy sukces dużo zależy od działań w sferze Public Relations. Nokia potrafiła sprzedawać dużo tanich komórek po 25 dolarów w biednej Afryce czy najtańsze modele inteligentnych komórek po 200 dolarów i jeszcze mieć zyski  Nokia wprowadziła ekologiczne procesy produkcji komórek co jakoś to medialnie nie trafia do analityków. Analitycy często zapominali że porównując Apple z Nokią to porównywali rynek dóbr luksusowych z rynkiem dóbr pierwszej potrzeby. Wywołuje to silną presję na dostarczenie przez Nokię inteligentnych komórek o jeszcze lepszych parametrach. Nawet gdy technologicznie Nokia była lepsza od iPhone to media często brały argument z tego ile ludzi korzysta z internetu do przeglądania stron internetowych i na podstawie tego argumentu formułowano osądy że Nokia straci pozycję lidera. W Nokii mało kto przywiązywał wagę do przeglądania internetu w inteligentnej komórce. &lt;br /&gt;
&lt;br /&gt;
Kolejny problem analityków to przekonanie że produkcja inteligentnych komórek jest bardzo dochodowa. Owszem początkowo Nokia miała wysoką marże (21% w 2007 a w 1Q 2010 zaledwie 4%). Ale trzeba pamiętać że Nokia to nie odniosła strat w produkcji zwykłych komórkach (i Samsung też) Motorola i jak SonyEricsson globalnie poniosły straty i jak spadek udziałów. Lata 2008-1009 to lata kryzysu Nokia właściwie przetrwała te czasy za cenę mniejszych zysków. HTC, Motorola, SonyEricsson, Palm miały duże straty. W sumie największe straty podczas kryzysu miały działy tworzące rozwiązania dla operatorów telekomunikacyjnych (NokiaSiemens Networks miała duże straty, ale Nokia postanowiła jeszcze &lt;a href="http://mediacenter.motorola.com/content/detail.aspx?ReleaseID=13055&amp;amp;NewsAreaId=2"&gt;przejąc&lt;/a&gt; analogiczny dział od Motoroli. Tak więc w tej branży liczącym się konkurentem Nokii pozostał Ericsson. To oznacza że Nokia w czasach kryzysu zamiast zajmować się wprowadzaniem programów oszczędnościowych czy redukcją załogi tylko dlatego żeby mieć lepsze zyski Nokia poprzez przejmowanie firm takich jak Symbian, czy Trolltech inwestuje w ludzi i w technologie. To jest główna różnica w stylu zarządzania Finów od Amerykanów.&lt;br /&gt;
&lt;br /&gt;
Media i analitycy (szczególnie amerykańscy) wręcz nienawidzą Symbiana. Skoro Microsoft, RIM, Apple, Google, Palm mają własny system operacyjny to dlaczego Nokia dalej popiera Symbiana? Odpowiedz jest prosta bo ten system operacyjny nie wymaga mocnych procesorów i sprawia że produkcja inteligentnych komórek jest tańsza, a co za tym idzie dłuższe działanie baterii. Reakcją Finów na iPhone było rozpoczęcie prac nad Symbianem S60 5th edition, który na rynek wszedł w 4Q 2008. Cały rok 2009 to czas na przygotowanie do udostępnienia kodu źródłowego Symbiana^3. Nokia wprowadzając otwarty model zarządzania nad kodem źródłowym pośrednio pozbywa się potencjalnych zysków. Nokii zależy na współpracy niż na rywalizacji. Przykładem jest przejęcie działu od biznesowych rozwiązań Symbiana przez Accenture od Nokii. Samsungowi taka rola do końca nie odpowiada i postanowił zainwestować w włąsny system operacyjny. Udostępnienie kodu źródłowego jest strategią długoterminowa, głownie mającą na celu rozbrojenie przeciwników którym nie podoba się Symbian. Jeżeli nie podoba się komuś w tym systemie to może włączyć się do społeczności i razem z nimi poprawić to co nie podoba się. W dłuższej perspektywie dojdzie do powstania firm tworżących wyspecjalizowane dystrybucje Symbiana (np: komercyjne wsparcie dla architektury Atom na x86). To co różni Symbiana od Androida jest to że zarządzanie kodem źródłowym jest jawne, dotyczy to głownie tego że programiści wiedzą czego mogą się spodziewać w następnych wersjach Symbiana. Dlaczego Symbian jest taki dobry to prawie nikt o tym nie pisze? &lt;br /&gt;
&lt;br /&gt;
W tym dochodzimy do sedna problemu. Mało ludzi chce pisać o Symbianie, gdy wszyscy krytykują go. Trzeba rzeczywiście dobrze poznać ten system operacyjny zanim zacznie o nim pisać. A co dopiero pisać o programowaniu na nim. Wychodzę z założenia, że należy dobrze poznać to co się ma, niż iść za modą i wymieniać modele komórek na nowsze. Ponieważ Symbian jest mało znany w Ameryce Północnej,powoduje to że blogosferze amerykańskiej powstaje sporo mitów o tym systemie operacyjnym. Brak instytucjonalnego wsparcia ze strony Nokii powoduje frustrację wielu sympatyków OS Symbian i ich zniechęcenie. W takiej sytuacji Nokia skoncentrowała się na rozwijaniu Forum Nokia społeczności dla programistów. Szybko doszło do sytuacji w której setki ludzi którzy cheliby zacząć programowanie na Symbiana natrafiali na barierę krzywej uczenia się. &lt;br /&gt;
Brak wsparcia w samodzielnym uczeniu się Symbiana i fakt że dokumentacja Symbiana jest raczej dla tych którzy znają Symbiana, a książki do nauki Symbiana są napisane takim stylem akademickim co nie sprzyja dobrej opinii dla Symbiana. To co powinno nastawienie do Symbiana dużo zależy od blogerów i nieformalnych działań w środowisku programistów Symbiana. Polecam czytanie takich blogów jak &lt;a href="http://www.nokiadevs.com/"&gt;Nokia Developers&lt;/a&gt;, czy blogi pisane przez &lt;a href="http://symbianodessey.com/"&gt;Vishala Dharankara&lt;/a&gt;, czy &lt;a href="http://qt-mobility.blogspot.com/"&gt;Hendy Irawana&lt;/a&gt;. Bardzo dużym zainteresowaniem cieszy się inicjatywa &lt;a href="http://www.symbiandevco.org/"&gt;Symbian Developer Cooperative&lt;/a&gt;, która chce skupiać ludzi profesjonalistów zajmujących się Symbianem. Są to jednak strony znane tylko w wąskim gronie ludzi, głównie programistów a nie wśród ludzi zajmujących się analizą rynku inteligentnych komórek. Ci analitycy i dziennikarze powinni czytać takie blogi jak &lt;a href="http://mobilephonedevelopment.com/"&gt;Mobile Phone Development&lt;/a&gt; pisany przez Simona Judge,  czy &lt;a href="http://communities-dominate.blogs.com/"&gt;Communities Dominate Brands&lt;/a&gt; pisany przez Tomi T Ahonena bądź blog &lt;a href="http://www.visionmobile.com/blog/"&gt;VisionMobile&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
Zazwyczaj problemy z amerykańskimi operatorami sprawiają że Nokia przez długie lata miała słabą pozycję w Ameryce Północnej. Trzeba pamiętać że o sukcesie inteligentnych komórek bardzo duży wpływ mają operatorzy i to oni często decydują o tym co mają wybierać ich klienci. OPK powinien często podróżować do Stanów Zjednoczonych dużo spotykać się z kadrą zarządzającą od amerykańskich operatorów telekomunikacyjnych i udzielać dużo wywiadów mediom amerykańskim. Stworzyć w Stanach Zjednoczonych centrum marketingowe w którym każdy kto chciałby na przykład nauczyć się programowania na Symbiana miałby tam darmowe lekcje i spotkania. Bardzo dobrą koncepcję byłoby organizowanie "Tour Nokia" cyklicznych objazdów z wykładami o tym czym jest Symbian. Owszem jest to kosztowne logistycznie. Myślę że warto zrobić "big comeback" Nokii w Stanach Zjednoczonych i skoncentrować się na wartości merytorycznej (a nie tylko części artystycznej).&lt;br /&gt;
&lt;br /&gt;
Porażką Nokii był model N97. Nokia nie chciała dać wyłączność operatorom tylko sprzedawać bezpośrednio klientom. Tą samą drogą poszedł Google z Nexusem One i też poniósł klęskę w dystrybucji. Jest bardzo mało ludzi którzy chcieliby sami od razu kupić nowy model komórki. Trzeba pamiętać że że większość ludzi preferuje płacić raty za inteligentną komórkę w abonamencie. Inny problem polegał na tym że N97 sprzedawano pod hasłem marketingowym "zabójca iPhona". Zresztą to okazało się że to nie miało pokrycia z rzeczywistością.  Użytkownicy iPhona często korzystali z przeglądarki internetowej która była często aktualizowana. Natomiast użytkownicy N97 nie mieli takiego komfortu. Wymusiło to na Nokii wprowadzenie planu aktualizacji przeglądarki internetowej OSS Browser. I zaproponowanie programistom tworzenie aplikacji internetowej na bazie QtWebKit. Ale niesmak pozostał. &lt;br /&gt;
&lt;br /&gt;
Randall Arnold autor bloga Tabula Crypticum w swoim artykule &lt;a href="http://tabulacrypticum.wordpress.com/2010/07/21/how-nokia-can-retake-the-us-market-and-more/"&gt;How Nokia can retake the US Market… and more&lt;/a&gt; wskazuje na czynniki które mogą przyczynić się do powrotu Nokii na rynek amerykański. Obecność pasjonatów i ich wspieranie. Częste organizowanie spotkań dla programistów i firm w których pracują. Aktywizacja medialna w postaci masowej reklamy filmów dla profesjonalistów. Niechaj masowo inwestują w markę Qt czy Nokia bądź Symbian w świadomości amerykańskich firm i przedsiębiorców. Nokia ma uczyć ludzi korzystania z ich komórek a nie tylko pokazywać co mogliby zrobić z ich komórkami. Produkty na rynek amerykański powinny mieć nazwy zwyczajowe a nie tylko skróty. Zrobić nowy branding tak jak z modelami &lt;a href="http://www.vertu.com/in-en/home#in-en_home"&gt;Vertu&lt;/a&gt;. W przypadku słabego zainteresowania na rynku amerykańskim dobrym rozwiązaniem  jest subsydiowanie "klona" E71 i N900. Wsparcie ze strony Intela powinno pomóc Amerykanom wybierać ich swoje produkty i wypromować Intela jako "ojca" MeeGo, a Nokię potraktować jakby tylko producenta. Aktywniej prowadzić komunikację medialną w sytuacjach kryzysowych. (np: dlaczego nikt z rady zarządzającej Nokii nie potwierdził czy zaprzeczył plotce o tym że akcjonariusze chcą zmiany CEO). Zmniejszyć skutki działania biurokracji w zarządzaniu firmą ba często kadra zarządzająca nie ma do końca dobrego obrazu tego czym zajmuje się firma. &lt;br /&gt;
&lt;br /&gt;
Najważniejsza rada od Randalla Arnolda to zaprzestanie prowadzenie polemik z niezadowolonymi klientami i reagowanie szybko na zaistniałe problemy. Często jest tak że ludzie nie umieją korzystać z komórek. Dlaczego ludzie mają tyle problemów z centrami naprawy komórek? Sensownym rozwiązaniem jest wprowadzenie programu wymiany komórek w centrach naprawy komórek, niż naprawianie samych komórek. Można sobie wyobrazić jak ktoś uszkodzi komórkę to oddaje komórkę a z serwisu naprawy czy od operatora dostanie nową komórkę. Nokia musi nauczyć się i operatorów też zarządzać skutecznie recyclingiem i komórkami z serwisów i ze zwrotów od klientów. Dużym plusem takiego programu jest to ludzie będą mieli motywację do pozbywania się starych komórek Nokii, a one same po "naprawie" mogą dalej trafić do dalszej oficjalnej sprzedaży. Skuteczny sposób na zadowolonych klientów. &lt;br /&gt;
&lt;br /&gt;
Niestety tak to już jest że łatwo krytykować i wskazywać słabe strony. Rzadko ktoś zada wysiłek przemyślenia i opisze przyczyny oraz poda rozwiązanie. Dlatego uwagi ludzi którzy byli w Nokii (ale już teraz nie są) są bardzo cenne.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-5667238927583070471?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/OSwQiL0UWXg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/5667238927583070471/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=5667238927583070471" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/5667238927583070471?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/5667238927583070471?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/OSwQiL0UWXg/ludzie-nokii.html" title="Ludzie Nokii" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/07/ludzie-nokii.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak8AQH88eyp7ImA9WxFbFUU.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-6815660938915995150</id><published>2010-07-08T13:34:00.000+02:00</published><updated>2010-07-08T13:34:01.173+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-08T13:34:01.173+02:00</app:edited><title>Symbian^3 to potęga programistyczna do sześcianu</title><content type="html">Prawie wszystkie informacje o Symbianie ^3 tak naprawdę dotyczą tylko tego kiedy Nokia wypuści swój model &amp;nbsp;inteligentnej&amp;nbsp;komórki z tym systeme operacyjnym. Prawie nikt nie pisze o tym co nowego dla programistów wprowadzono w Symbianie^3.&amp;nbsp;Obecnie mamy 3 główne źródła informacji dla programistów Symbiana ^3: Nokia Qt SDK, Nokia Symbian^3 SDK oraz Symbian Foundation Symbian^3 PDK.&lt;br /&gt;
&lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/e920da1a-5b18-42df-82c3-907413e525fb/Nokia_Qt_SDK.html"&gt;Nokia Qt SDK&lt;/a&gt; zawiera w sobie &lt;a href="http://qt.nokia.com/products/appdev/add-on-products/catalog/4/new-qt-apis/mobility"&gt;Qt Mobility 1.0&lt;/a&gt; co pozwala programistom już teraz programować możliwości Symbiana^3 w Qt. Myślę, że najciekawsze będzie jak programiści wypuszczą &lt;a href="http://get.qt.nokia.com/qt/source/qt-symbian-opensource-4.7.0-beta1.exe"&gt;Qt Quick pod Symbiana&lt;/a&gt; i nowszą wersję &lt;a href="http://trac.webkit.org/wiki/QtWebKitWeeklyBuilds"&gt; QtWebkit 2.0&lt;/a&gt; (z pełną obsługa HTML5 i CSS3 jako Webkit 528) w wydaniu Qt 4.7 Dodatkowo jeszcze będzie można będzie &lt;a href="http://wiki.forum.nokia.com/index.php/Nokia_Qt_SDK_Remote_Compiler"&gt;zdalnie kompilować kod&lt;/a&gt; na różne platformy i w tym na Symbiana^3. Głównym źródłem dokumentacji dla programistów jest &lt;a href="http://doc.qt.nokia.com/4.7-snapshot/index.html"&gt;Qt Reference Documentation&lt;/a&gt;.&amp;nbsp;Qt dla Symbiana zawiera tylko cześć tego co jest możliwe do wykorzystania przez programistów Symbiana C++&lt;br /&gt;
&lt;br /&gt;
Nokia Symbian^3 SDK to właściwa dokumentacja API wszystkich technologii które wchodzą w skład Symbian^3. W tym artykule skupię się na tym co nowego jest w Symbian^3&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-B7A40638-BA80-5175-B23D-2F3964C274A0.html"&gt;FreeWay &lt;/a&gt;to pozwala programistom na stworzenie aplikacji typu firewal czy hotspot. &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-34BEF44B-EFBE-41EB-941D-0410FCB6782E.html"&gt;One-Click Connectivity&lt;/a&gt; to wbudowana funkcjonalność pozwalająca na szybkie łączenie się i przełączania się pomiędzy punktami dostępu. &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-04942CB4-51C0-51DE-9C8B-4CFBA6970073.html"&gt;USB On-The-Go (OTG):&lt;/a&gt; pozwala na podpinanie masowych pamięci przez port USB inteligentnej komórki. AVRCP (Audio/Video Remote Control Profile) v1.4 pozwala na zdalne sterowanie urządzeniami Bluetooth w tym przypadku ma się dostęp do playlisty urządzenia. Obsługuje już obecnie pełny zestaw poleceń AT to co często było kiedyś używane w telekomunikacji do zdalnego sterowania urządzeniami.&amp;nbsp;Ciekawsze możliwości są w zakresie obsługi geolokalizacyjnych API: Management Object (MO) for A-GPS, Application Processor Engine (APE) Centric Location Architecture. Location Based Services (LBS) SUPL Positioning Module (PSY) pozwala na bazie CelID okręslić położenie i przesłać dane SUPL v2.0. Wsparcie dla chipsetów GPSCost5.0D i GPSCost4.0D GPS pozwoliło stworzyć nowe A-GPS Nokia Positioning Engine (NPE) a także LBS SUPL Radio Resource LCS Protocol (RRLP) jako nowy sposób określania położenia wg stacji bazowych nowej generacji Aplikacje geolokalizacyjne bedą mogły wykorzystywać dane wg standardu &lt;a href="http://www.openmobilealliance.org/Technical/release_program/supl_v2_0.aspx"&gt;Secure User Plane Location v 2.0&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
W zakresie multimediów sprzętowo dodano API dla : Mobile TV DVB-H Receiver HAI, który pozwala na dostęp do telewizji mobilnej w sposób programistyczny. Jest też Fusion Player Application który jest główną aplikacją multimedialną w Symbianie. Niskopoziomowy dostęp do dźwięku jest możliwy dzięki API OpenMAX IL, który stanowi podstawę programistyczną do Multimedia Device Framework (MDF) do obsługi wyższego API: &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-170A1D9C-12CB-502A-BCB3-9E2AEBB207FA.html"&gt;Thin Adaptation of A3F DevSound&lt;/a&gt;,&amp;nbsp;który jest wysokopoziomową biblioteką do obsługi dźwięków. Kolejną nowością jest &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-042868E6-88BF-5797-BB53-8E34283DCF16.html"&gt;Image Processor library&lt;/a&gt;, który jest wysokopoziomowym API do obsługi obróbki obrazu głównie zdjęć. &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-98499337-5CB4-5A9C-907A-95FF57775983.html"&gt;Camera API Extensions&lt;/a&gt;: zawiera wysokopoziomowe API do obsługi aparatu fotograficznego dzięki czemu będzie można&amp;nbsp;tworzyć&amp;nbsp;programy dla aparatu fotograficznego na przykład tworzące dopowiednio zdjęcia do dalszej obróbki HDR Symbian^3 posiada też &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-D038D77F-A6B8-5A18-8978-4981AE8D0F35.html"&gt;zapis video wg kodeka H264&lt;/a&gt;, a także umożliwia zapis do dużych rozmiarów plików 3GP, 3G2 i MP4. Można też programistyczne dzięki &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-412CB101-A92C-54E1-9518-79E94DD40A08.html"&gt;Video Subtitle CRP&lt;/a&gt; ustawiać napisy w filmach video. Jest też wsparcie dla Dolby Digital Audio 5.1 co w praktyce oznacza możliwość podłączenia komórki do zestawu Hi-Fi poprzez port HDMI. Podobnie można poprzez ten port podłączyć się do telewizora i oglądać filmy czy prezentację z plików graficznych. Nie jest dla mnie pewne jak inne aplikacje mogłyby być wyświetlane przez HDMI na telewizorze. Istotne dla multimediów jest to że istnieje API &lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-15B17B8F-5790-526D-80EA-1ED7A396349C.html"&gt;Metadata Utility Library&lt;/a&gt;, dzięki któremu umożliwia odczyt czy edycję metadanych w pikach multimedialnych.&lt;br /&gt;
&lt;br /&gt;
Z interfejsu użytkownika stworzono 6 ekranów na podgląd widgetów HomeScreen. Ponieważ za grafikę w pełni odpowiada procesor graficzny to do obsługi UI dodano nowe efekty i przejścia Nie wiadomo czy będzie można je zaprogramować we własnej aplikacji. Dodano takie możliwość powiększania 2 palcami, kinetyczne scrolowanie. Rozbudowano nowy interfejs do tworzenia motywów. Dzięki odtwarzaczowi telewizji mobilnej można oglądać telewizję nadawaną DVB-H (720pp przy 12 Mbps 30 kl/s). Przeglądarka plików graficznych oparta jest na Extended ICL JPEG API. Można też programistyczne odtwarzać i transmisję&amp;nbsp;&lt;a href="http://library.forum.nokia.com/index.jsp?topic=/Nokia_Symbian3_Developers_Library/GUID-E56EB25C-9B94-5486-9492-5151FDF79B6C.html"&gt;Radio FM&lt;/a&gt;. Dużą ciekawostką jest współdzielenie transmisji wideo w normalny sposób dla dzwoniącego, nie trzeba używać protokołu videokonferencji bo za całe zadanie odpowiada Multimedia Comms Engine API, które jeszcze nie jest udokumentowane podobnie jak Video Telephone API.&lt;br /&gt;
&lt;br /&gt;
Wprowadzono istotne zmiany w podstawach działania systemu Symbian. Writable Data Paging (WDP) pozwala na dynamiczne zapisywanie pamięci RAM na dysku C co powoduje szybsze działanie wielu aplikacji w trybie wielowątkowym. W praktyce to oznacza że ilość pamięci RAM będzie tylko używana do aktywnej aplikacji Pozostałe aplikacje w tle dynamicznie będą zapisywane na dysku. Przypomina to działanie pliku stronicowania w Windows XP. Przepisano kod Symbiana tak żeby można było wykorzystać wielordzeniową architekturę taką jak ARM Cortex A9 zawierające rozwiązanie typu Symmetric multiprocessor (SMP). Serwer obsługujący system plikowy stał się 64-bitowy co pozwala na obsługę plików większych niż 2 GB.&lt;br /&gt;
&lt;br /&gt;
Dodano nowy silnik Browser Application v7.2 (znany jako WebRuntime 7.2 bazujący na Webkit 528), który zawiera następujące cechy: silnik przeglądarki, możliwość dopasowywania funkcjonalności przeglądarki, możliwość programowania wtyczek, nawigacja dotykiem, dostęp do lokalnej zawartości, dopasowywanie strony WWW do rozmiarów wyświetlacza, Optical Finger Navigation (OFN), obsługa zawartości FlashLite 3.1, integracja z wyszukiwarkami, lepsze komunikaty z zakresu bezpieczeństwa, aktualizacja Platform Service API, wsparcie do wizualnego trybu przełączania się (prawdopodobnie chodzi o to że przełączanie się pomiędzy oknami przeglądarki),&amp;nbsp;lepsza wydajność dzięki JIT i sprzętowej obsłudze grafiki i renderingu strony WWW.&lt;br /&gt;
&lt;br /&gt;
Przystosowano Java Runtime do pracy w Symbianie^3. Oficjalne teraz to nazywa się &lt;a href="http://developer.symbian.org/main/source/packages/package/index.php?pk=266"&gt;Mobile Runtime for Java Application&lt;/a&gt;. Jest &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/67033bd7-6da9-4fae-a69c-0f1d4d640303/Whats_new_in_JRT_2_1.html"&gt;dokument omawiający zmiany&lt;/a&gt; jakie zaszły w Java Runtime 2.1 for Symbian (JRT2.1) Główne zmiany to: uruchamianie innych aplikacji i midletów, zaimplementowanie w LCDUI pojedynczego dotknięcia, wsparcie sprzętowe przy wyświetlaniu grafiki, robienie zrzutów ekranu, obsługa schowka, dodanie własnej grafiki wyświetlanej podczas uruchomienia midletu.&lt;br /&gt;
&lt;br /&gt;
Natomiast trochę dziwnie postępują z Pythonem for Symbian. Ustalono, że&amp;nbsp;użytkownik&amp;nbsp;komórki sam zadecyduje o tym czy zechce aktualizować do swojej komórki runtime Pythona. Na razie przeniesiono kod&amp;nbsp;źródłowy&amp;nbsp;do &lt;a href="https://developer.symbian.org/oss/FCL/sf/incubator/python/file/ca70ae20a155/"&gt;repozytorium fundacji Symbian&lt;/a&gt;.&amp;nbsp;Natomiast&amp;nbsp;całe centrum rozwojowe nad Pythonem znajduje się na &lt;a href="https://garage.maemo.org/frs/?group_id=854"&gt;Garage Maemo&lt;/a&gt;. Dopóki nie zrobią &lt;a href="http://www.pyside.org/"&gt;PySide&lt;/a&gt; pod Symbianem &lt;br /&gt;
&lt;br /&gt;
Dla programistów rozbudowano API o nowe możliwości. Programowanie w Symbianie wymagałobiegłej znajomości makr czy deksyptorów&amp;nbsp;pojawiła&amp;nbsp;się nowa biblioteka której zadaniem jest ułatwienie programistom lepsze zarżadzanie&amp;nbsp;pamięcią&amp;nbsp;- &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-D60B55FA-D8C1-559A-9D99-48845BE32A6C.html"&gt;EUser High Level (EUserHL) Library API&lt;/a&gt;. Programiści mogą programować w C++ a szczególnie w bibliotekach IOStream i STL (Standard Template Library) oraz Boost co zostało opisane w &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-2C5B58F2-6BD2-5C2B-8E1B-CFB3D7EB6ED9.html"&gt;Standard C++ Library (STLport v5)&lt;/a&gt;. Do obróbki dokumentów XML programiści maja nowe 2 API: &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-05A3E75B-25F9-54AC-8AF8-3E97F832E626.html"&gt;XML DOM Engine and XPath API&lt;/a&gt; i jak &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-33D50AB9-AFA8-521F-8A85-031C24EA7D25.html"&gt;Libxm2 Library API&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
W Symbianie^3 domyślnym API do zarządzania trwałością danych w aplikacjach staje się biblioteka SQLite &amp;nbsp;która pozwala to na tworzenie bardziej wyrafinowanych klientów różnych aplikacji biznesowych dzięki wbudowanej obsłudze języka &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-02C9C31A-6563-59E4-BF46-129F4ED95087.html"&gt;SQL&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
Standardy &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-50254C2F-57B6-58C4-911F-294EF2B79C04.html"&gt;grupy Khronos&lt;/a&gt; mają coraz większe znaczenie. Dzięki temu że podsystem grafiki zawsze wymaga wsparcia mobilnych procesorów grafiki GPU to stało się możliwe w pełni zaimplementowanie  API jak &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-12D5C140-DFDA-549B-9CCF-EF7488B832AE.html"&gt;OpenGl ES 2.0&lt;/a&gt; dla grafiki trójwymiarowej i jak &lt;a href="http://library.forum.nokia.com/nav/8_9_2_5_5_0"&gt;OpenVG&lt;/a&gt; dla sprzętowej obsługi grafiki wektorowej a także zaimplementowano &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-D252E75C-C8CA-5C51-8DA3-95B937A1295C.html"&gt;interfejs EGL&lt;/a&gt;, którego zadaniem jest przejecie od niskopoziomowego API Symbiana programowania sposobu wyświetlania.&amp;nbsp;Na bazie tych standardów&amp;nbsp;stworzono&amp;nbsp;nowy silnik renderujący &lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-83510B5B-9725-5272-BF51-23A089178DAC.html"&gt;OpenWF&lt;/a&gt; co stanowi wysokopoziomową API dla OpenGL ES, OpenVG i jak EGL. Właściwie dopiero teraz programiści Symbiana dostali jawne API na którym mogą tworzyć własny GUI dla swojej aplikacji a w przyszłości przejść z AVKON na jakiś własny system interfejsu użytkownika. W S60 to też jest możliwe stworzenie nakładki na ten GUI i aplikacje Symbiana mogą inaczej wyglądać, przykładem jest silnik Kastor firmy TAT.&lt;br /&gt;
&lt;br /&gt;
W Symbianie^3 zmienił się wygląd pulpitu użytkownika tzw HomeScreen Rozbudowano nowe API do obsługi interfejsu HomeScreen o: E-mail Widget API (pozwala obsługiwać pocztę z poziomu pulpitu) Extended Content Publisher API (pozwala na publikację zawartości na pulpicie),&amp;nbsp;Home Screen Widget Publisher API (pozwala na zarządzanie widgetami na pulpicie) Location Centre Utility API (pozwala na uruchamianie aplikacji i zarządzanie nimi z poziomu pulpitu).&lt;br /&gt;
&lt;br /&gt;
Pozostawienie frameworka AVKON (S60 GUI) jest podyktowane tym, żeby uruchamiać wszystkie programy, które były pisane pod S60 3rd i S60 5th a programiści mieli jak najmniej pracy z przeniesieniem funkcjonalności "jednego dotyku" w Symbianie^3. Więcej o przystosowaniu kodu ze Symbiana^1 do Symbiana^3 można przeczytać w artykule&amp;nbsp;&lt;a href="http://library.forum.nokia.com/topic/Nokia_Symbian3_Developers_Library/GUID-165EE4DD-C9CA-430B-8377-068A4194716E.html"&gt;Modifying applications to support single-tap&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
To co sprawia że Symbian^3 wyprzedza konkurencję o lata świetlne to obsługa nowych protokołów komunikujących się pomiędzy urządzeniami. Do tej pory efektywny sposób programowania komunikacji pomiędzy urządzeniami w sposób bezprzewodowy opierał się na Bluetooth. Nowe rozwiązania w tym temacie to wykorzystanie NFC i WiFi Direct a do obsługi urządzeń komunikujących się między sobą w Symbianie^3 Zaimplementowano &lt;a href="http://developer.symbian.org/wiki/index.php/Service_Discovery_and_Usage_Package"&gt;UPnP&lt;/a&gt; i  Zeroconf. Najciekawsze możliwości maja programiści którzy chcieliby wykorzystać NFC. Zawiera to takie interfejsy programistyczne jak: NFC Discovery API (służy do subskrypcji tagów i wiadomości NDEF), NFC Tag Extension API (dostarcza implementację do obsługi rożnych rodzajów tagów NFC), NDEF API (obsługa wiadomości NDEF w tagach), NFC Peer-to-Peer API (dostarcza obsługę protokołu LLCP do komunikowania się pomiędzy urządzeniami NFC), NFC Content Handler API (komponent ECOM obsługujący wiadomości NDEF).&lt;br /&gt;
&lt;br /&gt;
To co sprawia że programowanie na Symbiana stanie się przyjemniejsze to jest wsparcie do biblioteki Qt. Jest szansa że spora&amp;nbsp;cześć&amp;nbsp;programów pisanych pod Linuxem KDE może zostać przepisana na Symbiana i MeGoo. Właściwie taka "symbioza" pomiędzy tymi systemami operacyjnymi jest bardzo korzystna dla ekosystemu programistów Symbiana. Lekki edytor QtCreator 2.1 prawdopodobnie stanie się najpopularniejszym edytorem C++ wśród programistów Symbiana. Natomiast Carbide.C++ 3.0 bardziej będzie nadawało się do programowania kodu na wszystkie wersje i wykorzystaniem prac nad tworzeniem interfejsu użytkownika w Designerze UI. natomiast kolorystykę i styl aplikacji będzie można przygotować w &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/bb173537-4e67-496f-9967-50917d5cfc47/S60_Theme_Studio_for_Symbian_OS.html"&gt;Carbide UI&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Symbian Foundation Symbian^3 PDK to jest wersja Symbiana^3 z kodem źródłowym i z kompletnym wsparciem narzędziowym Największą zmianą jest wdrożenie środowiska do emulacji Symbiana na bazie QEMU tzw: Syborg co pozwala że programy skompilowane pod platformę ARM mogą zostać uruchomione pod platformą Windows.&lt;br /&gt;
&lt;br /&gt;
Całkiem niedawno ukazał się raport &lt;a href="http://www.visionmobile.com/blog/2010/07/mobile-developer-economics-2010-the-migration-of-developer-mindshare/"&gt;Mobile Developer Economics 2010&lt;/a&gt; Jest tam na stronie 12 tabelka w której podano na jakiej platformie programiści preferowali: Symbian preferowało 45% programistów Jave Mobile (J2ME) 50% programistów  Mobile Web (i widgety) 40% programistów a FlashLite to 20% programistów W sumie programistów na Symbiana można znaleźć w Azji i w Europie w dużych firmach. Najciekawsze w tym badaniu wyszło że programowanie na Symbiana nie jest takie trudne w porównaniu z innymi platformami.(na stronach 53-54 raportu)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-6815660938915995150?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/U5vYzrDD-Uc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/6815660938915995150/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=6815660938915995150" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/6815660938915995150?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/6815660938915995150?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/U5vYzrDD-Uc/symbian3-to-potega-programistyczna-do.html" title="Symbian^3 to potęga programistyczna do sześcianu" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/07/symbian3-to-potega-programistyczna-do.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUQGRXg6fSp7ImA9Wx5WF08.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-7799385228084225930</id><published>2010-07-02T02:22:00.006+02:00</published><updated>2010-09-29T04:28:44.615+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-29T04:28:44.615+02:00</app:edited><title>Statystyki Nokii</title><content type="html">Ostatnio brałem udział w polemicznych dyskusjach na temat Nokii i Symbiana. Często bardzo dziwiłem się że ludzie nie potrafią dobrze czytać raportów i wyciągają z nich niewłaściwe wnioski. Ponieważ to co się liczy to są fakty dotyczące sprzedaży ilości inteligentnych komórek. Dodatkową informacja może być informacja o lokalizacji sprzedaży.&lt;br /&gt;
&lt;br /&gt;
Spróbujemy popatrzeć na rynek w latach 2007- 2010 wtedy właściwie nas interesuje ilość sprzedanych komórek z Symbianem. Pomimo że tego w &lt;a href="http://investors.nokia.com/phoenix.zhtml?c=107224&amp;amp;p=irol-newquarterlyearnings"&gt;raportach&lt;/a&gt; nie ma wprost. To da się wyciągnąć dość ciekawe wnioski. Tutaj opublikowałem &lt;a href="https://spreadsheets.google.com/ccc?key=0Aru_c2bRRj1edDlOY1hzLWNlWDd1WlNlcHdIdGNiZ3c&amp;amp;hl=pl"&gt;swoje podsumowanie&lt;/a&gt; tych danych&lt;br /&gt;
&lt;br /&gt;
Sytuacja medialna Nokii jest nie do pozazdroszczenia. Potwierdza się informacja o tym że fundusze inwestycyjne &lt;a href="http://www.rethink-wireless.com/2010/06/14/soros-buys-nokia-profit-warning-feared.htm"&gt;Sorosa&lt;/a&gt; grają spekulacyjne na akcjach Nokii, Pierwsze informacje o tym że przychody Nokii są poniżej spodziewanych z powodu słabego euro było zamieszczone informacji, że przychody działu Devices Sevices są niższe niż 6,7 mld euro. Szkoda, że nikt nie zrobił analizy jak&amp;nbsp;wygląda&amp;nbsp;sytuacja w poprzednich latach w &lt;a href="http://investors.nokia.com/phoenix.zhtml?c=107224&amp;amp;p=irol-newquarterlyearnings"&gt;raportach.&lt;/a&gt;&amp;nbsp; Skoro przychody w ciągu 2009 roku z tego działu były powyżej 6 mld euro to zejście na poziome 5 mld euro w 2Q 2010 zł to naprawdę oznacza tylko, że firma będzie miała mniejsze zyski. Nawet jak okaże się że znowu Nokia sprzedała 20 mln smartfonów w drugim kwartale 2010. To nic nie ma wspólnego z tym że Apple sprzedało w ciągu 3 dni 1,7 mln iPhonów 4. W Ameryce miliony ludzi chce przejść ze zwykłych komórek na inteligentne. Tam łatwiej im kupić komórki z Androidem czy iOS. Popatrzmy jeszcze inaczej. Z moich szacunków wynika w 2 kwartale 2010 że: RIM sprzedał 10 mln, Android miał &amp;nbsp;15 mln aktywacji a Apple sprzedało 3 mln iPadów i 12 mln iPhonów. Po sprzedaniu takiej dużej ilości to okaże się, że znowu globalnie Nokia najwięcej sprzedaje komórek z Symbianem. Ponieważ komórki z Symbianem stają się coraz tańsze, a co za tym idzie bardziej dostępne niż cała reszta smarfonów za cenę mniejszych zysków.&lt;br /&gt;
&lt;br /&gt;
Trzeba powiedzieć wyraźnie Nokia jest &lt;b&gt;liderem w sprzedaży inteligentnych komórek&lt;/b&gt;.&lt;br /&gt;
Nokia w ciągu 3 lat sprzedała &lt;b&gt;200 milionów komórek&lt;/b&gt; &lt;b&gt;z Symbianem&lt;/b&gt;. W ramach serii N sprzedano 92 miliony egzemplarzy, natomiast w ramach serii E sprzedano 35 miliony egzemplarzy.&amp;nbsp; Od 2007 roku Nokia wyprodukowała&amp;nbsp; &lt;b&gt;1444 milionów komórek pod własną marką&lt;/b&gt;. &lt;br /&gt;
&lt;br /&gt;
Nawet jak przychody będą nieco mniejsze, a spekulanci grali na akcjach Nokii, a szefowie Apple czy Google mogą chwalić się wielkością sprzedaży, to jednak jest coś dziwnego,&lt;br /&gt;
&lt;br /&gt;
Zauważyłem medialne zjawisko propagandowe, które nazwałbym "wojną o śmierć Symbiana". Jest to objaw reakcji amerykańskich analityków i badaczy rynku którzy z perspektywy amerykańskiego rynku widząc coraz mniejsze udziały w rynku amerykańskim komórek Nokii zaczynają pisać teksty nieprzychylne Nokii i pod adresem systemu operacyjnego Symbian. Bardzo doskonale w to udało się zaangażować emocje milionów ludzi. Spowodowało to że w dyskusjach o komórkach Nokii zaczęły brać pejoratywne emocje. W tej sytuacji gdy rosną oczekiwania użytkowników pojawia się frustracja. W większości przypadków frustracja ta była spowodowana niewiedzą, bądź nie pogodzeniem się z ograniczeniami tych urządzeń. Zauważyłem bardzo częstą sytuację, że bezkrytycznie powiela się pewne schematy myślowe byleby pasowało do tezy, że Symbian i Nokia już nie rozwijają się tak jak ich konkurencja. W takiej sytuacji gdy w obiegu jest pełno nieprawdziwych, bądź niedopowiedzeń powoduje to, że ludzie w takie informacje zaczynają wierzyć a niewiedza robi swoje. Amerykańcy blogerzy w poczuciu bezradności z cała sytuacją medialną zaczynają coraz mocnej krytykować Nokię. Przykładowe teksty z ostatniego miesiąca:&lt;br /&gt;
&lt;a href="http://www.mobileroyale.co.cc/the-mass-exodus-of-symbian-bloggers/"&gt;The Mass Exodus of Symbian Bloggers..&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.symbian-guru.com/welcome/2010/07/symbian-guru-com-is-over.html"&gt;Symbian-Guru.com Is Over&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://tabulacrypticum.wordpress.com/2010/06/27/an-open-letter-to-nokia-for-2010/"&gt;An Open Letter to Nokia for 2010&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.arcticstartup.com/2010/06/18/7-ways-nokia-can-win-again"&gt;7 Ways Nokia Can Win Again&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.xihalife.com/b/setok/whining-kris/nokia-please-kill-symbian/"&gt;Nokia, Please Kill Symbian&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.engadget.com/2010/06/23/nokia-n8-to-be-final-symbian-device-in-n-series-all-meego-from/"&gt;Nokia N8 to be final Symbian N Series device, all MeeGo from here on out&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.duketek.com/blog/2010/06/18/nokia-and-the-new-age-of-mobile-development/"&gt;Nokia and the new age of mobile development&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://eu.techcrunch.com/2010/06/09/where-is-nokias-steve-jobs-not-available-just-yet/"&gt;Where is Nokia’s Steve Jobs? Not available, just yet&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.bloomberg.com/news/2010-06-13/nokia-s-delay-on-shiny-things-leaves-it-last-in-line-for-apps-developers.html"&gt;Nokia Loses Battle for Apps as IPhone, Android Snare Developers&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.intomobile.com/2010/07/01/symbian-guru-is-dead-are-there-any-nokia-advocates-left/"&gt; Symbian-Guru is dead, are there any Nokia advocates left?&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;W Polsce na blogu pasjonatów technologii SpiderWeb sporo pojawiło się artykułów inspirowanych medialną atmosferą. Ponieważ powielały one poglądy z angielskojęzycznych artykułów zupełnie nie pasujące do specyfiki w Polsce. Często pokazywałem w komentarzach uwagi wskazujące na tendencyjność autorów artykułów.&amp;nbsp;Zapraszam do przeczytania moich komentarzy pod tymi artykułami.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.spidersweb.pl/2010/05/nokia-musi-pozbyc-sie-przeszlosci.html"&gt;Nokia musi pozbyć się przeszłości&lt;/a&gt;&lt;a href="http://www.blogger.com/goog_1667993849"&gt;&lt;br /&gt;
&lt;/a&gt;&lt;a href="http://www.blogger.com/goog_1667993849"&gt;&lt;/a&gt;&lt;a href="http://www.spidersweb.pl/2010/06/ovi-store-nokii-czy-ktos-to-jeszcze-pamieta.html"&gt; Ovi Store Nokii – czy ktoś to jeszcze pamięta?&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.spidersweb.pl/2010/06/dlaczego-nokia-traci-programistow.html"&gt;Dlaczego Nokia traci programistów?&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.spidersweb.pl/2010/06/alternatywny-swiat-zludzen-nokii.html"&gt; Alternatywny świat złudzeń Nokii&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.spidersweb.pl/2010/06/adobe-wydal-flash-player-10-1-dla-komorek-ale-zapomnij-ze-go-uzyjesz.html"&gt; Adobe wydał Flash Player 10.1 dla komórek, ale zapomnij, że go użyjesz&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.spidersweb.pl/2010/06/koniec-ery-symbiana-nokia-oddaje-rynek-smartfonow-konkurencji.html"&gt;Szkolne błędy Nokii&amp;nbsp;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.spidersweb.pl/2010/06/koniec-ery-symbiana-nokia-oddaje-rynek-smartfonow-konkurencji.html"&gt;Koniec ery Symbiana. Nokia oddaje rynek smartfonów konkurencji&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Stan faktyczny Nokii jest taki, że jako firma ma dochody i jak sprzedaje dużo więcej inteligentnych komórek niż poprzednich latach.  Kiedy Apple wyprodukuje 200 mln iPhonów? Kiedy Google osiągnie 200 mln aktywacji Androida? Nokia wyprodukowała przez ostatnie 3 lata 200 mln inteligentnych komórek. Wartość na giełdzie to w dzisiejszych czasach bardziej zależy od dobrego PR  i obecności na rynku amerykańskim jeżeli firma jest notowana na giełdzie nowojorskiej.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-7799385228084225930?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/LWbO-r6q7cA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/7799385228084225930/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=7799385228084225930" title="Komentarze (6)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7799385228084225930?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7799385228084225930?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/LWbO-r6q7cA/statystyki-nokii.html" title="Statystyki Nokii" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>6</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/07/statystyki-nokii.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcDRnw_cCp7ImA9WxFREU0.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-949899867459456538</id><published>2010-04-20T19:30:00.006+02:00</published><updated>2010-04-24T11:57:57.248+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-24T11:57:57.248+02:00</app:edited><title>Perspektywa biznesowa programisty komórek.</title><content type="html">Zauważyłem że często trafiają się pytania o to jak prowadzić biznes z programowania na urządzenia mobilne. Problem jest taki, że w dzisiejszych czasach przy tak szybkim tempie zmian technologicznym w urządzeniach mobilnych trzeba nastawić się na szybką edukację i dopasowywanie do rynku. Warto spojrzeć na perspektywę rozwoju poszczególnych platform mobilnych.&lt;br /&gt;&lt;br /&gt;Komórki z Symbianem S60 3rd Feature Pack 2 będą dalej produkowane. Natomiast rozwijane będą wersje Symbiana z interfejsem dotykowym.  Problem jest innej natury.  Sama architektura Symbiana wymaga znajomości programowania cech charakterystycznych dla tego systemu operacyjnego. Pomimo, że programowanie programowanie na Symbiana jest odbierane jako coś trudnego to jednak Symbian posiada sporo technologii typu runtime: Java Mobile, Flash Lite, Python, czy Web Runtime.  Symbian ^3 dalej będzie opierał się na frameworku UI AVKON a Symbian ^4 będzie opierał się na frameworku UIEMO bazujący na Qt, więc programowanie pod Symbiana czeka duży wybór technologii do programowania i jak frameworków.  Zawsze będzie wybór przed programistami co do języka programowania  do tworzenia aplikacji na Symbiana. Gdy wprowadzą na rynek urządzenia z Symbianem ^4 w 2012 to ludzie będą programowa w Qt 4.8. Więc pewnie do tego czasu w ciągu półtora roku można nauczyć się spokojnie Qt,  Wtedy kod napisany w Qt będzie przenośny dla wielu aplikacji działających na wielu starych komórkach. Problem będzie jak zechcemy programować aplikacje SIP czy VoIP tutaj trzeba znać niskopoziomowe biblioteki i ich API pod konkretnymi modelami. Niektórych rzeczy raczej do końca nie przewidzi się jak będą są rozwijać. Mam na na myśli interfejsy OpenGL ES czy OpenCL ES.   Dużo zależy też tego co chcemy programować. Programowanie gierek 3D będzie wymagało programowania w Symbian C++ czy OpenC++ ze względu na szybkość i wydajność. Proste aplikacje w szybkim czasie da się napisać w  Pythonie czy w mshellu,  Gdy trzeba uwzględnić to że aplikacja ma też chodzić na zwykłych komórkach to warto wybierać programowanie w Java Mobile (MIDP2.0). Inaczej patrzy się jak trzeba  napisać kod crossplatformowy uwzględniający Symbiana - wybiera się wtedy frameworki typu Airplay, MoSync, Corona, PhoneGap czy OpenPlug Elips Studio 3 .  Perspektywa pojawienia Symbiana^4 spowoduje to ze programiści mogą ograniczyć się do programowania na Qt  Pomimo tego inwestowanie w poznanie Qt i Open C++ nie zwalniają programistów od znajomości architektury Symbiana i frameworku AVKON. Za rok czy dwa lata komórek z Symbianem S60 będzie na rynku tak dużo, że trzeba będzie dbać o tych którzy mają modele z Symbianem S60 3rd FP2. W takiej sytuacji programowanie pod Symbianem jeszcze ma przed sobą długie lata.  Przypuszczam że jak Nokia będzie jeszcze na rynek dostarczać te komórki to jednak jest ryzyko że Nokia za 2 lata przestanie dostarczać na rynek nowe modele z  S60 3rd FP2 i nastąpi masowa ucieczka programistów z programowania S60 na rzecz Symbiana^4. Bardzo może to przypominać czasy gdy wprowadzano S60 3rd w 2005 roku, a dopiero w latach 2007-2008 programiści przestali wspierać starsze wersje Symbiana. Dzisiaj dzieje się tak szybko, że programiści od razu przestają wpierać starsze modele. Tak było z Symbianem UIQ 3  (inwestowanego przez Motorolę i Sony Ericsson) skutkiem czego od 2009 roku już prawie nikt nie pisze oprogramowania pod te modele z tym Symbianem. Podobna reakcja jest w przypadku zaprzestania rozwoju platformy N-Gage w 2009 roku. A zostało wielu użytkowników tych modeli komórek którzy zostali pozbawieni wsparcia technologicznego. Pierwszych modeli z  Symbianem^4 spodziewam się na 2 półrocze 2011.  Myślę że po 2 latach dopiero wejdzie w etap "dojrzałości" w świadomości programistów i użytkowników jako Symbian^5 czyli  na 2014 rok można by się spodziewać stabilnego rozwoju rynku programistycznego dla urządzeń z Symbianem ^4 i Symbianem^5 oraz koniec rozwoju oprogramowania dla Symbiana S60 3rd FP2. Natomiast dla komórek z Symbianem^3 raczej spodziewam się cyklu 4 letniego, co oznacza że programowanie we frameworku AVKON utrzyma się do 2015 roku, Jak widać dla frameworka AVKON pozostaje jeszcze kilka ładnych lat programowania.&lt;br /&gt;&lt;br /&gt;Architektura Symbiana pozostanie ta sama (jądro,mechanizmy zarządzania pamięcią, system uprawnień) zmienią się kompilatory i jak nowsze modele procesorów ARM. Nie wiem czy będzie portowane na procesory Atom, ale to już zależy od programistów firmy Accenture. Na razie rozwijają oni Qemu. Ze względu na budowę systemu np: pisania sterowników to trzeba znać Symbiana C++. Mamy dostęp do kodu źródłowego Symbiana^3 i możemy poczytać sobie miliony linii kodu to jednak wymagana jest znajomość Symbian C++.  W wielu przypadkach API Symbiana zostało jakby nie ruszane przez Qt (np: obsługa Bluetootha, IrDA, SIP, VoIP, syntezatory mowy, zaawansowane API do układów optycznych). Ponieważ Symbian ma budową modularną to ma abstrakcyjne klasy interfejsu użytkownika EIKON na którym mogą w Symbian^4 stworzyć nowy interfejs użytkownika. Pisząc kod w Open C++ czasami trzeba będzie zmagać się z kodem z Symbianem C++ (np w przypadku gier czy UI). Czasami może zdarzyć się trzeba będzie napisać jakiś kod silnika skryptowego i okaże sie że trzeba pisać rozszerzenia wykorzystujące mechanizmu plug-inów ECOM.&lt;br /&gt;&lt;br /&gt;Na dzień dzisiejszy inwestowanie w programowanie w Symbiana jest kosztowne. Kosztuje nie tylko zainwestowanie w proces certyfikacji  zakup certyfikatu na jeden rok czasu kosztuje 200$ a podpisanie jednej aplikacji 20$ oraz opcjonalne testy co mogą kosztować 200$. Jeszcze do tego dochodzi koszt dystrybucji przez Ovi Store (50 Euro/80$ opłaty rejestracyjnej). Warto też pomyśleć o zakupie komórek takiej jak N97  za 500$ czy E52 za $330.&lt;br /&gt;&lt;br /&gt;Nie jest łatwo też programować pod Java Mobile ze względu na bardzo dużą fragmentaryzację technologii w szczególności, gdy mamy wiele różnych rozmiarów urządzeń i technologii wspieranych przez Javę Mobile. Szczególniej jak trzeba uwzględniać urządzenia z CLDC 1.0 czy a CLDC 1.1  a a interfejsem UI z  MIDP 1.0 czy MIDP 2.o czy MIDP 2.1 bądź z eSWT.   W pewnych sytuacjach trzeba też zainwestować w certyfikaty dla swoich aplikacji w Javie Koszt kupienia certyfikatu na jeden rok dla aplikacji Java Mobile to 240$ a koszt podpisania jednej aplikacji wynosi 20$. Pisząc aplikacje na zwykłe komórki i jak  trzeba wziąć pod uwagę, że trzeba przygotować różne wersje aplikacji i każdą z nich podpisać.&lt;br /&gt;&lt;br /&gt;Najtańszy koszt dystrybucji wychodzi w przypadku widgetów WRT, które też mogą zawierać pliki SWF z FlashLite. Tych plików wgz nie trzeba podpisywać.&lt;br /&gt;Natomiast przygotowywanie plików SWF wymaga zainwestowania w zakup Flash Proffesional CS5 za 700$ i w zależności od modelu dystrybucji plików SWF trzeba przyjąć odpowiednie koszta. Można zawartość multimedialną FlashLite  dystrybować jako pliki NPL, WGZ, jako część paczek JAR, SIS, czy CAB.&lt;br /&gt;&lt;br /&gt;Natomiast poza Symbianem trzeba wziąć pod uwagę inne platformy. W przypadku Apple to trzeba będzie zainwestować w zakup Maca (MacBooka za $1000) i jak iPhone (iPhone3GS za $500) Do tego jeszcze dochodzi przystąpienie do programu dla programistów za $100  na rok, natomiast gdyby chcieć przeprowadzać dystrybucję na własną rękę trzeba zainwestować 300$ rocznie w program dla firm. Trzeba nauczyć się programowania w Objective-C.&lt;br /&gt;&lt;br /&gt;Natomiast w przypadku Androida to wystarczy ściągnąć odpowiednie SDK i znajomość Javy Mobile pomoże przy programowaniu. na Androida. Natomiast przy dystrybucji trzeba wpłacić 25$ przy rejestracji do Market Android. Warto pomyśleć o zakupie urządzenia z Androidem, które mogłoby służyć przez 2 lata. Wybór padł na HTC Desire za 800$. Łatwość tworzenia aplikacji do Androida i niski koszt dystrybucji  powoduje, że coraz więcej pojawia się aplikacji "śmieci" i jest presja na dostarczanie darmowych aplikacji do Market Android.&lt;br /&gt;&lt;br /&gt;Właściwym rywalem o programistów Javy od zwykłych komórek, Symbiana i Androida jest platforma Blackberry kanadyjskiej firmy RIM. Ta platforma cieszy się opinią jednej z najbezpieczniejszych systemów dla inteligentnych komórek.  Dostęp do SDK jest zazwyczaj darmowy i można sobie szybko nauczyć programować zarówno z poziomu aplikacji pisanych w Javie czy widgetów wykorzystujących HTML5 z WebKit. Natomiast gdyby chcieć zająć się programowaniem aplikacji dla BlackBerry to znowu warto zainwestować w najnowsze modele ze względu że czas dojrzewania na rynku modeli jest bardzo krótki ze względu że ludzie często wymieniają modele. Programiście dany model mu wystarczy na cały cykl rozwojowy produktu i danej platformy. W tym przypadku warto zainwestować w BlackBerry Storm 2, który kosztuje 500$. Aby instalować własne oprogramowanie do modeli BlackBerry to trzeba wykupić certyfikat do podpisywania plików JAR czy COD co kosztuje 20$. Natomiast dystrybucję oprogramowania na BlackBerry można prowadzić zwykle przez internet, przez strony internetowe bądź przez BleckBerry App World gdzie opłata administracyjna wynosi 200$ na umieszczonych tam 10 aplikacji. Na tej platformie warto programować różnego rodzaju widgety internetowe.&lt;br /&gt;&lt;br /&gt;Microsoft wprowadzając nowy system operacyjny dla inteligetnych komórek Windows Phone 7 zerwał z wsteczną kompatybilnością co powoduje że programiści mają tylko jedno wyjście przeprogramować aplikacje do platformy Compact Framework.NET.  Największy problem z platformą Windows CE na którym opierają się różne wersje urządzeń mobilnych jest jego zbyt duża różnorodność co programiści muszą solidnie programować aplikację  prawie na każdy model inteligentnej   komórki czy PDA  Prawdopodobnie dzisiaj trzeba solidnie zastanowić się nad pisaniem oprogramowania na tą platformę ze wzgledów braku jasnych perspektyw co do dynamiki rozwoju tej plaformy. W teorii koszta na programowanie w Windows Mobile nia są tanie. Przede wszystkim trzeba zainwestować w Visual Studio 2010 Proffesional with MSDN Essential za $550 (a SDK do wersji Windows Mobile  są za darmo).  Następnie trzeba kupić inteligetną komórkę z Windowsem Mobile 6.5 na przykład HTC HD2  za 700$,. Potem jeszcze zainwestować w certyfikację czyli kupić certyfikat do podpisywania za 350$ na natomiast za identyfikator do podpisania jednej aplikacji kosztuje od 12$. Publikacja aplikacji w Windows Marketplace for Mobile kosztuje rocznie 99$ i można opublikować 5 aplikacji.  W praktyce może być taniej jak założy się firmę i przystąpi się do programu BizSpark.  &lt;br /&gt;&lt;br /&gt;Warto też śledzić rozwój niszowych platform dla urządzeń mobilnych. Szczególną uwagę trzeba zwrócić na platformę Nokii Maemo (MeeGo ) i jak Palma WebOS. Pisanie oprogramowania pod te plaformy ma sens jak wykorzystujemy aplikacje pisane w C++ dla Linuxa i zależy nam na wykorzystania tych urządzeń mobilnych jako kontynuacja wykorzystania komputera. Wskazana jest znajomość programowania na Linuxa w C++ w celu pisania oprogramowania na te platformy. W programowaniu na te platformy bardzo przyda sie wykorzystanie biblioteki Qt.  W przypadku pisania biznesowego oprogramowania  warto zainwestować w zakup komercyjnej wersji biblioteki Qt (3000 Euro /  4000 $). Pisząc oprogramowanie w Qt w wersji komercyjnej właściwie ma sens jak chce napisać kod na urządzenia mobilne z Symbianem, Windows Mobile, z Maemo i z webOS (a także na niszowe urządzenie typu Kindle2 Amazona). Urządzenie z Maemo czyli N900 kosztuje 650$ a  urządzenie z webOS czyli Palm Pre kosztuje 550$. Dystrybucja oprogramowania jest trochę zdecentralizowana. Trudno sprzedawać komercyjne wersje dla Maemo w Ovi Store a dla webOS w Palm App Catalog, co jest wynikiem przekonania że oprogramowanie tworzone na bazie Linuksa powinno być za darmo. Gdy chce się programować komercyjnie pod webOS należy zarejestrować się w webOS Developer Program z opłatą roczną za 99$ w tym za opublikowanie 20 aplikacji w Palm App Catalog.  Charakterystyczną cechą webOS jest to, że prawie całe API jest dostępne z poziomu JavaScriptu dzięki bibliotece Mojo.&lt;br /&gt;&lt;br /&gt;Podsumowując zestawienie kosztów wchodzenia w programowanie inteligentnych komórek i tempa rozwoju technologii mobilnych oznacza to dla przedsiębiorcy:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Inwestowanie w nowe modele komórek aby szybko dostarczyć oprogramowanie zanim dany model nie wejdzie w cykl dojrzałości co trwa rok czasu od momentu jego wprowadzenia na rynek oraz 2-3 letni cykl życia danego modelu. Potem ludzie inwestują w nowsze modele komórek przy wsparciu operatorów.&lt;/li&gt;&lt;li&gt;Trzeba znać bardzo dobrze technologie informatyczne używane w nowych modelach komórek i szybko uczyć się nowego API dla danego modelu. Trzeba też znać ograniczenia środowisk programistycznych oraz emulatorów.&lt;/li&gt;&lt;li&gt;Ciągle dokształcać się w programowaniu w C++, Java Mobile oraz w widgetach opartych na JavaScripcie&lt;/li&gt;&lt;li&gt;Pilnie śledzić rozwój bibliotek i frameworków cross -platformowych. Można się spodziewać trendu w którym programiści będą rozszerzać dostęp do API komórki z poziomu JavaScriptu i stąd coraz bardziej dynamiczny rozwój w tworzeniu widgetów. Także  śledzić zmiany w usability interfejsu użytkownika poszczególnych platform.&lt;/li&gt;&lt;li&gt;Opracowywać różne modele dystrybucji oprogramowania w szczególności oparte na weryfikacji unikalnego identyfikatora urządzenia i jak na modelu subskrypcji. Bardzo przyda się tworzenie własnego systemu analitycznego do raportowania tego jak uzytkownicy korzystają z danego oprogramowania.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Koszt wejścia w tą branże jest nadal wysoki szczególnie pod kątem inwestycji kapitałowych i jak kosztów w ciągła edukację co powoduje że wytworzenie oprogramowania na urządzenia mobilne (szczególności VoIP SIP czy wykorzystanie rozpoznawania obrazu, bądź pisanie oprogramowania do nawigacji) jest bardzo trudne, bo jest niewielu ludzi którzy do tego doszli.  &lt;/li&gt;&lt;li&gt;Trudno o rekrutację pracowników, bo mało ludzi na tym zna się. Trzeba tworzyć zespół ludzi, którzy tym zajmowali się  od podstaw. Najtrudniejsze to będzie utrzymać taki zespół gdy osiągnie stopień profesjonalizmu wtedy korporacje mogą skutecznie podkupić zdolnych członków zespołu.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-949899867459456538?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/GdEUU4ffKGU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/949899867459456538/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=949899867459456538" title="Komentarze (1)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/949899867459456538?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/949899867459456538?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/GdEUU4ffKGU/perspektywa-biznesowa-programisty.html" title="Perspektywa biznesowa programisty komórek." /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/04/perspektywa-biznesowa-programisty.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0QBSHs-fCp7ImA9WxFTGEw.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-1458825479448863278</id><published>2010-04-08T22:17:00.005+02:00</published><updated>2010-04-09T14:15:59.554+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-09T14:15:59.554+02:00</app:edited><title>Wybory do Rad Fundacji Symbian 2010</title><content type="html">W skład Rad Fundacji Symbian to osoby które mają wpływ polityczny na to jak będzie rozwijał się Symbian. Procedura i wyłanianie tych rad to dość trudna lektura  dokumentu &lt;a href="http://developer.symbian.org/wiki/index.php/Symbian_Foundation_Council_Charters"&gt;Symbian Foundation Council Charters&lt;/a&gt;. Zasady wyborów opisano w tym &lt;a href="http://developer.symbian.org/wiki/index.php/Bylaws_for_the_2010_council_elections"&gt;dokumancie&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;W Fundacji Symbian są 4 rady:&lt;br /&gt;Rada "&lt;a href="http://developer.symbian.org/main/about/councils/council/feature_and_roadmap_council.php"&gt;Feature and Roadmap Council&lt;/a&gt;" - jej zadaniem przyjmowanie propozycji od innych donośnie rozwoju Symbiana  i koordynowanie zadań odnośnie platformy Symbian i ustalanie mapy rozwojowej dla Symbiana w najbliższych latach. Członkowie rady spotykają sie na telekonferencjach albo na całodniowych konferencjach. O aktywności rady można poczytać na &lt;a href="http://developer.symbian.org/wiki/index.php/Foundation_Councils/Feature_and_Roadmap_Council_minutes"&gt;wiki&lt;/a&gt;&lt;br /&gt;Rada "&lt;a href="http://developer.symbian.org/main/about/councils/council/architecture_council.php"&gt;Architecture Council&lt;/a&gt;" - jej zadaniem jest ustalanie technicznych aspektów rozwoju Symbiana, podejmują decyzje o architekturze Symbiana i poddają ewalucji nowe rozwiązania dla Symbiana a także decyzje co do rozwijaniu narzędzi dla programistów. O aktywności rady można poczytać na &lt;a href="http://developer.symbian.org/wiki/index.php/Foundation_Councils/Architecture_Council_minutes"&gt;wiki&lt;/a&gt;&lt;br /&gt;Rada "&lt;a href="http://developer.symbian.org/main/about/councils/council/ui_council.php"&gt;User Interface Council&lt;/a&gt;" - jej zdaniem podejmowanie decyzji co do wyglądu interfejsu użytkownika i jak tworzenie wskazówek  odnośnie doświadczeń użytkownika z korzystania z platformy Symbian. Poczynania rady można sledzić na tej stronie &lt;a href="http://developer.symbian.org/wiki/index.php/Foundation_Councils/UI_Council_minutes"&gt;wiki&lt;/a&gt;&lt;br /&gt;Rada "&lt;a href="http://developer.symbian.org/main/about/councils/council/release_council.php"&gt;The Release Council&lt;/a&gt;" - koordynuje działania w zakresie tworzenia wersji Symbiana i ich pakietów oraz narzędzi. Efekty działań tej rady można śledzić na tej stronie &lt;a href="http://developer.symbian.org/wiki/index.php/Foundation_Councils/Release_Council_minutes"&gt;wiki&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Skład rady &lt;span style="font-weight: bold;"&gt;Feature and Roadmap Council&lt;/span&gt; to&lt;br /&gt;Szefem jest: Ian Hutton, Symbian Foundation&lt;br /&gt;AT&amp;amp;T - Greg Wong i Herman Chien&lt;br /&gt;Fujitsu - Taisuke Inoue&lt;br /&gt;Nokia - Jonas Hasselberg i Pia Vuorela&lt;br /&gt;NTT DoCoMo - Masa Sumita i Motoya Miyauchi&lt;br /&gt;Orange - Frederic Dufal i Mark Sage&lt;br /&gt;QuIC - Mike Stefanick i Jim Callanan&lt;br /&gt;Samsung - David Stacey i Stephen Storer&lt;br /&gt;Sony Ericsson Mobile Communications - Eva Jönsson i Hironobu Arima&lt;br /&gt;ST Ericsson - Enrica Filippi i Joel Bielle&lt;br /&gt;Telefonica - Alfonso Fernandez i Daniel Coloma&lt;br /&gt;Texas Instruments  - Frederic Blesser i Sonia Ferrante&lt;br /&gt;Vodafone -  JC Theard i Stephen Packer&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.symbian.org/wiki/index.php/Elections_2010_-_Nominees_for_the_Feature_%26_Roadmap_Council"&gt;W wyborach 2010 startowali&lt;/a&gt; (4 pierwsze osoby przeszły)&lt;br /&gt;Alfonso Fernández i Daniel Coloma (Telefónica)&lt;br /&gt;Mark Sage i Rafel Uddin (Orange / France Telecom)&lt;br /&gt;Kai Juusola i Leena Väänänen (Elektrobit)&lt;br /&gt;Wolfgang Bau i Petr Smrž (Deutsche Telekom Ag)&lt;br /&gt; Jani Turpeinen i Sandeep Chandak (Sasken Communication Technologies Ltd)&lt;br /&gt;Zaiguo Zhu i Hongqi Dong (ShenZhen Temobi Science &amp;amp; Tech Development Co., Ltd.)&lt;br /&gt;Rene Heuven i BTR Naidu (Inmote BV)&lt;br /&gt;Mauro Monti i Emiliano Ceraldi (Telecom Italia S.p.A.) &lt;br /&gt;&lt;br /&gt;Skład rady &lt;span style="font-weight: bold;"&gt;Architecture Council&lt;/span&gt; to:&lt;br /&gt;Szef: Daniel Rubio, Symbian Foundation&lt;br /&gt;ARM - Hobson Bullman i Richard Phelan&lt;br /&gt;AT&amp;amp;T - Arne Schrider&lt;br /&gt;Broadcom - James Chapman i Daniel Daum&lt;br /&gt;Fujitsu  - Taisuke Inoue i Mohamedsadiq Mandan&lt;br /&gt;Nokia  - Jukka Virnes i  Andrew Harker&lt;br /&gt;NTT DoCoMo  - Yuuki Yamamoto i Kazuo Aoki&lt;br /&gt;QuIC - PJ Bostley i Tony Newpower&lt;br /&gt;Samsung - Kimmo Hoikka&lt;br /&gt;Sony Ericsson Mobile Communications - Tobias Lindquist i Nakao Kenichi&lt;br /&gt;ST Ericsson - Jouni Ylitalo i Hanta Albert&lt;br /&gt;Texas Instruments  - Frederic Blesser i Jonathan Bergsagel&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.symbian.org/wiki/index.php/Elections_2010_-_Nominees_for_the_Architecture_Council"&gt;W wyborach 2010 startowali&lt;/a&gt; (6 pierwszych osób przeszło)&lt;br /&gt;Hobson Bullman i Richard Phelan (ARM)&lt;br /&gt;Iain Campbell i John Roe (Accenture)&lt;br /&gt;Yonghao Zhang i Haiyang Zhang (China Mobile Communications Corporation)&lt;br /&gt;Jani Helin i Martti Piirainen (Tieto)&lt;br /&gt;Nan Wang i Jin Shan Wang (Excellent Star Beijing)&lt;br /&gt;&lt;br /&gt;W skład Rady &lt;span style="font-weight: bold;"&gt;Release Council&lt;/span&gt; wchodzą:&lt;br /&gt;Szefem jest Mark Skrebels, Symbian Foundation&lt;br /&gt;Digia  - Petri Poikolainen i Harri Eronen&lt;br /&gt;Elektrobit -  Tero Savolainen i Kim Aitto-oja&lt;br /&gt;Fujitsu - Yoshiiku Hanai i Chandra Narayanasamy&lt;br /&gt;Nokia - Rauno Uusitalo i Riku Mettälä&lt;br /&gt;NTT DoCoMo - Seishi Tsukada i Manabu Matsuura&lt;br /&gt;QuIC - Rob Dunder i PJ Bostley&lt;br /&gt;Sony Ericsson Mobile Communications - Anders Josefsson i QuakOnn Liew&lt;br /&gt;ST Ericsson  - Pierre-Henri Maitre i Philippe Gaudillat&lt;br /&gt;Teleca  - Ilkka Korhonen i Chandrashekar Challagonda&lt;br /&gt;Texas Instruments - Moussa Belkhiter i Laurent Le Gal&lt;br /&gt;&lt;a href="http://developer.symbian.org/wiki/index.php/Elections_2010_-_Nominees_for_the_Release_Council"&gt;&lt;br /&gt;W wyborach do rady 2010 startowali&lt;/a&gt; (8 osób przeszło):&lt;br /&gt;Peter Geen i David Hayward (Accenture)&lt;br /&gt;Gero Schultz i Frank Burkhardt (Deutsche Telekom Ag)&lt;br /&gt;Hanna Hulkko i Kim Aitto-Oja (Elektrobit)&lt;br /&gt;Ilkka Korhonen i Jari Saarhelo (Teleca)&lt;br /&gt;Shohei Yoshida i Tomonari Miyazaki (ISB Corporation)&lt;br /&gt;&lt;br /&gt;W skład rady &lt;span style="font-weight: bold;"&gt;User Interface Council &lt;/span&gt;wchodzą:&lt;br /&gt;Szef Scott Weiss, Symbian Foundation&lt;br /&gt;Adobe - Chris Stott i Thomas Dahlblom&lt;br /&gt;AT&amp;amp;T - Bryan Smoltz&lt;br /&gt;Fujitsu - Kazuyuki Sato i Masashi Tanimura&lt;br /&gt;Nokia  - Elizabeth Dykstra-Erickson i Katja Smolander&lt;br /&gt;NTT DoCoMo - Motoya Miyauchi i Yuurin Kogetsu&lt;br /&gt;QuIC - Mike Stefanick i Tony Newpower&lt;br /&gt;Sharp - Jinfeng Luo i Toshiyuki Matsubara&lt;br /&gt;Sony Ericsson Mobile Communications - Klas Hermodsson i Katsunori Miura&lt;br /&gt;T-Mobile - Martin Liboska i Stephan Keclik&lt;br /&gt;&lt;br /&gt;W &lt;a href="http://developer.symbian.org/wiki/index.php/Elections_2010_-_Nominees_for_the_UI_Council"&gt;wyborach do rady 2010 &lt;/a&gt;było najwięcej chętnych i przeszło 10 pierwszych osób:&lt;br /&gt;Liu Yan i Xiangang Qin (China Mobile Communications Corporation)&lt;br /&gt;Andrew McGrath i Paul Moore (Orange / France Telecom)&lt;br /&gt;Simon Hogg i Jinfeng Luo (Sharp)&lt;br /&gt;Chris Stott i Thomas Dahlblom (Adobe Systems)&lt;br /&gt;Biswarup Dasgupta i Henri Salminen (Sasken Communication Technologies Ltd)&lt;br /&gt;Eeva Kangas i Riina Löija (Digia Plc)&lt;br /&gt;Martin Liboska i Stephan Keclik (Deutsche Telekom)&lt;br /&gt;Ilkka Syrjälä i Mikael Laine (Ixonos)&lt;br /&gt;Terence Warmbier i Matias Impivaara (Immersion)&lt;br /&gt;James Lee i Ryan Kim (Acrodea, Inc.)&lt;br /&gt;Momoko Kin i Hiroyuki Seki (ISB Corporation)&lt;br /&gt;Calum Lawler i Pim van Meurs (Nuance Communications, Inc.)&lt;br /&gt;&lt;br /&gt;Z przeglądu kandydatur to mam wrażenie że to są osoby mało znane ludziom. Trudno często znaleźć informacje o tych osobach. Część z nich ma konta na Twiterze czy LinkedIn. Obecność Chińczyków i Japończyków w radzie Symbian może świadczyć o tym że będą dążyli do tworzenia własnych wersji "narodowych" Symbiana.  Obecnie chyba najciekawsze będzie przed nami czyli śledzenie dyskusji o tym jak będzie wyglądać wdrażanie Symbiana^3 oraz dalszy ciąg deliberowania o tym jaki będzie Symbian^4. Zastanawia mnie wybór Chrisa Stotta z Adobe. Mam wrażenie że nie bierze aktywnego udziału w tym procesie ustalania UI. Z drugiej strony nie wiem jak to ma znaczenie z tworzeniem wersji FlashLite czy FlashPlayer 10.1 bądź Adobe AIR Mobile. Mam wrażenie,  że obecność Adobe w tej radzie to tylko maszynka do głosowania.  W pewnym sensie Adobe woli współpracować bezpośrednio z Nokią czy japońskimi producentami niż dyskutować nad tym co jest ładne i użyteczne dla użytkownika.  Dużo ciekawsze są spotkania  grupy odpowiedzialnej za architekturę Symbiana dowiedziałem się, że za prace nad FlashLite 4/ Flash Playerem 10.1 dla Symbiana odpowiada &lt;a href="http://in.linkedin.com/pub/sriram-v/18/b51/762"&gt;Sriram V&lt;/a&gt;.  Zresztą on ostatnio awansował w Nokii więc myślę, że będzie miał większy wpływ na rozwój technologii runtime w Symbianie (WRT, FlashLite i Pythona).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-1458825479448863278?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/Fbx7ZoiygIk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/1458825479448863278/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=1458825479448863278" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/1458825479448863278?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/1458825479448863278?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/Fbx7ZoiygIk/wybory-do-rad-fundacji-symbian-2010.html" title="Wybory do Rad Fundacji Symbian 2010" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/04/wybory-do-rad-fundacji-symbian-2010.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUIER3k_eCp7ImA9WxFTFk4.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-2442308397315966147</id><published>2010-04-05T23:15:00.007+02:00</published><updated>2010-04-07T12:51:46.740+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-07T12:51:46.740+02:00</app:edited><title>Aplikacje internetowe w Qt na Symbiana</title><content type="html">Programowanie w Qt to inwestycja która pozwoli na tworzenie aplikacji internetowych dla programistów urządzeń mobilnych w C++ co przyniesie dobre rozwiązanie w sytuacji gdy potrzebujemy napisania aplikacji która ma być w przyszłości rozwijana. Programowanie internetowych aplikacji mobilnych które mają pełnić rolę wizytówek czy widgetów  aktualizowanych w razie potrzeby i umożliwiających pracę w trybie offline to duża rzadkość z powodu nadmiaru różnych wersji urządzeń mobilnych. Napisanie aplikacji internetowej z użyciem silnika QtWebkit otwiera  bardzo duże możliwości wykorzystania HTML5, JavaScriptu wraz z dostępem do API urządzenia w języku C++.&lt;br /&gt;&lt;br /&gt;Większość ludzi woli uczyć się od obejrzenia jakiegoś wykładu. Polecam zapoznanie się z 48 minutowym filmem o QtWebKit zatytułowanego &lt;a href="http://qt.nokia.com/developer/learning/online/talks/archive/qtwebkit-qt-and-web-2.0"&gt;QtWebKit: Qt and Web 2.0 &lt;/a&gt;&lt;br /&gt;Filmik z 2008 roku pokazywał jak załadować stronę WWW, albo plik lokalny. Następnie pokazywał jak tworzyć pluginy na stronę wyświetlaną w QtWebKit, pokazał jak z poziomu kodu C++ sterować dzianiami HTTP na przykładzie Twiitera, Podobnie pokazał jak wykonywać kod JavaScriptu na stronie WWW z poziomu C++ na przykładzie załadowania Map Google.Można napisać kod JavaScriptu dzięki któremu można sterować możliwościami pluginów C++ na stronie WWW  (na przykładzie QtScript Calculator)&lt;br /&gt;&lt;br /&gt;Następny film jest zatytułowany - &lt;a href="http://qt.nokia.com/developer/learning/online/talks/developerdays2009/tech-talks/developments-in-the-qt-webkit-integration"&gt;Developments in the Qt WebKit Integration&lt;/a&gt;  Ten filmik jest raczej technologicznym opisem możliwości QtWebKita w wydaniu Qt 4.6. Do najwązniejszych należy dodanie klas QtWebElement, QtWebPluginDatabase, QtGraphicsWebView. Istotne jest to że można już robić aplikacje oparte na HTML5.&lt;br /&gt;&lt;br /&gt;Warto też obejrzeć materiały szkoleniowe pt: Programming with Qt - WebKit prowadzone przez Stefana Hundhammera z &lt;a href="http://qt.nokia.com/developer/learning/online/training/training-day-at-developer-days-2009/programming-with-qt-webkit-by-basyskom"&gt;basysKom&lt;/a&gt; i przez Katrinę Niolet z &lt;a href="http://qt.nokia.com/developer/learning/online/training/training-day-at-developer-days-2009/programming-with-qt-webkit-by-kdab"&gt;KDAB&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Kolejnym krokiem byłoby zapoznanie z przykładami kodu w C++ dla Qt, które są na wiki Forum Nokia Aby zrozumieć jak wygląda współpraca pomiędzy kodem C++ a skryptami JavaScript należy przestudiować następujące kody: &lt;a href="http://wiki.forum.nokia.com/index.php/CS001543_-_Exposing_QObjects_to_Qt_Webkit"&gt;Exposing QObjects to Qt Webkit&lt;/a&gt; i na podstawie tego kodu &lt;a href="http://wiki.forum.nokia.com/index.php/CS001544_-_Calling_an_exposed_QObject_slot_from_Qt_WebKit_with_JavaScript"&gt;Calling an exposed QObject slot from Qt WebKit with JavaScript&lt;/a&gt; oraz &lt;a href="http://wiki.forum.nokia.com/index.php/CS001545_-_Connecting_to_a_QObjects_signal_with_JavaScript_slot_in_Qt_WebKit"&gt;Connecting to a QObjects signal with JavaScript slot in Qt WebKit&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Kolejnym krokiem byłoby zapoznanie z przykładami kodu w C++ dla Qt, które są na wiki Forum Nokia Aby zrozumieć jak wygląda współpraca pomiędzy kodem C++ a skryptami JavaScript należy przestudiować następujące kody: &lt;a href="http://wiki.forum.nokia.com/index.php/CS001543_-_Exposing_QObjects_to_Qt_Webkit"&gt;Exposing QObjects to Qt Webkit&lt;/a&gt; i na podstawie powyższego  kodu &lt;a href="http://wiki.forum.nokia.com/index.php/CS001544_-_Calling_an_exposed_QObject_slot_from_Qt_WebKit_with_JavaScript"&gt;Calling an exposed QObject slot from Qt WebKit with JavaScript&lt;/a&gt; oraz &lt;a href="http://wiki.forum.nokia.com/index.php/CS001545_-_Connecting_to_a_QObjects_signal_with_JavaScript_slot_in_Qt_WebKit"&gt;Connecting to a QObjects signal with JavaScript slot in Qt WebKit&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Innym zagadnieniem jest wyświetlanie stron internetowych co pokazano na następujących fragmentach kodu: &lt;a href="http://wiki.forum.nokia.com/index.php/How_to_use_QWebView_in_Qt_for_Symbian"&gt;How to use QWebView in Qt for Symbian&lt;/a&gt;, &lt;a href="http://wiki.forum.nokia.com/index.php/CS001495_-_Display_local_web_page_with_Qt_WebKit"&gt;Display local web page with Qt WebKit&lt;/a&gt;, &lt;a href="http://wiki.forum.nokia.com/index.php/CS001496_-_Gather_data_from_web_page_with_JavaScript,_WebKit,_and_Qt"&gt;, Gather data from web page with JavaScript, WebKit, and Qt&lt;/a&gt;, &lt;a href="http://wiki.forum.nokia.com/index.php/CS001497_-_Add_data_to_a_web_page_with_JavaScript,_WebKit,_and_Qt"&gt;Add data to a web page with JavaScript, WebKit, and Qt&lt;/a&gt;. Warto zwrócić też uwagę na kod ze wskazówki &lt;a href="http://wiki.forum.nokia.com/index.php/TSQ001571_-_Using_QWebHistory_to_navigate_through_web_pages"&gt;Using QWebHistory to navigate through web pages&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Gdy rozwijały się prace nad frameworkiem Qt 4.6 inżynierowie zrobili sporo przykładów w ramach projektu &lt;a href="http://qt.gitorious.org/qt-labs/graphics-dojo"&gt;Graphics Dojo&lt;/a&gt;. W tym temacie interesujące są &lt;a href="http://qt.gitorious.org/qt-labs/graphics-dojo/trees/master"&gt;przykłady&lt;/a&gt;: fancybrowser, flightinfo, gsuggest, gweather, lightmaps, mapzoom, panwebview, prettybrowser, transparentweb, twitterview, videofeed, weatherinfo, webcapture, webgtalk, webmonster, webnightmode, websnap. Część z nich trafiło do  oficjalnej dystrybucji Qt4.6 SDK jako demos embedded&lt;br /&gt;&lt;br /&gt;Przykłady kodów jak mogą wyglądać dobrze zrobione aplikacje internetowe Qt pod kątem UI znajdziemy w &lt;a href="http://qt.gitorious.org/qt-labs/mobile-demos/trees/master"&gt;Mobile Demos&lt;/a&gt;, które zostały napisane przez programistów INdT - Instituto Nokia de Tecnologia. Kiedyś był prowadzony blog Qt Effort który zawierał interesujący &lt;a href="http://efforts.embedded.ufcg.edu.br/qt/?p=80"&gt;przykład&lt;/a&gt; jak wykorzystać Google Maps w QtWebkit&lt;br /&gt;&lt;br /&gt;Natomiast na Forum Nokia są następujące przykłady aplikacji internetowych:&lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/1043790e-6366-4440-a078-f5451de04a4f/Qt_QWhoWhere_Example.html"&gt;&lt;br /&gt;Qt: QWhoWhere Example&lt;/a&gt;  to przykład jak zrobić aplikację geolokalizacyjną, &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/d0134921-0894-42a3-a1a8-f3d0fdb7a9b3/Qt_for_Symbian_qutIM_Example.html"&gt;Qt for Symbian: qutIM Example&lt;/a&gt; to przykład jak zaprogramować własny komunikator,&lt;br /&gt;&lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/1295da7f-1f50-4b33-bd2f-fe779cc26b5d/QtWebKit_ListEm_Example.html"&gt;QtWebKit: ListEm Example&lt;/a&gt; to przykład jak można zrobić aplikację bazodanową z interfejsem użytkownika w QtWebKit,  &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/f12cce87-430e-49b0-81b1-0ec1b07cdb1c/QtWebKit_Beta_Labs_Example.html"&gt;QtWebKit: Beta Labs Example&lt;/a&gt; to przykład jak można zaprogramować widget przy pomocy QtWebkit&lt;br /&gt;&lt;br /&gt;Z ciekawszych projektów z kodem źródłowym są to biblioteki wykorzystujące Qt. Była próba zrobienia &lt;a href="http://github.com/wildabeast/phonegap-symbian.qt"&gt;portu Qt&lt;/a&gt; Symbian dla widgetów &lt;a href="http://phonegap.pbworks.com/PhoneGap-Symbian-%28Qt%29"&gt;PhoneGap&lt;/a&gt;, które jest dość ciekawym rozwiązaniem - ale na razie wstrzymano się z jego rozwojem dopóki projekt Qt Mobility nie stanie się dojrzałym. Fundacja Symbian proponuje rozwijać własne rozwiązanie dla widgetów -  cWRT na bazie Qt dla Symbiana ^3. Ciekawym rozwiązaniem może być biblioteka Qt do tworzenia &lt;a href="http://gitorious.org/qtwitterclient"&gt;klienta Twittera&lt;/a&gt;. Inna propozycja opiera się na wykorzystaniu biblioteki Qt do łączenia się z &lt;a href="http://gitorious.org/qfacebookconnect"&gt;Facebookiem&lt;/a&gt; - co zostało opisane na &lt;a href="http://wiki.forum.nokia.com/index.php/Facebook_Connect"&gt;wiki FN&lt;/a&gt;. Jednak najbardziej dynamiczniej rozwijanym projektem opensourcowym Qt dla Symbiana jest &lt;a href="http://nokia.svn.wordpress.org/trunk/"&gt;klient platformy blogowej WordPress&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Podsumując z punktu widzenia programisty frontendu dla aplikacji internetowych biblioteka Qt z QtWebKit  ma o wiele większe możliwości niż Adobe AIR a co za tym idzie perspektywa pisania aplikacji crossplatformowych na urządzenia mobilne w Adobe AIR nie wygląda interesująco w przyszłości. Zastanawiające jest to że wydanie FlashLite 4 na Symbiana bardzo opóźnia się. Polityka Adobe wobec platform mobilnych ostatnio zrobiła się taka nieciekawa, że mam wrażenie, że platforma Qt szybciej stanie się popularną technologią dla aplikacji mobilnych, niż Adobe AIR pomimo że więcej jest programistów ActionScript 3 niż C++, biorąc pod uwagę że prędzej Nokia wyda wersję Qt4.7 z QML i Qt Mobility na Symbiana  niż Adobe z AdobeAIR z frameworkiem Flex 4 Mobile pod nazwa kodową  Slider na Symbiana.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-2442308397315966147?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/jTybOVA2wwE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/2442308397315966147/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=2442308397315966147" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/2442308397315966147?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/2442308397315966147?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/jTybOVA2wwE/aplikacje-internetowe-w-qt-na-symbiana.html" title="Aplikacje internetowe w Qt na Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/04/aplikacje-internetowe-w-qt-na-symbiana.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkADRns4fCp7ImA9WxFTE0Q.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-7759304602980531543</id><published>2010-04-04T10:54:00.003+02:00</published><updated>2010-04-04T17:26:17.534+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-04T17:26:17.534+02:00</app:edited><title>Programowanie ActionScript 3 na Symbiana</title><content type="html">Rozwój inteligentnych komórek jest coraz szybszy, a przez to stają się coraz bardziej dostępne. Konkurencja staje się coraz bardziej zażarta. A sytuacja producentów inteligentnych komórek coraz bardziej zaczyna przypominać rynek motoryzacyjny w którym bardziej rynek skłania się do tworzenia stref wpływu a także do specjalizacji pewnych zastosowań. Bardzo trudno jest być analitykiem urządzeń mobilnych dla internetu.&lt;br /&gt;&lt;br /&gt;Ale spróbujemy spojrzeć na tą sytuację dzisiaj w kwietniu 2010 roku, dzisiaj coraz więcej urządzeń mobilnych korzysta z internetu, ale samych aktywnych użytkowników internetu wśród komórek inteligentnych nadal jest niewielu. Przeważnie są Ci którzy dobrze znają się na internecie i na komórkach.&lt;br /&gt;&lt;br /&gt;Otóż większość raportów jaki ja widzę w internecie opiera się na tym jakie modele komórek są najczęściej używane w internecie albo po tym ile jest programów na stronach poszczególnych producentów.  Ale z punktu analityka takie dane są pochodną ilości sprzedanych komórek i kultury użytkowników.&lt;br /&gt;&lt;br /&gt;W takim bądź razie jak należy czytać dane statystyczne z punktu widzenia programisty. Przede wszystkim należałoby poczytać o tym ile komórek wyprodukował dany producent. Bardzo zła manierą jest opieranie się na procentach pisząc że Symbian ma 49% udziału we wszystkich inteligentnych komórkach na świecie.  Paradoks jest innej natury: mało który analityk zada sobie pytanie jakich komórek inteligentnych z Symbianem jest najwięcej na świecie. Skoro teraz z Symbianem mamy 3 producentów (poza japońskimi) - Samsunga, Nokię i SonyEricsona. Czytając raporty o sprzedaży inteligentnych komórek należałoby też wziąć pod uwagę że w poprzednich latach produkcja komórek z Symbianem była na bardzo wysokim poziomie. W sumie nieformalnie w skali światowej dominuje Nokia z Symbianem&lt;br /&gt;&lt;br /&gt;Duży wpływ ma też to w jakie sposób ludzie wchodzą w posiadanie inteligentnych komórek. Na tynkach rozwiniętych z dominacją internetu Ci którzy dobrze znają internet to chętnie przeniosą się w subsydiowane komórki z iPhone czy z Androidem.  Natomiast wśród telefonów biznesowych rywalizacja dotyczy tego tego czy komórki maja klawiaturę QWERTY. Tutaj dominują RIM Blackberry i Nokia z E-Series. Te firmy bardzo chcą konkurować o przedsiębiorców na wschodzących rynkach. Używanie internetu w komórce wśród przedsiębiorców nie jest najważniejsze - liczy się bezpieczeństwo i szybki dostęp do poczty elektronicznej. Natomiast na rynku wchodzących typu Afryka czy Azja (Chiny i Indie oraz Rosja) liczy się przywiązanie do marki i model w którym kupujesz od razu cały model komórki bez subsydiowania. Tutaj Nokia wygrywa na rynkach bezwzględnie cenami. Używanie internetu jest w tych krajach okazjonalne, głównie przez Operę Mini&lt;br /&gt;&lt;br /&gt;Dla programistów najważniejsi są użytkownicy biznesowi i tacy którzy okazjonalnie używają internetu ale nie w przeglądarkach internetowych. Jest duże zapotrzebowanie na aplikacje mobilne będące klientami różnych usług internetowych takich jak Twitter, Facebook, Amazon, Flickr, wszelkiego rodzaju komunikatory, czy dostęp do platform blogowych. Biznes potrzebuje aplikacji mobilnych pozwalających na dostęp do sklepów ecommerce, wydawcy o dostęp do treści przez aplikacje mobilne, marketingowcy o lepszą reklamę na inteligentne komórki.&lt;br /&gt;&lt;br /&gt;Programistów na urządzenia mobilne można podzielić na tych którzy muszą się czegoś nauczyć nowego (Objective-C, C++, czy Java Mobile) i takich którzy chcieliby programować w tym co już znają (ActionScript, JavaScript, czy wykorzystać frameworki takie jak Qt).&lt;br /&gt;&lt;br /&gt;Innym problemem jest różnorodność platform programistycznych, oraz przyzwyczajeń programistów Dla kogoś kto specjalizuje się w ActionScripcie pozostaje robić aplikacje na Flash Lite tego kto zna JavaScript to widgety WebRuntime i jak widgety Opery -sporo ludzi ma komórki z Java Mobile, ale ich programowanie zniechęca więc uciekają w programowanie na Androida. Podobna sytuacja jest po stronie Symbiana, mało kto chce programować w frameworku AVKON w C++ wolą już programować w czystym C++ przy pomocy różnych frameworków UI takich jak Qt, GTK. To co ratuje taka skomplikowaną sytuację to jest fakt, że prawie wszystkie inteligentne komórki chodzą na układach scalonych z procesorami ARM. Pojawiają się próby tworzenia bibliotek cross platformowych C++.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://qt.nokia.com/"&gt;Qt Nokii&lt;/a&gt; to biblioteka C++ oficjalnie wspiera Windows Mobile(WinCE), Symbian, Maemo i systemy embbeded.&lt;br /&gt;&lt;a href="http://www.anscamobile.com/corona/"&gt;Ansca Corona&lt;/a&gt; to biblioteka z kompilatorem C++/Lua dla Androida i iPhone (Symbiana wspiera ale nieoficjalnie jeszcze)&lt;br /&gt;&lt;a href="http://www.airplaysdk.com/"&gt;Ideaworks AirPlay SDK&lt;/a&gt; to biblioteki C++ dla Symbiana, Windows Mobile, iPhone, Androida, Maemo, oraz Brew.Jest to najbardziej zaawansowany zestaw bibliotek w C++ dla Symbiana&lt;br /&gt;&lt;a href="http://www.mosync.com/mosync/overview"&gt;MoSync SDK&lt;/a&gt; to biblioteki C++/JavaMobile dla Symbiana, Windows Mobile, Moblina a dojdzie wsparcie dla Androida, Maemo i iPhone.&lt;br /&gt;&lt;a href="http://developer.openplug.com/index.php/learn/elips-studio-3-flex-for-mobile"&gt;OpenPlug z Elips Studio 3&lt;/a&gt; to nakładka na Flex Buildera 3 pozwalająca napisać kod w ActionScript 3 którzy zostanie przekonwertowany na kod C++ i skompilowany pod odpowiednią platformę. Obsługuje Windows Mobile, Symbiana, Androida i iPhone.&lt;br /&gt;&lt;br /&gt;Ponieważ mam już dostęp do wersji testowych Elips Studio 3 z OpenPlug to od samego początku to mam dziwne odczucia. Pierwsza beta nie działała dobrze pod Symbianem S60 5th, w następnej dodano obsługę Symbiana S60 3rd. Kolejne bety działały już coraz lepiej z kompilacją.  Zastanawia mnie to że za każdym razem jak zainstaluję kolejną wersję ElipsStudio to muszę poprawiać plik wsadowy do uruchomienia. Po kilku próbach wyszło mi że muszę mieć tak napisany:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;"E:\Program Files\OpenPlug\ELIPSStudio3.0\elips3.bat" E:\PROGRA~1\OpenPlug\ELIPSS~1.0  "E:\FlexBuilder3"&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;Początkowo myślałem że ma znaczenie jaka jest ścieżka do programu. ale okazało sie że działa to całkiem niezależnie od kompilatora CSL. Tylko kompiluje własnym z&lt;br /&gt;E:\Program Files\OpenPlug\ELIPSStudio3.0\Tools\gcc\arm_elf\&lt;br /&gt;i korzysta z własnego make.&lt;br /&gt;&lt;br /&gt;W praktyce zauważyłem że w E:\OpenPlug\My Environments\ELIPS_3_0_1_235 jest sporo plików nagłówkowych i powiązanych z tym plików *.lib, kóre podczas kompilacji są łączone podczas kompilacji w jedną wielką bibliotekę.&lt;br /&gt;&lt;br /&gt;Po ustawieniu środowiska Flex Buildera 3 że ma kompilować pod Nokię 5800  i gdy kliknę że ma skompilować pod środowisko dla Nokii zaczyna się długotrwały proces kompilacji. Najpierw generowane są pliki do E:\OpenPlug\My Systems\Flex_My Systems\ do 3 folderów (zakładając że zaimportowałem demo VideoApp):&lt;br /&gt;E:\OpenPlug\My Systems\Flex_My Systems\VideoApp które zawiera kod przekowertowany z AS3 na C++  co ląduje do podfolderu elips_bin a następnie kompilator tworzy pliki dla assemblera ARM (*.o) które są w podfolderze ARM_Packages_Release W dalszym ciągu linkier łączy wszystkie biblioteki *.lib z istotniejszymi plikami *.o i kopiuje to wszystko do E:\OpenPlug\My Systems\Flex_My Systems\VideoApp_exe\ARM_Packages_Release  gdzie efektem końcowym jest plik op (który często jest bardzo duży - 8MB). Ten plik to tak naprawdę jedna wielka biblioteka zawierająca w sobie wiele rożnych bibliotek. Dla Symbiana używa biblioteki gtk i bazującego na nim biblioteki C++ odwzorcowujące framework Flex, oraz  biblioteki używających do stworzenia własnej biblioteki FlashPlayera w C++. Efektem końcowym jest stworzenie folderu E:\OpenPlug\My Systems\Flex_My Systems\VideoApp_cab\ARM_Packages_Release którzy tworzy plik uruchomieniowy dla pliku biblioteki op oraz tworzy paczkę SIS z tymi plikami.&lt;br /&gt;Plik SIS osiąga bardzo duży rozmiar (powyżej 5MB) i zawsze instaluje się na dysku C.&lt;br /&gt;Oczywiście, że można samemu przygotować własną wersję pliku *.pkg i wygenerować własny SIS.&lt;br /&gt;&lt;br /&gt;To co jest plusem to szybkie tworzenie bardzo fajnych aplikacji z przyjaznym UI dla użytkownika. Jest możliwość wykorzystania szeregu bibliotek w czystym AS3.&lt;br /&gt;To co wymagałoby inwestycji ze strony programisty to zaopatrzenie się w szybkie dyski SSD w celu dokonywania w nim kompilacji w rozsądnym czasie. Spowodowane jest to tym że w czasie kompilacji może wygenerować ponad 300 plików i potrzebować ponad 200 MB miejsca na dysku dla jednej kompilacji. W takim razie kompilacja trwa na słabych komputerach bardzo długo.  Nadal to jest beta - więc najbardziej denerwuje brak obsługi znaków unicode w polach typu input.   Uruchamianie aplikacji też nie wygląda na ciekawe doznanie - zachowuje się tak jakby komórka miała zaraz paść - wyświetlacz dziwnie migocze.&lt;br /&gt;W takim bądź razie gdyby trzeba było szybko tworzyć prostą aplikację reklamową pisząc w ActionScript3  na Symbiana i Windows Mobile oraz iPhone oraz rozmiar aplikacji nie ma znaczenia to polecam do tego Elips Studio 3&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-7759304602980531543?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/jY3z_ZwaRQE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/7759304602980531543/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=7759304602980531543" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7759304602980531543?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7759304602980531543?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/jY3z_ZwaRQE/programowanie-actionscript-3-na.html" title="Programowanie ActionScript 3 na Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/04/programowanie-actionscript-3-na.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0UMQng6eSp7ImA9WxBaEks.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-21493920538011934</id><published>2010-03-22T12:36:00.004+01:00</published><updated>2010-03-22T14:41:23.611+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-22T14:41:23.611+01:00</app:edited><title>Ewolucja WebRuntime i FlashLite</title><content type="html">Nokia i Adobe planują wypuszczenie Flash Lite4 w ramach aktualizacji oprogramowania firmware. Ta aktualizacja jest podyktowana dalszym rozwojem silnika WebRuntime do lepszej współpracy z FlashLite. Okazało się że tworzenie aplikacji opartych na FlashLite wymaga właściwego mechanizmu dystrybucji. Obecnie żeby dystrybuować aplikację FlashLite trzeba przygotować plik SWF, albo załadować plik SWF ze strony internetowej, albo załadować plik SWF do paczki widgetu, albo w różny sposób robić instalki SIS. Biorąc pod uwagę istnienie mechanizmu pozwalającego ładowanie pliku SWF FlashLite do aplikacji Symbian w języku C++ to możliwości do wykorzystania. Obecnie zespół &lt;a href="http://bugreports.qt.nokia.com/browse/QTWEBKIT/fixforversion/11566"&gt;Qt pracuje&lt;/a&gt; nad integracją &lt;a href="http://bugreports.qt.nokia.com/browse/QTWEBKIT-79"&gt;QtWebkit 2.0 z FlashLite 4&lt;/a&gt; dla Symbiana^4. Silnik &lt;a href="http://labs.trolltech.com/blogs/2010/03/03/qtwebkit-releases/"&gt;QtWebkit2.0&lt;/a&gt; został tak skonstruowany, żeby prace nad nim nie wchodziły w kolizje z innymi projektami w Qt. Spowodowane to jest tez tym, że rozwój silnika Webkit staje się coraz szybszy co powoduje trochę inne cykle rozwojowe w przypadku zarządzania projektami IT.&lt;br /&gt;&lt;br /&gt;Gary Chan przedstawił prezentację rozwoju silników WebRuntime:&lt;br /&gt;&lt;br /&gt;&lt;div style="width:425px" id="__ss_3372761"&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=garychan-100309011344-phpapp01&amp;stripped_title=gary-chan" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=garychan-100309011344-phpapp01&amp;stripped_title=gary-chan" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="padding:5px 0 12px"&gt;Zobacz więcej &lt;a href="http://www.slideshare.net/"&gt;prezentacji&lt;/a&gt; z konferencji &lt;a href="http://www.slideshare.net/fndc"&gt;Forum Nokia Developer Conference 2010&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Zdziwienie  wywołało u mnie na slajdzie 11 informacja o dostępności w Platform Services 2.0 obsługi Audio. Owszem jest Media Management API ale z sterowaniem dźwięku chyba nie ma nic wspólnego. Na slajdzie 14 pisze że Ovi Maps API zapewni dostęp do danych map Nokii z poziomu komórki. Problem w tym że programiści nie mają dostępu jeszcze do internetowego interfejsu Nokia Maps z poziomu widgetów WRT. Natomiast juz są dema wigetów WRT czy aplikacji QtWebKit wykorzystujące API Google Maps czy OpenMaps API.  Na slajdzie 15 pisze że wprowadzi się nowe API Show on Map. Nie wiem do końca na czym to ma polegać wychodzi na to że może takie aplikacje maja działać w ten sposób że zostają pokazane statystyki geolokalizacyjne dla tych którzy sprzedają aplikacje przez Ovi. Na slajdzie 16 wspomniano że obecnie należy programować w ActionScript2 dla FlashLite3 a także że Symbian^3 będzie zawierał Flashlite 4 a potem wprowadzi się wersję Flash Playera 10.1. Nie wiemy tylko czy Flash Lite 4 będzie dostępny dla starszych wersji Symbiana. Nowoscia w FlashLite 4 ma być możliwosć obsługi WebTV SDK z Adobe co pokazano na slajdzie 17. Przypuszczam że WebTV SDK to może operać się na &lt;a href="http://opensource.adobe.com/wiki/display/osmf/Open+Source+Media+Framework"&gt;Open Source Media Framework&lt;/a&gt;  Natomiast w prezentacji nie wspomniano o projekcie &lt;a href="http://labs.adobe.com/technologies/flex/mobile/index.html"&gt;Slider&lt;/a&gt;. Z punktu widzenia użytkownika lepiej zrobić interfejs aplikacji używając technologii FlashLite niż HTML/JS z WebRubtime, chociaż dzisiaj łatwiej o programistę JavaScript niż FlashLite.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-21493920538011934?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/jT5Uauanj-o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/21493920538011934/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=21493920538011934" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/21493920538011934?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/21493920538011934?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/jT5Uauanj-o/ewolucja-webruntime-i-flashlite.html" title="Ewolucja WebRuntime i FlashLite" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/03/ewolucja-webruntime-i-flashlite.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUQER30zfCp7ImA9WxBbGU0.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-9036829179268744818</id><published>2010-03-17T19:07:00.004+01:00</published><updated>2010-03-18T10:08:26.384+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-18T10:08:26.384+01:00</app:edited><title>Symbian Silverlight beta</title><content type="html">Microsoft z współpracy z Nokią wypuścił wersję beta Silverlight 2 na Symbiana^1.. Betę opublikowano na stronach &lt;a href="http://betalabs.nokia.com/apps/silverlight"&gt;Nokia Beta Labs&lt;/a&gt;, To co mnie zainteresowało najbardziej to fakt, że wypuszczono wersję Silverlight w wersji tylko dla modeli dotykowych. Samo zainstalowanie wtyczki nic nie pomogło w sytuacji gdy nie ma linków do przykładów. W końcu ktoś podał linka do &lt;a href="http://silverlight.net/content/samples/s60/bing/"&gt;dema dla Binga&lt;/a&gt;&lt;br /&gt;Po przeszukaniu informacji okazało się że to zespół z Indii stworzył tą aplikację. Tym zespołem kieruje &lt;a href="http://blogs.msdn.com/mgaur/default.aspx"&gt;Manav Gaur&lt;/a&gt;  (&lt;a href="http://twitter.com/mgaur"&gt;@mgaur&lt;/a&gt;). Postanowiłem więc przyjrzeć się możliwościom tej wersji. Ściągnąłem więc wersję &lt;a href="http://go.microsoft.com/fwlink/?LinkID=184639"&gt;Silverlight for Symbian - Beta Developer Tools&lt;/a&gt;. Po zainstalowaniu zauważyłem że są przykłady: Digg, HelloWorld i SilverPlayer. Przegrałem je na kartę i spróbowałem uruchomić (nie udało się). Pomyślałęm że problem jest że te wersje nie są dobrze skompilowane. Postanowiłem zainstalować &lt;a href="http://go.microsoft.com/fwlink/?LinkID=135650"&gt;Visual Web Developer 2008 Express with SP1&lt;/a&gt;  (instalacja była trochę problematyczna)  wraz z &lt;a href="http://go.microsoft.com/fwlink/?LinkID=128134"&gt;Microsoft® Silverlight™ 2 Tools for Visual Studio 2008 SP1 &lt;/a&gt;Po zainstalowaniu zrobiłem swoja wersję HelloWorld i wrzuciłem ją do komórki. Też nie dało się uruchomić w tej sytuacji zrozumiałem, że można tylko te pliki xap pobierać z internetu. Po pobieżnym zapoznaniu się z dokumentacją doszedłem do wniosku że na razie chyba sensowne rozwiązanie to używanie wersji na emulatorze dla S60 5&lt;sup&gt;th&lt;/sup&gt; Edition SDK v1.0.. W tej sytuacji wszedłem do folderu Redist\Emulator zrobiłem plik c.bat z polecaniem cmd i uruchomiłem go, pojawiło się okno konsoli linii poleceń wiec wpisałem tam&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Consolas;"&gt;&lt;span style="font-family:Consolas;"&gt;InstS60Emu.cmd &lt;/span&gt;&lt;/span&gt;E:\S60\devices\S60_5th_Edition_SDK_v1.0&lt;br /&gt;&lt;br /&gt;Po skopiowaniu 27 plików uruchomiłem emulator. W razie czego zmieniłem wybór emulatora poleceniem&lt;br /&gt;&lt;br /&gt;devices -setdefault @S60_5th_Edition_SDK_v1.0:com.nokia.S60&lt;br /&gt;&lt;br /&gt;a emulator uruchamiam poleceniem&lt;br /&gt;&lt;br /&gt;epoc&lt;br /&gt;&lt;br /&gt;Następnie uruchamiam w przeglądarce emulatora demo z Bingiem i zadziałało.&lt;br /&gt;Pozostało sprawdzenie czy zadziałają przykłady z folderu Samples. Przypomniałem sobie nagle, że na lokalnym Apachu trzeba dodać MINE Types  dla technologii Microsoftu wiec w pliku mine,types (albo można też w pliku httpd.conf) serwera Apache2.2 dodałem następujące wpisy:&lt;br /&gt;&lt;br /&gt;application/manifest    manifest&lt;br /&gt;application/xaml+xml   xaml  &lt;br /&gt;application/x-msdownload  dll&lt;br /&gt;application/x-ms-application   application&lt;br /&gt;application/x-ms-xbap  xbap&lt;br /&gt;application/octet-stream  deploy&lt;br /&gt;application/vnd.ms-xpsdocument xps&lt;br /&gt;application/x-silverlight-app xap&lt;br /&gt;&lt;br /&gt;Następnie zrestartowałem serwer Apache2.2. Przegrałem pliki przykładów do foldera htdocs/sl. Tak wiec miałem dostęp pod adresem http://127.0.0.1/sl/index.htm.  &lt;br /&gt;Uruchomiłem znowu emulator poleceniem epoc  z linii poleceń. Długo się uruchamia sam emulator. Po otwarciu przykładu z SilverPlayer przgladarka w emulatorze zaiwszała się z błędem KERN-EXEC 3 Natomiast w przykładzie z Digga wyglądało na to że nie działa wpisywanie tekstu w pole tekstowe.&lt;br /&gt;&lt;br /&gt;Czy Silverlight zagości w komórkach z Symbianem? Według mojego rozeznania nie za bardzo. Na poziomie użytkownika przypomina to konieczność ściągania i instalowania wtyczki (4 MB). Z punktu widzenia reklamodawców to technologia o bardzo małym zasięgu i dla niewielkiej liczby użytkowników. Z punktu widzenia zespołu programistycznego wymusza to fragmentaryzację i utrzymywanie wersji w Silverlight 2.0 (dla przeglądarek na Linuksie na Mono i dla urządzeń mobilnych) i Silverlight 3.0 (dla przeglądarek na Windowsie i Macu) i pracować nad migracją do Silverlight 4.  W praktyce programiści i designerzy oraz developerzy prawdopodobnie zignorują wersję na urządzenia mobilne.  Najgorzej wyjdzie jeszcze dla technologii Silverlight na Symbiana będzie rywalizacja z technologią Adobe czyli FlashLite czy Flash 10.1. Problem w tym że Ci którzy robią elementy Flash na stronach WWW nie biorą pod uwagę tego że trzeba dodać wersje Flash Lite dla użytkowników inteligentnych komórek. Jeżeli jest bardzo niskie zainteresowanie technologią FlashLite to jeszcze gorzej wypadnie dla Silverlighta. Następnym elementem, który wskazuje bardzo słabe zainteresowanie programistów .NET platformą Symbian jest upadek firmy RedFive a wcześniej AppForge.  To co może dać szansę dla Silverlighta na Symbiana to:&lt;br /&gt;&lt;ul&gt;&lt;li&gt; dostarczenie wersji standalone do uruchamiania plików xap lokalnie&lt;br /&gt;&lt;/li&gt;&lt;li&gt;zrobienie wersji dla S60 3rd FP2&lt;br /&gt;&lt;/li&gt;&lt;li&gt;umożliwienie tworzenie paczek sis z aplikacjami Silverlight&lt;/li&gt;&lt;li&gt;umożliwienie uruchamianie aplikacji Silverlight (plików xap) z poziomu widgetów WebRuntime&lt;br /&gt;&lt;/li&gt;&lt;li&gt;dołączenie Silverlighta do aktualizacji FOTA (podobne do dystrybucji runtime Pythona 2.0)&lt;/li&gt;&lt;li&gt;dołączenie Platform Services 2.0 do runtime Silverlight&lt;/li&gt;&lt;li&gt;pokazać przykłady  współpracy z QtWebkit&lt;br /&gt;&lt;/li&gt;&lt;li&gt;zrobienie frameworka UI dedykowanego dla Symbian i Windows Phone 7&lt;/li&gt;&lt;li&gt;i przede wszystkim dużo kursów i przykładów dla Symbiana oraz promowanie społeczności przez Microsoft i jak Nokię&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-9036829179268744818?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/ZYKDFT65D8o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/9036829179268744818/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=9036829179268744818" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/9036829179268744818?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/9036829179268744818?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/ZYKDFT65D8o/symbian-silverlight-beta.html" title="Symbian Silverlight beta" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/03/symbian-silverlight-beta.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMNSHs_fCp7ImA9WxBbF0s.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-2205312631000072905</id><published>2010-03-16T12:49:00.005+01:00</published><updated>2010-03-16T20:08:19.544+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-16T20:08:19.544+01:00</app:edited><title>APIBridge i Nokia Platform Service 2.0</title><content type="html">Platform Services to API w Symbianie, dzięki któremu różnym technologiom na Symbiana (Web Runtime, FlashLite, Java Mobile i jak Python) zapewnia się identryczne API do pewnych funkcjonalności a w przyszłości rozszerzanie je.&lt;br /&gt;&lt;br /&gt;Koncepcję API Platform Services powstała jak tworzono WebRuntime dla S60 3rd FP1 (bazując na Symbianie 9.2) Wtedy do obsługi aplikacji tworzonych jako widgety dodano API System Service Information pozwalające na zbieranie następujących informacji: stan baterii, stan połączenia z siecią, uruchamianie wibracji, stan wyświetlacza, stan pamięci RAM,  oraz informacje o wersji językowej systemu. Pierwsze API nazwano WRT 1.0&lt;br /&gt;&lt;br /&gt;API Platform Services 1.0 pojawiło się w 2008 wraz z wprowadzeniem S60 5th edition, jako rozszerzenie dla aplikacji internetowych dla WebRuntime i jak dla FlashLite. Celem było umożliwienie programistom szybkie wykorzystanie programowania w JavaScript czy ActionScriptu 2.0 do pewnych funkcjonalności komórki. Wtedy oficjalnie  przyjęto że API dla WebRuntime w S60 5th nazwano WRT 1.1  Natomiast też wprowadzono API Platform Services 1.0 dla FlashLite 3 tylko dla S60 5th.  One zawierały bardzo duży zestaw możliwości dla twórców aplikacji Symbiana w JavaScript czy ActionScript 2.0.&lt;br /&gt;Oto zestaw API Platform Services 1.0 zawierał takie możliwości jak:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;AppManager API&lt;/span&gt; pozwala na zebranie informacji jakie programy ma zainstalowane użytkownik i uruchamianie ich oraz plików powiązanych z aplikacjami&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Calendar API&lt;/span&gt;- pozwala na dostęp i modyfikacje oraz zarządzanie danymi w kalendarzu.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Contacts API&lt;/span&gt; - można pobrać dane z kontaktów, modyfikować je i w razie czego eksportować do pliku vCard&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Landmarks API&lt;/span&gt; - służy do zbierania informacji o punktach orientacyjnych i ich kategoriach a także tworzenie ich i czy eksportowanie w formacie XML&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Location API &lt;/span&gt;- zbiera informacje o położeniu użytkownika z takich urządzeń GPS, AGPS czy z odbiorników Bluetooth GPS&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Logging API &lt;/span&gt;- ma się dostęp do logów użytkownika kiedy i do kogo dzwonił&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Media Management API&lt;/span&gt; - zapewnia dostęp do plików mediów w publicznych katalogach w komórce w tym do zdjęć użytkownika czy filmików użytkownika.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Messaging API&lt;/span&gt; - pozwala na wysłanie SMSa, MMSa czy emaila jako MMSa, pozwala też na przeczytanie treści w SMSach i MMSach, wyświetlenie monitu że otrzymało się wiadomość, zmianę statusu wiadomości a także kasowanie wiadomości programistyczne.  &lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Sensors API&lt;/span&gt; - otrzymujesz dostęp do danych z czujników akceleracji, nacisku (tapping), orientacji, obrotu, kompasu (czujnik magnetyczny), przechylania (tilt)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;System Information API dla WRT 1.1&lt;/span&gt; ma sporo nowych opcji do odczytu: głównie informacje techniczne o komórce: firmware, nazwa, model, imei, identyfikator komórki, a także informacje związane z siecią: nazwę operatora, numer stacji bazowej, obszar gdzie użytkownik się znajduje.&lt;br /&gt;&lt;br /&gt;Potencjalne możliwosci wykorzystania tego API są spore i wystarczające do tworzenia całkiem ciekawych funkcjonalności.&lt;br /&gt;&lt;br /&gt;Potem Nokia aktualizowała w niektórych modelach silnik przeglądarki internetowej WebKit a także pojawiła się nowa wersja FlashLite 3.1 to dla niektórych modeli API WebRuntime zaczęło nazywać się WRT 7.0 i WRT 7.1.&lt;br /&gt;&lt;br /&gt;Z jednej strony coraz większa presja na tworzenie aplikacji w HTML5, żeby dorównać możliwościom. Nokia wraz ze swoimi partnerami najpierw jako projekt wewnętrzny stworzono API do WebRuntime pozwalający na dodawanie nowych wtyczek i możliwości czyli APIBridge. Z tego co mi wiadomo najpierw wykorzystał Facebook do stworzenia aplikacji na N97. Ponieważ ta aplikacja stałą się popularna to Nokia postanowiła upublicznić komponent &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/d697a64f-ddae-4937-8151-be157b542d26/ApiBridge.html"&gt;APIBridge&lt;/a&gt;. Najpierw w wersji alpha w listopadzie 2009, a potem już poprawione wersje w lutym 2010 dla &lt;a href="http://wiki.forum.nokia.com/index.php/APIBridge_Web_Runtime_API"&gt;APIBridge Web Runtime API&lt;/a&gt; i jak dla &lt;a href="http://wiki.forum.nokia.com/index.php/Flash_Lite_API_Bridge_Interface"&gt;FlashLite&lt;/a&gt; czy &lt;a href="http://wiki.forum.nokia.com/index.php/J2ME_Api_Bridge_Interface"&gt;J2ME&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;W praktyce okazało się że sporo jest komórek z S60 3rd które właściwie nie mają Platform Services, wiec wyszła potrzeba dostarczenia tym komórkom takiej samej funkcjonalności jakie mają te nowsze komórki. Wykorzystując możliwość tworzenia aplikacji serwerowej opartej na pluginach ECOM stworzono framework który pozwala na rozszerzanie możliwości dla WebRuntime, FlashLite czy nawet JaveMobile i Pythona.  API tego frameworka API Bridge można wykorzystać zarówno każdej wersji WRT czy w FlashLite 2 czy FlashLite 3.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Możliwości APIBridge&lt;/span&gt; są takie: wysyłanie plików, nagrywanie filmów,  robienie zdjęć, nagrywanie dźwięku, odczyt plików, skalowanie obrazków, tworzenie miniatur, dostęp do usług Logging API, dostęp do usług Location API, dostęp do plików multimedialnych i wysyłanie tonów DTMF podczas dzwonienia. To wszystko jest dostępne dla programistów ActionScriptu i jak JavaScriptu czy Javy&lt;br /&gt;&lt;br /&gt;Równocześnie Nokia dokonała refaktoringu API Platform Service dostarczając możliwość obsługi kamery z poziomu JavaScriptu. &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/cccea743-f4e5-418f-ad9f-0a7a7f50868f/Nokia_Platform_Services_2_0.html"&gt;API Platform Service 2.0&lt;/a&gt; zostało wypuszczone jako wersja alpha do testowania w marcu 2009, natomiast rok potem w marcu 2010 zostało wysłane do aktualizacji w firmaware N97 i N97 Mini. Główna różnica pomiędzy API Platform Service 2.0 a API Platform Service 1.0 poza zmienionymi nazw metod polega na tym że większość kodu w API Platform Service 2.0 może wykonywać się w sposób asynchroniczny i usunięto ze względów bezpieczeństwa AppManager API.&lt;br /&gt;&lt;br /&gt;Czy te możliwości przyjmą się wśród programistów na komórki? Trudno powiedzieć. Ludzie chcą bardziej bajerancki UI dla aplikacji, co jest możliwe do zrealizowania w FlashLite 3, a z drugiej strony spora fragmentaryzacja technologii wymusza dokonywanie pewnych kompromisów w zakresie projektowania i ingerencji w dane użytkownika. Ktoś złośliwy mógłby napisać gierkę a w tle dokonywałoby zbierania danych o użytkowniku, a potem AJAXem wysłałby dane o komórce użytkownika też wraz z danymi o położeniu użytkownika. W teorii można by wgrać listę wszystkich sklepów i ich dane kontaktowe do książki adresowej użytkownika a także wgrać listę punktów obserwacyjnych o tych sklepach do bazy w komórce. Takie aplikacje są dobre dla ludzi którzy potrzebują szybkiego kontaktu  wewnątrz organizacji i na służbowych komórkach. Monitoring pracowników gdzie aplikacja w tle wysyła na serwer komunikaty o położeniu pracownika i jego aktywności jest wręcz konieczna w przypadku gdzie trzeba zarządzać ludźmi w czasie rzeczywistym. Pisząc o jego aktywności polega to na zbieraniu informacji o jego kontaktach. Wykorzystanie kamery w komórce pozwoli na robienie na szybko zdjęć i wysyłanie tego mailem czy MMS ma duże znaczenie w dostarczaniu komunikatów z imprez czy efektywności podejmowanych działań. Właściwie bardzo silna możliwość identyfikacji użytkownika komórki sprawia że łatwiej jest dokonać jego pomiaru aktywności poprzez wykorzystanie tej aplikacji jako widgetu w internecie niż w przypadku aplikacji internetowych z przeglądarki internetowej. Widgety Symbiana mogą stać się bardzo skutecznym w marketingu mobilnym - ale też przekleństwem dla użytkowników komórek.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-2205312631000072905?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/SveRHif_nH0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/2205312631000072905/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=2205312631000072905" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/2205312631000072905?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/2205312631000072905?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/SveRHif_nH0/apibridge-i-nokia-platform-service-20.html" title="APIBridge i Nokia Platform Service 2.0" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/03/apibridge-i-nokia-platform-service-20.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EGQn04eip7ImA9WxBWGE8.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-8752766396399966365</id><published>2010-02-10T14:56:00.006+01:00</published><updated>2010-02-10T18:07:03.332+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-10T18:07:03.332+01:00</app:edited><title>Wild Duck - otwarty telefon Symbiana</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://developer.symbian.org/wiki/images/4/45/Wdslogo.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 600px; height: 350px;" src="http://developer.symbian.org/wiki/images/4/45/Wdslogo.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Otwarcie kodu źródłowego Symbiana pozwala iść dalej w stronę rozwoju sprzętu dla kogoś kto chciałby mieć własny telefon, czy jakieś urządzenia oparte na tym systemie operacyjnym. Jeszcze nie wypuszczono Start Kita niskobudżetowego tak żeby można było sobie zrobić "własny" inteligentny telefon, który pozwoliłby uruchomić Symbiana i nauczyć się tworzenia oprogramowania wykorzystującego możliwości sprzętowe nowych urządzeń.&lt;br /&gt;&lt;br /&gt;Obecnie do prac rozwojowych nad Symbianem^4 używa się układów &lt;a href="http://focus.ti.com/general/docs/wtbu/wtbugencontent.tsp?templateId=6123&amp;navigationId=12013&amp;contentId=53575&amp;DCMP=wtbu_zoom&amp;HQS=Other+PR+zoom2&amp;DCMP=wtbu_zoom&amp;HQS=EvaluationTools+PR+zoom2forsymbian"&gt;Zoom OMAP34x-II MDP (Mobile Development Platform)&lt;/a&gt; To cudo jest bardzo drogie &lt;a href="http://www.logicpd.com/products/development-kits/texas-instruments-zoom%E2%84%A2-omap34x-ii-mdp#tabs-som-3"&gt;$1150&lt;/a&gt; - z powodów, że to jest limitowana seria, która pozwala też uruchomić inne &lt;a href="http://www.omapzoom.org/"&gt;systemy operacyjne&lt;/a&gt; w tym Androida czy eLinuxa.&lt;br /&gt;&lt;br /&gt;Zawsze szuka się tańszych rozwiązań. Wybór padł na BeagleBoards.org, gdzie zakup prostego układu scalonego kosztuje $149. &lt;br /&gt;&lt;br /&gt;Warto obejrzeć filmik przedstawiający przygotowanie do pracy z Symbianem&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/CcN04HpGGJw&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/CcN04HpGGJw&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Warto poczytać &lt;a href="http://developer.symbian.org/wiki/index.php/BeagleBoard_Quick_Start"&gt;o tym&lt;/a&gt; jak przygotować Symbiana do pracy z tym układem.&lt;br /&gt;Z okazji otwarcia kodu Symbiana^3 okazało się, że potrzebny będzie bardziej zaawansowany układ. Tak powstała koncepcja zrobienia nowego Starter Kitu pod nazwą kodową "&lt;a href="http://developer.symbian.org/wiki/index.php/Wild_ducks_project"&gt;Wild Duck&lt;/a&gt;" dla kogoś kto by chciał zobaczyć Symbiana^3 w działaniu i rozwijać w stronę Symbiana^4.  &lt;br /&gt;&lt;br /&gt;Wystarczy zainwestować w: &lt;br /&gt;- płytkę Beagle Board - $146&lt;br /&gt;- rozszerzenie &lt;a href="http://www.tincantools.com/product.php?productid=16147&amp;cat=0&amp;page=1&amp;featured"&gt;Ethernet&lt;/a&gt; i portem dla kart MMC/SD  dla płytki Beagle Boards - $79&lt;br /&gt;- UC864-G Modem and S3 Starter Kit to modem UMTS/GMS z GPS i układ scalony który można podłączyć do płytki. Koszt &lt;a href="http://www.roundsolutions.com/shop/products/en/GSM-Modem/Telit-UC864-G-UMTS-HSDPA-Module-GSM-Quad-Band-UMTS-Tri-Band-85.html"&gt;modemu&lt;/a&gt; to 146 Euro (około $200) a sam &lt;a href="http://www.roundsolutions.com/shop/products/en/GSM-Modem/StarterKits/UC864-G-Starter-Kit-UMTS-HSDPA.html"&gt;starter kit&lt;/a&gt; kosztuje 409 Euro (około $576) chociaż jest tańsza wersja starter kita S3 za 329 Euro, ale nie wiem którą wybrano do tworzenia Wild Ducka   &lt;br /&gt;- &lt;a href="http://www.tincantools.com/product.php?productid=16134"&gt;Flyswatter JTAG&lt;/a&gt; do debugowania a kosztuje to $50&lt;br /&gt;- &lt;a href="http://www.tincantools.com/product.php?productid=16136&amp;cat=249&amp;page=1"&gt;zasilacz&lt;/a&gt; za $7&lt;br /&gt;- &lt;a href="http://www.tincantools.com/product.php?productid=16144&amp;cat=0&amp;page=1&amp;featured"&gt;przełączniki do Beagle Board&lt;/a&gt; za $19&lt;br /&gt;- mikrofon i słuchawki do modemu &lt;br /&gt;- monitor DVI łączący się za pomocą HDMI &lt;br /&gt; &lt;br /&gt;Wyszło mi że koszt dla "Wild Duck"  bez Starter Kita dla modemu to kosztuje prawie $500 a z Starter Kitem dla modemu kosztuje $1068. A do tego trzeba jeszcze dołączyć koszt przesyłki i podatki. To jest jeszcze trochę za drogie dla hobbystów.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-8752766396399966365?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/JKwqIE6DP8Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/8752766396399966365/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=8752766396399966365" title="Komentarze (2)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/8752766396399966365?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/8752766396399966365?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/JKwqIE6DP8Y/wild-duck-otwarty-telefon-symbiana.html" title="Wild Duck - otwarty telefon Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://flex2.blogspot.com/2010/02/wild-duck-otwarty-telefon-symbiana.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0cCQH44eCp7ImA9WxBRFU4.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-7515791089994658091</id><published>2009-12-29T19:38:00.012+01:00</published><updated>2010-01-03T16:04:21.030+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-03T16:04:21.030+01:00</app:edited><title>Symbian S60. Programowanie urządzeń mobilnych</title><content type="html">Kupiłem książkę Pawła Gali o Symbianie wydaną przez wydawnictwo Helion. Z dużym zapałem zacząłem ją czytać. Podczas czytania zauważyłem, że styl pisania zaczynał być bardzo akademicki, co zmuszało mnie do przerywania lektury, żeby zastanowić się o co chodziło autorowi. Z wielkim trudem dobrnąłem do końca książki. I mam duże wątpliwości, co do tego kto ją powinien kupować i czytać. Pierwsze skojarzenie to studenci, którzy będą uczyć się programować na Symbiana. Oni są na dobrej drodze żeby kupić tą książkę i razem z wykładowcą na ćwiczeniach przerabiać wiedzę z tej książki. Druga grupa czytelników to ci, którzy już programują na Symbiana. Im bardzo polecam tą książkę ze względu żeby mogli uporządkować sobie wiedzę na temat programowania na Symbiana. Natomiast odradzam kupowanie tej książki ludziom, którzy wcześniej nie programowali na Symbiana, ponieważ w tej książce jest zawarta wiedza teoretyczna, bez praktycznie działających przykładów (czyli przygotowanych projektów z kodem do skompilowania). Są natomiast listingi, które tak naprawdę służą do pokazania jakiejś teoretycznej podstawy w kodzie. To już zmusza czytelnika do dużego wysiłku intelektualnego, żeby sprawdzić tą teorię w praktyce.&lt;br /&gt;&lt;br /&gt;Z pierwszego rozdziału czytelnik dowie się o systemie operacyjnym Symbian i o jego budowie i zrozumie dlaczego jest to jeden z najbardziej restrykcyjnych systemów operacyjnych i jednocześnie bardzo trudnym w zrozumieniu. Istotne jest zrozumienie architektury EKA2. Z drugiego rozdziału można dowiedzieć się że jak trzeba przegotować warsztat programisty. Autor poleca żeby użytkownik instalował SDK S60 3rd FP2 i Carbide.C++. Właściwie to już trochę nie trafiony wybór, bo ja bym zaproponował instalowanie ADT ze stron Fundacji Symbian. Zmartwiło mnie, że to tylko wspomniał o Designerze UI twierdząc, że nie poleca używania tego kreatora bez znajomości teorii o programowaniu. Dzisiaj większość ludzi zaczyna naukę programowania właśnie od takich kreatorów. Zrozumiale jest to, że bez teorii nie ma sensu uczyć programowania, ale przecież można było krok po kroku pokazać gdzie wstawiać odpowiednie fragmentów kodów z listingów. Autor od razu przedstawia w rozdziale 3 architekturę GUI czyli framework AVKON. Podczas tej lektury zauważyłem że celem autora przedstawienie wiedzy niż pomóc czytelnikowi w zrozumieniu jej. Potem spróbowałem wykorzystać listingi do zbudowania sobie aplikacji. Nie udało się, bo listingi nie zawierały wszystkiego co było potrzebne do zbudowania tej aplikacji. Następnie wygenerowałem sobie projekt z Carbide, oraz zacząłem badać jakie są różnice z tym kodem autora, a tym z kreatora. Sęk w tym, że raz autor pisze o standardowym kodzie tj takim który nie uwzględnia wersji językowych, a potem nagle pisze o tworzeniu wersji językowych. Można było się pogubić w lekturze, pomimo że merytorycznie treść jest w porządku. Skończyło się na tym, że zrobiłem 2 wersje raz tylko z wersją angielską a raz z wersją polską. Tylko, że wersja polska nie poprawnie wyświetlała znaki polskie. Poszukałem na Forum Nokia rozwiązania problemu. Wymagało to podania makra CHARACTER_SET UTF8 w pliku lokalizacyjnym. Zadowolony, że uporałem się z problematycznym rozdziałem zacząłem czytać rozdział 4 o platformie bezpieczeństwa. Rozdział ten dość dokładnie omawia o uprawnieniach aplikacji i podpisywaniu aplikacji na Symbiana. Także bardzo dobrze omówił procedurę certyfikacji i sposób uzyskiwania identyfikatorów dla aplikacji w Symbian Signed. Według mnie to najlepiej napisany rozdział w całej książce. Tak zadowolony przeszedłem do czytania 5 rozdziału o emulatorze Symbiana. Jakoś nie darzę szczególną estymą ten emulator z tego powodu, że jest bardzo powolny i trzeba mieć dużo cierpliwości do niego. To co mnie zainteresowało to wykorzystanie narzędzi do diagnostyki czyli zainstalowania ecmtagent_cpp.sis i monitorowanie aktywności aplikacji w komórce z poziomu panelu diagnostycznego Carbide. Wcześniej w tym celu korzystałem tylko z AppTRK. Zawsze można coś dla siebie odkryć ciekawego. Od rozdziału 6 rozpoczyna się wykład o niuansach programowania w Symbianie. Jedyne co mogę uznać za plus to, że autor ustala terminologię w języku polskim dla programistów Symbiana. Rozdział 6 dotyczy konwencji nazewniczych. Tutaj miałem problem z szybkim załapaniem co powoduje ze dana klasa jest na stercie lub na stosie. Czy jest jakiś wyznacznik w kodzie co pozwala na rozróżnienie tego czy daną klasę należy nazwać z przyrostkiem C albo T? Jakoś to rozumiem, ale jeszcze brakuje mi wprawy w tym. Rudział 7 dotyczy obsługi wyjątków w Symbianie. Po prostu podczas tworzenia Symbiana trzeba było wymyślić jakiś sposób obsługi różnych problematycznych sytuacji. W tej sytuacji wymyślono cały unikalny mechanizm oparty na wyjściach, podwójnym konstruktorze, panikach, oraz stosu czyszczącego. Najcenniejszą informację dla mnie była informacja o pliku ErrRd, dzięki któremu programista czy użytkownik może dowiedzieć się o tym jaka panika wystąpiła. Rozdział 8 dotyczy używania deskryptorów. Deskryptory są po to żeby umieć zarządzać danymi w Symbianie. Zarówno tymi tekstowymi i jak binarnym. Szczerze mówiąc zawsze miałem problemy ze zrozumieniem dobrze deskryptorów. Po przeczytaniu tego rozdziału mam jeszcze większy mętlik w głowie - głownie dlatego, że trzeba będzie do każdego listingu zrobić wersję programu który pokazywałby to w działaniu. A tego jest bardzo dużo do przyswojenia i nie da się tego od razu zrozumieć. Czytając te listingi przyszła mi myśl, że skoro takich rzeczy w nauce C++ wystarczy zwykła aplikacja konsolowa to w tym przypadku też można byłoby sobie napisać aplikacje konsolowe i sprawdzać to w trybie debugowania na komórce. Myślę że bardzo to ułatwiłoby naukę. Zrobiłem przerwę w lekturze, czasami polecam przerwanie lektury książki jak okaże się za trudna i wrócić do niej po jakimś czasie. Rozdział 9 traktuje o tablicach dynamicznych. Ten rozdział koncentruje się na klasach typu CArray, o tym że niektóre klasy mają zdolność do wyszukiwania elementów, sortowania. To co mnie zainteresowało to mechanizmy zarządzania pamięcią. Będę musiał przemyśleć jeszcze raz ten rozdział przerabiając do każdego przypadku klasy odpowiedni przykład. to co wyróżnia Symbian od innych systemów operacyjnych to koncepcja aktywnych obiektów. To można potraktować jako pewnego rodzaju AJAX w aplikacji. Kod w aplikacji może zostać wykonany synchronicznie czy w wg odpowiedniej kolejności a także asynchronicznie czyli równolegle. Asynchroniczność zakłada istnienie stanów aplikacji co za tym idzie określanie informacjo o zdarzeniach. Każda klasę która ma być wykonywana w sposób asynchroniczny musi dziedziczyć od klasy CActive i być uruchamiana przez obiekt klasy CActiveScheduler, którzy często jest zwany Zarządcą Aktywności. Ma to sens bo sporo aplikacji na Symbiana, może działać w tle, co tez sprzyja pisaniu aplikacji, które mogą działać długi czas. To jednak trzeba kilka razy czytać ten rozdział. Pomyślałem, że warto by przeczytać cała książkę jeszcze raz pod katem panik różnego rodzaju oraz specjalne napisać takie kody źródłowe które by pokazywały wywołanie określonej paniki a to tak żeby wiedzieć czego unikać. Każdy system operacyjny który ma być wielozadaniowy ma w sobie wątki i procesy o czym omawia rozdział 11 W Symbianie można powiedzieć w dużym uproszczeniu, że proces to załadowana biblioteka bądź uruchomiona aplikacja w której działają różne wątki które wykonują różne zadania. To jak zostaną zadania wykonane zależy też od ustawionych priorytetów. Przynajmniej dzięki tej lekturze lepiej zrozumiałem mechanizmy synchronizacji od strony teoretycznej o semaforach, muteksach i sekcjach krytycznych oraz o klasie Rendezvous. Ponieważ nie miałem okazji do zastanawiania się nad takimi subtelnościami, to w większości ten temat będzie wymagał ode mnie kilkakrotnej lektury. Zauważyłem, że bardzo przyda się zastosowanie klasy RUndertaker w celach diagnostycznych do śledzenia działania wątków w aplikacji. Jak czytam od kilku dni tą książkę to tym coraz bardziej czuję bardzo skomplikowane mechanizmy, których nie da się zrozumieć bez eksperymentowania na listingach i czytania dokumentacji o samym systemie Symbian. Z taką raczej obawą, że nie zrozumiem wszystkiego do końca postanowiłem zrobić przerwę w lekturze. Gdy wróciłem do lektury to uświadomiłem sobie, że autor musiał zrobić pewnego rodzaju kompromis pomiędzy tym żeby w sposób treściwie przedstawić materiał a tym co jest dydaktyką. Kierując z lekturą w stronę bardzo świadomego i samodzielnego czytelnika aspirującego do poziomu wiedzy autora powoduje bardzo zawężenie grupy ludzi, którym ta książka może się przydać. Ja jako czytelnik zacząłem czytać o architekturze klient-serwer i odkryłem fakt, że prawie wszystko w systemie Symbian działa w architekturze klient - serwer. Prawie całą komunikacja w tym systemie od środka polega na tworzeniu sesji i podsesji. Bardzo trafna analogia, że sesja z podsesjami to taki kabel wielożyłowy. Podstawowa klasą odpowiedzialną za tworzenie sesji jest klasa RSessionBase, a za obsługę podsesji odpowiada klasa RSubSessionBase, natomiast serwer i jak klient tworzą instancje obiektów klasy CSession2 aby przesyłać wzajemnie komunikaty, które są obiektami klas TIpcArgs (po stronie klienta) lub RMessage2 (po stronie serwera). Tworząc serwer bazujemy na klasie CServer2. Zauważyłem, że te mechanizmy związane z uprawnianiami i z polityką bezpieczeństwa w tej architekturze mają kluczowa rolę. Po dość długim wprowadzeniu autor zaprezentował to na teoretycznym przykładzie serwera usług kryptograficznych. Znowu autor liczy na samodzielność czytelnika, że sam sprawdzi kod z listingów i przerobi to w kod projektu, a potem sam zaimplementuje klienta. Pomyślałem, że raczej lepiej to zaimplementować w postaci biblioteki dll niż uruchamianego serwera EXE. Ponieważ tworzenie bibliotek dll jest omówione na końcu książki to do tego przykładu warto powracać. Najbardziej zagadkowy okazał się rozdział o właściwościach i repozytoriach. Można przeczytać w nim jak Symbian przechowuje dane globalne o stanach różnych funkcji w komórce. Zaletą właściwości jest to że aplikacja która je zaimplementuje może je rozgłaszać ale już inny program w dowolnym momencie może odebrać tą informację. W architekturze serwer klient obydwie strony wiedzą o sobie nawzajem. Natomiast program który wykorzystuje klasę RProperty nie musi nic wiedzieć o tych klasach które wykorzystują te dane. Repozytoria to już taka specjalna biblioteka która stale przechowuje informacje nawet po restarcie komórki. Dostęp jest możliwy za pomocą obiektów klasy CRepository. W praktyce możliwy jest dostęp do repozytoriów systemowych takie jak stan sieci, profile użytkownika (czyli dostęp do ustawień użytkownika). Tak naprawdę lekturę książki rozpocząłem od rozdziału 14, w którym analizowałem kod z listingów jak tworzyć aplikację wielookienkową. Trochę to różni się od tego co potrafi zrobić kod za pomocą Designera UI z Carbide C++. Jak zwykle autor wymaga od użytkownika zaangażowania, żeby przerobił i uzupełnił kod z listingów w projekt do kompilacji. Czytając na przykład stronę 418 o klasach widoków mam wrażenie, że można pogubić się w tym jak napisać kod brakującej w listingach klasy. Zresztą za pierwszym razem mi nie wyszło. To co mnie zainteresowało też bardzo to aplikacje bez interfejsu użytkownika. I znowu skupiłem swoja uwagę na aplikacji konsolowej. Ten przykład co podał autor jest asynchroniczny co mnie zaskoczyło, że nie mogłem zamknąć tej konsoli w odróżnieniu od aplikacji konsolowej generowanej przez Carbide C++. Największe zdziwienie wywołał u mnie skrypt instalacyjny dla komórki z wyłączoną platformą bezpieczeństwa tak żeby mieć dostęp do plików w folderze !:sys/bin w celu uruchomienia. Potem częściowo to wyjaśniło się jak zacząłem czytać o tworzeniu plików zasobów dla aplikacji, która ma sama się uruchomić. Wyszło na to że aplikacja ma uruchomić się podczas startu systemu. Stosowanie globalnych okien dialogowych nie wymaga przygotowywania specjalnie plików zasobów w interfejsie UI S60 co sprawia że łatwo jest nimi zarządzać z poziomu kodu. Kod z listingów należy przerobić tak żeby działało w aplikacji HelloWorld z trzeciego rozdziału książki albo samodzielnie wstawić do kodu aplikacji GUI wygenerowanej przez Carbide. Autor omawia 5 klas okien dialogowych. Klasa CAknGlobalConfirmationQuery służy do wyświetlania okna dialogowego wyboru logicznego. Klasa CAknGlobalListQuery służy do wyświetlania listy wyboru. Klasa CAknGlobalMsgQuery może wyświetlić długi komunikat bo zawiera pasek przewijania. Klasa CAknGlobalNote wyświetla krótkie komunikaty z odpowiednią kategorią ikon, Natomiast klasa CAknGlobalProgressDialog pokazuje pasek postępu. Aczkolwiek trudno wymyślić sensowną aplikację bazującą na tym to jednak bardzo mogą się przydać przy wyświetlaniu komunikatów wysyłanych przez biblioteki dll, bądź przez aplikacje działające w tle. Najbardziej praktyczny rozdział z tej książki to rozdział o tworzeniu bibliotek dll. Tak naprawdę tworzenie bibliotek dll jest podstawą programowania na Symbianie, do takiego wniosku doszedłem podczas lektury tej całej książki. Są 2 rodzaje bibliotek ładowane statycznie i ładowane dynamicznie. W większości przypadków ładowanie statycznie jest najlepszym rozwiązaniem, ponieważ działa razem z aplikacją. Brak biblioteki powoduje, że aplikacja nie uruchomi się. Przykładem biblioteki statycznej jest Qt. Natomiast gdy istotna jest szybkość i wydajność to warto pomyśleć nad ładowaniem biblioteki polimorficznej do pamięci RAM. Bardzo ciekawie autor pokazał na listingach sposoby tworzenia takich bibliotek i kompilowania tego z linii poleceń. W listingach można zauważyć, że tak naprawdę programowanie na Symbiana w C++ wymaga znajomości wielu makr które w pewien sposób tworzą jakby nakładkę na język C++. Ostatni rozdział opisuje stosowanie podstawowych makr. Właściwie odebrałem wrażenie, że Ci którzy znają się na programowaniu w C++ mogliby rozpocząć od lektury tego rozdziału. Makra _DEBUG wskazują kompilatorowi że ten fragment kodu ma zostać skompilowany dla wersji debugującej. Makro EKA2 ma sens jak tworzy się wersje dla starszych wersji Symbiana. Bardzo użyteczne są __FUNCTION__ czy G_STRLOC makra które służą informowaniu o działaniu programu. Inne użyteczne makra to makra zapobiegające wyciekom pamięci, do których należy grupa makr rozpoczynających się od __UHEAP. Dobrze napisany kod na Symbiana to kod z makrami asercji. Makra które rozpoczynają się od __ASSERT pozawalają już na poziomie kodu sprawdzać wykonanie pewnych założeń i w razie czego wywołać panikę. Obecnie tą rolę zaczynają spełniać testy jednostkowe, które nie są częścią API Symbiana.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-7515791089994658091?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/f5CMQVoWeXg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/7515791089994658091/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=7515791089994658091" title="Komentarze (1)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7515791089994658091?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7515791089994658091?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/f5CMQVoWeXg/symbian-s60-programowanie-urzadzen.html" title="Symbian S60. Programowanie urządzeń mobilnych" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/12/symbian-s60-programowanie-urzadzen.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkQCQHgzcCp7ImA9WxBSFEQ.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-7394681054324724367</id><published>2009-12-22T12:07:00.002+01:00</published><updated>2009-12-22T14:59:21.688+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-22T14:59:21.688+01:00</app:edited><title>QML i Declarative UI</title><content type="html">Tworzenie interesów użytkownika to bardzo trudne zadanie, szczególnie jak tworzy się tak jak strony internetowe. Zazwyczaj tworzy się jakiś framework UI i kompiluje się do jakiejś postaci binarnej. Na przykład piszesz kod w ActionScript 3, ale do opisu UI używasz składni MXML a skompiluje się to do postaci binarnego SWF . Piszesz kod interfejsu w XAML ale i tak efektem końcowym kompilacji jest plik wykonywalny.&lt;br /&gt;Tworzenie interfejsu strony internetowej polega na pisaniu odpowiednich skryptów JavaScript i kodów CSS oraz HTML. Zaletą takiego podejścia jest to że można dynamicznie zmieniać zawartość interfejsu. Czy przeniesienie takiego mechanizmu do tworzenia aplikacji komputerowych i na komórki pozwoli na szybsze tworzenie efektywnego interfejsu użytkownika?&lt;br /&gt;&lt;br /&gt;Jak można zauważyć duża popularność języków opisów deklaratywnego pozwoliło na oddzielenie prac nad wyglądem aplikacji od jej logiki. XAML czy MXML są językami deklaratywnymi które są potem przekształcane w odpowiedni kod do kompilacji. Natomiast próbą przeniesienia mechanizmu obsługi interfejsu aplikacji tak jak działa strona internetowa czy poprzez parsowanie i kompilację kodu skryptowego dzięki mechanizmowi JIT. Od dłuższego czasu Qt Nokia pracuje nad Qt Declarative UI. Jest to biblioteka która pozwala przy pomocy języka deklarytywnego QML bazującego na CSS3 i skryptów JavaScript budować layout aplikacji.&lt;br /&gt;&lt;br /&gt;Ściągamy  ftp://ftp.trolltech.com/qml/qt-4.6.0-declarative.zip &lt;br /&gt;Wypakowujemy to w  e:\qt-4.6.0-declarative&lt;br /&gt;Otwieraramy QtCreatora 4.6  i importujemy plik declarative.pro następnie go otwieramy i na koncu kodu dodajemy &lt;br /&gt;&lt;br /&gt;*-g++*: CONFIG += create_prl&lt;br /&gt;&lt;br /&gt;Potem otwieram camand prompt który ustawia MinGW &lt;br /&gt;wchodzę na e:\qt-4.6.0-declarative\src\declarative &lt;br /&gt;i generuję pliki makefile&lt;br /&gt;&lt;br /&gt;qmake&lt;br /&gt;&lt;br /&gt;następnie generuje binaria dla wersji release i debug&lt;br /&gt;&lt;br /&gt;mingw32-make all&lt;br /&gt;&lt;br /&gt;pozostaje potem jeszcze przegranie plików &lt;br /&gt;&lt;br /&gt;mingw32-make install kopiuje tylko wersję debug&lt;br /&gt;&lt;br /&gt;E:\qt-4.6.0-declarative\src\declarative\.obj\QtDeclaratived4.dll &lt;br /&gt;do E:\qt-everywhere-opensource-src-4.6.0\bin\QtDeclaratived4.dll&lt;br /&gt;E:\qt-4.6.0-declarative\src\declarative\.obj\libQtDeclaratived4.a &lt;br /&gt;do E:\qt-everywhere-opensource-src-4.6.0\lib\libQtDeclaratived.a &lt;br /&gt;&lt;br /&gt;a także sami skopiujemy wersję release&lt;br /&gt;E:\qt-4.6.0-declarative\src\declarative\.obj\QtDeclarative4.dll &lt;br /&gt;do E:\qt-everywhere-opensource-src-4.6.0\bin\QtDeclarative4.dll&lt;br /&gt;E:\qt-4.6.0-declarative\src\declarative\.obj\libQtDeclarative4.a &lt;br /&gt;do E:\qt-everywhere-opensource-src-4.6.0\lib\libQtDeclarative.a&lt;br /&gt;E:\qt-4.6.0-declarative\src\declarative\.obj\QtDeclarative.prl &lt;br /&gt;do E:\qt-everywhere-opensource-src-4.6.0\lib\QtDeclarative.prl&lt;br /&gt;E:\qt-4.6.0-declarative\src\declarative\.obj\QtDeclaratived.prl &lt;br /&gt;do E:\qt-everywhere-opensource-src-4.6.0\lib\QtDeclaratived.prl&lt;br /&gt;&lt;br /&gt;Na koniec potrzebne jest przekazanie plików nagłówkowych. Zaznaczamy poniższy kod i wklejamy do w oknie konsoli.&lt;br /&gt;&lt;br /&gt;xcopy /E /Y ..\..\include\QtDeclarative %QTDIR%\include\QtDeclarative&lt;br /&gt;&lt;br /&gt;Następnym krokiem będzie skompilowanie narzędzia interpertacji kodu QML czyli pliku qmlviewer.exe&lt;br /&gt;&lt;br /&gt;W okno konsoli wpisujemy &lt;br /&gt;&lt;br /&gt;cd ..\..\tools\qmlviewer &lt;br /&gt;&lt;br /&gt;następnie &lt;br /&gt;&lt;br /&gt;qmake&lt;br /&gt;&lt;br /&gt;a potem w celu wygenerowania pliku qmlviewer.exe wpisujemy&lt;br /&gt;&lt;br /&gt;mingw32-make release&lt;br /&gt;&lt;br /&gt;Następnie kopiujemy plik E:\qt-4.6.0-declarative\bin\qmlviewer.exe tam gdzie mamy plik QtDeclarative4.dll czyli do E:\qt-everywhere-opensource-src-4.6.0\bin\qmlviewer.exe&lt;br /&gt;&lt;br /&gt;Potem możemy otworzyć nowy projekt QML w QtCreatorze kliknąc w zakładkę Projekt oraz wskazać ścieżkę dla qmlviewer.exe czyli E:\qt-everywhere-opensource-src-4.6.0\bin\qmlviewer.exe&lt;br /&gt;&lt;br /&gt;Mając już przygotowane Declarative zainstalowane API  &lt;br /&gt;warto przejrzeć przykłady z&lt;br /&gt;E:\qt-4.6.0-declarative\examples\declarative &lt;br /&gt;&lt;br /&gt;Jedyne wprowadzenie do Declarative UI to &lt;a href="http://kenneth.christiansen.googlepages.com/DUI.html"&gt;strona&lt;/a&gt; &lt;br /&gt;oraz &lt;a href="http://qt.nokia.com/doc/qml-snapshot/declarativeui.html"&gt;dokumentacja &lt;/a&gt;&lt;br /&gt;Wygląda na to że w przyszłości będziemy tworzyć aplikacje QML na komórki z Symbianem&lt;br /&gt;co widać na przykładzie kodów &lt;a href="http://qt.nokia.com/developer/new-qt-apis"&gt;New Qt APIs Technology Preview 2 - Mobility Project&lt;/a&gt;  &lt;br /&gt;(instrukcja do tego jak to zainstalować jest na &lt;a href="http://wiki.forum.nokia.com/index.php/Qt_Mobility_Technology_Preview"&gt;wiki&lt;/a&gt; i na &lt;a href="http://discussion.forum.nokia.com/forum/showthread.php?p=684182#post684182"&gt;forum&lt;/a&gt;) &lt;br /&gt;&lt;br /&gt;Kiedy Ci ludzie odpoczną? Ciekawy jestem czy uda mi się skompilować qmlviewer w XM 5800.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-7394681054324724367?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/Wihua7pTiLk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/7394681054324724367/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=7394681054324724367" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7394681054324724367?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/7394681054324724367?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/Wihua7pTiLk/qml-i-declarative-ui.html" title="QML i Declarative UI" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/12/qml-i-declarative-ui.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUUNR3Y_cCp7ImA9Wx9WGE8.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-5419796680347623586</id><published>2009-12-10T14:07:00.023+01:00</published><updated>2011-01-23T23:54:56.848+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-23T23:54:56.848+01:00</app:edited><title>Polskie środowisko programistów Symbiana</title><content type="html">Rola Symbiana jako platformy programistycznej w Polsce została zauważona już dość dawno. Niektóre polskie firmy współpracują z Symbianem od samego początku.&lt;br /&gt;
&lt;br /&gt;
Programowanie w systemie operacyjnym Symbian często jest traktowane jako coś bardzo elitarnego, co powodowało że lepiej było zrobić otoczkę tajemniczości ze względu na liczne umowy NDA  czy zakazu pracy w konkurencji. Pośrednio powoduje to, że dotarcie do osób zajmujących się programowaniem  na Symbiana nie jest takie łatwe. Odtąd kiedy pojawiły się portale społecznościowe to część programistów pozakładała sobie profile zawodowe. Pozwoliło prześledzić kariery tych ludzi. Najciekawsze będzie to w jakich firmach pracują. Daje to dość interesujący obraz tego jak szybko rozwija się społeczność Symbiana w Polsce.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://mobile.comarch.com/"&gt;Comarch&lt;/a&gt; w Krakowie i w Łodzi ma dział zajmujący się rozwijaniem technologi mobilnych na Symbiana. Bardzo aktywnie włącza się w prace rozwojowe badawcze nad rozwojem Symbiana. Silne inwestuje w edukację uniwersytecką czego przykładem  jest inwestowanie w pracowników i w studentów. Warto zobaczyć &lt;a href="http://mobile.comarch.com/products,opensource"&gt;kod źródłowy&lt;/a&gt; projektu 2 gier autorstwa Jerzy Chałupskiego i Pawła Piotrowicza. Bardzo często realizują odpowiednie zadania z zakresu programowania na Symbiana dla Nokii w metodyce Scrum. Pracownicy Comarchu, którzy mają dobre doświadczenie z programowaniem na Symbiana: &lt;a href="http://www.goldenline.pl/krzysztof-soltysik"&gt;Krzysztof Sołtysik&lt;/a&gt; (ASD), &lt;a href="http://pl.linkedin.com/pub/krystian-jasi%C5%84ski/5/90/1b3"&gt;Krystian  Jasiński &lt;/a&gt; (ASD), &lt;a href="http://www.goldenline.pl/185760"&gt;Maciej Sufa&lt;/a&gt; (ASD), &lt;a href="http://www.goldenline.pl/michal-czerwiec2"&gt;Michał Czerwiec&lt;/a&gt; (ASD), &lt;a href="http://www.goldenline.pl/dominik-frankowski"&gt;Dominik Frankowski&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/piotr-madry2"&gt;Piotr Mądry&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/206962"&gt;Grzegorz Gustof&lt;/a&gt; (ASD), &lt;a href="http://www.goldenline.pl/adrian-cichon"&gt;Adrian Cichoń&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/lukasz-sromek"&gt;Łukasz Sromek&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/przemyslaw-jacak"&gt;Przemyslaw Jacak&lt;/a&gt; , &lt;a href="http://www.goldenline.pl/marcin-szymanski4"&gt;Marcin Szymański&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/pub/grzegorz-wachocki/10/121/891"&gt;Grzegorz Wąchocki&lt;/a&gt; (ASD), &lt;a href="http://suzanowicz.pl/"&gt;Jerzy Suzanowicz&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.psiloc.com/en/"&gt;Psiloc&lt;/a&gt; to firma, która specjalizuje się od bardzo długiego czasu w tworzeniu oprogramowania na Symbiana. Program który jest wizytówką tej firmy to &lt;a href="http://worldtraveler.biz/"&gt;WorldTraveler&lt;/a&gt;. Programiści w tej firmie programują na Symbiana od samego początku tej platformy: &lt;a href="http://www.goldenline.pl/maciej-gawronski2"&gt;Maciej Gawroński&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/slawomir-baranowski"&gt;Sławomir Baranowski&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/pub/jaros%C5%82aw-pelczar/a/a64/397"&gt;Jarosław  Pelczar&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/pub/tomasz-polanski/a/abb/276"&gt;Tomasz  Polański&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/maciej-kujalowicz"&gt;Maciej Kujałowicz&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.mobica.com/poland.html"&gt;Mobica&lt;/a&gt; to brytyjska firma, która ma 2 oddziały w Polsce: w Warszawie i w Łodzi. Wyspecjalizowała się w konsultacjach dla rynku telekomunikacyjnego na różne platformy programistyczne  z preferencją  programowania na Symbiana. Ludzie, którzy znają się na programowaniu na Symbiana to: &lt;a href="http://pl.linkedin.com/pub/rafal-janczyk/0/658/695"&gt;Rafał Jańczyk&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/grzegorz-kapusta"&gt;Grzegorz Kapusta&lt;/a&gt; &lt;a href="http://uk.linkedin.com/pub/joanna-zolopa/2/b97/532"&gt;Joanna Zolopa&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/pub/pawel-jankowski/5/686/907"&gt;Paweł Jankowski&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.eleader.eu/"&gt;eLeader&lt;/a&gt; to lubelska firma wyspecjalizowana w tworzeniu oprogramowania biznesowego na Symbiana. Głównym ich priorytetem jest tworzenie oprogramowania dla bankowości mobilnej. Osoby które znają się na programowaniu na Symbiana to: &lt;a href="http://www.goldenline.pl/tomasz-wlodzimierz-smutek"&gt;Tomasz Włodzimierz Smutek&lt;/a&gt; i &lt;a href="http://pl.linkedin.com/pub/karol-pawlik/7/39/565"&gt;Karol Pawlik&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.fancyfon.com/"&gt;Fancyfon&lt;/a&gt; kolejna brytyjska firma która ma centrum rozwojowe badawcze w Otominie pod Gdańskiem. Mają też kilka produktów na Symbiana. Według mnie najciekawszy jest produkt MoDo czyli system pozwalający na pracę dziennikarzy w terenie za pomocą komórki. Jednak osobą odpowiedzialną za rozwój produktów opartych na Symbianie jest &lt;a href="http://pl.linkedin.com/in/leoszewski"&gt;Bartosz Leoszewski&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.tieto.pl/"&gt;Tieto&lt;/a&gt; międzynarodowy koncern IT działający głównie w technologiach programistycznych na urządzenia mobilne. Intensywnie rozwijają outsourcing na rzecz wielu firm. W Polsce mają swoje siedziby w Szczecinie i we Wrocławiu. Główni programiści od Symbiana w tej firmie to &lt;a href="http://www.goldenline.pl/piotr-staniszewski2"&gt;Piotr Staniszewski&lt;/a&gt; (ASD), &lt;a href="http://www.goldenline.pl/dariusz-rosolek"&gt;Dariusz Rosołek&lt;/a&gt; (ASD), Piotr  Orzechowski (ASD), &lt;a href="http://www.goldenline.pl/piotr-zabinski"&gt;Piotr Żabiński&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.blstream.com/mobile.htm"&gt;BLStream&lt;/a&gt;  ma siedzibę w Szczecinie i studio w Bydgoszczy oraz placówki we Wrocławiu i w Warszawie. Firma bardziej wyspecjalizowała się w tworzeniu prototypów na Symbiana i na inne platformy mobilne. Najbardziej znany opensourcowy projekt tej firmy to &lt;a href="http://www.openvideohub.com/index.html#about"&gt;Open Video Hub&lt;/a&gt; Za &lt;a href="http://github.com/blstream/OpenVideoHub"&gt;kod źródłowy&lt;/a&gt; tego projektu odpowiada &lt;a href="http://pl.linkedin.com/pub/sebastian-jedruszkiewicz/b/34/14b"&gt;Sebastian Jędruszkiewicz&lt;/a&gt; Pracownicy którzy znają się na programowaniu na Symbiana to: &lt;a href="http://www.goldenline.pl/tomasz-dubik"&gt;Tomasz Dubik&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/pub/piotr-szmyt/5/330/18"&gt;Piotr Szmyt&lt;/a&gt;, &lt;a href="http://www.goldenline.pl/konrad-slowinski"&gt;Konrad Słowiński&lt;/a&gt; (ASD), &lt;a href="http://pl.linkedin.com/pub/magdalena-mostek/2/957/8b7"&gt;Magdalena Mostek &lt;/a&gt;, &lt;a href="http://www.goldenline.pl/pawel-gala"&gt;Paweł Gala&lt;/a&gt; (ASD), &lt;a href="http://pl.linkedin.com/pub/rafal-kocisz/3/555/81a"&gt;Rafał Kocisz&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://teleca.com/Home/services/offshore/teleca_in_poland.aspx"&gt;Teleca&lt;/a&gt; - szwedzka firma mająca oddział w Polsce w Łodzi. Głownie specjalizują się w pisaniu niskopoziomowych rozwiązań dla Symbiana, czyli głównie tutaj chodzi o przeprogramowanie systemu Symbian pod kątem określonych mikroprocesorów i układów scalonych. Większość programistów prowadzi też badania na poziomie akademickim: &lt;a href="http://pl.linkedin.com/in/pgawron"&gt;Piotr Gawroński&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/in/swierczu"&gt;Bartłomiej Świercz&lt;/a&gt; (ASD), &lt;a href="http://pl.linkedin.com/in/oskarkaminski"&gt;Oskar Kamiński&lt;/a&gt; (ASD), &lt;a href="http://pl.linkedin.com/pub/maurycy-mikos/5/66b/b88"&gt;Maurycy Mikos&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.opera.com/company/jobs/offices/"&gt;Opera&lt;/a&gt; we Wrocławiu i w Warszawie tworzy wersję mobilną Opera Mobile. W Polsce z programistów Symbiana biorą przy tym udział m.in. &lt;a href="http://www.goldenline.pl/maciej-kasprzyk2"&gt;Maciej Kasprzyk&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/in/michalzajaczkowski"&gt;Michał Zajączkowski&lt;/a&gt;, &lt;a href="http://www.blogger.com/%C5%81ukasz%20%20Lipski"&gt;&lt;/a&gt;&lt;a href="http://www.linkedin-ech3.com/in/llipski"&gt;Łukasz Lipski&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/in/damiantrelka"&gt;Damian Trelka&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Programiści Symbiana są też potrzebni w centrach badawczo rozwojowych przy wdrażaniu nowych zastosowań telekomunikacyjnych u producentów urządzeń. W warszawskim &lt;a href="http://www.samsung.com/pl/aboutsamsung/ourbusinesses/researchdevelopment.html"&gt;Samsung Electronics Polska Sp. z o.o.&lt;/a&gt; pracuje m.in  &lt;a href="http://www.goldenline.pl/michal-lipinski2"&gt;Michał Lipiński&lt;/a&gt; (ASD). Dla &lt;a href="http://www.motorolacareers.com/moto.cfm?cntry=poland"&gt;Motorola Polska Electronics Sp. z o. o.  &lt;/a&gt;pracuje &lt;a href="http://www.goldenline.pl/piotr-dziewonski3"&gt;Piotr Dziewoński&lt;/a&gt;. Natomiast w Nokia Siemens Networks programowaniem na Symbiana znają się &lt;a href="http://pl.linkedin.com/pub/justyna-%C5%BCmuda/4/211/252"&gt;Justyna Żmuda&lt;/a&gt; i  &lt;a href="http://www.goldenline.pl/bartlomiej-predki"&gt;Bartłomiej Prędki&lt;/a&gt; .&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.cybercomgroup.com/pl/Kompetencje/Aplikacje-mobilne/"&gt;Cybercom&lt;/a&gt; to firma, która ma oddziały w Warszawie i w Łodzi specjalizuje się w realizowaniu zadań dla firm telekomunikacyjnych dostarczając im rozwiązania z zakresu wykorzystania infrastruktury internetowej dla komórek z Symbianem. Pracownicy, którzy programują pod Symbianem to: &lt;a href="http://pl.linkedin.com/in/marekbartosik"&gt;Marek Bartosik&lt;/a&gt; (ASD)&lt;a href="http://pl.linkedin.com/in/konradzapalowicz"&gt;, Konrad Marek  Zapalowicz&lt;/a&gt; (ASD), &lt;a href="http://pl.linkedin.com/in/tkuczera"&gt;Tomasz  Kuczera&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/pub/robert-kowalski/3/2/376"&gt;Robert Kowalski&lt;/a&gt; (ASD), &lt;a href="http://pl.linkedin.com/pub/slawomir-firlej/2/639/73a"&gt;Sławomir Firlej&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.smtsoftware.com/technologie_mobilne.html"&gt;SMT Software&lt;/a&gt; to wrocławska firma która ma w swojej ofercie tworzenie oprogramowania mobilnego dla zarządzania flotą transportową i oprogramowaniem logistycznym. W tej firmie głównymi specjalistami od Symbiana są &lt;a href="http://pl.linkedin.com/in/muncode"&gt;Jacek Munko&lt;/a&gt;, &lt;a href="http://pl.linkedin.com/pub/roman-ludwicki/4/378/bb"&gt;Roman  Ludwicki &lt;/a&gt; Radosław Puścian, &lt;a href="http://pl.linkedin.com/in/tholodniak"&gt;Tomasz Hołodniak&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.polidea.pl/pl/"&gt;Polidea&lt;/a&gt; to mała warszawska firma z duzym potencjałem rozwojowym dla technologii mobilnych, aktywnie intensywnie rozwijają cross-platform technologii mobilnych. Twórcy tej firmy mieli okazję programować na Symbiana: &lt;a href="http://pl.linkedin.com/in/jakublipinski"&gt;Jakub Lipiński&lt;/a&gt; i &lt;a href="http://blog.wachu.i365.pl/"&gt;Piotr Wach&lt;/a&gt;. Przykładem ich współpracy jest kod źródłowy biblioteki &lt;a href="http://code.google.com/p/s60-json-library/"&gt;s60-json-library&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
W &lt;a href="http://blog.gadu-gadu.pl/gg-na-komorki-z-symbianem-s60-wersja-204/"&gt;GG Network S.A&lt;/a&gt;. gdzie za rozwój mobilnej wersji Gadu-Gadu na Symbiana odpowiada &lt;a href="http://www.goldenline.pl/alexey-shabalovskiy"&gt;Alexey Shabalovskiy&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Od całkiem niedawna na studiach w Polsce na niektórych uczelniach można już poważnie postudiować programowanie na Symbiana duża zasługa tutaj Comarchu, który inwestuje w program edukacyjny na AGH od 2007 roku. Przykładowy &lt;a href="http://eit.agh.edu.pl/for/thread/3629"&gt;plan zajęć&lt;/a&gt; z 2008 roku.Obecnie &lt;a href="http://www.kt.agh.edu.pl/~danda/ptm/index.html"&gt;zajęcia&lt;/a&gt; prowadzi &lt;a href="http://pl.linkedin.com/pub/jacek-danda/1/981/30"&gt;Jacek Danda&lt;/a&gt;. Natomiast za praktyki studenckie dla programistów Symbiana w Comarchu odpowiada Grzegorz Wąchocki. W 2009 roku rozpoczęły się intensywne prace nad stworzeniem platformy edukacyjnej &lt;a href="http://moteco.kt.agh.edu.pl/index.php"&gt;MoTeCo&lt;/a&gt; do edukacji nad programowaniem Symbiana w ramach europejskiego programu Leonardo da Vinci.  &lt;br /&gt;
&lt;br /&gt;
Teleca też współpracuje z politechniką Łódzką tworząc projekt edukacyjny od 2008 roku zwany Akademią Symbiana. Jest to program &lt;a href="http://neo.dmcs.p.lodz.pl/podyplomowe_smtm/index.html"&gt;studiów podyplomowych&lt;/a&gt; na których też przygotowuje się do egzaminów ASD. Warto zatrzymać się na tym &lt;a href="http://neo.dmcs.p.lodz.pl/podyplomowe_smtm/smob1/index.html"&gt;programie&lt;/a&gt; prowadzonym przez Bartłomieja Świercza.&lt;br /&gt;
&lt;br /&gt;
W Warszawie  powstała raczej oddolną inicjatywa zwana &lt;a href="http://www.szlif.edu.pl/"&gt;Akademią Inżyniera "Szlif"&lt;/a&gt; ponieważ ma być coraz większe zainteresowanie tworzeniem aplikacji na urządzenia mobilne nie tylko na Symbiana ale i też na inne platformy programistyczne dla urządzeń mobilnych. &lt;br /&gt;
&lt;br /&gt;
W Szczecinie firma BLStream podpisała &lt;a href="http://www.wi.zut.edu.pl/aktualnosci/1013-wspopraca-wizut-i-blstream"&gt;umowę&lt;/a&gt; z Zachodniopomorskim Uniwersytetem  Technologicznym o współpracy. Pozwoli to na lepsze kształcenie studentów w programowaniu na Symbiana.&lt;br /&gt;
&lt;br /&gt;
Warto też zwrócić uwagę na inicjatywę Rafała Kocisza, który na łamach czasopisma Software Developer`s Journal napisał cykl artykułów o programowaniu na Symbiana pod tytułem "Programowanie gier dla Symbian OS" (&lt;a href="http://sdjournal.org/system/articles/attachment1s/6312/original/kocisz2.pdf?1249336673"&gt;Szkielet aplikacji&lt;/a&gt; w 09/08, Budujemy grę w 11/08, Rozwijamy grę w 12/08, Efekty specjalne w 1/09) Problem w tym, że nie można dostać się do listingów powiązanych z tymi artykułami. &lt;br /&gt;
&lt;br /&gt;
16 grudnia 2009 wydawnictwo Helion wydało pozycję &lt;a href="http://helion.pl/ksiazki/symbia.htm"&gt;Symbian S60. Programowanie urządzeń mobilnych&lt;/a&gt; autorstwa Pawła Gali. Książka też ma &lt;a href="ftp://ftp.helion.pl/przyklady/symbia.zip"&gt;kod źródłowy&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-5419796680347623586?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/3gx23rTyQJ8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/5419796680347623586/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=5419796680347623586" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/5419796680347623586?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/5419796680347623586?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/3gx23rTyQJ8/polskie-srodowisko-programistow.html" title="Polskie środowisko programistów Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/12/polskie-srodowisko-programistow.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8GSHY4cSp7ImA9WxBTF04.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-8920298970226853844</id><published>2009-12-07T23:09:00.005+01:00</published><updated>2009-12-13T20:33:49.839+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-13T20:33:49.839+01:00</app:edited><title>Debugowanie aplikacji Symbiana w komórce.</title><content type="html">Bardzo ważną cechą w pracy programisty jest umiejętność używania debugera, tak żeby można było na bieżąco sprawdzać działanie programu. W środowisku Carbide.C++ można sprawdzać działanie programu na 2 sposoby: w emulatorze i na komórce. Najbardziej polecam sprawdzanie działanie programu bezpośrednio w komórce podczas gdy Carbide.C++ będzie informować o procesie debugowania.&lt;br /&gt;&lt;br /&gt;Najpierw trzeba w swojej komórce zainstalować program &lt;a href="http://tools.ext.nokia.com/trk/"&gt;App TRK&lt;/a&gt; którzy będzie przesyłał informacje do Carbide.C++ . Trzeba zwrócić uwagę na to, żeby pobrać wersję która będzie zgodna z komórką którą będziemy debugować aplikację. Na przykład dla  5800 XM pobieramy &lt;a href="http://tools.ext.nokia.com/trk/s60_5_0_app_trk_3_1_2.sisx"&gt;s60_5_0_app_trk_3_1_2.sisx&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Instalujemy App TRK w komórce (najczęściej za pomocą Nokia PC Suite). Komórka ma być połaczona kablem USB. Uruchamiamy App TRK w komórce. Wybieramy lewym softem menu Opcje -&gt; Setting. Pojawi się wybór Connect to ustawiamy na USB.  Komórka jest podłączona kablem USB to z Opcje wybieramy Connect. Pojawi się na wyświetlaczu komunikat Status Connected Connection:USB.&lt;br /&gt;&lt;br /&gt;Uruchamiamy Carbide C++. Importujemy projekt  E:\S60\devices\S60_5th_Edition_SDK_v1.0\S60CppExamples\helloworldbasic&lt;br /&gt;Podczas wyboru SDK wybieramy Phone Debug (GCCE) [S60_5th_Edition_SDK_v1.0]. Po zaiportowaniu widzimy że mamy aktywny projekt Z menu Carbide.C++  wybieramy Project -&gt; Properties. Pojawi się okno Properties for helloworldbasic.  Z węzła Carbide.C++ wybieramy Build Configurations.  Widzimy aktywną konfigurację na Phone Debug (GCCE) [S60_5th_Edition_SDK_v1.0]. W zakładce "SIS Builder" klikamy w Add. Pojawi się okno SIS Propories Z PKG File wybieramy sis\helloworldbasic_gcce.pkg. Upewniamy się że mamy zaznaczone Self sign sis file Klikamy w OK. Potem w przycisk Apply a następnie w OK. Więc już projekt mamy przygotowany do kompilacji.&lt;br /&gt;Zanim weźmiemy się do kompilacji trzeba będzie zmienić w pliku sis\helloworldbasic_gcce.pkg&lt;br /&gt;..\..\..\epoc32\release\gcce\urel\HelloWorldBasic.exe na ..\..\..\epoc32\release\gcce\udeb\HelloWorldBasic.exe&lt;br /&gt;Zresztą pliki z SDK i tak muszą wymagać odpowiedniego przygotowania skryptów do instalacji. Po prostu trzeba wskazać gdzie kompilator umieścił wersję debugowaną.&lt;br /&gt;&lt;br /&gt;Kompilację wykonuje się prosto.  Z menu Carbide wybieram Project -&gt; Build Project.  Obserwujemy w oknie konsoli (Window -&gt; Show View -&gt; Console) komunikaty podczas kompilacji.&lt;br /&gt;&lt;br /&gt;Następnie otwieramy plik    src/helloworldbasicappui.cpp i przy linii 140 dla kodu&lt;br /&gt;      case EHelloWorldBasicCommand1:&lt;br /&gt;stawiamy czujkę&lt;br /&gt;&lt;br /&gt;Następnie z menu Run -&gt; Debug As -&gt; Debug Symbian OS Application. Może sie pojawić okno&lt;br /&gt;"Application TRK Launch Configuration" &gt; "Next" wybieramy połączenie USB  Klikamy w Next  to wstedy pojawi się USB Setting. Sprawdzamy czy  Serial Port jest w liście rozwijanej nazwa komórki, w moim przypadku jest to COM7  Nokia 5800 XpressMusic USB Z listy rozwijanej Service OS wybieramy S60 5.0.0 Klikamy w Initiate Service testing i sprawdzamy czy doszło do połączenia. Pojawi się komunikat że mamy poprawna wersje zainstalowaną.&lt;br /&gt;&lt;br /&gt;Z menu Run -&gt; Debug powoduje otwarcie obszaru roboczego poświęconego debugowaniem. Carbide .C++ dokonuje kompilacji,  pakowania w plik instalacyjny oraz instaluje w komórce i uruchamia w komórce. Gdy w uruchomionym programie w komórce uruchomię w menu to program zatrzyma się a w debugerze pokaże to że program zatrzymał się tam gdzie była postawiona czujka.&lt;br /&gt;W obszarze roboczym debugowania w zakładce Debug warto używać przycisku StepOver (F6) pozwala to na prześledzenie krok po kroku działania programu. Natomiast w zakładce Variables śledzimy jak zachowują się zmienne. A dla odważnych polecam zakładkę Dissasembly, żeby nauczyć się asemblera ARM.&lt;br /&gt;&lt;br /&gt;QtCreator 1.3 też ma możliwość pracy z App TRK. Upewniamy się że App TRK jest w komórce uruchomiony na USB.  Uruchamiamy QtCreatora. w menu Narzędzia -&gt; Opcje... uruchomi się okno Opcje. Wchodzimy w węzeł SDK S60  i sprawdzamy jakie mamy zainstalowane SDKi i czy są przypisane do odpowiedniego SDK Qt4.6&lt;br /&gt;&lt;br /&gt;A więcej to można obejrzeć na tym filmie z Youtube&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Rb43gnZI1A0&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Rb43gnZI1A0&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-8920298970226853844?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/oJwdt4jdDjw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/8920298970226853844/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=8920298970226853844" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/8920298970226853844?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/8920298970226853844?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/oJwdt4jdDjw/debugowanie-aplikacji-symbiana-w.html" title="Debugowanie aplikacji Symbiana w komórce." /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/12/debugowanie-aplikacji-symbiana-w.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMCR30-eCp7ImA9WxBTEk0.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-5663584779786709089</id><published>2009-12-07T11:23:00.003+01:00</published><updated>2009-12-07T17:14:26.350+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-07T17:14:26.350+01:00</app:edited><title>Hinduska impreza #fndc09</title><content type="html">Nokia zorganizowała dla Hindusów imprezę programistyczną &lt;a href="http://www.nokiadevcon.in/index.php"&gt;Forum Nokia Developer Conference&lt;/a&gt; - mogę na bieżąco śledzić informacje dzięki Twiterowi pierwszy raz mam wrażenie że to narzędzie staje się tak silnym narzędziem marketingu wirusowego którego jeszcze nie widziałem w ciągu minuty dostawałem kilkanaście wpisów z tej konferencji, tak jak bym był tam na żywo. Gdybym jeszcze na żywo ogladał przekaz multimedialny to byłby hit. Drugi aspekt że prezentacje muszą być profesjonalnie przygotowane z efektami interaktywną prezentacją  - w przeciwnym razie trzeba liczyć sie z porażką i dezaprobatą wobec technologii.&lt;br /&gt;&lt;br /&gt;Bardzo ciekawe są moje spostrzeżenia.&lt;br /&gt;Silna promocja technologii widgetów wraz z ograniczeniami: nie można pobierać plików i jak nie można uruchamiać midletów. Bardzo dobrze przyjęto bibliotekę Qt pomimo braków czyli dostępu do API niskopoziomowego ( z powodu security) oraz instalatora poprzez OTA. Podstawą budowania aplikacji na Symbiana ma być OpenC/C++ a warto tworzyć aplikacje już w Qt. Tworzenie aplikacji na Symbiana ma opierać się na IDE takich jak Carbide.C++, Aptana oraz QtCreator.  "Rezygnacja" z rozwoju midletów Java Mobile - nikt nie chce o tym pisać ani inwestować co powoduje niezadowolenie cześci programistów którzy postawili na tworzenie na masowo aplikacji na S40 i braku rozwoju usług SMSowych. Ponad przeciętne zainteresowanie programowaniem na Maemo. Wątpliwości programistów czy poznawać Sybmian C++ skoro maja uczyć się Qt &lt;span class="status-body"&gt;&lt;span class="entry-content"&gt;który ma 12 modułów i ponad 700 klas API. W mniemaniu niektórych&lt;/span&gt;&lt;/span&gt; programistów wyszedł show marketingowy a myśleli, że czegoś się nauczą. Też był konkurs na który wysłano ponad 110 aplikacji.&lt;br /&gt;&lt;br /&gt;&lt;span id="msgtxt6427860925" class="msgtxt en"&gt;&lt;a href="http://www.bluehome.info/"&gt;BlueHome&lt;/a&gt;, rozwijany przez Binu i Irene z Excel Technologies oparty jest na Pythonie dla Symbiana, głównie użytkownikami mają być niepełnosprawni i niewidzący&lt;/span&gt;&lt;span id="msgtxt6428023296" class="msgtxt en"&gt; i używa układu scalonego który jest kontrolerem. &lt;/span&gt;&lt;br /&gt;&lt;span id="msgtxt6428178910" class="msgtxt en"&gt;Srinivasan V z firmy Indiagames Ltd skoncentrował się na możliwościach grafiki  3D w komórach Nokii w prezentacji o możliwościach OpenGL ES 2.0. &lt;/span&gt;&lt;span id="msgtxt6428209312" class="msgtxt en"&gt;Maemo w N900 używa układu scalonego PowerVR SGX W tej firmie stworzono silnik &lt;/span&gt;&lt;span id="msgtxt6428228012" class="msgtxt en"&gt;ICE3D  i pokazali to na przykładzie gry do baseballa na N900 w Maemo. &lt;/span&gt;&lt;span id="msgtxt6427860925" class="msgtxt en"&gt;Ponieważ N900 ma czujniki ruchu to sprawia że otwierają się nowe możliwosci w programowaniu gier. Ta gra miała &lt;/span&gt;&lt;span id="msgtxt6428316989" class="msgtxt en"&gt;15 fps on 800x480 . Problem jest taki że jest  nie wiele jest komórek z wsparciem ze strony procesorów grafiki&lt;/span&gt;. Są też  problemy z poszczególnymi wersjami pomiędzy OpenGL ES, Open GL ES 1.1 a tą najnowszą OpenGL ES 2,0 ze wsparciem shaderów.&lt;br /&gt;&lt;span id="msgtxt6428445149" class="msgtxt it"&gt;Prezentacja "Innovation in Mobile Applications" była  prowadzona przez &lt;/span&gt;&lt;span id="msgtxt6428488767" class="msgtxt eo"&gt;by Ankur Srivastav &lt;/span&gt;&lt;span id="msgtxt6428445149" class="msgtxt it"&gt;MobiMonster. Ta firma koncentruje się na tworzeniu &lt;/span&gt;&lt;span id="msgtxt6428499058" class="msgtxt en"&gt;middleware czyli niskopoziomowych silników dla aplikacji mobilnych na styku z częścią sprzętową czyli tworzą mechanizmy &lt;/span&gt;&lt;span id="msgtxt6428517600" class="msgtxt en"&gt;silników dla sms/mms, stosy telekomunikacyjne: GPS/GPRS, szyfrowanie rozmów.&lt;/span&gt; Jego główną ideą jest to innowacja w muzyce gdzie użytkownicy mogliby też tworzyć muzykę w komórkach i dzielić się nią. Sukces polega na tym, że potrafisz dzięki programowaniu coś stworzyć dla innych z pasją&lt;br /&gt;&lt;span id="msgtxt6428697265" class="msgtxt en"&gt;Mr. Vijay z Interchange Solutions  &lt;/span&gt;&lt;span id="msgtxt6428702366" class="msgtxt en"&gt;pracuje nad aplikacjami bazującymi na lokalizacji i zaprezentował &lt;a href="http://www.trackut.com/"&gt;Trackut&lt;/a&gt; Aplikacji dzięki której użytkownicy otrzymują informację o tym gdzie są.&lt;/span&gt;&lt;span id="msgtxt6428807511" class="msgtxt en"&gt;Opiera się to na oprogramowaniu GPSWatch i mapach OVI. Mają już 1.7 mln uzytkowników  i dziennie rejestruje się ponad 300 użytkowników.&lt;/span&gt;&lt;br /&gt;&lt;span id="msgtxt6428952923" class="msgtxt fr"&gt;Amit z BIZense technologies zrobił prezentację o programiku w FlashLite Justdial dla FlashLite 2 i Flashlite 3,  &lt;/span&gt;&lt;span id="msgtxt6429024278" class="msgtxt en"&gt;Flash Player 10 dla urządzeń mobilnych pojawi się w przyszłym roku. &lt;/span&gt;Justdial będzie zawierał integrację z OviMaps.&lt;br /&gt;Fajnie że można spotkać sporo hinduskich programistów i geeków na Twiterze, którzy na żywo informowali o przebiegu konferencji: &lt;a href="http://twitter.com/uma_kanth"&gt;@&lt;span class="fn"&gt;uma_kanth &lt;/span&gt;&lt;/a&gt;&lt;a href="http://twitter.com/subbu16"&gt;@&lt;span class="fn"&gt;subbu16&lt;/span&gt;&lt;/a&gt;  &lt;span class="fn"&gt;&lt;a href="http://twitter.com/s0h4m"&gt;@&lt;/a&gt;&lt;/span&gt;&lt;a href="http://twitter.com/s0h4m"&gt;&lt;span class="fn"&gt;s0h4m&lt;/span&gt;&lt;/a&gt; &lt;a href="http://twitter.com/dhempe"&gt;@dhempe&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a href="http://twitter.com/ashwinbhatks"&gt;&lt;span class="fn"&gt;@ashwinbhatks&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://twitter.com/tsuvik"&gt;@&lt;span class="fn"&gt;tsuvik&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://twitter.com/slakshmikanth"&gt;&lt;span class="fn"&gt;@&lt;/span&gt;&lt;span class="fn"&gt;slakshmikanth&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://twitter.com/slakshmikanth"&gt;&lt;span class="fn"&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://twitter.com/jain_rajesh"&gt;@&lt;span class="fn"&gt;jain_rajesh&lt;/span&gt;&lt;/a&gt;, &lt;span class="fn"&gt;&lt;a href="http://twitter.com/Deepaksegaran"&gt;@&lt;/a&gt;&lt;/span&gt;&lt;a href="http://twitter.com/Deepaksegaran"&gt;&lt;span class="fn"&gt;Deepaksegaran&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://twitter.com/im2amit"&gt;&lt;span class="fn"&gt;@&lt;/span&gt;&lt;span class="fn"&gt;im2amit&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://twitter.com/phoenicks"&gt;&lt;span class="fn"&gt;@&lt;/span&gt;&lt;span class="fn"&gt;phoenicks&lt;/span&gt;&lt;/a&gt;&lt;span class="fn"&gt;, &lt;a href="http://twitter.com/vkvraju"&gt;@&lt;/a&gt;&lt;/span&gt;&lt;a href="http://twitter.com/vkvraju"&gt;&lt;span class="fn"&gt;vkvraju&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://twitter.com/mynokiaworld"&gt;&lt;span class="fn"&gt;@&lt;/span&gt;&lt;span class="fn"&gt;mynokiaworld&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://twitter.com/pramodxyle"&gt;&lt;span class="fn"&gt;@&lt;/span&gt;&lt;/a&gt;&lt;span class="fn"&gt;&lt;a href="http://twitter.com/pramodxyle"&gt;pramodxyle&lt;/a&gt;. &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-5663584779786709089?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/uIE9HNnahCg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/5663584779786709089/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=5663584779786709089" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/5663584779786709089?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/5663584779786709089?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/uIE9HNnahCg/hinduska-impreza-fndc09.html" title="Hinduska impreza #fndc09" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/12/hinduska-impreza-fndc09.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUIHRnY9eip7ImA9WxBTEE8.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-3855306471385650682</id><published>2009-12-03T12:29:00.009+01:00</published><updated>2009-12-05T15:32:17.862+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-05T15:32:17.862+01:00</app:edited><title>Przygotowanie do programowania Qt 4.6 na Symbiana</title><content type="html">Ostatni post zawierał informacje o tym jak powstawała biblioteka Qt na Symbiana. Teraz warto przygotować swój komputer do pracy do programowania biblioteki Qt. Zakładam że jest zainstalowane poprawnie SDK  z Nokii (albo &lt;a href="http://developer.symbian.org/main/tools_and_kits/downloads/download.php?id=2&amp;amp;cid=6&amp;amp;iid=22"&gt;ADT&lt;/a&gt; z stron Fundacji Symbiana).  Istotny jest wybór SDK-ów. Trzeba zainstalować S60 3rd FP1 SDK,&lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html"&gt;S60 3rd FP2 SDK, S60 5th Edition v1.0 SDK, N97 SDK&lt;/a&gt;, albo Application Developer Toolkit i dodatki od Samsunga (&lt;a href="http://innovator.samsungmobile.com/down/cnts/toolSDK.detail.view.do?platformId=1&amp;amp;cntsId=2341"&gt;DevPack v1.1 for Samsung i8910 HD&lt;/a&gt;  oraz &lt;a href="http://innovator.samsungmobile.com/down/cnts/toolSDK.detail.view.do?platformId=1&amp;amp;cntsId=1484"&gt;S60 3rd FP2&lt;/a&gt;) oraz SonyEricsson (&lt;a href="http://developer.sonyericsson.com/site/global/docstools/symbian/p_satio_app_develop.jsp"&gt;Satio&lt;/a&gt;)  .  Następnie trzeba do do odpowiedniego SDK w którym chcemy pracować wgrać &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/91d89929-fb8c-4d66-bea0-227e42df9053/Open_C_SDK_Plug-In.html"&gt;SDK dla OpenC/C++ 1.6&lt;/a&gt;. Dla każdego kto ma zamiar w Carbide C++ programować pod Qt 4.6 to musi pobrać patha &lt;a href="http://pepper.troll.no/s60prereleases/patches/x86Tools_3.2.5_Symbian_b482_qt.zip"&gt;x86Tools_3.2.5_Symbian_b482_qt.zip&lt;/a&gt; dla Windows XP / Vista / Seven. Trzeba to wypakować tam gdzie ma się zainstalowanego Carbide C++ w folderze \x86Build. Ci którzy używają Vista /Seven powinni zapoznać się z tą &lt;a href="http://developer.symbian.org/wiki/index.php/Kits_Q%26As#Can_I_Use_the_Kits_on_Windows_Vista.3F"&gt;sekcją&lt;/a&gt;.  Ja zainstalowałem najpierw &lt;a href="http://qt.nokia.com/downloads/sdk-windows-cpp"&gt; Qt SDK for Windows* (283 MB)&lt;/a&gt; który zawiera kompilator MinGW, biblioteki pod Windows oraz QtCreator 1.3. Zazwyczaj zainstalujemy tym celu żeby nauczyć się programowania Qt. Trzeba wiedzieć, że później trzeba będzie odpowiednio przygotować pod pracę z Qt 4.6 SDK dla Symbiana.&lt;br /&gt;&lt;br /&gt;Następnie pobieramy &lt;a href="http://get.qt.nokia.com/qt/source/qt-symbian-opensource-4.6.0.exe"&gt;Qt 4.6 SDK dla Symbiana&lt;/a&gt; Instalujemy to na tym samym dysku co mamy zainstalowane SDKi Symbiana. Podczas instalacji pojawi się okno pytające się do którego SDKa Symbiana ma dodać pliki binarne biblioteki Qt dla emulatorów.&lt;br /&gt;&lt;br /&gt;Użytkownicy XP / Visty / Seven muszą ręcznie dodać zmienne środowiskowe PATH na C:\Qt\4.6.0\bin; i restartować komputer (oraz ustawić uruchamianie pliku epoc.exe w trybie zgodności z XP). Następnym krokiem będzie aktualizacja Carbide C++ (istotne jest żeby zaktualizować kompilatora  C:\Symbian\Tools\ADT_1.0\Carbide.c++\x86Build\Symbian_Tools\Command_Line_Tools\mwccsym2.exe do wersji większej niż 3.2.5, build 482).  Programiści programujący na S60 3rd Edition, FP1 SDK  muszą reinstalować bibliotekę RPipe z \Symbian\9.2\S60_3rd_FP1_3\RPipe_3.1.zip i wypakować to do folderu \Symbian\9.2\S60_3rd_FP1_3\Epoc32\ I no trzeba zamienić plik &lt;a href="http://pepper.troll.no/s60prereleases/patches/getexports.exe"&gt;getexports.exe&lt;/a&gt; \Symbian\9.2\S60_3rd_FP1_3\Epoc32\tools\getexports.exe.&lt;br /&gt;&lt;br /&gt;Najpierw zawsze preferuję sprawdzenie czy Qt będzie działać z linii poleceń. Po zainstalowaniu Qt 4.6 SDK dla Symbiana trzeba skonfigurować Qt z linii poleceń.  Następnie trzeba skonfigurować Qt 4.6.0 żeby rozumiało polecenia dla kompilacji dla Symbiana. W folderze E:\Qt\4.6.0\ robimy plik wsadowy z poleceniem:&lt;br /&gt;&lt;br /&gt;configure -platform win32-g++ -xplatform symbian-abld&lt;br /&gt;&lt;br /&gt;Pojawi się monit  pytający się jaką wersje chcemy używać wpisujemy 'o' jeżeli chcemy używać wersji Open Source Edition. Potem pojawi się następny monit z informacjami o licencjach, akceptujemy licencję LGPL  wpisując 'y'. Trochę czasu potrwa Running syncqt.....&lt;br /&gt;&lt;br /&gt;Kolejnym krokiem ma być dodanie ustawień dla systemu Windows w zmiennych środowiskowych. W większości przypadków wystarczy użyć Start -&gt;Programy -&gt; Symbian Foundation ADT v1.0 -&gt; Carbide.c++ -&gt; Configure environment for WINSCW command line (albo jak mamy tylko Carbide.c++ to trzeba użyć Start -&gt;Programy -&gt; Carbide.c++2.0 -&gt; Configure environment for WINSCW command line, a potem  Start -&gt; Programy -&gt; Qt for Symbian by Nokia v4.6.0 -&gt; Qt for Symbian Command Prompt.&lt;br /&gt;&lt;br /&gt;Z nieznanych mi powodów to nie zadziało więc postanowiłem ręcznie zmienić zmienną środowiskowej QMAKESPEC z 'win32-g++' na 'symbian-abld'. Gdy nam zechce się programować Qt pod Windows będzie trzeba z powrotem zmienić zmienną środowiskową QMAKESPEC.&lt;br /&gt;&lt;br /&gt;Następnie wchodzę w jakiś projekt na przykład E:\qt\4.6.0\examples\widgets\analogclock i tworzę plik wsadowy z poleceniem cmd, który uruchamiam go.  W oknie z linii poleceń wpisuję dla folderu E:\qt\4.6.0\examples\widgets\analogclock polecenie&lt;br /&gt;&lt;br /&gt;qmake -v&lt;br /&gt;&lt;br /&gt;to pojawi się&lt;br /&gt;&lt;br /&gt;Qmake vesion 2.0.1a&lt;br /&gt;Using Qt version 4.6.0 in E:\Qt\4.6.0\lib&lt;br /&gt;&lt;br /&gt;Oznacza to tyle że mamy to już zainstalowane poprawnie i wystarczy wygenerować pliki konfiguracyjne dla projektu.&lt;br /&gt;&lt;br /&gt;qmake -spec symbian-abld -r&lt;br /&gt;&lt;br /&gt;Zostanie wygenerowanych sporo plików w tym folderze zawierające m. in. najważniejsze: Bld.inf i *.mmp oraz *.pkg. Jeżeli tych plików nie ma to oznacza że nie dodaliśmy do zmiennej środowiskowej PATH C:\Qt\4.6.0\bin; może być zamiast tego ścieżka dla Qt 4.6 SDK dla Windowsa czyli może być najpierw w PATH ścieżka C:\Qt\2009.05\qt\bin;. W tej sytuacji trzeba zmienić ścieżkę na C:\Qt\4.6.0\bin; tak żeby występowała najpierw. Następnie trzeba wpisać polecenie:&lt;br /&gt;&lt;br /&gt;make&lt;br /&gt;&lt;br /&gt;które z tych plików zrobi wersję binarną dla emulatora. Trochę to potrwa. Jeżeli w kodzie nie było błędów to można potem uruchomić emulator wpisując&lt;br /&gt;&lt;br /&gt;make run&lt;br /&gt;&lt;br /&gt;Jak chcemy już zrobić wersję na komórki wpisujemy&lt;br /&gt;&lt;br /&gt;make release-gcce&lt;br /&gt;&lt;br /&gt;Powstaną pliki binarne na komórkę, które potem trzeba przekształcić w paczkę. Wystarczy wpisać&lt;br /&gt;&lt;br /&gt;make sis&lt;br /&gt;&lt;br /&gt;Powyższe polecenia udają się pod warunkiem że mamy poprawnie skonfigurowane SDKi pod Symbiana. Podsumowując polecenie make które ma następujące argumenty:&lt;br /&gt;&lt;br /&gt;debug-winscw - domyślne ustawienie które tworzy wersję binarną dla emulatora&lt;br /&gt;debug-gcce - tworzy wersję binarną z informacjami do debugowania na komórkę przy pomocy kompilatora GCCE.&lt;br /&gt;release-gcce - tworzy wersję binarną dla komórki przy pomocy kompilatora GCCE&lt;br /&gt;run - uruchamia wersję binarną w emulatorze z projektu w danym folderze&lt;br /&gt;sis - tworzy podpisaną paczkę do zainstalowania w komórce&lt;br /&gt;&lt;br /&gt;Mamy 3 sposoby na tworzenie aplikacji: z poziomu Carbide C++, z poziomu QCreatora 1.3 i oczywiście z linii poleceń.&lt;br /&gt;&lt;br /&gt;Zakładając że używaliśmy wcześniej Carbide.C++ (zarówno w wersji ze stron Nokii czy ADT ze stron Symbiana) to wystarczy wcześniej odpowiednio skonfigurować to IDE. W menu Carbide.C++ wybieramy Window -&gt;Preferences -&gt; (z listy) Qt.  Klikamy w przycisk Add.. Pojawia się okno Add new Qt version gdzie trzeba podać ścieżki dla tej wersji co mamy zainstalowaną czyli u mnie to jest E:\Qt\4.6.0\bin oraz E:\Qt\4.6.0\include.&lt;br /&gt;Klikam w Apply a potem w OK&lt;br /&gt;&lt;br /&gt;Następnie trzeba stworzyć projekt Qt w Carbide.C++ używając z menu File -&gt; New -&gt; Qt Project. Zostanie uruchomiony kreator projektu Qt. Otwiera się okno &lt;span style="font-weight: bold;"&gt;New Qt Project Wizard&lt;/span&gt;. Z tego wybieramy z listy rozwijanej Qt GUI Main Window i klikamy w Next. Kolejne okno to &lt;span style="font-weight: bold;"&gt;New Qt Symbian OS C++ Project &lt;/span&gt;gdzie podajemy nazwę projektu. Nazwa projektu nie może zawierać spacji. Lokalizacja projektu musi być na tym samym dysku co zainstalowany Qt, SDK oraz CarbideC++ (u mnie to jest dysk E) i też nie może być spacji w nazwach folderów w ścieżce do projektu. Następne okno kreatora to &lt;span style="font-weight: bold;"&gt;Build Targets&lt;/span&gt; gdzie wybieramy sposób kompilacji dla projektu przy użyciu zainstalowanych SDKów. Do wyboru mamy:&lt;br /&gt;Emulator Debug (WINSCW) tworzy wersję binarną dla emulatora Symbian w Windows.&lt;br /&gt;Phone Debug | Release (GCCE) tworzą wersje binarne dla telefonu przy pomocy darmowego kompilatora GCCE, który zazwyczaj jest instalowany z odpowiednim SDK&lt;br /&gt;Phone Debug | Release (ARMV5) tworzą wersje binarne dla telefonów przy pomocy kompilatora ARM RealView Compiler (RVCT). Ponieważ przeważnie nie mamy dostępu do tego kompilatora to pozostawiamy odznaczone. Kolejne okno kreatora to &lt;span style="font-weight: bold;"&gt;Qt Modules&lt;/span&gt; gdzie wybieramy moduły Qt które mają zostać użyte. Przeważnie do prostej aplikacji w celu przetestowania wystarczy to co jest. Ostatne okno kreatora to &lt;span style="font-weight: bold;"&gt;BasicSettings&lt;/span&gt;, gdzie podajemy nazwę głównej klasy, która zresztą jest nazwą projektu a także wygenrowany identyfikator UID3 i klikamy Finish&lt;br /&gt;&lt;br /&gt;Możemy zauważyć jak wygląda dokument projektu&lt;br /&gt;&lt;br /&gt;TEMPLATE = app&lt;br /&gt;TARGET = QtWitaj&lt;br /&gt;QT += core \&lt;br /&gt;   gui&lt;br /&gt;HEADERS += QtWitaj.loc \&lt;br /&gt;   QtWitaj.h&lt;br /&gt;SOURCES += QtWitaj.rss \&lt;br /&gt;   QtWitaj_reg.rss \&lt;br /&gt;   main.cpp \&lt;br /&gt;   QtWitaj.cpp&lt;br /&gt;FORMS += QtWitaj.ui&lt;br /&gt;RESOURCES +=&lt;br /&gt;symbian:TARGET.UID3 = 0xE34838B0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mamy już okno do pracy z kreatorem GUI jak wybierzemy prace z plikiem *.ui&lt;br /&gt;&lt;br /&gt;Następnie z menu Window -&gt; Show View -&gt; Other... pojawi się okienko dialogowe i wybieramy z węzła Qt -&gt; Qt C++ Property Editor i zmieniamy nazwę okna w Property WindowTitle na Witaj Świecie.&lt;br /&gt;&lt;br /&gt;Można zmienić kod w pliku main.cpp na ten:&lt;br /&gt;&lt;br /&gt;int main(int argc, char *argv[])&lt;br /&gt;{&lt;br /&gt;  QApplication a(argc, argv);&lt;br /&gt;  QtWitaj w;&lt;br /&gt;  w.showMaximized();&lt;br /&gt;  w.show();&lt;br /&gt;  return a.exec();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;i zapisujemy zmiany z menu wybieramy Run -&gt; Run As... -&gt; Run As Symbian OS Application i pojawia się okno New Launch Configuration Wizard i klikamy Finish i kompilujemy dla emulatora.  Możemy sobie podziwiać w emulatorze.&lt;br /&gt;&lt;br /&gt;Teraz pozostaje przygotowanie do uruchomienia w komórce Nokia XM 5800. Z menu Project -&gt; Build Configuration -&gt; Manage...  i pojawia się okno dialogowe Add/Remove Carbide Build Configuration i z węzła S60_5th_Edition_SDK_v1.0 wybieram Phone Release (GCCE) i klikamy OK  Następnie z menu Project -&gt; Build Configuration -&gt; Set Active -&gt; Phone Release (GCCE) [S60_5th_Edition_SDK_v1.0].&lt;br /&gt;&lt;br /&gt;Następnym krokiem będzie przygotowanie do robienia paczki instalacyjnej z menu wybieramy Project -&gt; Properties i pojawi się okno dialogowe Properties for QtWitaj.  Z węzła CarbideC++ wybieramy Build Configuration . Wybieramy zakładkę Add i z kolejnego okna dialogowego SIS Properties przy liście rozwijanej PKG File wybieramy QtWitaj_template.pkg i klikamy OK waracamy do poprzedniego okna dialogowego gdzie wciskamy Apply a potem OK.&lt;br /&gt;Pozostaje już skompilowanie i zbudowanie paczki instalacyjnej wybieramy z menu Project -&gt; Build Project. Trwa kompilacja i tworzenie paczki instalacyjnej QtWitaj_template.sisx&lt;br /&gt;&lt;br /&gt;W komórce odinstaluję poprzednie wersje Qt 4.6 z poprzednich instalacji i uruchamiam   E:\qt\4.6.0\qt_demos.sis w swojej Nokii XM 5800 . Po zainstalowaniu sprawdzam czy dema Qt zainstalowane działają. &lt;br /&gt;&lt;br /&gt;W Project Explorator CarbideC++ klikamy 2 razy w QtWitaj_template.sisx i rozpoczynamy instalację poprzez  Nokia PC Suite.  W komórce uruchamiamy w Menu -&gt; Aplikacje -&gt; QtWitaj&lt;br /&gt;&lt;br /&gt;Podczas tworzenia tej instrukcji oparłem się na  materiałach z &lt;a href="http://developer.symbian.org/wiki/index.php/Qt_Quick_Start"&gt;wiki dla programistów Symbiana&lt;/a&gt; dodałem w tym swoje spostrzeżenia jakie miałem z problemami podczas przerabiania tej instrukcji.  Dla  programistów preferujących Qt Creatora 1.3 polecam zapoznanie z filmami &lt;a href="http://labs.trolltech.com/blogs/2009/12/03/tutorial-videos-qt-development-for-symbian/"&gt;na blogu&lt;/a&gt; dla programistów Qt.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-3855306471385650682?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/-qQ7jlNcfAY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/3855306471385650682/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=3855306471385650682" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/3855306471385650682?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/3855306471385650682?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/-qQ7jlNcfAY/przygotowanie-do-programowania-qt-46-na.html" title="Przygotowanie do programowania Qt 4.6 na Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/12/przygotowanie-do-programowania-qt-46-na.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcMSXYyeSp7ImA9WxNaF0s.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-1516897165740791894</id><published>2009-12-02T10:46:00.002+01:00</published><updated>2009-12-02T15:11:28.891+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T15:11:28.891+01:00</app:edited><title>Qt 4.6 na Symbiana</title><content type="html">Do przetestowania Qt4.6 w komórce to wystarczy wejść z komórką z Symbianem S60 3rd FP1, Symbianem S60 3rd FP2, Symbianem S60 5th (Symbianem^1) pod &lt;a href="http://qt.nokia.com/phonedemos"&gt;adres qt.nokia.com/phonedemos&lt;/a&gt; Instalator to paczka zawierająca biblioteki OpenC/OpenC++ 1.6, biblioteki Qt 4.6 i aplikacje (dema) pokazującym możliwości Qt. Aby zaprogramować swoją aplikację warto pobrać &lt;a href="http://get.qt.nokia.com/qt/source/qt-symbian-opensource-4.6.0.exe"&gt;instalator SDK&lt;/a&gt; pod Windowsem. Trzeba &lt;a href="http://doc.trolltech.com/4.6/platform-notes-symbian.html"&gt;znać ograniczenia&lt;/a&gt; jakie są w tym wydaniu biblioteki na Symbiana&lt;br /&gt;Interesująca może być śledzenie &lt;a href="http://bugreports.qt.nokia.com/secure/IssueNavigator.jspa?reset=true&amp;&amp;type=1&amp;pid=10510&amp;status=1&amp;status=3&amp;status=10011&amp;component=19171&amp;sorter/field=issuekey&amp;sorter/order=DESC&amp;sorter/field=priority&amp;sorter/order=DESC"&gt;listy bugów&lt;/a&gt;. Lista &lt;a href="http://qt.gitorious.org/qt/pages/Qt460KnownIssues"&gt;większych problemów&lt;/a&gt; z którym trzeba się liczyć i może zostaną poprawione.&lt;br /&gt;&lt;br /&gt;Qt 4.6 w wersji dla Symbiana rozwijało się od marca 2008 roku. Główna zasługa Espena Riskedala (&lt;a href="http://twitter.com/snowpong"&gt;@snowpong&lt;/a&gt; na Twitterze) szefa zespołu który rozwijał kod na Symbiana.Na początek ludzie z Qt rozpoczęli współpracę z firmą &lt;a href="http://www.digia.com/"&gt;Digia &lt;/a&gt;. Początkowo tym projektem było związanych 10 programistów. Pierwszą wersją dla publiczności wypuszczono w październiku 2008 "Pyramid" i bazujaca na Qt 4.4 i posiadała moduły QtCore, QtNetwork, QtGUI. W grudniu 2008 wypuszczono już wersję "Tower" już bazująca na Qt 4.5 z następującymi modułami QtSVG, QtDesktopServices. Następnie rozpoczęła się współpraca z firmami Nokia Sosco, Fundacją Symbian, które udziały wsparcia przy tworzeniu kolejnych wersji. W marcu 2009 wypuszczono wersję "Garden". Wtedy rozpoczęto prace nad stworzeniem modułu QtWebkit na Symbiana. W czerwcu wypuszczono wersję "Tower" Następnie doszły do  współpracy firmy Accenture i Tieto. We wrześniu doszło generowanie wersji binarnych na bieżąco. W październiku zaktualizowano nową wersję silnika Webkit oraz wprowadzano wersję "Colossus". Postępy prac nad Qt dla Symbiana były pokazywane w &lt;a href="http://www.slideshare.net/qtbynokia/presentations"&gt;Qt DevDays&lt;/a&gt; i jak na &lt;a href="http://www.slideshare.net/pkosonen/qt-in-depth-presentation-for-symbian-expo-2009"&gt;SEE09&lt;/a&gt; W listopadzie było wydanie Qt4.6 RC1. &lt;span style="font-weight:bold;"&gt;1 grudnia 2009 wypuszczono już wersję finalną Qt4.6.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Następnym krokiem ma być rozwój bibliotek rozszerzających możliwości Qt4.6 o możliwości charakterystyczne dla urządzeń mobilnych  &lt;a href="http://qt.nokia.com/developer/new-qt-apis"&gt;Qt Mobility Project&lt;/a&gt;. Potrzebne jest zrobienie lepszego instalatora bibliotek Qt a także prace nad obsługą OpenGL ES. W przyszłości będzie można się spodziewać środowiska &lt;a href="http://mowhi.com"&gt;Qt Creator online&lt;/a&gt; z mowhi.com i jak wsparcia przy tworzeniu aplikacji za pomocą QML. &lt;br /&gt;&lt;br /&gt;Pozostało jeszcze czekać na wydanie 2 książek "The Definitive Guide to Mobile Qt: Symbian Development Platform" autorstwa Ray Rischpater i Dan Zucker wydawnictwa Apress oraz "Qt for Symbian" autorów Frank H. P. Fitzek, Tommi Mikkonen, Tony Torp wydawnictwa John Wiley &amp; Sons.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-1516897165740791894?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/2dlnQmg_MF0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/1516897165740791894/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=1516897165740791894" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/1516897165740791894?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/1516897165740791894?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/2dlnQmg_MF0/qt-46-na-symbiana.html" title="Qt 4.6 na Symbiana" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/12/qt-46-na-symbiana.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkAERn4zcCp7ImA9WxNbGEU.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-4889180986713357430</id><published>2009-11-21T10:54:00.011+01:00</published><updated>2009-11-22T12:18:27.088+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-22T12:18:27.088+01:00</app:edited><title>Widgety -  nowe technologie programistyczne</title><content type="html">Tempo rozwoju technologii programistycznych do tworzenia widgetów jest zawrotne. Mam wrażenie, że każdy producent technologii na widgety chce promocji swojej technologii.&lt;br /&gt;&lt;br /&gt;Wymusza to nową definicję widgeta jako aplikacji na inteligentną komórkę która jest napisana w języku skryptowym i może korzystać z interfejsu użytkownika danego urządzenia mobilnego. Cechą widgetów jest to, że korzystają z możliwości danego urządzenia (robienie zdjęć aparatem fotograficznym, korzystanie z informacji o położeniu urządzenia). Jest też warunek opcjonalny uznania za widget: umożliwia korzystanie z informacji w internecie oraz wykorzystanie HTML, JavaScript, oraz CSS. Technologia FlashLite też mieści się pod warunkiem, że możliwości urządzenia pozwalają na uruchomienie plików SWF wewnątrz widgetów, albo pobierania i uruchamiania plików SWF przez widgety.&lt;br /&gt;&lt;br /&gt;Obserwując pojawianie się nowych technologii na widgety spowodowane jest zrozumieniem pewnej istotnej rzeczy - trzeba ułatwić ludziom tworzenie programów na inteligentne komórki. Nokia w 2007 roku wypuściła technologię  Web Runtime (WRT), ale dopiero połączenie z Platform Services 1.0 w S60 5th sprawiło, że widgety i aplikacje Flash na Symbiana S60 5th zaczęły mieć dostęp do możliwości inteligentnej komórki.&lt;br /&gt;&lt;br /&gt;29 czerwca 2009 opublikowano &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/cccea743-f4e5-418f-ad9f-0a7a7f50868f/Nokia_Platform_Services_2_0.html"&gt;Nokia Platform Services 2.0 &lt;/a&gt; nowością jest dostęp API do robienia zdjęć dla widgetów. Natomiast &lt;span style="font-weight: bold;"&gt;4 listopada 2009&lt;/span&gt; wypuszczono &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/d697a64f-ddae-4937-8151-be157b542d26/ApiBridge.html"&gt;WebRuntime Bridge API&lt;/a&gt; zestaw API które pozwalał na tworzenie widgetów dla Facebooka czy MySpace w widgetach WRT.&lt;br /&gt;&lt;br /&gt;Firma Nitobi przez cały rok rozwijała framework JavaScript &lt;a href="http://www.phonegap.com/"&gt;Phonegap&lt;/a&gt; dla widgetów bazujących na iPhone, Androida. Ostatnio we wrześniu 2009 rozpoczęły się prace nad przeniesieniem możliwości tej biblioteki do widgetów WRT Webruntime. Efektem tej współpracy było wypuszczenie przez &lt;span style="font-weight: bold;"&gt;18 listopada 2009&lt;/span&gt; &lt;a href="http://developer.sonyericsson.com/site/global/docstools/browsing/p_browsing.jsp"&gt;Sony Ericsson WebSDK&lt;/a&gt; dla tworzenia widgetów na Symbiana i jak na Androida.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;17 listopada&lt;/span&gt; wypuszczono Qt 4.6.0 Release Candidate 1 zawierające też biblioteki dla Symbiana. Sprawiło to, że Nitobi rozpoczęło &lt;a href="http://github.com/wildabeast/phonegap/tree/symbian.qt"&gt;prace&lt;/a&gt; nad nowym silnikiem dla widgetów dla Symbiana wykorzystującego &lt;a href="http://wiki.forum.nokia.com/index.php/Mobile_Extensions"&gt;Mobile Extensions for Qt for Symbian&lt;/a&gt;  i dla Maemo.&lt;br /&gt;&lt;br /&gt;Opera od dawna intensywnie rozwija technologie widgetów. Najpierw to były widgety w przeglądarce internetowej. Obecnie wraz z współpracą z operatorami telekomunikacyjnymi (Vodafone i T-mobile) rozwija silnik Opera Mobile dla Symbiana i dla Windows Mobile. &lt;span style="font-weight: bold;"&gt;3 listopada&lt;/span&gt; Nokia ogłosiła wypuszczenie Opera Mobile 10 beta na komórki z Symbianem a &lt;span style="font-weight: bold;"&gt;18 listopada&lt;/span&gt; wypuściła wersję na Windows Mobile. Więcej informacji można poczytać w tym &lt;a href="http://dev.opera.com/articles/view/opera-mobile-10-beta-developers-introduction/"&gt;artykule&lt;/a&gt;. Opera dla twórców widgetów przygotowała odpowiednie wersje &lt;a href="http://dev.opera.com/sdk/"&gt;Opera Widgets SDK&lt;/a&gt; Natomiast Vodafone &lt;span style="font-weight: bold;"&gt;19 listopada&lt;/span&gt; w współpracy z Operą opublikował na Betavine swoje &lt;a href="http://www.betavine.net/bvportal/resources/widgets/research"&gt;Widget SDK version 2&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Rywalizacja też dotyczy w sferze technologii widgetów na komputerach użytkowników. Opera wypuszcza 15 października 2009 specjalną wersję Opery 10.10 beta zamieniająca widgety Opery na aplikacje komputerowe. Adobe&lt;span style="font-weight: bold;"&gt; 17 listopada 2009&lt;/span&gt; ogłosiło upublicznienie beta Adobe AIR 2.0 bazującego na najnowszym silniku Webkita (bazującego na Safari 4.0.3) A Microsoft&lt;span style="font-weight: bold;"&gt; 18 listopada 2009&lt;/span&gt; ogłasza udostępnienie SDK dla Silverlighta 4.&lt;br /&gt;&lt;br /&gt;Adobe chce w 2010 roku wypuścić wersję Adobe AIR dla nowych wersji urządzeń mobilnych. Kwestia w tym że do rywalizacji z Adobe AIR w tworzeniu aplikacji widgetów dla urządzeń mobilnych wkroczył &lt;a href="http://www.appcelerator.com/products/titanium-mobile/"&gt;Appcelarator Titanium&lt;/a&gt; (dla aplikacji Androida i iPhone)&lt;br /&gt;&lt;br /&gt;Dużą niewiadomą jest rozwój widgetów na Windows Mobile 6.5. Na tej platformie operuje się na zmodyfikowanym silniku IE6. Po bliższym zapoznaniu się z &lt;a href="http://msdn.microsoft.com/en-us/library/dd721906.aspx"&gt;dokumentacją&lt;/a&gt; i prostym &lt;a href="http://windowsteamblog.com/blogs/windowsphone/pages/getting_2D00_started_2D00_with_2D00_widgets.aspx"&gt;przykładem&lt;/a&gt; mam wrażenie że możliwości są takie jak opisano w &lt;a href="http://www.w3.org/TR/widgets-apis/"&gt;standardzie dla widgetów&lt;/a&gt;. Okazuje się że istnieje możliwość &lt;a href="http://community.softteq.com/blogs/nick/archive/2009/06/08/extending-the-widget-model-on-windows-mobile-6-5.aspx"&gt;rozszerzania funkcjonalności widgetów&lt;/a&gt; poprzez napisanie własnych kontrolek ActiveX&lt;br /&gt;&lt;br /&gt;27 września 2009 opublikowano &lt;a href="http://www.jil.org/#DEVELOP"&gt;JIL SDK wersion 1.1 beta 2&lt;/a&gt; - jest to technologia tworzenia widgetów na komórki z LiMo i jest to preferowane przez Samsunga i Vodafone. Jeszcze nie ma urządzeń które by wspierały tą technologię.&lt;br /&gt;&lt;br /&gt;Faktem jest to, że Symbian, PalmOS, Android czy iPhone a także Windows Mobile 6.5 pozwalają na tworzenie aplikacji składającej się głównie z skryptów JavaScript to w praktyce z racji różnych wersji wydań silnika Webkit oraz integracji z interfejsem użytkownika i możliwościami urządzenia a także mechanizmów wdrożenia, powoduje pewną problematyczność w tworzeniu aplikacji na urządzenia mobilne. Fragmentaryzacja i dość szybkie zmiany w rozwoju sprawiają że trzeba solidnie napracować się nad kodem tak żeby działał zgodnie wg możliwości różnych UI i jak możliwości urządzenia.&lt;br /&gt;&lt;br /&gt;Aby jakaś mobilna aplikacja reklamowa trafiła do jak największego grona użytkowników różnych urządzeń mobilnych trzeba solidnie popracować nad wersjami JavaMobile, FlashLite, i oczywiście jako widgety dla najnowszych modeli urządzeń mobilnych (z równoczesnym tworzeniem wersji mobilnej strony WWW).  A użytkownikowi inteligentnej komórki  pozostawić wybór.&lt;br /&gt;&lt;br /&gt;Na podstawie tych zbiegu okoliczności w premierach różnych technologii pozostaje pytanie o to jak będzie rozwijać się dalej tworzenie widgetów. Pierwszą rzeczą jaką można zauważyć to że w sferze technologii mobilnych zaczyna dominować silnik Webkit co paradoksalnie przy obecnym tempie implementacji ich powoduje że w najbliższych latach komórki będą bardziej "nowocześniejsze" niż ich odpowiedniki na komputerach.  Następną rzeczą będzie to co nazywam udostępnieniem API urządzenia aplikacjom internetowym. Obecnie można by uznać że dostęp do danych o kontaktach, kalendarza, o pozycji komórki, pobraniu informacji o geolokalizacji, wykorzystanie sensorów - położenia, zbliżenia, obrotu, położenia kierunku świata, a także dostęp do multimediów: robienie zdjęć czy filmików będzie wymagało ustalenia jakiegoś standardowego API które by pozwalało na pisanie ujednoliconego kodu .JavaScript. Firma Nitobi już to zrobiła. Natomiast wielką niewiadomą są frameworki UI - właściwie każda technologia widgetów może mieć swoje preferencje Dla Symbiana są to &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/7226a804-2faf-42b7-83bd-ae387594d487/WRTKit_Developers_Guide.html"&gt;WRTKit&lt;/a&gt; i jak &lt;a href="http://wiki.forum.nokia.com/index.php/Guarana_UI:_a_jQuery-Based_UI_Library_for_Nokia_WRT"&gt;Guarana UI&lt;/a&gt;, dla iPhone bazuje na &lt;a href="http://code.google.com/p/jqtouch/"&gt;jQTouch&lt;/a&gt; &lt;a href="http://code.google.com/p/iui/"&gt;iUI&lt;/a&gt; powstają też różne próby tworzenia frameworków mobilnych z &lt;a href="http://jqueryui.com/"&gt;jQuery UI&lt;/a&gt;, &lt;a href="http://mochaui.com/"&gt;mochaUI&lt;/a&gt;, &lt;a href="http://developer.yahoo.com/yui/"&gt;YUI&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Podsumowując tworzenie widgetów na urządzenia mobilne szybko przekształci się w odrębną specjalizację która będzie wymagać od twórców dość specyficznej wiedzy z JavaScriptu i możliwości programistycznych jakie oferują poszczególne technologie w konkretnych systemach operacyjnych.  Wraz z tym będzie coraz większa presja na  szybszy rozwój silnika WebKit tak żeby przynajmniej pod Symbianem potrafił mieć takie same możliwości jak aplikacje pisane w JavaScript dla Androida czy dla iPhone.&lt;br /&gt;&lt;br /&gt;Jednym z wartościowych źródeł które należy śledzić w tym temacie to &lt;a href="http://www.w3.org/Mobile/"&gt;Mobile Web Initiative&lt;/a&gt;. oraz &lt;a href="http://www.w3.org/blog/MWITeam"&gt;ich blog &lt;/a&gt;W tym temacie istotne jest to, że już &lt;a href="http://www.w3.org/TR/2009/NOTE-dap-api-reqs-20091015/"&gt;napisano szkic roboczy&lt;/a&gt; &lt;span style="font-weight: bold;"&gt;15 października 2009, &lt;/span&gt;który opisuje jakie API ma być dostępne w Java Scripcie dla mobilnych widgetów&lt;br /&gt;&lt;br /&gt;No to faktycznie, żyjemy w ciekawych czasach dla programistów i developerów.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-4889180986713357430?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/mg8uYqniW1A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/4889180986713357430/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=4889180986713357430" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4889180986713357430?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4889180986713357430?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/mg8uYqniW1A/widgety-nowe-technologie.html" title="Widgety -  nowe technologie programistyczne" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/11/widgety-nowe-technologie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEYDRnY9fyp7ImA9WxNUF0w.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-3211216444780737791</id><published>2009-11-08T14:41:00.003+01:00</published><updated>2009-11-08T21:29:37.867+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-08T21:29:37.867+01:00</app:edited><title>Widgety na Symbiana i ich programowanie</title><content type="html">Ponieważ możliwości inteligentnych komórek są często poza możliwościami przeciętnych programistów. Sukces Symbiana może opierać się na tym że daje duże możliwości tym co już umieją. Większość programistów w jakiś sposób zetknęło się z programowaniem w Java Script czy stylami kaskadowymi. Więc umożliwienie wykorzystania do programowania w tych technologiach na komórce daje o wiele większy potencjał popularności niż w przypadku tworzenia w natywnych technologiach typu Symbian C++ czy Java Mobile. Sukces iPhone czy Androida (a po części też WebOS Palma) polegał na tym że pozwalał programistom wykorzystać potencjał technologii internetowych w inteligentnych komórkach.&lt;br /&gt;&lt;br /&gt;Na platformie Symbian można było już od dawna tworzyć aplikacje wykorzystujące potencjał wbudowanej przeglądarki internetowej a także z możliwości programowania w FlashLite osadzając je w aplikacji pisanej Symbian S60 w C++. Więcej informacji można znaleźć w dokumencie &lt;a href="http://www.forum.nokia.com/document/Cpp_Developers_Library/GUID-96C272CA-2BED-4352-AE7C-E692B193EC06/html/Flash_Viewer_Framework_API4.html"&gt;Flash Viewer Framework API&lt;/a&gt; łącznie z przykładem &lt;a href="http://wiki.forum.nokia.com/index.php/How_to_write_a_Flash_Stub_application_to_protect_your_SWF_file%3F"&gt;How to write a Flash Stub application to protect your SWF file?&lt;/a&gt;, natomiast w przypadku tworzenia aplikacji Symbian C++ wykorzystujących silnik przeglądarki internetowej warto zapoznać się z &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/47d8a7fe-768c-44e5-bc26-fcba0a05e35e/S60_Platform_Browser_Control_API_Guide_v2_0_en.pdf.html"&gt;S60 Platform: Browser Control API Developer's Guide v2.0&lt;/a&gt;. Jedyny przykład jest zawarty w SDK i jak można też ściągnąć ze strony &lt;a href="http://wiki.forum.nokia.com/index.php/TSS001012_-_Browser_Control_API:_Cloning_the_connection_for_Download_Manager"&gt;TSS001012 - Browser Control API: Cloning the connection for Download Manager&lt;/a&gt;. Ciekawostką jest to, że te technologia już istnieje sobie od 2004 roku ale jak wiadomo mało kogo to interesowało, albo jak kto to poznał to obowiązywało go przestrzeganie tajemnicy how-know. &lt;br /&gt;&lt;br /&gt;W tej sytuacji powstawała idea widgetów na komórki. Więcej szczegółów można przeczytać w pracy doktorskiej &lt;a href="http://datadriven.com.au/thesis/confirmation/confirmation.pdf"&gt;Marcosa Caceresa&lt;/a&gt; z 2007 roku Ta praca to interesująca historia tego jak powstawała idea widgetów. Nokia w sierpniu 2007 roku wypuściła betę WRT Web Runtime S60 dla SDK S60 3rd Feature Pack 2. Możliwości tej platformy właściwie ograniczały się do wykorzystania potencjału samej przeglądarki S60 Web Browser. Potem wraz z pojawieniem się S60 5th wypuszczono wersję z WRT1.1 które zawierało programistyczny dostęp do danych z komórki. Jest to S60 Platform Services 1.0. Równocześnie Nokia opracowała pluginy do popularnych edytorów developerskich które pozwalały na tworzenie zawartości dla widgetów (dla Aptany, Dreamweawera, oraz VisualStudio). Aby ułatwić szybkie tworzenie zaawansowanych widgetów Nokia opracowała&lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/7226a804-2faf-42b7-83bd-ae387594d487/WRTKit_Developers_Guide.html"&gt; framework WRTKit&lt;/a&gt;. Jest zestaw bibliotek JavaScript dedykowany widgetom na Symbiana. Gdy Nokia wypuściła SDK dla N97 w kwietniu 2009 roku to do widgetów dodano nową funkcjonalność - homescreen, co pozwalało widgetom wyświetlać informacje na "pulpicie" komórki. Widgety WRT 1.1 w odróżnieniu od aplikacji na Symbiana miały dość ograniczone możliwości (nie pozwalały na dostęp do plików lokalnie). Idąc naprzeciw oczekiwaniom programistów Nokia wprowadziła nowe &lt;a href="http://www.forum.nokia.com/Tools_Docs_and_Code/Tools/Runtimes/Web_Runtime/Nokia_Platform_Services/"&gt;Platform Services 2.0&lt;/a&gt; (tylko dla XM 5800 i dla N97) a także &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/d697a64f-ddae-4937-8151-be157b542d26/ApiBridge.html"&gt;Web Runtime Bridge API&lt;/a&gt; które ma być dostępne dla wszystkich komórek obsługujących widgety. Na wiki jest &lt;a href="http://wiki.forum.nokia.com/index.php/APIBridge_Web_Runtime_API"&gt;dokumentacja &lt;/a&gt;tego co można się spodziewać po tej technologii. &lt;br /&gt;&lt;br /&gt;Po bliższym spojrzeniu na to rozwiązanie okazuje się że do każdego widgetu będzie można dołączyć paczkę instalacyjną z serwerem HTTP który będzie komunikował się z widgetem lokalnie. Do tego serwera HTTP będzie można robić pluginy ECOM udostępniające funkcjonalności Symbianowego API. Idea całkiem ciekawa biorąc pod uwagę że już napisano takie rozwiązania wykorzystując Pythona S60. &lt;br /&gt;&lt;br /&gt;Dla widgetów WRT była już próba napisania takiego serwera HTTP który udostępniałby widgetom API z Pythona takich jak dostęp do bazy danych, wykorzystanie Bluetootha, do wykorzystanie syntezatora mowy. Cały koncept polega na tym żeby zainstalować sobie Mobile Web Serwer z Pythonem albo PAMP z PHP i napisać sobie widget WRT, który byłby w stanie komunikować się z lokalnym serwerem co opisano w artykule &lt;a href="http://wiki.forum.nokia.com/index.php/How_to_utilize_device_resources_from_a_WRT_widget"&gt;How to utilize device resources from a WRT widget&lt;/a&gt;. Również można wykorzystać własny miniserwer napisany w Pythonie dla Symbiana co jest opisane w artykule &lt;a href="http://wiki.forum.nokia.com/index.php/How_to_access_S60_resources_in_WRT_or_Flash_Lite,_using_PyS60"&gt;How to access S60 resources in WRT or Flash Lite, using PyS60&lt;/a&gt;  &lt;br /&gt;&lt;br /&gt;Można powiedzieć że same aplikacje w Pythonie dla Symbiana też mogą pełnić funkcje widgetów czyli małych aplikacji rozrywkowych. Przykładem takiego rozwiązania jest framework &lt;a href="http://code.google.com/p/flyer/"&gt;Flyer&lt;/a&gt; współpracujący z FlashLite. Półżartem półserio można zrobić coś jak Adobe AIR na Symbiana czytają poniższe artykuły &lt;a href="http://wiki.forum.nokia.com/index.php/How_to_package_Flash_content_in_a_Widget"&gt;How to package Flash content in a Widget&lt;/a&gt; i &lt;a href="http://wiki.forum.nokia.com/index.php/How-to_communicate_with_Flash_Lite_from_Javascript_in_widget_(WRT)"&gt;How-to communicate with Flash Lite from Javascript in widget (WRT)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Jak tworzyć widgety?&lt;br /&gt;&lt;br /&gt;Zainstalować edytor Aptana i &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/00d62bd8-4214-4c86-b608-5f11b94dad54/Nokia_WRT_Plug_in_for_Aptana_Studio.html"&gt;plugin do tworzenia widgetów WRT&lt;/a&gt;. &lt;br /&gt;Warto na początek wziąć udział w szkoleniu eLearningowym Nokii o widgetach &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/4e24a015-306a-443f-9314-b6b879a958f9/Widgets_for_the_S60_Platform.html"&gt;Widgets for the S60 Platform E-learning&lt;/a&gt; Następnie ściągnąć sobie aktualna dokumentację &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/fd9cc12e-5eed-40ec-a439-c77f845fed73/Web_Developers_Library.html"&gt;Web Developer's Library&lt;/a&gt;. Trzeba dowiedzieć się jak importuje się widgety WRT i zacząć naukę na przykładach. Szczególnie polecam dla zaawansowanych &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/3ee86475-a722-41d6-80bf-f8bda05d57dc/Web_Runtime_RouteWidget_Example.html"&gt;RouteWidget Example&lt;/a&gt; &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/1c27d9d7-8946-4e26-947d-2b140c454876/Web_Run-Time_AccuWidget_Example.html"&gt;AccuWidget Example&lt;/a&gt; &lt;a href="http://www.forum.nokia.com/info/sw.nokia.com/id/3ff9b893-3e69-4a10-af48-7b00ebc033c9/Web_Runtime_Hue_Widget_Example.html"&gt;Hue Widget Example&lt;/a&gt; a także przykłady aplikacji z fundacji Symbian &lt;a href="http://developer.symbian.org/wiki/index.php/SEE_2009_Widget"&gt;SEE 2009 Widget&lt;/a&gt; &lt;a href="http://developer.symbian.org/wiki/index.php/OSCON_2009_Schedule_Example_Widget"&gt;OSCON 2009 Schedule Example Widget&lt;/a&gt;. Warto też postudiować wiki &lt;a href="http://wiki.forum.nokia.com/index.php/Category:Web_Runtime_(WRT)"&gt;Forum Nokii&lt;/a&gt; i jak &lt;a href="http://developer.symbian.org/wiki/index.php/Category:Web_technologies"&gt;Fundacji Symbian&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-3211216444780737791?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/Y-xZT4i-DEU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/3211216444780737791/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=3211216444780737791" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/3211216444780737791?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/3211216444780737791?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/Y-xZT4i-DEU/widgety-na-symbiana-i-ich-programowanie.html" title="Widgety na Symbiana i ich programowanie" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/11/widgety-na-symbiana-i-ich-programowanie.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IDR3w-cCp7ImA9WxNVEkQ.&quot;"><id>tag:blogger.com,1999:blog-31513326.post-4588713027050460137</id><published>2009-10-21T20:00:00.005+02:00</published><updated>2009-10-23T11:52:56.258+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-23T11:52:56.258+02:00</app:edited><title>Kompilator ARM RVCT 4.0 for Symbian Foundation</title><content type="html">W SDK przeważnie mamy pliki dla 2 kompilatorów GCCE i dla ARM RVCT 4.0 Ponieważ są pewne ograniczenia kompilatora GCCE do większych projektów warto używać kompilatora ARM RVCT. Od pewnego czasu jest coraz więcej dużych projektów OpenSource które są przenoszone na platformę Symbiana. Klasycznym przykładem jest projekt Qt 4.6 for Symbian, ale co z tego że zawiera kod źródłowy w repozytorium Git to jednak do kompilacji binarnej na komórkę jest potrzebny kompilator ARM RVCT który kompiluje wydajniej pod architekturę EKA2.&lt;br /&gt;&lt;br /&gt;Ze względu na to że fundacja Symbian staje się być bardziej przyjazną programistom to postanowiono udostępnić  kompilator ARM RVCT sporej rzeczy programistów OpenSource.&lt;br /&gt;&lt;br /&gt;Instrukcja instalacji kompilatora&lt;br /&gt;1. Wchodzimy na tą stronę https://silver.arm.com/login/&lt;br /&gt;2. Rejestrujemy się&lt;br /&gt;3. Gdy otrzymamy maila z potwierdzeniem rejestracji - logujemy się&lt;br /&gt;4. Klikamy w link - "RVCT 4.0 for Symbian" download&lt;br /&gt;5. Akceptujemy warunki licencji - wersja ta jest ograniczona tylko dla pojedynczych programistów pracujących w małych firmach zatrudniających do 20 osób&lt;br /&gt;6. Pozostaje podanie numeru telefonu i podanie numeru karty Ethernet ( dla nie wtajemniczonych w wystarczy z linii poleceń wpisać "ipconfig /all" i szukamy  adresu fizycznego "Karty Ethernet połączenia lokalne" i wpisujemy 12 znaków bez '-')&lt;br /&gt;7. Pojawi się tekst pliku licencji i zapisujemy go na Pulpicie (albo tam gdzie go możecie potem znaleźć)&lt;br /&gt;8. Rozpoczyna się ściąganie pliku zip   76MB&lt;br /&gt;9. Wypakowujemy to w tymczasowym miejscu i uruchamiamy plik Setup.exe&lt;br /&gt;10. Ustawiamy instalację na !:\Symbian\ARM (gdzie ! oznacza literę dysku w moim przypadku to było  E:\Symbian\ARM&lt;br /&gt;11. Pod koniec instalacji pojawi się ARM License Wizard i klikamy w Install Licence&lt;br /&gt;12. Uruchomi się okno w którym klikamy Add i dodajemy plik licence.dat&lt;br /&gt;13. Zamykamy instalatora&lt;br /&gt;&lt;br /&gt;Okazało się że kompilator zainstalował się w E:\Program Files\ARM, ale okazało się że to nie działa tak jak bym oczekiwał. I raczej nie zanosi się z powodu zmian w  architekturze. &lt;br /&gt;&lt;br /&gt;Larry Knibb &lt;a href="http://developer.symbian.org/bugs/show_bug.cgi?id=283"&gt;napisał&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Apologies for the confusion. SBSv1 (abld) is __not__ being updated for RVCT4.&lt;br /&gt;The reason is that this functionality is already available in SBSv2 (Raptor).&lt;br /&gt;Abld is due for deprecation soon so we are not adding major functionality to&lt;br /&gt;it. Raptor replaces abld as the build system for Symbian OS, so new&lt;br /&gt;functionality will appear in Raptor only.&lt;br /&gt;&lt;br /&gt;Coś mi się zastanawia że kolejne SDK i wersje Symbiana już nie będą zgodne z poprzednikami na poziomie binarnym (pomimo architektury EKA2), ale prawdopodobnie kod pozostanie ten sam pod kątem wykorzystania API Symbiana.&lt;br /&gt;   &lt;br /&gt;W razie czego też można by postarać się o nowszą wersję &lt;a href="http://wiki.forum.nokia.com/index.php/How_to_use_GCCE_4_with_Symbian_SDKs#Replacement_of_the_toolchain"&gt;kompilatora GCCE &lt;/a&gt; zamiast czekać na SDK dla modeli z Symbian^2 i Symbian^3 Natomiast Symbian^4 to już zupełnie inna architektura sprzętowa i jak API tutaj trzeba już programować w Qt&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/31513326-4588713027050460137?l=flex2.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Flex2/~4/KVvkJlSlmBw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://flex2.blogspot.com/feeds/4588713027050460137/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=31513326&amp;postID=4588713027050460137" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4588713027050460137?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/31513326/posts/default/4588713027050460137?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Flex2/~3/KVvkJlSlmBw/kompilator-arm-rvct-40-for-symbian.html" title="Kompilator ARM RVCT 4.0 for Symbian Foundation" /><author><name>Michał Małaj</name><uri>http://www.blogger.com/profile/11969232577782727330</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="http://2.bp.blogspot.com/_xTasT1katnA/Sp-ewh4CmAI/AAAAAAAAAOg/LkRKaV7V6zc/S220/2006123013061421_avatar.jpg-c%3D20061230144956.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://flex2.blogspot.com/2009/10/kompilator-arm-rvct-40-for-symbian.html</feedburner:origLink></entry></feed>

