Android和iOS静态代码扫描工具

article/2025/10/24 12:28:56

Android

名称

来源

功能特点

检查SQL注入

检查NullPointException

支持IDE情况

Android Lint

Android SDK

针对Android,检查范围广

Eclipse、Android Studio

FindBugs

国外

针对Java程序,失去对Android特性的检查

Eclipse、Android Studio

QA Plug

国外

集合了FindBugs、CheckStyle和PMD的组件插件,失去对Android特性的检查

Eclipse、Android Studio

360火线

奇虎360

针对Android,依赖规则检查,可以看作是AndroidLint的扩充

Android Studio

godeyes

百度

针对Android/iOS,依赖规则检查,偏向于检查会引起Crash的内容

Eclipse 、Android stuido

infer

facebook

针对Android/iOS的检查工具

未测试

未测试

全平台

kiuwan

kiuwan

针对多种语言,有免费版本, 详见参考资料连接

iOS

名称

来源

功能特点

检查SQL注入

检查NullPointException

支持IDE情况

Clang Static Analyzer

Apple

XCode自带工具

未测试

XCode

OCLint

oclint.org

建立在Clang上的工具

未测试

未测试

XCode

infer

Facebook

针对

Android/iOS的检查工具

未测试

未测试

全平台

godeyes

百度

针对iOS,依赖规则检查,偏向于检查会引起Crash的内容

Mac

静态代码分析知识库

https://www.owasp.org/index.php/Static_Code_Analysis
https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis

FindBugs

http://findbugs.sourceforge.net/
https://androidbycode.wordpress.com/2015/02/13/static-code-analysis-automation-using-findbugs-android-studio/

pmd

https://pmd.github.io/

checkstyle

https://github.com/checkstyle/checkstyle

360火线

http://magic.360.cn/index.html

OCLint

http://oclint.org/
http://docs.oclint.org/en/stable/

使用OClint进行iOS项目的静态代码扫描

http://www.cnblogs.com/itech/p/5238065.html

iOS静态代码扫描

https://github.com/facebook/infer
https://gitcode.net/mirrors/facebook/infer
http://fbinfer.com
https://blog.csdn.net/haorenmin2008/article/details/46544921?spm=1001.2014.3001.5501

Clang Static Analyzer

https://developer.apple.com/legacy/library/featuredarticles/StaticAnalysis/FeaturedArticle.html

几种静态扫描工具的使用与对比

https://www.jianshu.com/p/b81a9f5bcf34

推荐阅读

星球简介

福利来啦-优惠券活动

Android和iOS静态代码扫描工具

Android安全测试工具大全

欢迎加入知识星球,优惠券名额有限、赶紧行动吧!

图片


http://chatgpt.dhexx.cn/article/SkgZKdva.shtml

相关文章

[C++]TscanCode代码扫描工具

TscanCode介绍 TscanCode 是腾讯研发的静态代码扫描工具,最早的版本是基于 cppcheck 二次开发。之后又重新自研,不仅支持 C,还支持 C#,Lua 语言,在发掘 C 空指针、越界、未初始化、C#空引用、Lua变量未初始化等比较有…

源代码扫描工具

1. DMSCA-企业级静态源代码扫描分析服务平台 系统架构 客户可以通过Internet或者局域网络 从浏览器、Eclipse、Visual Studio 、命令行 、甚至 Web 服务访问DMSCA 服务平台,上传扫描代码,选择扫描策略,自动化扫描, 并利用平台可视…

Fortify代码扫描工具

一、Fortify介绍 Fortify是一款强大的静态代码扫描分析工具,其发现代码漏洞缺陷的能力十分强悍,主要是将代码经过编译,依托于其强大的内置规则库来发现漏洞的。其次fortify SCA团队在开发此商业工具时,也提供了自定义规则的…

四款优秀的源代码扫描工具简介

转载于:https://www.cnblogs.com/xiaominggong/archive/2019/05/06/10821005.html 一、DMSCA-企业级静态源代码扫描分析服务平台 端玛企业级静态源代码扫描分析服务平台(英文简称:DMSCA)是一个独特的源代码安全漏洞、质量缺陷和逻…

SonarQube代码扫描工具

SonarQube(社区版) SonarQube是一个用于代码质量管理的开放平台,通过插件机制,SonarQube可以集成不同的测试工具,代码分析工具,以及持续集成工具,例如Hudson/Jenkins等。 sonarqube的七个维度检测代码质量: 复杂度分布:代码复杂度过高将难以理解重复代码:程序中包含…

java代码扫描工具比较_代码扫描工具的选型和Sonar最佳实践

目标 在编码阶段发现NNE空指针异常、IO流未正确关闭等致命性bug,杜绝此类“零容忍”线上异常的发生。 技术选型 关于代码扫描工具,比较主流的有Sonar、FindBugs、Alibaba Java Coding Guidelines、CheckStyle。 Alibaba Java Coding Guidelines最大的优点是全中文的提示,对国…

静态代码扫描工具汇总

一、概述 在软件开发过程中,开发团队往往要花费大量的时间和精力发现并修改代码缺陷。传统的代码评审、同事复审,通过人工方式来检查缺陷仍然是一件耗时耗力的事情。而静态代码扫描工具能够在代码构建过程中帮助开发人员快速、有效的定位代码缺陷并及时…

用户行为序列推荐模型

导读:今天我们谈谈用户行为序列上的推荐模型。首先我们对序列推荐问题做一个定义和描述,然后主要讲述可以用在序列推荐任务中的 NN 模型,最后给出一点个人看法以及文中相关的参考文献供参阅。 用户行为大多数情况下都是存在时间上的先后关系…

用户兴趣模型分类以及推荐系统技术调研

用户兴趣模型分类 根据用户之前在相关网站的行为数据记录分析出用户的兴趣和偏好,然后根据不同用户兴趣和偏好不同为其推荐不同的内容,这种新的信息获取方式被称为个性化推荐技术。 个性化新闻推荐系统中常用的几种用户兴趣建模方法: &…

用户生命周期模型

本文转载自: https://blog.csdn.net/l18930738887/article/details/50818878 一、为什么要定义用户生命周期? 用户生命周期是为了定位每个用户在哪个阶段,对于某个阶段的用户进行不同的营销策略。比如初期用户:还没有养成使用习…

Django重写User模型修改明文密码加密方法

由于继承Django的User列表会导致创建新用户的密码为明文,导致无法正常登陆,因此需要修改adminx中的部分配置实现原始的用户密码记录功能。 从这样的界面进入注册用户的密码就是加密的密码效果了,否则是显示明文密码非加密状态。 文章目录 实现步骤实现步骤 需要在项目的m…

【模型理解】KANO模型

前言 在大量的需求需要进行迭代时,由于时间、人力、财力等相关因素干扰,无法在有限的时间内容对所有的需求进行满足,此时需要我们对需求进行优先级的排列。最大化的合理的提高有限资源的使用。 在常见的产品优先级区分的方式有时间四象限模…

软件工程的十大模型

1.软件生命周期模型 软件生命周期由软件定义、软件开发与运维(也称软件维护)3个时期组成,每个时期又进一步划分成若干个阶段。 问题定义:“要解决的问题是什么?”通过对客户的访问调查,系统分析员扼要地写出…

SaaS用户管理系统模型设计

最近一直在研究关于SaaS化的用户管理系统,现将项目中的模型做一整理,先贴图: 图中黄色方框:租户/组织、部门、员工 完成的是对整个组织结构及结构中人员分布的管理; 图中绿色方框:系统用户(包括…

认识每一个“你”:微博中的用户模型

社交媒体(Social Media)相对于传统互联网媒体的最大区别是通过建立人与人之间的联系,极大提升了信息生产量以及传播效率。身处社交媒体中的每个人或组织同时扮演着信息生产者、传播者与接受者的角色。 在社交媒体背景下,用户生产…

Django默认用户模型类和父类 AbstractUser 介绍

Django默认用户模型类 Django 框架默认使用一个 User 模型类, 保存有关用户的数据。 例如: 我们定义 admin 站点时, 定义的超级用户信息, 就是存储在 User 模型类对应的表中。 我们可以通过 select * from auth_user; 查看数据表。 这个表里就是我们保存的管理员信息,是由用户…

RFM用户分层模型|原理+Python全流程实现

RFM 模型 在数据分析中经常会进行用户分层,本文我们来了解一下常见的用户分层模型RFM。 RFM概念 RFM是由R(Recency)、F (Frequency)、 M(Monetary) 三个维度构成的,其具体含义如下: R:最近一次消费时间间隔 F:消费频…

用户增长——AARRR模型

AARRR模型是做用户分析的经典模型之一。它以完整的用户生命周期为线索,描述了用户使用产品需经历的五个环节,最终获取商业价值。什么是AARRR模型? AARRR是由五个单词的首字母组成,分别代表【获取、激活、留存、收入、传播】五个阶…

如何定义用户模型(persona)

一、什么是用户模型? Persona([pə:səunə]):(Persona是用户模型的的简称)是虚构出的一个用户用来代表一个用户群。一个persona可以比任何一个真实的个体都更有代表性。一个代表典型用户的persona的资料有性别、年纪、收入、地域…

用户漏斗模型

原创不易,麻烦点个关注,点个赞,谢谢各位。 漏斗模型是什么? 漏斗模型是一个看似简单的评判产品健康度的数据工具,简单来说,就是通过产品每一个设计步骤的数据反馈得出产品的运行情况,然后通过各阶段的具体分析改善产品的设计,提升产品的用户体验。 漏斗模型符合自然规…