羊蹓狼 发表于 2024-9-1 13:25:43

Android 检察代码行数(命令行和Statistic插件)

目次
一、命令行
1.1 使用
1.2 结果分析
二、Statistic
2.1 下载 Statistic 插件
2.2 设置 Statistic 插件
2.3 使用  Statistic 插件
相干推荐
一、命令行

   find . -name "*.java" -o -name "*.kt" | xargs wc -l

[*] find .:从当前目次(. 表现当前目次)开始查找。
[*] -name "*.java":查找所有文件名以 .java 结尾的文件。
[*] -o(或 -or,但更常见的是 -o):表现逻辑或(OR)利用。这意味着 find 命令会匹配 -name "*.java" 或 -name "*.kt" 中的任何一个条件。
[*] -name "*.kt":查找所有文件名以 .kt 结尾的文件。
[*] |:管道符,将前一个命令的输出作为后一个命令的输入。
[*] xargs:构建并执行命令,从标准输入(stdin)汲取数据。在这个例子中,xargs 会汲取 find 命令找到的所有文件路径,并将它们作为 wc -l 命令的参数。
[*] wc -l:计算输入中的行数。在这个上下文中,它会计算所有找到的 .java 和 .kt 文件的总行数。
           这个命令的目的是统计当前目次及其子目次下所有 .java 和 .kt 文件的总行数,包罗代码行、解释行和空行。
1.1 使用

        1、打开终端 路径指向 项目地点 输入上方命令即可。
https://i-blog.csdnimg.cn/direct/2706c6737d844658a2515f4193807f27.png
        2、打开 Android Studio  => Terminal 输入上方命令即可。
https://i-blog.csdnimg.cn/direct/bc0d8e87e8e9402f93db039e18fd56eb.png
1.2 结果分析

sccMacBook-Pro:scc-android scc$ find . -name "*.java" -or -name "*.kt" | xargs wc -l
      10 ./libbase/build/generated/source/buildConfig/debug/com/base/lib/base/BuildConfig.java
      20 ./libbase/src/main/java/com/base/lib/swipeBack/SwipeBackActivityBase.java
   106 ./libbase/src/main/java/com/base/lib/swipeBack/SwipeBackUtils.java
      61 ./libbase/src/main/java/com/base/lib/swipeBack/SwipeBackActivityHelper.java
   611 ./libbase/src/main/java/com/base/lib/swipeBack/SwipeBackLayout.java
    1586 ./libbase/src/main/java/com/base/lib/swipeBack/ViewDragHelper.java
      61 ./libbase/src/main/java/com/base/lib/tools/FindViewHelper.java
      18 ./libbase/src/main/java/com/base/lib/base/OnViewClickListener.java
      68 ./libbase/src/main/java/com/base/lib/base/BaseFragment.java
      34 ./libbase/src/main/java/com/base/lib/base/BaseViewHolder.java
   115 ./libbase/src/main/java/com/base/lib/base/BaseRecycleAdapter.java
      。。。。。省略大多数代码
      42 ./libapi/src/main/java/com/base/lib/api/WakeUpUtils.java
      62 ./libapi/src/main/java/com/base/lib/interaction/Util.java
   439 ./libapi/src/main/java/com/base/lib/interaction/ActionUtil.java
   113 ./libapi/src/main/java/com/base/lib/interaction/ShellExe.java
      10 ./download-source/build/generated/source/buildConfig/debug/com/norman/webviewup/lib/source/download/BuildConfig.java
   242 ./download-source/src/main/java/com/norman/webviewup/lib/source/download/UpgradeDownloadSource.java
129008 total         这里可以看到已拿到总行数 129008,并且每个文件有多少行也显示出来了。检察第一行./libbase/build/generated/ 里面包罗 build 文件中的内容,以是需要移除build再进行统计更准确一些。
   注意:这个方法统计的是代码行数,不包罗结构文件、资源文件等。假如需要统计这些文件的代码量,需要修改命令行。
二、Statistic

        检察 Android Studio 是否已有 Statistic 插件,我这里是直接存在的(自带的、还是之前下载的已经记不清了),没有的话安装下载一下即可,十分简单。本文 Statistic  版本 4.2.14。
2.1 下载 Statistic 插件

https://i-blog.csdnimg.cn/direct/8503a026b6a54998a79f1d2b3be896e9.png
2.2 设置 Statistic 插件

https://i-blog.csdnimg.cn/direct/e32e32f772254c7899c2e35bc4f8c95e.png
        1、Excluded file types(清除的文件类型):指的是在插件执行其利用时,将自动忽略或不被思量在内的文件类型。这些文件类型通常是通过文件扩展名来识别的。比方,假如你正在使用一个统计代码行数的插件,并且你不盼望日志文件(如.log文件)或构建文件(如.gradle文件)被计入统计,你就可以将这些文件类型添加到清除列表中。
        2、Included file types(包罗的文件类型):与清除的文件类型相反,这指的是插件将特别关注或只处理这些类型的文件。不设置默认就是处理所有文件,而“包罗”的设定更多是用来进一步细化或限制处理的文件范围。比方,你大概只想统计.java和.kt(Kotlin)文件的代码行数,那么就可以将这些文件类型添加到包罗列表中。但请注意,假如没有明确的清除列表,并且插件默认处理所有文件,那么“包罗”的设定大概就不是必需的。
        3、Separate TABs file types(分离制表符的文件类型):指定某些文件类型应该被单独处理或显示在不同的标签页(TABs)中。
        4、Excluded directories(清除的目次):这指的是在插件执行其利用时,将自动忽略或不被思量在内的整个目次。这些目次通常包罗了你不想被插件处理的文件或子目次。比方,在代码搜索或统计插件中,你大概会清除掉build、logs或temp等目次,因为这些目次通常包罗了由构建过程或IDE自动生成的、与用户编写的代码无关的文件。
2.3 使用  Statistic 插件

        在项目的底部会有 Statistic 直接点击就行,然后再点击左上角的Refresh(革新)即可统计有多少行代码了。看不到 Refresh 这一栏的,可右键点击 Statistic 选择 Show Toolbar即可。
https://i-blog.csdnimg.cn/direct/ae04e993f60746fc9f0e3dcc4dfe35b9.png
Size SUM总大小:表现所有选中文件或整个项目在磁盘上占用的总字节数。这是一个累加值,反映了所有相干文件大小的总和。Size MIN最小大小:文件占用的最小字节数。这有助于相识最小的文件大小是多少。Size MAX最大大小:文件占用的最大字节数。这有助于识别哪些文件占用了最多的磁盘空间。Size AVG平均大小:表现所有选中文件或整个项目中文件的平均字节数。它是通过将所有文件的大小相加并除以文件数量来计算的。Lines总行数:文件中包罗代码行、解释行和空行的总行数。衡量文件或项目的总体大小或复杂度。Lines MIN最小行数:文件包罗的最小行数。这个值大概对于相识代码文件的简短程度有用,但具体实现大概因插件版本而异。Lines MAX最大行数:文件包罗的最大行数。这有助于识别哪些文件包罗了最多的代码行。Lines AVG平均行数:表现所有选中文件或整个项目中文件的平均行数。它是通过将所有文件的行数相加并除以文件数量来计算的。这个值对于评估项目的团体代码规模很有用。Lines CODE源代码行数:也称为Source Code Lines,表现文件中实际编写的代码行数,不包罗解释和空行。这个统计指标更加专注于实际代码的逻辑部分,有助于评估项目的实际工作量、代码质量和可维护性。         从上面截图可以看出 Statistic 统计和使用命令行统计的总行数是一样的。
        等领导问你源代码行数的时候,你可以酌情选择哦。
相干推荐

adb 常用命令汇总-CSDN博客文章浏览阅读1w次,点赞29次,收藏99次。Android Debug Bridge (ADB) 是一个多功能命令行工具,它允许你与连接的Android设备进行通讯。ADB主要用于调试和与设备进行各种交互,如安装和调试应用、访问设备的shell、复制文件等。它包罗在Android SDK中,并且是Android开发者的重要工具之一。_adb命令https://g.csdnimg.cn/static/logo/favicon32.icohttps://shuaici.blog.csdn.net/article/details/135509740AndroidStudio插件GsonFormat:根据Json自动生成JavaBean-CSDN博客文章浏览阅读1.4w次,点赞4次,收藏7次。1、GsonFormat 安装指南2、Android Studio 设置配景色3、Android Studio 添加自界说备注_gson format plushttps://g.csdnimg.cn/static/logo/favicon32.icohttps://shuaici.blog.csdn.net/article/details/70257415


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Android 检察代码行数(命令行和Statistic插件)