手机笔直时拍照

时间:2015-07-07 18:38:21

标签: android android-sensors sensormanager

我只是想问一个问题,因为我搜索了Google,但似乎找不到任何有用的内容,请阅读thisthis

问题是,只有当手机直接使用Android设备中的传感器时才能从相机拍照吗?

只是在寻找有关如何做的建议?

2 个答案:

答案 0 :(得分:0)

在您的活动中,您正在捕获图像使用

int i = getResources()。getConfiguration()。orientation;

通过这个,你将得到移动的当前方向,如果它是肖像,那么只捕获图像。

答案 1 :(得分:0)

您应该能够使用方向传感器和SensorEvents。

  

方向传感器可让您监控设备相对于地球参照系(特别是磁北)的位置。

     

方位传感器通过使用设备的地磁>场传感器结合设备的加速度计来获取其数据。使用这两个>硬件传感器,方向传感器提供以下>三维的数据:

     
    

方位角(围绕z轴的旋转度)。这是磁北和设备的y轴之间的角度。例如,如果设备的y轴与磁北对齐,则此值为0;如果设备的y轴指向南,则此值为180.同样,当y轴指向东时,此值为90,当它指向时west这个值是270。

         

间距(围绕x轴的旋转度)。当正z轴朝向正y轴旋转时该值为正,而当正z轴朝负y轴旋转时该值为负。值的范围是180度到-180度。

         

滚动(围绕y轴的旋转角度)。当正z轴向正x轴旋转时,该值为正,当正z轴向负x轴旋转时,该值为负。值的范围是90度到-90度。

  

使用这些值,你应该可以知道手机在任何位置何时“笔直”。页面上的“使用方向传感器”标题下有一些示例:http://developer.android.com/guide/topics/sensors/sensors_position.html#sensors-pos-orient

另请参阅显示如何使用传感器事件的http://developer.android.com/reference/android/hardware/SensorEvent.html