Nyitott alkalmazás létrehozása Android-ban és ios-ban

A Visual C ++ összetevő telepítésével többszintű mobilalkalmazások kifejlesztéséhez létrehozhat Visual Studio megoldásokat és projekteket iOS és Android alkalmazásokhoz közös kóddal. Ez a bemutató bemutatja, hogyan kell kifejleszteni egy alkalmazássablont, amely mind a legegyszerűbb iOS-alkalmazást, mind az Android natív aktivitási alkalmazást szolgálja. Az alkalmazások közös C ++ kódot használnak, amely OpenGL ES technológiát használ, hogy ugyanazt az animált forgó kockát jelenítse meg mindkét platformon. Az OpenGL ES (GLES) egy olyan API 2D és 3D grafika számára, amelyet sok mobilkészülék támogat.

Ebben a bemutatóban először létrehoz egy OpenGL ES alkalmazást, majd alapértelmezett alkalmazást hoz létre és futtat a Visual Studio for Android emulátorban. Ezután elkészíti az iOS-alkalmazást, és elindítja az iOS emulátorban.

Új projekt létrehozása

Indítsa el a Visual Studio programot. A menüsoron kattintson a Fájl menüpontra. Létrehozása. A projekt.

Az Új projekt párbeszédpanelen a Sablonok szakaszban kattintson a Visual C ++ lehetőségre. Cross-platform. majd válassza ki az Alkalmazás OpenGLES (Android, iOS) sablont.

Adjon nevet az alkalmazásnak, például a MyOpenGLESApp nevet. majd kattintson az OK gombra.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

A Visual Studio új megoldást hoz létre és megnyitja a megoldás böngészőt.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

Az új OpenGL ES alkalmazási megoldás három könyvtárprojektet és két alkalmazási projektet tartalmaz. A Könyvtárak mappában van egy közös kódprojekt és két olyan projekt, amely a közös kódra utal.

A MyOpenGLESApp.Android.NativeActivity olyan hivatkozásokat és linkkódot tartalmaz, amely végrehajtja az Native Activity alkalmazást Android számára. A linker kódból a belépési pontok végrehajtása a main.cpp fájlban található, amely tartalmazza a MyOpenGLESApp.Shared közös kódját. Az előfordított fejlécek a pch.h fájlban vannak. A Native Activity projekt egy megosztott könyvtár (SO) fájlba kerül, amely átkerül a MyOpenGLESApp.Android.Packaging projektbe.

A MyOpenGLESApp.iOS.StaticLibrary létrehoz egy statikus iOS (A) fájlt, amely egy közös kódot tartalmaz a MyOpenGLESApp.Shared-ból. Hozzájárul a MyOpenGLESApp.iOS.Application projekt által létrehozott alkalmazáshoz.

A MyOpenGLESApp.Shared egy közös kódot tartalmaz, amely különböző platformokon fut. Előfeldolgozó makrókat használ egy feltételes kódkonfigurációhoz egy adott platform számára. A generikus kódot a MyOpenGLESApp.Android.NativeActivity és a MyOpenGLESApp.iOS.StaticLibrary projekthez viszonyítva adják át.

A megoldás két projektet tartalmaz az alkalmazások létrehozásához Android és iOS platformokon.

A MyOpenGLESApp.Android.Packaging egy APK-fájlt hoz létre az Android-eszközön vagy Android-emulátoron történő telepítéshez. Tartalmaz erőforrásokat és az AndroidManifest.xml fájlt, amely meghatározza a manifest tulajdonságait. Ez magában foglal egy olyan XML fájlt is, amely kezeli az Ant építési folyamatot. Alapértelmezés szerint ez a kezdeti projekt, amely közvetlenül telepíthető és futtatható a Visual Studio alkalmazásból.

MyOpenGLESApp.iOS.Application tartalmaz forrásokat és a kötelező kódex Objective C létrehozni egy iOS-alkalmazás a kódhoz a statikus C ++ könyvtár MyOpenGLESApp.iOS.StaticLibrary. Ez a projekt olyan összeszerelési csomagot hoz létre, amelyet a Visual Studio környezet és a távoli ügynök továbbít a Mac-nek. A projekt létrehozásakor a Visual Studio fájlokat és parancsokat küld az alkalmazás telepítéséhez és telepítéséhez Mac számítógépen.

Egy sablon használatával létrehozott megoldás az Android alkalmazást alapértelmezettként állítja be. Ezt az alkalmazást felépíthesse és futtathatja annak telepítéséhez és konfigurálásához. Az első tesztfuttatáshoz az alkalmazást az egyik eszközprofilban, amelyet az Android Visual Studio emulátor telepített. Ha az alkalmazást más platformon szeretné tesztelni, töltse le a célemulátor vagy csatlakoztassa a készüléket a számítógéphez.

Az Android natív tevékenységének létrehozása és futtatása

Válassza az x86 lehetőséget a Megoldás platform legördülő listából. ha még nincs kiválasztva.

Használja a 32 bites platformot az Android emulátor számára a Windows rendszerhez. Ha összeszereléseket építesz az eszközhöz, válassza ki a megoldási platformot az eszköz processzora szerint. Ha a Megoldás platform listája nem jelenik meg, kattintson a Hozzáadás / eltávolítás gombok listájában a Döntési platform elemre, majd válassza ki a platformot.

A Megoldáskezelőben nyissa meg a MyOpenGLESApp.Android.Packaging projekt helyi menüjét, és válassza a Build elemet.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

A Kimenet ablakban megjelenik a megosztott Android-könyvtár és az Android-alkalmazás építési folyamatának kimenete.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

Nyitott alkalmazás létrehozása Android-ban és ios-ban

Ha más emulátorokat telepített vagy csatlakoztatott egy Android-eszközt, kiválaszthatja őket a telepítési platform legördülő listájából. Az alkalmazás futtatásához a megoldásépítési platformnak meg kell egyeznie a célkészülék platformjával.

Nyomja meg az F5 billentyűt a hibakeresési folyamat elindításához, vagy a Shift + F5 hibakeresés nélküli indításához.

A Visual Studio olyan emulátort indít, amely néhány másodpercen belül betölti és telepíti a kódot. Az alábbiakban bemutatjuk, hogyan néz ki az alkalmazás Android Visual Studio emulátorában.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

Az alkalmazás indítása után megadhatja a töréspontokat, és a debugger segítségével ellenőrizheti a kódot, a nyelvi szabványokat és a vezérlő értékeket.

A hibakeresés leállításához nyomja meg a Shift + F5 billentyűkombinációt.

Az emulátor egy különálló folyamat, amely továbbra is fut. A kódot több emulátorban módosíthatja, fordíthatja és telepítheti. Az alkalmazás az emulátor alkalmazásgyűjteményében található, ahonnan közvetlenül indítható.

Az Android Native Activity és a könyvtárak létrehozott projektjei egy közös C ++ kódot helyeznek el egy dinamikus könyvtárba, amely magában foglalja a kötelező kódot az Android platformmal való interakcióhoz. Ez azt jelenti, hogy a legtöbb alkalmazáskód a könyvtárban található, és a manifeszt, erőforrások és összeszerelési utasítások a csomagolási projektben vannak. Az általános kódot a main.cpp-ből hívják a NativeActivity projektben. Az Androidos natív tevékenység programozásával kapcsolatos további információkért tekintse meg az Android Developer NDK Fogalmak oldalát.

A Visual Studio Android Native Activity projekteket készít az Android NDK csomag használatával, amely Clang eszköztárként használja a platformot. A Visual Studio a NativeActivity projekt tulajdonságait a parancssori paraméterekhez használja, amelyek a célplatform fordítását, összekapcsolását és hibakeresését szolgálják. Részletes információkért nyissa meg a Property Pages párbeszédpanelt a MyOpenGLESApp.Android.NativeActivity projekthez. A parancssori paraméterekről további információt a Csengő fordító felhasználói kézikönyvében talál.

Az iOS alkalmazásprojektet a Visual Studio programban hozza létre és szerkesztette, de az engedélyezési korlátozások miatt összeszerelését és telepítését Mac számítógépről kell végrehajtani. A Visual Studio kölcsönhatásba kerül egy Mac rendszerű távoli ügynökrel a projektfájlok átviteléhez és a telepítési, telepítési és hibakeresési parancsok végrehajtásához. Mielőtt létrehozna egy iOS alkalmazást, meg kell adnia a Mac és a Visual Studio környezetet adatcseréhez. Részletes utasításokért lásd: Az iOS rendszerrel történő fejlesztéshez szükséges eszközök telepítése és konfigurálása. Miután elindította a távoli ügyintézőt, és a Visual Studio környezetet párosították a Mac-szel, az iOS alkalmazást létrehozhatja és futtathatja a telepítés és a konfigurálás ellenőrzéséhez.

Az iOS alkalmazás létrehozása és indítása

Ellenőrizze, hogy a távoli ügynök fut-e a Mac rendszeren, és hogy a Visual Studio párosul-e a távoli ügynökrel. A távoli ügynök elindításához nyissa meg a "Terminál" alkalmazást, és írja be a vcremote parancsot. További információ: A távoli ügynök konfigurálása a Visual Studio alkalmazásban.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

Válassza az x86 lehetőséget a Megoldás platform legördülő listából. ha még nincs kiválasztva.

Használja a 32 bites platformot az iOS emulátor célpontjaként. Ha egy iOS eszközhöz szerel összeállítást, akkor válassza ki a megoldási platformot az eszköz processzora szerint (általában ARM processzor). Ha a Megoldás platform listája nem jelenik meg, kattintson a Hozzáadás / eltávolítás gombok listájában a Döntési platform elemre, majd válassza ki a platformot.

A Megoldásablakban nyissa meg a MyOpenGLESApp.iOS.Application projekt helyi menüjét, és válassza a Build elemet.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

A Kimenet ablak megjeleníti a build folyamat kimenetét az iOS statikus könyvtár és az iOS alkalmazás számára. A Mac számítógépen a parancs és a fájlátvitel művelete megjelenik a "Terminál" ablakban, amelyben a távoli ügynök fut.

Macintán megkérheti, hogy fogadja el a kód aláírási kérelmet. A folytatáshoz kattintson a "Engedélyezés" gombra.

Az eszköztáron kattintson az iOS elemre. Az alkalmazás indítása az iOS emulátoron Mac számítógépen. Az emulátor elindításához eltarthat egy ideig. Ha látni szeretné az emulátor kimenetét Mac-en, előfordulhat, hogy előtérbe kell hoznia.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

Az alkalmazás futtatása után beállíthatja a töréspontokat, és a Visual Studio debugger segítségével ellenőrizheti a helyi értékeket, a híváscsomagokat és a vezérlő értékeket.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

A hibakeresés leállításához nyomja meg a Shift + F5 billentyűkombinációt.

Az iOS emulátor egy különálló folyamat, amely továbbra is Mac-en fut. A kódot többször módosíthatja, fordíthatja és telepítheti az iOS emulátor egy példányában. A kódot közvetlenül az emulátorban is végrehajthatja a telepítés után.

Az alkalmazás és az iOS könyvtár létrehozott projektjei egy olyan statikus könyvtárba helyezik a C ++ kódot, amely csak a közös kódot hajtja végre. Az alkalmazáskód nagy része az alkalmazásprojektben van. A kód felhívja a megosztott könyvtárat ebben a sablonprojektben a GameViewController.m fájlban. Az iOS alkalmazás létrehozásához a Visual Studio olyan Xcode platformeszközöket használ, amelyeknek kommunikálniuk kell egy távoli kliensen Mac számítógépen.

A Visual Studio elküldi a projektfájlokat, és parancsokat küld a távoli kliensnek, hogy az alkalmazást az Xcode használatával tudja felépíteni. A távoli ügyfél visszaküldi a build statisztikai információkat a Visual Studio környezetbe. Az alkalmazásépítés sikeres befejezése után a Visual Studio program segítségével parancsokat küldhet az alkalmazás futtatására és hibakeresésére. A Visual Studio hibakereső vezérli az alkalmazás végrehajtását az iOS emulátoron, amely Mac számítógépen vagy csatolt iOS eszközön fut. A Visual Studio a tulajdonságokat a StaticLibrary projektben a parancssori beállításokhoz használja, amelyek a cél iOS platform felépítésére, összekapcsolására és hibakeresésére szolgálnak. A fordító parancssori paramétereinek részletes tájékoztatásához nyissa meg a MyOpenGLESApp.iOS.StaticLibrary projekt Tulajdonságok lapját.

A szokásos C ++ kódot módosíthatja a közös funkciók hozzáadásához vagy módosításához. Ennek megfelelően meg kell változtatnia a hívásokat a közös kódra a MyOpenGLESApp.Android.NativeActivity és a MyOpenGLESApp.iOS.Application projektekben. Az előfeldolgozó makrók használatával megadhatja a partíciókat a közös kódra, amely egy adott platformra jellemző. Amikor Android rendszert futtat, az előfeldolgozó makró __ANDROID__ előre definiált. Amikor az iOS rendszert futtatja, az előfeldolgozó makró __APPLE__ előre definiált.

Nyitott alkalmazás létrehozása Android-ban és ios-ban

Az IntelliSense által az aktuális projektben talált problémákat egy piros hullámvonal kiemeli. Más projektek problémáit egy lila hullámos vonal hangsúlyozza. Alapértelmezés szerint a Visual Studio nem támogatja a színkódolást és az IntelliSense for Java és Objective-C fájlokat. Az alkalmazás neve, ikonja és egyéb végrehajtási funkcióinak testreszabásához azonban továbbra is módosíthatja a forrásfájlokat és az erőforrásokat.

Kijelző: örökölt védett

Kapcsolódó cikkek