Android开发的一些小坑
为什么说是小坑呢...当你要适配各种品牌,各种型号的手机的时候...你会发现这些真的是小坑而已...
第一次写东西,可能存在很多不足,请不吝指出...
1.Activity间传递的数据大于512k请不要用Intent传递,因为大于512k会出现数据报错,闪退,大于1024k会报TransactionTooLargeException.
2.fragment.startActivityForResult(),则回调在fragment,如果要回调在Activity,请用getActivity.startActivityForResult();如果在Activity要使得回调在fragment同理...
3.用EventBus接受不到事件?1.请看下注册了没... 2.可能是你发送事件的时候,接收事件的Activity尚未注册,导致无法接收,请用发送粘性事件,即用postSticky()发送事件,并且在接收事件的方法上添加,sticky=true,如:@Subscribe(threadMode = ThreadMode.MAIN, sticky = true)
4.7.0中调用相机crash? Android7.0私有文件权限提升,调用相机,apk自动安装的时候,请注意使用fileProvider共享目录,不然导致crash产生.
5.改包名的时候记得将build.gradle中的applicationId顺便改一下,一些第三方的读取的包名是这个,不是清单文件的包名...不要问我为什么知道...
6.不要在Activity或Fragment没有完全显示时弹出PopupWindow,如果需要,使用其中的view.post(runnable)方法来执行弹出的代码
7.PhotoView+ViewPager组合使用时会发生java.lang.IllegalArgumentException: pointerIndex out of range异常, 解决办法:在Viewpager中onInterceptTouchEvent捕获IllegalArgumentException,ArrayIndexOutOfBoundsException异常即可,不懂的...找度娘.