Androidstudio项目包含多个模块调用

最近一个项目包含三个模块
在这里插入图片描述
打包成aar和unity交互时unity报错

no non-static method with name='UnityCallAndroid'

多次尝试无果,但是新建项目和unity交互没有问题,就想到在此项目里新建一个模块,unity和这个模块交互再调用其他模块的方法,尝试之后成功

package com.sound.anzhuoceshi;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.widget.Toast;

import com.baidu.idl.face.example.MainActivity;
import com.unity3d.player.UnityPlayer;
import com.unity3d.player.UnityPlayerActivity;

public class UnityMainAcivity extends UnityPlayerActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
    }

    //unity调用Android
    public void UnityCallAndroid () {
        Toast.makeText(this,"unity调用android成功", Toast.LENGTH_LONG).show();
         // 直接跳到要调用的Activity  MainActivity是在app模块中的
        startActivity(new Intent(this,MainActivity.class));
        AndroidCallUnity();
    }

    //android调用unity
    public void AndroidCallUnity () {

        //第1个参数为Unity场景中用于接收android消息的对象名称
        //第2个参数为对象上的脚本的一个成员方法名称(脚本名称不限制)
        //第3个参数为unity方法的参数
        UnityPlayer.UnitySendMessage("Text", "fromeAndroid", "安卓给你发消息了.");
    }
}


要想实现调用其他模块方法要在这里添加上在这里插入图片描述
最后把项目过程要用到的模块全都打aar包导入unity,然后把和unity交互的模块的AndroidManifest.xml也放入unity

发布了57 篇原创文章 · 获赞 22 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/Mediary/article/details/103321359