[JAVA] Verwenden Sie die Firebase-Echtzeitdatenbank mit Cocos Creator.

Einführung

Dies ist der erste Beitrag. Hallo. Heutzutage ist Unity die Wahl, wenn es um plattformübergreifende Spiele-Engines geht. Ich denke, dass UE auf dem zweiten Platz irgendwie herauskommen wird. Obwohl es gut war, mit der Arbeit an Cocos Creator zu beginnen, war ich in der Zwischenzeit in Schwierigkeiten, weil es nicht genügend Informationen gab, sodass ich ein Memorandum veröffentlichen werde.

Was willst du tun

Greifen Sie mit einer vom Cocos Creator entwickelten App auf die Echtzeitdatenbank von Firebase zu.

Methode

Da Cocos Creator Node.js verwendet, wird grundsätzlich npm verwendet. Diese Methode funktionierte jedoch nicht unter Android. (Kein Problem unter iOS oder Web) Ich hatte keine andere Wahl, als Firebase Database in Android Studio zu installieren und über Java aufzurufen.

npm install --save firebase Verwenden eines Terminals usw. im Projektordner von Cocos Creator

npm install --save firebase

Ausführen. Der folgende Artikel war in dieser Hinsicht sehr hilfreich. Implementieren der Firebase-Authentifizierung mit Cocos Creator

Anfangs konnte ich das Modul nicht gut laden, aber als ich Cocos Creator neu startete, schien es erfolgreich zu laden. Danach können Sie es problemlos ausführen, indem Sie Firebase mit Node.js verwenden. Hinzufügen von Firebase zum JavaScript-Projekt (https://firebase.google.com/docs/web/setup?hl=ja)

Android Das Modul ist aus irgendeinem Grund nicht für Android verfügbar. Möglicherweise stimmt etwas nicht mit der Tatsache, dass Sie npm in Node.js verwenden. (Ich kann es nicht herausfinden) Im obigen Artikel konnte ich die Firebase-Authentifizierung zumindest ohne Probleme ausführen, aber ich konnte die Firebase-Echtzeitdatenbank in meiner Umgebung nicht verwenden, sodass ich mich für die direkte Verwendung von Java entschieden habe.

Zuerst müssen Sie Firebase in Ihrem Projekt bereitstellen. Fügen Sie Firebase zu Ihrem Android-Projekt hinzu (https://firebase.google.com/docs/android/setup?hl=ja) Wir werden die auf diese Weise über Java eingeführte Firebase-Echtzeitdatenbank verwenden. Verwendung von Java mit Javascript vom Cocos Creator

jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters...)

Verwenden Sie die. How to Call Java methods using JavaScript on Android

Fügen Sie das Java-Paket, das Sie verwenden möchten, in org.cocos2dx.javascript ein und rufen Sie es aus Javascript auf. Zuerst wusste ich nicht, wo sich org.cocos2dx.javascript befindet, also werde ich es aufschreiben. /Project_Folder/build/jsb-default/frameworks/runtime-src/proj.android-studio/src/org/cocos2dx/javascript/ Es ist in.

Dort,

FirebaseWrapper.java


package org.cocos2dx.javascript;

import android.util.Log;
import com.google.firebase.database.FirebaseDatabase;

public class FirebaseWrapper {
    private static FirebaseDatabase database=null;

    public static void init(){
        if(null==database){
            database=FirebaseDatabase.getInstance();
            Log.d("Firebase Wrapper","Firebase Initialized!");
        }
    }
}

Ich habe so etwas gemacht. Um dies auf Javascript zu tun

jsb.reflection.callStaticMethod("org/cocos2dx/javascript/FirebaseWrapper","init","()V")

Wird genannt. Leider kann `result = jsb.reflection.callStaticMethod ()` nur als Argument und als Rückgabewert übergeben werden. Insbesondere können Sie nur int, float, boolean, String übergeben. Sie können also kein Array usw. übergeben. Es muss etwas getan werden, wie sie einzeln zu übergeben.

Im Moment können Sie jedoch sicher auf die Firebase-Echtzeitdatenbank zugreifen.

Am Ende

Dieses Mal habe ich die App zum ersten Mal mit Cocos Creator erstellt, aber ehrlich gesagt war es aufgrund meiner mangelnden Fähigkeiten sehr schwierig. Es gibt immer noch viele Aspekte des Informationsmangels, und ich hatte das Gefühl, dass Amateure nichts hätten tun sollen, weil sie im Grunde keine andere Wahl hatten, als Informationen auf Englisch oder Chinesisch zu sammeln. Es gibt jedoch auch den Aspekt, dass es schwierig ist, Informationen zu erweitern, sodass ich diesen Artikel für jemanden in der Zukunft oder für mich selbst veröffentlichen werde.

Ich habe viel gelernt, aber ich denke, ich werde Unity beim nächsten Mal wahrscheinlich gehorsam einsetzen. Lol

Recommended Posts

Verwenden Sie die Firebase-Echtzeitdatenbank mit Cocos Creator.
[Swift] So installieren Sie Firebase ~ So verwenden Sie Realtime Database & Cloud Firestore
Verwenden Sie ProGuard mit Gradle
Verwenden Sie Puphpeteer mit Docker
Verwenden Sie XVim2 mit Xcode 12.0.1
Verwenden von CentOS mit LXD
Verwenden Sie Webmock mit Rspec
Verwenden Sie WebJars mit Gradle
Verwenden Sie jlink mit gradle