zoukankan      html  css  js  c++  java
  • Unity自动打包 apk

    1、流程

      Unity打包 apk,会把Unity安装目录下的默认 AndroidManifest.Xml 文件覆盖到apk中去,同时还会拷贝该文件所在目录下的其它默认设置文件,如 res 和 assets 文件夹。

      AndroidManifest.Xml 主要是用来设置一些权限,如 Unity打包时进行的 PlayerSettings 设置就会体现在这个文件中。

      我们在打包的时候,Unity会先检测工程目录的 Assets/Plugins/Android 目录下有没有 AndroidManifest.Xml 这个文件,如果有则使用该文件,如果没有则使用 Unity 安装目录下的 AndroidManifest.Xml 文件

      Unity 命令行有多个参数,常用的有 

    -projectPath 指定项目目录
    
    -executeMethod  执行某个静态方法,该类文件放于 Editor 文件夹下
    
    -quit 执行完命令后,自动关闭 unity
    
    -batchmode 后台运行unity,不显示界面。
    
    -logFile 指定编辑器日志文件

    如我们在 Editor文件夹下新建一个 AutoBuild.cs ,代码如下:

    using UnityEditor;
    
    public class AutoBuild  {
        public static void BuildAndroid()
        {
            string[] levels = { "Assets/Scenes/GameScene.unity"};
            BuildPipeline.BuildPlayer(levels, "monster.apk", BuildTarget.Android, BuildOptions.None);
        }
    }

    这样就可以通过下面的命令自动编译了:

    "C:Program FilesUnityEditorUnity.exe" -projectPath D:srcMonsterBookTrunkClientMonsterBook -executeMethod AutoBuild.BuildAndroid project-$1 
    -quit -batchmode -logFile uerror.log

    更新ADT时,会提示 dl-ssl.google.com 这个地址无法访问,通过站长工具超级PING检测,国内全部被封,所以修改 hosts 文件这条路走不通了。最后在网上找了一个 proxy 代理,mirrors.neusoft.edu.cn:80 ,然后把设置强制将 https 改为 http 模式即可。

  • 相关阅读:
    CATransform3D中m34字段的取值含义
    iOS模拟器分辨率的问题(转载)
    优秀iOS学习网站(待更新)
    内联函数的理解
    UIView的setNeedsLayout, layoutIfNeeded 和 layoutSubviews 方法之间的关系解释
    Flume基础学习
    2019年总结
    Linux基础学习
    Mysql中几种sql的常见用法
    各种设计模式的简单介绍
  • 原文地址:https://www.cnblogs.com/tianyajuanke/p/5276099.html
Copyright © 2011-2022 走看看