Unity代码设置安卓签名路径、配置签名密码,静态启动画面


前言

一个特殊的需求,需要在代码中配置安卓打包相关设置。


一、安卓签名设置相对路径

这个比较简单,找到ProjectSettings文件内的ProjectSettings.asset,其中有一条配置是

 AndroidKeystoreName: "E:/XXX/Moudle/Assets/Plugins/XXX.keystore"

将其修改为

  AndroidKeystoreName: ./Assets/Plugins/XXX.keystore

检查设置即可发现已经变化
在这里插入图片描述

二、签名别名密码保存

https://blog.csdn.net/acmhonor/article/details/94552089
我是看了这篇帖子改的,就不再多说了,感谢博主。

三、自动设置启动画面

这个部分有点意思,通过序列化读写ProjectSettings.asset文件内的配置来实现。可能大家都用不到,所以资料比较少,下边这个链接有相关用法,但是有点不太对,我修改了一下。
https://answers.unity.com/questions/1619110/set-androids-static-splash-image-using-api.html

  private static void  ChangeImage()
    {
    
    
        string path = Application.dataPath + "/AllResources/Image/Logo/Start.png";
        if (!File.Exists(path))
        {
    
    
            Debug.Log("文件不存在");
            return;
        }

        Texture2D tex = AssetDatabase.LoadAssetAtPath<Texture2D>("Assets/AllResources/Image/Logo/Start.png");
        const string projectSettings = "ProjectSettings/ProjectSettings.asset";
        UnityEngine.Object obj = AssetDatabase.LoadAllAssetsAtPath(projectSettings)[0];
        SerializedObject psObj = new SerializedObject(obj);

        SerializedProperty androidSplashFileId = psObj.FindProperty("androidSplashScreen");
        Debug.Log(androidSplashFileId); 
        if (androidSplashFileId != null)
        {
    
    
            androidSplashFileId.objectReferenceValue = tex;
        }
        psObj.ApplyModifiedProperties();

        PlayerSettings.Android.splashScreenScale = AndroidSplashScreenScale.ScaleToFill;
    }


猜你喜欢

转载自blog.csdn.net/qq_27050589/article/details/125632425