2016-07-20-关于三星手机拍照返回的时候,activity被销毁创建的问题

问题描述:
三星手机拍照成功,之后返回后activity数据丢失,被销毁了。既activity调用ondestory()-onCreate()
但是其他的手机却没有这样的问题

解决方法:
1, 刚开始以为是内存不足造成的问题,所以解决办法是:onSaveInstanceState()保存图片地址,oncreate()的时候重新获取

2,由于拍照之后需要裁剪,所以这个地址再次无法获取,所以使用了onactivityforresult方法返回的intent.getdata获取到裁剪的图片地址,然后上传

3,以上俩步只能解决activity上出现的问题,当activity上有fragment的时候就会出现每次上传完成头像后,页面都会需要重新构建,感觉就像是程序crash了一样

4,最终的解决办法是禁止activity在拍照的时候被销毁。只需要在AndroidMainifest.xml下<activity >标签下配置android:configChanges="orientation|keyboardHidden" 。重写activity的onConfigurationChanged方法,方法只需要super.onConfigurationChanged就可以了
5, 4所述的方式在API Level 13前是可以的,在API Level 13后需要新添加一个属性screenSize
既android:configChanges="orientation|keyboardHidden|screenSize"这样就可以了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android开发中,大多APP可能根据实际情况直接将APP的界面方向设死了,或竖屏或横屏。但是,我们还是会遇到横...
    yoosir阅读 50,418评论 7 112
  • Android横竖屏切换小结Android横竖屏切换小结(老样子,图片啥的详细文档,可以下载后观看 http://...
    4528283108ee阅读 2,668评论 0 1
  • 以下是复制别人的文章过来的,目的是保留下这个方法,便于今后查阅使用,该文章不会用于任何商业用途,该文章的出处:ht...
    若兰幽竹阅读 8,534评论 0 3
  • Activity的生命周期,这是每个Android开发者必须了解的知识。Activity是四大组件之一,而且是使用...
    AxeChen阅读 3,944评论 2 20
  • 自卑,将自己“深藏”于子袭布帘子之后,试图把可能的嘲笑和攻击挡在外面;殊不知,他的快乐也被这袭帘子所阻隔。直到帘子...
    性淡如菊阅读 349评论 0 6