android调用系统拍照
2015-06-16 11:31
246 查看
1.
需要权限:
<uses-permission android:name="android.permission.CAMERA" />
有些机型可能还需要下面的权限(我测试的时候没有加小米平板16G拍照返回data为null): <uses-feature android:name="android.hardware.camera" /><uses-feature android:name="android.hardware.camera.autofocus" />
2.拍照回来后奔溃 最近写程序时用到了系统拍照获取照片,在三星的手机上使用时,发现调用相机拍完照片返回时,触发它的activity的生命周期调用了onDestroy()-->onCreate();重新走了onCreate()方法;导致系统崩溃。方法一:刚开始调用了onSaveInstanceState(Bundle savedInstanceState)和onRestoreInstanceState(Bundle savedInstanceState)这个方法来实现,虽然方法比较笨,但是可以通过在onSaveInstanceState中保存一些你需要的变量,在onCreate()方法中判断savedInstanceState是否为null,不为null则调用onRestoreInstanceState()方法取出之前存的变量来使用,这相当于重新加载了一边当前activity。方法二:上面的方法可行,但并不是解决问题的根本办法,后来通过查看发现在调用相机时,activity从竖屏切换到了横屏,在横竖屏切换导致了activity重新装载,找到根本原因后,在activity中通过android:configChanges="orientation|keyboardHidden" 这个属性,可以约束调用相机时,保持当前activity竖屏状态不变,从而解决了activity重新加载的问题。
相关文章推荐
- Android、iPhone和Java三个平台一致的加密工具
- Android 自定义控件
- 关于Android studio打包发布,以及Android签名的获取
- Android自定义控件(状态提示图表) (转)
- 查看Android内存的8中方法
- Android ListView滑动过程中图片显示重复错乱闪烁问题解决
- 八款开源Android游戏引擎
- Android首选项
- Android让文本自动滚动实现
- Android开发中的ANR问题如何避免?
- Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法
- android 比较靠谱的图片压缩
- android ContentObserver监听系统短信和备份短信到本地
- 一些有用的学习链接(AndroidStudio)
- Android PowerImageView实现,可以播放动画的强大ImageView
- android Handler 的使用
- android 技术总结 图片优化 sqlite使用 Fragment使用
- 一个帖子掌握android所有控件、ProgressBar 、Android 动画效果、SQLite、四大组件、Android多媒体
- Android-Universal-Image-Loader 图片异步加载类库的使用(超详细配置)
- Android Android环境安装