1、unity导出安卓时配置

2、安卓代码中,在onResume中设置

package com.honda.dic.settings.ui.fragment;

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;

import androidx.fragment.app.Fragment;

import com.unity3d.player.UnityPlayer;

public class UnityContentFragment extends Fragment {

    public static UnityPlayer mUnityPlayer;
    View view;
    public UnityContentFragment() {
        // 必须有一个无参数构造函数
    }
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mUnityPlayer = new UnityPlayer(requireActivity());
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        view = mUnityPlayer.getView();
        if(view.getParent()!=null)
        {
            ((ViewGroup)view.getParent()).removeAllViews();
        }
        view.getViewTreeObserver().addOnWindowFocusChangeListener((has)->mUnityPlayer.windowFocusChanged(has));
        return view;
    }

    @Override
    public void onResume() {
        super.onResume();
        mUnityPlayer.resume();

        UnityPlayer.currentActivity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
        UnityPlayer.currentActivity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
        View decorView = UnityPlayer.currentActivity.getWindow().getDecorView();
        decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
    }

    @Override
    public void onPause() {
        super.onPause();
        mUnityPlayer.pause();
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        mUnityPlayer.quit();
    }
}

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐