[JAVA] Remarques sur la création d'un plug-in Android pour Unity

Travailler dans Android Studio

création de plugin android

Créer un projet avec "android studio" Créer "android libraly" dans "android studio"

Dossier du programme Unity pour travailler avec Unity? "Classes.jar" dans Copier dans le dossier "libs" de la "bibliothèque android" Si "classes.jar" est inclus dans aar et compilé, il échouera lors de la construction avec Unity. Exclure "classes.jar" d'être inclus dans aar

Changer (gradle) implementation fileTree(dir: 'libs', include: ['*.jar']) ↓ compileOnly fileTree(dir: 'libs', include: ['classes.jar'])

Addendum (gradle) android.libraryVariants.all{ variant-> variant.outputs.each{output-> output.packageLibrary.exclude('libs/classes.jar') } }

Création de script Importez des classes Unity pour pouvoir envoyer des messages à Unity

import static com.unity3d.player.UnityPlayer.UnitySendMessage;

Mettez "callbackTarget" et "callbackMethod" au format String dans l'argument de classe UnitySendMessage vous permet d'échanger des chaînes au format String UnitySendMessage(callbackTarget, callbackMethod, "onReadyForSpeech");

Travailler avec Unity

AndroidJavaClass TestClass = new AndroidJavaClass ("nom du package.nom de la classe"); AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); AndroidJavaObject context = unityPlayer.GetStatic("currentActivity");

context.Call("runOnUiThread", new AndroidJavaRunnable(() => { TestClass.CallStatic( "Nom de fonction défini dans TestClass", context, gameObject.name, "CallbackMethod" ); } ));

private void CallbackMethod(string message) { Debug.Log(message); }

Cela vous permet d'exécuter la fonction définie dans aar et de transmettre la valeur de retour à la fonction définie dans Unity.

Recommended Posts

Remarques sur la création d'un plug-in Android pour Unity
[Android] Notes sur xml
Notes pour les débutants en développement d'applications Android
Remarques sur l'appel du programme d'installation sur l'application Android
Remarques sur le traitement des threads Android (java)
[Android] Notes détaillées
J'ai créé une bibliothèque pour afficher des tutoriels sur Android.
Explication de Ruby on rails pour les débutants ② ~ Création de liens ~
Remarques sur les tampons de protocole
[Android] Création de boutons supplémentaires
Remarques sur l'héritage multiple
[Android / Kotlin] Notes détaillées 2
Notes pour l'analyse AST
Notes sur les expressions régulières
Remarques sur le studio Android
Explication de Ruby on rails pour les débutants ③ ~ Création d'une base de données ~