http://www.eoeandroid.com/thread-80028-1-1.html

TAG_DATETIME时间日期
  TAG_FLASH闪光灯
  TAG_GPS_LATITUDE纬度
  TAG_GPS_LATITUDE_REF纬度参考
  TAG_GPS_LONGITUDE经度
  TAG_GPS_LONGITUDE_REF经度参考
  TAG_IMAGE_LENGTH图片长
  TAG_IMAGE_WIDTH图片宽
  TAG_MAKE设备制造商
  TAG_MODEL设备型号
  TAG_ORIENTATION方向
  TAG_WHITE_BALANCE白平衡
  从Android2.0.1SDK上看属性不是很多,详细的可能会在以后的版本中添加,调用示例如下
  StringsFileName="cwj-eoeandroid.jpg";
  ExifInterfaceexif=newExifInterface(filename);
  StringsModel=exif.getAttribute(ExifInterface.TAG_MODEL);

原文链接http://android.tgbus.com/Android/tutorial/201104/349965.shtml

android自带的照相机应用上就有。
com.android.camera包下的Camera类中有一个内部类 private class MyOrientationEventListener extends OrientationEventListener并实现了方法public void onOrientationChanged(int orientation)。方法传进的参数orientation以平常竖直放置为0(也就是360度),顺时针旋转orientation增加至359。同时Camera类有一个成员变量mOrientation用来记录屏幕当前的位置,它的值根据orientation并由算法 ((orientation + 45) / 90 * 90) % 360算出。实际上当手机竖直放置左偏44度和右偏44度,mOrientation为0,右偏45时,mOrientation为90(即手机顺时针旋转45度以后,就认为手机从竖屏变成横屏,并且手机真实的顶部由向上变成向右)。这里记住mOrientation就是用来保存屏幕当前横屏竖屏的标志。拍照是在Camera的内部类private class ImageCapture中private void capture()方法由mOrientation的值根据是前置摄像头(算法:rotation = (info.orientation - mOrientation + 360) % 360;),还是后置摄像头(算法:rotation = (info.orientation + mOrientation) % 360;)得出值rotation的值,这个值就是要传到设备的内部类Parameters对象(中间层Camera类的内部类,用来设置白平衡,图片大小等参数的类)用来设置拍摄照片应该旋转的角度,调用方法 mParameters.setRotation(rotation);设置拍摄照片应该旋转的角度。

如何确定拍照时,相机屏幕是横屏or竖屏?的更多相关文章

  1. Android 判断当前屏幕是横屏还是竖屏

       记录学习 /**  * 返回当前屏幕是否为竖屏.  * @param context  * @return 当且仅当当前屏幕为竖屏时返回true,否则返回false.  */  public s ...

  2. js判断手机浏览器是横屏or竖屏

    移动端的浏览器一般都支持window.orientation这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态. 从而根据实际需求而执行相应的程序.通过添加监听事件onorientationc ...

  3. Android——横屏和竖屏的切换,以及明文密码的显示

    查看API文档: android.content.pm.ActivityInfo    在手机的使用中,我们要根据不同的需求来改变屏幕的显示方向,一般在浏览信息时是竖屏,在玩游戏的时候就要切换到横屏. ...

  4. JQuery 判断IPad、IPhone、Android是横屏还是竖屏(Window.Orientation实现)

    在ipad.iphone网页开发中,我们很可能需要判断是横屏或者竖屏.下面就来介绍如何用 jQuery 判断iPad.iPhone.Android是横屏还是竖屏的方法. 代码如下: function ...

  5. android 强制设置横屏 判断是横屏还是竖屏

    判断activity 是横屏还是竖屏  方法 1: //根据设备配置信息 Configuration cf= this.getResources().getConfiguration(); //获取设 ...

  6. activity的横屏和竖屏设置

    主要在清单文件这样配置: <application android:allowBackup="true" android:icon="@drawable/ic_la ...

  7. 基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码

    在ipad.iphone网页开发中,我们很可能需要判断是横屏或者竖屏.下面就来介绍如何用 jQuery 判断iPad.iPhone.Android是横屏还是竖屏的方法 其实主要是通过window.or ...

  8. 使用JavaScript判断手机是处于横屏还是竖屏

    移动端的浏览器一般都支持window.orientation这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态.从而根据实际需求而执行相应的程序.通过添加监听事件onorientationch ...

  9. Android 横屏切换竖屏Activity的生命周期(转)

    曾经遇到过一个面试题,让你写出横屏切换竖屏Activity的生命周期.现在给大家分析一下他切换时具体的生命周期是怎么样的:  1.新建一个Activity,并把各个生命周期打印出来  2.运行Acti ...

随机推荐

  1. zsh与oh-my-zsh

    在开始今天的 MacTalk 之前,先问两个问题吧: 1.相对于其他系统,Mac 的主要优势是什么?2.你们平时用哪种 Shell?…… 第一个童靴可以坐下了,Mac 的最大优势是 GUI 和命令行的 ...

  2. (转)Go和HTTPS

    转自:http://studygolang.com/articles/2946 Go和HTTPS  2015-04-30   bigwhite  阅读 5688 次   4 人喜欢  3 条评论  收 ...

  3. vue2 如何操作dom

    在vue中可以通过给标签加ref属性,就可以在js中利用ref去引用它,从而操作该dom元素,以下是个例子,可以当做参考 <template> <div> <div id ...

  4. Docker 入门(Mac环境)- part 2 容器(container)

    part-2 容器(container) 简介 Docker架构有三个层面,从高到低如下: stack(栈) services(服务) containers(容器) 现在接触的这些在容器这一层里,类似 ...

  5. 远程mysql导入本地文件

    远程mysql导入本地文件 登陆数据库 mysql --local-infile -h<IP> -u<USR> -p 选择数据库 USE xxx 导入文件 LOAD DATA ...

  6. FIDDLER的使用方法及技巧总结(连载二)FIDDLER用户界面

    FIDDLER的使用方法及技巧总结 (接上篇内容~~) 二.FIDDLER用户界面 FIDDLER用户的几面主要包括下面几个部分,如图所示:首先FIDDLER窗口的最左边是web session列表, ...

  7. js设置cookie(原生js)

    cookie 与 session 是网页开发中常用的信息存储方式.Cookie是在客户端开辟的一块可存储用户信息的地方:Session是在服务器内存中开辟的一块存储用户信息的地方. JavaScrip ...

  8. 1. 决策树(Decision Tree)-决策树原理

    1. 决策树(Decision Tree)-决策树原理 2. 决策树(Decision Tree)-ID3.C4.5.CART比较 1. 前言 决策树是一种基本的分类和回归方法.决策树呈树形结构,在分 ...

  9. JS 对应CSS 样式

    首先,把CSS和JS标签style属性对照表了解了: CSS 和 JavaScript 标签 style 属性对照表: 盒子标签和属性对照 颜色和背景标签和属性对照 样式标签和属性对照 文字样式标签和 ...

  10. 基于jQuery个性圆圈倒计时特效

    基于jQuery个性圆圈倒计时特效里面包含十几款不用效果的jQuery倒计时特效下载.效果图如下: 在线预览   源码下载 实现的代码. html代码: <section class=" ...