كاميرا.TakePicture

التقاط صورة في الإسقاط المتساوي المستطيلات، مع حفظ إحداثيات خطوط الطول/العرض إلى EXIF (إذا كانت الكاميرا تحتوي على نظام تحديد المواقع العالمي (GPS) أو نظام تحديد المواقع العالمي (GPS) مُفعَّلاً على الأجهزة المتصلة الهواتف المحمولة). الاتصال بـ "camera.setOptions" قبل استدعاء الأمر هذا إذا لزم الأمر. تم تعديل هذا الأمر في المستوى 2 من واجهة برمجة التطبيقات.

المعلمات

  • sessionId: معرّف فريد للجلسة تم الحصول عليه من camera.startSession الأمر. تم إيقاف هذا الحقل في المستوى 2 من واجهة برمجة التطبيقات.

النتائج

  • المستوى 1 من واجهة برمجة التطبيقات
    • fileUri: معرّف الموارد المنتظم (URI) للصورة التي تم التقاطها. الشركات المصنّعة تحديد ما إذا كنت تريد استخدام معرفات الموارد المنتظمة (URI) المطلقة أو النسبية؛ على سبيل المثال، "http://android.com/robots.txt" هو عنوان URI مطلق بينما "robots.txt" هو معرف موارد منتظم (URI) نسبي. قد يعالج العملاء كمعرف مبهم.
  • مستوى واجهة برمجة التطبيقات 2
    • fileUrl: عنوان URL كامل للصورة الملتقطة، والذي يمكنه استخدامها للتنزيل مباشرة من خادم HTTP للكاميرا. من فضلك أنّ هذا الأمر لا يعرض fileUrl مباشرةً يستغرق الالتقاط (بما في ذلك تركيب الكاميرا) عادةً بعض الوقت (يختلف عن ثانية إلى دقائق) لتكتمل. يتم الحصول على مستوى تقدم الأمر من خلال فحص الكاميرا بشكل دوري باستخدام واجهة برمجة التطبيقات /osc/commands/status fileUrl هي النتيجة التي يتم عرضها عند انتهاء الأمر. فعندما delayProcessing صحيح، إنه عنوان URL المطلق للمعاينة الصورة التي يمكن استخدامها كإدخال في processPicture لمعالجة الصورة في الحالات الأخرى، يصبح عنوان URL المطلق للصورة النهائية التي تمت معالجتها.

الأخطاء

  • مَعلمة غير متوفّرة:السمة sessionId غير متوفّرة. تم إيقاف رمز الخطأ هذا في المستوى 2 من واجهة برمجة التطبيقات.
  • spamparamName: لم يتم التعرُّف على اسم المعلّمة، مثل: لم يتم التعرّف على sessionId في المستوى 2 من واجهة برمجة التطبيقات.
  • invalidParameterValue: يتم التعرّف على اسم معلَمة الإدخال، ولكن قيمتها غير صالحة؛ على سبيل المثال، sessionId غير موجودة، لم يعد نشطًا، أو أن نوع بياناته غير صحيح. تم إيقاف رمز الخطأ هذا في المستوى 2 من واجهة برمجة التطبيقات.
  • disableCommand: يكون الأمر غير مفعَّل حاليًا. على سبيل المثال، تكون الكاميرا في وضع تصوير الفيديو. تمت إضافة رمز الخطأ هذا في المستوى 2 من واجهة برمجة التطبيقات.

مفتاح Command I/O

إدخال الأوامر (مستوى واجهة برمجة التطبيقات 1)
{
    "parameters": {
        "sessionId": "12ABC3"
    }
}
مخرجات الأوامر (مستوى واجهة برمجة التطبيقات 1)
{
    "results": {
        "fileUri": "file URI"
    }
}
مخرجات الأمر (خطأ) (مستوى واجهة برمجة التطبيقات 1)
{
    "error": {
        "code": "invalidParameterValue",
        "message": "Parameter sessionId doesn't exist."
    }
}
إدخال الأوامر (مستوى واجهة برمجة التطبيقات 2)
none
مخرجات الأوامر (مستوى واجهة برمجة التطبيقات 2)
{
    "results": {
        "fileUrl": "Absolute file URL"
    }
}
مخرجات الأمر (خطأ) (مستوى واجهة برمجة التطبيقات 2)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}