camera.takePicture

拍摄一张等距柱状图,将纬度/经度坐标保存到 EXIF(如果您的相机具有自带 GPS 或在连接的手机上启用了 GPS)。如果需要,请在调用此命令之前调用 camera.setOptions此命令在 API 级别 2 中进行了修改。

参数

  • sessionId::从 camera.startSession 命令获取的唯一会话标识符。此字段在 API 级别 2 中已废弃。

成果

  • API 级别 1
    • fileUri:捕获的图片的 URI。制造商决定使用绝对 URI 还是相对 URI;例如,“http://android.com/robots.txt”是绝对 URI,而“robots.txt”是相对 URI。客户端可能会将此视为不透明标识符。
  • API 级别 2
    • fileUrl:所拍摄图片的绝对网址,可用于直接从相机的 HTTP 服务器下载。请注意,此命令不会立即返回 fileUrl,因为拍摄(包括相机内的拼接)通常需要一段时间(从数秒到数分钟)才能完成。要获取该命令的进度,可以使用 /osc/commands/status API 定期轮询相机,fileUrl 是命令完成时返回的结果。当 delayProcessing 为 true 时,它是预览图片的绝对网址,可用作 processPicture 中的输入来处理图片,否则,它是最终处理后图片的绝对网址。

错误数

  • missingParameter:缺少 sessionId此错误代码已在 API 级别 2 中弃用。
  • invalidParameterName:无法识别参数名称,例如 API 级别 2 中无法识别 sessionId
  • invalidParameterValue:系统可识别输入参数名称,但其值无效;例如,sessionId 不存在、不再处于活动状态,或其数据类型不正确。此错误代码已在 API 级别 2 中弃用。
  • disabledCommand:命令当前处于停用状态;例如,相机处于视频拍摄模式。此错误代码已添加到 API 级别 2 中。

命令 I/O

命令输入(API 级别 1)
{
    "parameters": {
        "sessionId": "12ABC3"
    }
}
命令输出(API 级别 1)
{
    "results": {
        "fileUri": "file URI"
    }
}
命令输出(错误)(API 级别 1)
{
    "error": {
        "code": "invalidParameterValue",
        "message": "Parameter sessionId doesn't exist."
    }
}
命令输入(API 级别 2)
none
命令输出(API 级别 2)
{
    "results": {
        "fileUrl": "Absolute file URL"
    }
}
命令输出(错误)(API 级别 2)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}