2016-04-20 13 views
5

Ich kann herausfinden, wie man ein Unity-Projekt in einem Android-Projekt aus Artikeln im Internet und Unity's eigenen Lernabschnitt http://unity3d.com/learn einbetten kann. Worüber ich Probleme habe, ist die Kommunikation zwischen Unity und Android. Ich muss Unity einige JSON-Daten senden, die Zahlen und Werte enthalten und die URLs für ein paar Bilder anzeigen. Von da an in der Szene der Einheit möchte ich etwas Animation machen. Basierend auf der vom Benutzer getroffenen Auswahl muss ich entsprechende Anfragen an unseren Server senden und verschiedene Aktivitäten eröffnen.Wie kommuniziert man zwischen Android und Unity?

In normalen Android-Entwicklung, würde ich Informationen von einer Aktivität zu anderen mit Bundle übergeben, aber ich kann nicht herausfinden, wie das gleiche mit Unity und Android zu tun. Die Auswahl eines Benutzers aus der Unity-Szene in meine Anwendung ist ebenfalls ein Problem, das gelöst werden muss.

Antwort

2

Unity-Spiel ist keine normale Android-App. Es ist mehr wie eine Bibliothek, die in eine Android-App integriert ist.

Unity docs demonstrates Um Methoden auf Android native Seite von Unity aufrufen können Sie AndroidJavaClass (für Java-Klassenverweise und statische Aufrufe) und AndroidJavaObject (für Verweise auf Objekte).

Um umgekehrt zu interagieren, können Sie UnitySendMessage() in Java verwenden. Der letzte Parameter in UnitySendMessage() ist ein optionales Zeichenfolgenargument, mit dem Sie JSON an Unity übergeben können.

In Unity können Sie entweder JsonUtility.FromJson für Deserialisierung oder einige 3rd Party Skripte für JSON Parsing verwenden, es gibt eine Menge auf Github.

+1

eine ausgezeichnete Antwort – Fattie

Verwandte Themen