W dniu 2012-05-04 09:55, Arivald pisze:
> W dniu 2012-05-04 00:59, Grzegorz Skoczylas pisze:
>> W dniu 2012-05-03 18:27, miab pisze:
>>> Można jeszcze jak się ma źródła przenieść na Lazarusa i przekompilować
>>> na Androida.
>>
>> Czy próbowałeś tego?
>>
>> Ostatnio analizowałem trochę możliwości pisania aplikacji na iOS,
>> Android i Windows Mobile. Miałem nadzieję, że w FreePascal/Lazarus da
>> się to robić. Jednak na podstawie informacji dostępnych na ich stronie
>> internetowej odnoszę wrażenie, że to co oferują, to raczej wczesne
>> studium wykonalności, niż produkt nadający się do praktycznego
>> wykorzystywania.
>
> Da się wykorzystać, ale to tylko proteza. I niestety działa tylko na ARM.
To nie do końca tak. Android dopiero od kilku miesięcy ma NDK z
wariantem na x86 (wymuszone przez Intela, choć na rynku praktycznie nie
obecne urządzenia z tym procesorem). Przy czym dla FPC nie ma znaczenia
dla którego procesora kompilujemy. iOS to zupełnie inna platforma, ale
developerzy FPC bardzo aktywnie wspierają XCode. Windows Mobile to
zanikająca staroć.
> Generalnie to po prostu kompilują jak na linuxa ARM, jako bibliotekę
> natywnego kodu z interfejsem do Javy, i dodają bootloader w Javie który
> ładuje kompilat.
I co w tym złego. Można dołączyć dwie biblioteki ładowane zależnie od
procesora. Komunikacja via JNI bardzo ładnie działa. Tak samo jak
interfejs do Javascript w osadzonej przeglądarce.
>
> Ma to wiele wad, począwszy od binarek o ogromnych rozmiarach, na
> niedostosowaniu kontrolek LCL do ekranów o szerokim zakresie DPI
> skończywszy.
Te binarki nie są aż takie duże, szczególnie że LCL jest tam zbędny.
Natywne kontrolki Androida są również bardzo ubogie.
>
>
>
> Żeby naprawdę pisać androidowo i przenośnie, należny pisać w javie
Ależ skąd. Java jest średnio przenośna. Aby było przenośnie to piszemy w
Javascript ( i stosujemy coś w stylu Sencha Touch)
> (przenoścność na dowolną architekturę), a gui robić w XMLu. Dzięki temu
> gui będzie rysowane z akceleracją układu graficznego, w OpenGL ES. I
> będzie bez problemu działać na ekranie o dowolnym DPI czy proporcjach
A GUI w HTML5 wtedy będzie i przenośnie, i szybko i ładnie.
W tym układzie Pascal (wszystko jedno czy z FPC czy z Delphi) dobrze
nadaje się na back office: całość logiki programu, tak która nie jest
zależna od systemu operacyjnego, jest w nim zawarta. Wtedy mamy
aplikację która może pracować na Windows, Linux, iOS, Android (webos,
bada itd) w urządzeniach wbudowanych, klasycznych komputerach czy też w
chmurze. I to wszystko z jednego kodu zgodnie z zasadą "Write once,
compile anywhere"
--
Darek