Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在原生android中嵌入多个unity模块?_Java_C#_Android_Unity3d - Fatal编程技术网

Java 如何在原生android中嵌入多个unity模块?

Java 如何在原生android中嵌入多个unity模块?,java,c#,android,unity3d,Java,C#,Android,Unity3d,我遇到了一个问题。这已经有人问过了。但这个问题没有答案 根据这个问题的标题。如何在本机android项目中集成多个unity模块或库。我遵循了很多程序。但我没有找到解决这个问题的办法。根据指示,我必须在我的项目中集成unity库。我已经完成了这两个单位的图书馆。对于第二个库,我必须更改包和类名。并使其发挥作用。在完成所有这些更改之后,我的项目正在成功构建,并且正在编译,没有任何错误。当我点击加载第一个游戏时,它就会加载第一个游戏。但是当我点击加载第二个游戏时,它也只加载第一个游戏 下面是我的a

我遇到了一个问题。这已经有人问过了。但这个问题没有答案

根据这个问题的标题。如何在本机android项目中集成多个unity模块或库。我遵循了很多程序。但我没有找到解决这个问题的办法。根据指示,我必须在我的项目中集成unity库。我已经完成了这两个单位的图书馆。对于第二个库,我必须更改包和类名。并使其发挥作用。在完成所有这些更改之后,我的项目正在成功构建,并且正在编译,没有任何错误。当我点击加载第一个游戏时,它就会加载第一个游戏。但是当我点击加载第二个游戏时,它也只加载第一个游戏

下面是我的android studio的截图

我将向您介绍更多关于这一点的描述

*在
应用程序模块中
有2个
活动
,分别命名为
main活动
GameHolderActivity
。下面是
MainActivity.java
的代码

import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    findViewById(R.id.btn1Click).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this, GameHolderActivity.class);
            intent.putExtra("game", 1);
            startActivity(intent);
        }
    });
    findViewById(R.id.btn2Click).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this, GameHolderActivity.class);
            intent.putExtra("game", 2);
            startActivity(intent);
        }
    });
}
}
在那之后,现在我要提到
GameHolderActivity.java
的代码

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
//FIRST GAME ACTIVITY
import com.unity3d.player.UnityPlayerActivity;
//SECOND GAME ACTIVITY
import com.game.player.GamePlayerActivity;
public class GameHolderActivity extends Activity {
private String TAG = "GAME_HOLDER_ACTIVITY";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_first_game);

    if (getIntent().hasExtra("game") && getIntent().getIntExtra("game", 0) == 1) {
        Log.d(TAG, "FIRST_GAME");
        Intent intent = new Intent(GameHolderActivity.this, UnityPlayerActivity.class);
        startActivity(intent);
    } else {
        Log.d(TAG, "SECOND_GAME");
        Intent intent = new Intent(GameHolderActivity.this, GamePlayerActivity.class);
        startActivity(intent);
    }
}
}
在整个过程中,我只更改了一个库包的名称。这样我就可以确定我的第二个游戏活动

我在我的
build.gradle(Module:app)
inside
android{}
中又添加了一个东西

packagingOptions {
    pickFirst '**/*.so'
}
我尝试了下面的教程,但是在多个游戏中都没有得到任何积极的回应


所以请给我提供解决方案,这样我就可以在我的原生android应用程序上打开我的两款Unity游戏。我将非常感谢您的帮助。

开发者。如果你有这个问题。然后我想告诉你们,Unity Technology不支持这一点

总之,
您不能在本机android应用程序中使用多个unityLibrary。

那么我们如何实现我们的目标呢?


关于这一点,我已经咨询了
专家
,我也进行了研究,并与
联合支持团队
进行了沟通。为了实现我们的目标,我们必须为所有
游戏
制作一个
单一库。这意味着,我们必须
将所有游戏绑定到一个项目中
。然后,我们将从
android
端向
Unity
端发送一些标识符。这样我们就可以确定我们要玩的游戏。然后,在验证之后,我们将从
unity
端加载特定场景或游戏。这样,我们可以根据您的要求玩多种游戏。

您找到解决方案了吗?请share@KenZira请阅读答案。我已经发帖了。