不必绑定 Unityplayer 活动或 mainActivity。
您可以将任何活动设为静态,并从 c# unity 调用这些活动中存在的函数或 UI。
正确的方法是在您的主 Android 项目中创建一个静态 Activity 并将其命名为 currentActivity。在您的 oncreate 方法中,您将 currentActivity 设置为此以下代码演示:
public class MainActivity extends UnityPlayerActivity {
public static MainActivity currentActivity;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
currentActivity=this;
另外:从您的 Unity 代码中,您可以使用 C# 通过使用以下代码从 MainActivity 调用 Android 方法:
AndroidJavaClass jc = new AndroidJavaClass("yourpackagename.youractivity");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
jo.Call("toggleMenu");
或者
您可以将 UnityPlayerActivity 转换为 Fragment,下面提到的链接将对您有所帮助
如何在新进程中打开 Android 片段?