BAT 常问面试20题

极力推荐文章:欢迎收藏
Android 干货分享 

 

1.要做一个尽可能流畅的ListView,你平时在工作中如何进行优化的?

  1.Item布局,层级越少越好,使用hierarchyview工具查看优化。
  2.复用convertView
  3.使用ViewHolder
  4.item中有图片时,异步加载
  5.快速滑动时,不加载图片
  6.item中有图片时,应对图片进行适当压缩
  7.实现数据的分页加载

2.对于Android 的安全问题,你知道多少

  1.错误导出组件
  2.参数校验不严
  3.WebView引入各种安全问题,webview中的js注入
  4.不混淆.不防二次打包
  5.明文存储关键信息
  6.错误使用HTTPS
  7.山寨加密方法
  8.滥用权限.内存泄露.使用debug签名

3.如何缩减APK包大小?

1.代码

  保持良好的编程习惯,不要重复或者不用的代码,谨慎添加libs,移除使用不到的libs
使用proguard混淆代码,它会对不用的代码做优化,并且混淆后也能够减少安装包的大小。

  Native code的部分,大多数情况下只需要支持armabix86的架构即可。如果非必须,可以考虑拿掉x86的部分。

2.资源

  使用Lint工具查找没有使用到的资源。去除不使用的图片,StringXML等等。 assets目录下的资源请确保没有用不上的文件。

  生成APK的时候,aapt工具本身会对png做优化,但是在此之前还可以使用其他工具如tinypng对图片进行进一步的压缩预处理。

  jpeg还是png,根据需要做选择,在某些时候jpeg可以减少图片的体积。 对于9.png的图片,可拉伸区域尽量切小,另外可以通过使用9.png拉伸达到大图效果的时候尽量不要使用整张大图。

3.策略

  有选择性的提供hdpixhdpixxhdpi的图片资源。建议优先提供xhdpi的图片,对于mdpildpixxxhdpi根据需要提供有差异的部分即可。

  尽可能的重用已有的图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Android

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值