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();
}
}