camera.takePicture

Nimmt ein Rektangularbild auf, wobei Breiten- und Längengrade gespeichert werden in EXIF (falls Ihre Kamera über ein eigenes GPS verfügt oder GPS bei einer Smartphones). camera.setOptions anrufen vor diesem Befehlsaufruf an. Dieser Befehl wurde in API-Ebene 2 geändert.

Parameter

  • sessionId: Eindeutige Sitzungs-ID, die vom camera.startSession . Dieses Feld wurde in API-Level 2 eingestellt.

Ergebnisse

  • API Level 1 <ph type="x-smartling-placeholder">
      </ph>
    • fileUri::URI des aufgenommenen Bilds. Hersteller Entscheiden Sie, ob absolute oder relative URIs verwendet werden sollen. zum Beispiel &quot;http://android.com/robots.txt&quot; ist ein absoluter URI und „robots.txt“ ist ein relativer URI. Kunden können als intransparente Kennung.
  • API Level 2 <ph type="x-smartling-placeholder">
      </ph>
    • fileUrl::Absolute URL des aufgenommenen Bilds. Sie kann laden Sie sie direkt vom HTTP-Server der Kamera herunter. Bitte Beachten Sie, dass dieser Befehl nicht sofort fileUrl zurückgibt, da der (einschließlich Stitching mit der Kamera) dauert in der Regel eine Weile (variiert Sekunden bis Minuten). Der Fortschritt des Befehls wird wie folgt abgerufen: Abfragen der Kamera regelmäßig mit der API /osc/commands/status und fileUrl ist das Ergebnis, das zurückgegeben wird, wenn der Befehl ausgeführt wurde. Wann? delayProcessing ist „true“, also die absolute URL der Vorschau. image, das als Eingabe in processPicture verwendet werden kann, um das Bild zu verarbeiten, Andernfalls ist es die absolute URL des endgültigen verarbeiteten Bilds.

Fehler

  • missingParameter: sessionId fehlt. Dieser Fehlercode wurde in API-Level 2 eingestellt.
  • invalidParameterName:Der Parametername wird nicht erkannt, z.B. sessionId wird in API-Ebene 2 nicht erkannt.
  • invalidParameterValue::Der Name des Eingabeparameters wird erkannt, aber sein Wert ist ungültig. z. B.: sessionId existiert nicht, ist nicht mehr aktiv oder der Datentyp ist falsch. Dieser Fehlercode wurde in API-Level 2 eingestellt.
  • disableCommand: Der Befehl ist derzeit deaktiviert. zum Beispiel die Kamera im Videoaufnahmemodus ist. Dieser Fehlercode wurde in API-Level 2 hinzugefügt.

Befehls-E/A

Befehlseingabe (API-Ebene 1)
{
    "parameters": {
        "sessionId": "12ABC3"
    }
}
Befehlsausgabe (API-Ebene 1)
{
    "results": {
        "fileUri": "file URI"
    }
}
Befehlsausgabe (Fehler) (API-Ebene 1)
{
    "error": {
        "code": "invalidParameterValue",
        "message": "Parameter sessionId doesn't exist."
    }
}
Befehlseingabe (API-Ebene 2)
none
Befehlsausgabe (API-Ebene 2)
{
    "results": {
        "fileUrl": "Absolute file URL"
    }
}
Befehlsausgabe (Fehler) (API-Level 2)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}