1、java.lang.IllegalArgumentException: Invalid notification (no valid small icon): Notification(channel=null pri=0 contentView=null
headsUpContentView=null bigContentView=null vibrate=null sound=null defaults=0x0 flags=0x10 color=0x00000000 vis=PRIVATE) 机型:"Flyme 7.1.3.1A"
解决方案:
用系统样式自带的是必须设置三个属性,不然会报错
setContentText()
setContentTitle()
setSmallIcon()
2、Android http java.net.SocketException: sendto failed: EPIPE 上传图片的时候出现这个问题
解决方案:
网上有说流没关闭,但是我没有解决问题;后来发现在一个测试机可以上产成功,比较了下机型,想着会不会是照相机图片的大小问题,和后台讨论下,后台增加图片的大小限制,就解决了这个问题。
3、Android客户端HTTP请求异常sendto failed: ECONNRESET (Connection reset by peer)
异常产生原因是:
客户端上传图片的http请求使用了长连接,但web端的长连接响应数量有限制,所以产生的现象是系统运行一段时间后,长连接的http请求报异常。
解决方案:
方案一:可以把客户端请求改成短连接,修改http header:Connection=close (http1.1协议默认是Connection=Keep-Alive,也就是长连接)
方案二:客户端不用动,还是长连接。服务端修改配置,增加长连接限额。
redirectPort="8443" />
KeepAlive On
MaxKeepAliveRequests 5000
KeepAliveTimeout 60000
具体问题需要具体分析,方案二基于的是客户端数量是在一定范围内,如果情况不同,则需要重新审视
4、Android studio gradle plugin 版本过低
添加这些后,gradle 插件是高版本了,但是又出现 Error:This Gradle plugin requires a newer IDE able to request IDE model level 3. For Android Studio this means version 3.0+ 问题, 通过提示我们知道必须把Android Studio 升级到3.0以上。
5、Caused by: java.lang.IllegalStateException: Cannot call this method while RecyclerView is computing a layout or scrolling android.support.v7.widget.RecyclerView{d6870e7 VFE.
刚开始自己以为是滑动或者布局加载问题,在stackoverflow 发现了一种解决方法:
https://stackoverflow.com/questions/27070220/android-recyclerview-notifydatasetchanged-illegalstateexception
其实这种思路也对,让所有的布局都加载完成,才可以刷新数据,但是我按照这种思路去解决发现还是有这个问题。后来想起来今天用了新接口才出现这个问题,对比发现今天有些数据传空,而我的adapter 中onBindViewHolder()方法中装配数据时没有处理非空情况,按照这种思路解决了。。。
6、v4 v7 androidx
目前v7只维护到28.0.0,以后建议使用Androidx
7、
Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to
这样修改后,又报了
Program type already present: androidx.versionedparcelable.CustomVersionedParcelable 错误
Refactor——Migrate to Androidx
搞定
8、未完待续。。。