Nem újdonság, hogy lehet Delphivel Androidra és iOS-ra fejleszteni. Azonban időnként vannak még bökkenők, apró porszemek a gépezetben. Erről persze nem feltétlen az Embercadero tehet, sőt…
A delphi natív alkalmazásokat fordít androidra, ez azt jelenti, hogy NDK-t használ és csak minimális java kód kerül mellé. Persze van lehetőség java könyvtárak importálására is. Amikor 2017 közepén a Google úgy döntött, hogy kiadja az Android 8-at rengeteg helyen erősítette meg a biztonságot. Azonban egy helyen ez túlságosan is jól sikerült nekik, ugyanis elérték vele, hogy nem lehet csatlakozni a gdb szerverhez. Amikor ezt tapasztaljuk akkor a “Can’t open socket: Permission denied” hibaüzentet produkálja a debugger. Ez egy borzasztóan bosszantó hiba, hiszen így nem tud az ember hibát keresni fizikai készüléken.
Természetesen a Google reagált is a hibára és aránylag hamar ki is javította. A 8.1-es androidban, ami 2017 vége felé volt elérhető már működik a dolog, gond nélkül lehet vele használni a debuggert, így az Embercadero nem is foglalkozott tovább ezzel a problémával. Természetesen ezt nem lehet a szemükre vetni, nem az ő hibájukból eredtek a problémák.
Az igazi probléma, hogy sok gyártónak, köztük a Huawei-nek a mai napig nem sikerült a 8,0-ás Androidot 8.1-re frissíteni, vagy legalább a Google általi javítást visszaportolni. Végülis alig volt rá eddig 11 hónap, nem sok idő. 🙂 Így jelen pillanatban Huawei P Smart készülékeken egyszerűen nem lehet normálisan fejleszteni. Ennek ellenére természetesen a fordított alkalmazások hiba nélkül, szépen futnak a készüléken, de, ha delphivel, vagy NDK-val szeretnél fejleszteni, akkor lehet, hogy érdemes elkerülni az Android 8.0-t futtató készülékeket.
A kép forrása: http://delphi.org/2013/09/delphi-xe5-android-wallpaper/