Giter Site home page Giter Site logo

netyouli / whc_scan Goto Github PK

View Code? Open in Web Editor NEW
443.0 8.0 79.0 4.64 MB

高效强大扫描分析iOS和Android项目里没有使用的类Mac开源工具,清理项目垃圾类,让项目结构干净清爽,升级维护得心应手. Efficient and powerful scanning analysis iOS and Android project no classes used in Mac open source tools, cleaning rubbish class project, make project structure clean and relaxed, upgrade maintenance

License: MIT License

Swift 100.00%
ios macos scan scanner whc

whc_scan's Introduction


# WHC_Scan v1.0.1 简介 ============== - **应用**: Mac工具(扫描项目里没有使用的类) - **高效**: 支持自定义设置扫描线程数量(提高扫描分析效率) - **好处**: 删除项目没有使用的类增加项目结构清晰度利于后期升级维护并减小打包体积 - **强大**: 支持iOS 和 Android项目(扫描准确率95%以上实测iOS项目) - **咨询**: 712641411 - **作者**: 吴海超

注意

  • 扫描速度:快速扫描 > 常规扫描 > 深度扫描
  • 扫描准确性:快速扫描 < 常规扫描 < 深度扫描
  • 快速扫描: 主要针对高编码质量项目(命名规范,无垃圾注释....),扫描速度最快
  • 常规扫描: 主要针对一般编码质量项目(命名规范一般,少量垃圾注释....),扫描速度一般
  • 深度扫描: 主要针对编码质量比较差的项目(命名不规范,大量垃圾注释....),扫描速度比较慢
  • 设置扫描线程的数量不宜过大一般5个线程左右足以(设置太大内存承受压力大)

效果

推荐

使用

  • 运行该工程生成WHC_Scan.App 复制到桌面或者应用程序文件夹双击运行

要求

  • mac os x 10.7 or later
  • Xcode 8.0 or later

期待

  • 如果您在使用过程中有任何问题,欢迎issue me! 很乐意为您解答任何相关问题!
  • 与其给我点star,不如向我狠狠地抛来一个BUG!
  • 如果您想要更多的接口来自定义或者建议/意见,欢迎issue me!我会根据大家的需求提供更多的功能!

Licenses

All source code is licensed under the MIT License.

whc_scan's People

Contributors

netyouli avatar raingump avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

whc_scan's Issues

关与扫描目录的问题的建议-Android

@netyouli

扫描结果

>>>>> istolerantofsomeI/Oerrors.Iffilesaremissingfromthe
>>>>> tomanagethecreationofaCircularProgressDrawable
>>>>> isintendedtobeinstantiatedatruntimeratherthanincludedinXMLlayouts.
>>>>> AbsDisplayer<T,F>
>>>>> UserInfo{//
>>>>> containsallbutterknife-injectedViews&Layoutsfromlayoutfile'new_mine_info_setting_item.xml'
>>>>> containsallbutterknife-injectedViews&Layoutsfromlayoutfile'new_mine_info_setting_item_labels.xml'
>>>>> forthespring
>>>>> formaintainingaregistryofallspringconfigs
>>>>> WYFun2<T,R
>>>>> esshouldoverridethismethodifthepositionsofitemscanchange.</p>
>>>>> UploadManagerP}
>>>>> canbeextens
>>>>> isusedto3Dtransformationmatrix.

ps:只有4个文件是我写的我举双手表示清白:smile: 🙌

体验问题:smile:恕我直言😊

  1. 猜测 该扫描在Android工程下是不是根据class类名去find关键字,(重名类问题,拼接类名反射问题)
  2. 建议 扫描时应屏蔽build等文件,只匹配src,assert,lib等目录下的文件,模糊匹配出全部在根据全路径,文件名,拼接的话还是匹配关键字(这个有点尴尬😅)
  3. 项目有分module
  4. c++文件如何匹配问题,毕竟文件名和引用名几乎不同,(查看gradle配置)

iOS未体验

对一些系统类错误认为没有使用

对一些系统类、配置相关文件错误认为没有使用,如SceneDelegate、ViewController
是否可以提供一个输入框用于输入不去扫描的黑名单

一些问题

.mm结尾的文件不会被扫描,它引用的类都会出现在结果里
OC用@import引入cocoaPods的swift框架,会导致结果多出来很多有用到的类
谢谢

xib和import无法扫描

xib和import都使用了,但是还是扫描出未使用,包括一些很明显的使用了init了还是扫出未使用,是不是可以做些改进。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.