安卓开发日常小坑记录

1、图片压缩
这几天项目要上线,突然发现图片压缩部分出了一个bug,原因是有一张iOS上截屏的图传到安卓之后压缩失败了,后来发现这张图是RGBA_F16的,安卓这边读不到大小,转成RGB565之后一切正常。
2、app 图标替换失败
新项目图标一直是安卓默认图标,明明已经设置了新的图标,但就是不显示,百撕不得骑姐,无奈用最蠢的方式删除了电脑里所有的ic_launcher,结果还是不行,后来在其中的一个三方库中发现了一个跟默认图标相同颜色的背景图,然后想起安卓8.0的图标适配,将该库中的图标相关资源文件全部删除之后终于成功了(如果三方库编译报错需要某些icon资源,就把自己的改个名字给它)。这个三方库在另一个项目中并没有出现影响应用图标替换的问题,因为那个项目用的jar包,内部并没有这个logo资源,而出问题的项目中引用的是aar文件。出坑
3、https内部不能访问http路径文件
一篇html文章中嵌入了一段视频文件,但是死活播放不了,客户端说是html的问题,html说是客户端的问题,最后发现是文件的问题
4、Toast字号异常
在项目中的一个横屏页面发现Toast字号异常傻大,刚开始还以为是singlTask引起的,后来发现是因为landscape导致的,最后手动设置Toast字号,问题解决

var toast = Toast.makeText(APPContext, message, Toast.LENGTH_SHORT)
var linearLayout = toast.getView() as LinearLayout
var messageTextView = linearLayout.getChildAt(0) as TextView
messageTextView.textSize = textSize
toast.show()

5、小米沉浸式状态栏
项目开发中,产品要求启动页要全屏显示,并隐藏顶部状态栏,采用通用的设置FULL_SCREEN方式设置,测试发现,大部分机型正常,但是在小米8(刘海屏)上发现,状态栏被隐藏后,布局页面并未向上延伸,导致顶部出现空白条。
尝试多种方式,全部失败,只要是隐藏状态栏,页面就无法向上延伸。解决方案(Android P 刘海屏沉浸式状态栏适配)
6、RecycleView外部嵌套ScrollView
除了调用setHasFixedSize(true);和setNestedScrollingEnabled(false);之外,如果ScrollView内部还有其他控件,需要在RecycleView外部单独为其包裹一层RelativeLayout,记住,只能是RelativeLayout,如果是LinearLayout或者FrameLayout则无效。
7、关于.9图的padding
在控件使用。9图作为背景的时候,控件自身的padding如果在不设置的情况下会受。9图自身的padding影响,导致内边距异常,如果需要其padding为0,则需要设置例如paddingBottom=“0dp”。

猜你喜欢

转载自blog.csdn.net/QQsongQQ/article/details/84997840