我正在开发 unity android 插件,想知道是否有办法从 c# 代码启动 android Activity 类。
这相当于android代码:
Intent intent = new Intent(context,some_activity.class);
最佳答案
下面是我如何为使用 Unity for Android 构建的 AR 应用程序调用我的插件: 首先定义你的插件:
private AndroidJavaClass plugin;
稍后在 Start() 上
plugin = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
稍后当你想调用你的插件时:
ΑndroidJavaClass jc = new AndroidJavaClass("com.package.name.ActivityName");
AndroidJavaObject jo = plugin.GetStatic<AndroidJavaObject>("currentActivity");
string msg= "a msg to send to android activity";
jo.Call("buttonClicked", msg);
buttonClicked
是Java端的方法。获取该方法后,您可以使用 Intents 调用任何 Activity
您应该为您的插件创建一个 jar 并将其添加到您的 Unity 项目的插件文件夹中。
更多详情可以查看here
关于c# - Unity android插件C#代码启动activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30342741/