zoukankan      html  css  js  c++  java
  • 【转】Android Lint分类及常见错误

    常见类型:
    一, Correctness:Messeges
    (1)字符串国际化不完全
    (2)国际化的字符串,在默认位置(default locale),没有定义 
     
     二,Correctness
    (1)Xml中view的id重名
    (2)代码中使用的某些API高于Manifest中的Min SDK
    (3)字符串国际化中,同一名字的的String-Array对应的item值不相同 (4)Activity没有注册到Manifest
    (5)使用已经废弃的api
    (6)避免使用px,使用dp
    (7)添加不需要的权限
     
    三,Performance
    (1) 避免在绘制或者解析布局(draw/layout)时,分配对象。eg,Ondraw()中实例化Paint().
    (2)Layout中无用的参数。
    (3)可优化的布局:如一个线性布局(一个Imageview和一个TextView),可被TextView和一个Compound Drawable代替。
    (4)可优化的代码:如SparseArray可代替一个Interger2Object的Hashmap
    (5)优化layout,比如如果子view都是wrap_content,则设置android:baselineAligned为false,则 When set to false, prevents the layout from aligning its children's baselines.
    (6)使用FloatMath代替Math,执行sin()和ceil(),以避免float的两次转换。
    (7)Nested weight (内外均有weight)将拖累执行效果
    (8)未被使用的资源
    (9)Overdraw 即指定theme的activity会自己绘制背景,但是布局中会再一次设置背景
    (10)View或view的父亲没有用
     
    四,Security
    (1)设置setJavascriptEnable将导致脚本攻击漏洞(XSS vulnerabilities)
     
    五,Usability:Icons
    (1) 图片尺寸在转换成不同dpi时,存在不能整除的问题,比如2*24px
    (2)显示有些base 和browser的资源名不同,但图片内容完全相同。
     
    六,Usability
    (1)自定义view缺少默认的构造方法
     
    七,Usability:Typography
    (1)特殊字符需用编码代替,如“_”需要用“–”
     
    八,Accessibility
    (1)ImageView缺少src内容

  • 相关阅读:
    gethostbyname() 用域名或主机名获取IP地址
    recv, recvfrom, recvmsg 从套接口接收一个消息
    献给初学者:谈谈如何学习Linux操作系统
    Linux 文件处理 之扫描目录 DIR
    Python 使用sys模块
    struct dirent和DIR结构体
    职场人必读的文字只花10分钟影响你一辈子!
    信号量与线程互斥锁的区别
    send/sendto/sendmsg函数解析
    互联网常见Open API文档资源
  • 原文地址:https://www.cnblogs.com/meizixiong/p/2955146.html
Copyright © 2011-2022 走看看