解决Unity2018 Building Gradle Project卡住的问题

万事开头难,刚开始学习Unity Android方面的知识就开始翻车,难受。
这里使用的版本是:Unity2018.4.30f Android Stdio 3.62 Gradle5.1.1

问题

Unity Build Android 时总在Building Gradle Project卡住。
中间遇到网络波动等,还会立刻失败。

解决方法

折腾了将近一天。在https://github.com/googlesamples/unity-jar-resolver/issues/63中得到了答案。

方法1:删掉.gradle/daemon文件夹。

gradle/gradle#1747有所提及。

我使用了该方法,删掉了C:\Users\Administrator.gradle\daemon文件夹。

神奇的事情发生了,几十秒就Build成功。

方法2:在Unity的gradle.properties则可以通过IPostGenerateGradleAndroidProject接口进行修改。

github中提到了–no-daemon。

在参照了unity3d修改gradle.propertiest禁用Gradle Daemon后,得到了如下方法。

在Unity中添加如下脚本。

using UnityEngine;
using System.Collections.Generic;
using System.IO;
#if UNITY_EDITOR
using UnityEditor.Android;

public class AndroidPostBuildProcessor : IPostGenerateGradleAndroidProject
{
    public int callbackOrder
    {
        get
        {
            return 999;
        }
    }


    void IPostGenerateGradleAndroidProject.OnPostGenerateGradleAndroidProject(string path)
    {
        Debug.Log("Bulid path : " + path);
        //读取gradle.properties中的内容
        string gradlePropertiesFile = path + "/gradle.properties";
        List<string> properties = new List<string>(File.ReadAllLines(gradlePropertiesFile));
        //添加 no daemon设置
        properties.Add("org.gradle.daemon=false");
        File.WriteAllLines(gradlePropertiesFile,properties);
    }
}

#endif

注:

因为在我的电脑上使用第一种方法后,立刻流畅了起来。

在此基础上干掉守护进程后,只是感觉上快了一些。

至于第二种方法究竟有没有效果,有这种问题的可以试一下。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值