Das Games API (GAPI) ist von Entwicklern unter Windows Mobile seit Urzeiten dazu verwendet worden, Spiele zu programmieren (Beispiel), Dinge auf den Bildschirm zu zeichnen und Input (Buttons bspw.) abzufangen.

Seit Windows Mobile 5.0 ist GAPI allerdings offiziell veraltet (“deprecated”) und wurde abgelöst durch DirectDraw und Direct3D Mobile. Wer es bisher trotzdem benutzt hat, hatte wahrscheinlich keine Probleme, da es bis heute (Windows Mobile 6.1) stillschweigend weiter unterstützt wird.

Das ändert sich nun mit Windows Mobile 6.5. Die neuen Geräte mit 6.5 werden nur dann GAPI an Bord haben, wenn der OEM selbst das möchte und testet – es ist aber kein Erfordernis mehr, deshalb wird es zunehmend Devices ohne GAPI geben. Darüber hinaus ist es eine Anforderung an Anwendungen, die über den Windows Marketplace for Mobile vertrieben werden sollen, dass GAPI nicht verwendet wird:

2.3  Refrain from Using GAPI

Developers writing graphics applications are prohibited from using GAPI, previously referred to as the Game API. GAPI was deprecated in Windows Mobile 5.0. Common GAPI calls include:
GXOpenInput()
GXCloseInput()
GXResume()
GXSuspend()
GXOpenDisplay()
GXCloseDisplay()

GAPI has been replaced by the ALLKEYS API. Follow this link for more documentation regarding the ALLKEYS API.

OK, dann nehmen wir eben DirectDraw und D3DM - was ist aber mit den komfortablen Input-Funktionen? Dafür gibt es jetzt das AllKeys API, welches von GAPI schon immer verwendet wurde. Dieser Blogeintrag des Windows-Mobile-Teams hat Details zum neuen API und seiner Verwendung.

Happy coding!