[JAVA] NoClassDefFoundError s'est produit lors de la tentative d'appel d'une fonction Android à partir de Unity via jar

Je me suis référé ici jusqu'à ce que j'appelle jar en premier lieu https://ghoul-life.hatenablog.com/entry/2019/01/26/030622

Lorsque j'ai essayé d'appeler la fonction liée au capteur du terminal dans la méthode java appelée, NoClassDefFoundError s'est produite Apparemment, je perds la trace de la classe elle-même lorsque j'essaie d'utiliser le contexte Android dans une méthode.

J'ai trouvé un moyen d'envoyer le contexte Android d'Unity vers java et l'appel a réussi. https://www.itread01.com/content/1546405986.html

Unity:

        AndroidJavaClass androidJavaClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
        AndroidJavaObject activity = androidJavaClass.GetStatic<AndroidJavaObject>("currentActivity");
        AndroidJavaObject javaPlayer = new AndroidJavaObject("jp.co.sample.MyClass");
        string isSensorAvalable = javaPlayer.Call<string>("myMethod", activity);

// Avec ou sans capteur de pas "true" / "false"

Java:

        public String myMethod(Activity mainActivity) {
            Context context = (Context) mainActivity;
            PackageManager packageManager = context.getPackageManager();
            return String.valueOf(packageManager.hasSystemFeature(PackageManager.FEATURE_SENSOR_STEP_COUNTER));

//歩数センサーが端末にあるかどうかを返す }

Recommended Posts

NoClassDefFoundError s'est produit lors de la tentative d'appel d'une fonction Android à partir de Unity via jar
Une erreur s'est produite lors de l'exécution d'une fonction avec CURSOR défini dans le paramètre OUT de MyBatis dans PostgreSQL.
Points sur lesquels je suis tombé lors de la création d'une application Android [Mis à jour de temps en temps]
Erreur 407 lors de la tentative d'accès au site HTTPS via un proxy authentifié en Java
J'étais accro à WSl en essayant de créer un environnement de développement d'applications Android avec Vue.js
Envoyer périodiquement les valeurs du capteur d'accélération d'Android au PC via UDP
[Opensaml] NoClassDefFoundError se produit lors du passage de Tomcat à weblogic
Envoyer la valeur du capteur d'accélération d'Android au PC par UDP