Android Studio 构建数

Android Studio builds count

是否可以查看项目自从在计算机上启动以来的构建次数。

马拜 10 或 100 或 1000?

手动还是在 android 代码中?

有什么帮助吗?

从没想过要给 Gradle 添加一个计数器。但是给你。将此添加到 build.gradle:

defaultConfig {
    applicationId "xy"
    // ...

    def buildCountFile = new File("D:\gradle-counter.txt")
    String content = ""
    if(buildCountFile.exists()) {
        content = buildCountFile.getText('UTF-8')
    }
    int count = 0;
    if(content.isNumber()) {
        count = content.toInteger() + 1;
    }
    buildCountFile.write(count.toString())
}

要创建每日计数器,您可以添加如下内容:

defaultConfig {
    applicationId "xy"
    // ...

    def buildCountFile = new File("D:\gradle-counter.txt")
    def sdf = new java.text.SimpleDateFormat("MM/dd/yyyy")
    String date = sdf.format(new Date())
    String content = ""
    if(buildCountFile.exists()) {
        content = buildCountFile.getText('UTF-8')
    }
    String dateRegex = "(" + date.replace("/","\/") + ":\s*)(\d+)"
    def matcher = java.util.regex.Pattern.compile(dateRegex).matcher(content)
    if (matcher.find()) {
        // Current date already in the file
        int countToday = matcher.group(2).toInteger()
        countToday = countToday + 1
        String newLine = matcher.group(1) + countToday
        content = content.replace(matcher.group(), newLine)
    } else {
        // Need to create a new line with current date
        content = content + date + ": 1\r\n";
    }
    buildCountFile.write(content)
}

D:\gradle-counter.txt的内容:

01/21/2015: 4
02/21/2015: 2

注意事项: 同步 Gradle 个文件也被计算在内。

源代码适用于 Windows,需要稍作改动才能与 Linux 一起使用。

我在路上 - 这是我的版本...无论如何都没有用户输入 - 我已经开始使用控制台或 swing 进行一些操作,但直到现在它还不起作用 - 但我又试了一次

// Setting Preferences
def f_name = 'Buildlog.txt'
def f_path = 'e:/'
def BFile = new File(f_path+f_name);

def DateTime = new Date();
def sdf = new SimpleDateFormat("EEEE dd/MM/YYYY k:m:s")
if (BFile.exists()){
    BFile.append(System.getProperty("line.separator") + sdf.format(DateTime))
 } else {
 }

所以我们在这里 - 一些回给你

代码现在看起来像这样

 // Setting Preferences
    def f_name = 'Buildxx.txt'
    def f_path = 'e:/'
    def Seperator =';'
    def BFile = new File(f_path+f_name);
    def LineList = []
    def readln = javax.swing.JOptionPane.&showInputDialog
    def usertext = readln 'What have you done?'


    def DateTime = new Date();
    def sdf = new SimpleDateFormat("EEEE dd/MM/YYYY kk:mm:ss")
    def x =0;
          if (BFile.exists()){
               def Max = BFile.length();
              BFile.eachLine { line ->
                  x++;
                  LineList.add(line);

              }
            def LastLine = LineList.last();

              def number = ""
              number = LastLine.split(' ');
              def InumStr = number[0];
              def Inum = InumStr.toInteger();

              def Nextnumber = Inum+1;
                  BFile.append(System.getProperty("line.separator")+Nextnumber+" "  + sdf.format(DateTime)+ " "+usertext)
    }
    else
          {
              BFile.write("0 "+ sdf.format(DateTime)+ " Start of the project");
         }  

最后你有一个日志文件,你可以在 Excel (csv.file) 中打开它... 它会处理一些像这样的格式 (我喜欢彩色 Excel 床单;))

Notice: Synchronizing the Gradle files is also counted.

这是唯一麻烦的事情:( 也许有一些属性可以阅读