شروع سریع جغرافیایی برای iOS

این شروع سریع برای ARCore Geospatial API به شما نشان می دهد که چگونه یک برنامه نمونه را در Xcode اجرا کنید که API Geospatial را نشان می دهد.

برای راهنمایی برای توسعه برنامه خود با Geospatial API، به راهنمای توسعه‌دهنده Geospatial برای iOS مراجعه کنید.

برای اطلاعات بیشتر در مورد Geospatial API به مقدمه ARCore Geospatial API مراجعه کنید.

اگر برای توسعه با ARCore تازه کار هستید، به شروع به کار مراجعه کنید.

پیش نیازها

  • Xcode نسخه 13.0 یا بالاتر
  • Cocoapods 1.4.0 یا بالاتر در صورت استفاده از Cocoapod
  • یک دستگاه اپل سازگار با ARKit دارای iOS 12.0 یا بالاتر (هدف استقرار iOS 12.0 یا جدیدتر مورد نیاز است)

برنامه نمونه را راه اندازی کنید

پروژه GeospatialExample همراه با ARCore SDK برای iOS کدی را توصیف می‌کند که Geospatial API را فراخوانی می‌کند.

  1. برای دریافت نمونه کد برنامه ، ARCore SDK برای iOS را از GitHub کلون یا دانلود کنید.

  2. یک پنجره ترمینال یا Finder را باز کنید و به پوشه ای بروید که در آن SDK را شبیه سازی یا دانلود کرده اید.

  3. به پوشه arcore-ios-sdk-master/Examples بروید.

  4. پوشه Examples را باز کنید، پوشه GeospatialExample را انتخاب کنید و روی Open کلیک کنید.

یک پروژه Google Cloud راه اندازی کنید

برای استفاده از سیستم موقعیت‌یابی بصری (VPS)، برنامه شما باید با پروژه Google Cloud مرتبط باشد که برای ARCore API فعال است.

باید ARCore API را در پروژه Google Cloud خود فعال کنید . در صورت نیاز به ایجاد پروژه، موارد زیر را انجام دهید:

  1. از ایجاد پروژه در Google Cloud Platform دیدن کنید.

  2. نام پروژه مناسب را وارد کنید و مکانی را برای آن انتخاب کنید.

  3. روی ایجاد کلیک کنید.

  4. در نوار کناری، APIs & Services و سپس Library را انتخاب کنید.

  5. ARCore API را جستجو کنید، آن را انتخاب کنید و روی Enable کلیک کنید.

مجوز را تنظیم کنید

برای برقراری تماس‌های Geospatial API به VPS، برنامه نمونه نیاز به مجوز دارد و ممکن است از یک کلید API نامحدود استفاده کند. اگر از یک کلید API محدود استفاده می کنید، باید شناسه بسته ای را نیز برای مرتبط کردن با کلید API ارائه دهید.

  1. در پروژه Google Cloud خود، یک کلید API همانطور که در ایجاد یک کلید API توضیح داده شده است، دریافت کنید.

  2. در مرحله بعد کلید API را همانطور که آن را پیست خواهید کرد کپی کنید.

  3. در Xcode، در برنامه نمونه GeospatialExample ، فایل ViewController.m را باز کرده و your-api-key را جستجو کنید.

  4. کلید API خود را به GARSession اضافه کنید: همانطور که در زیر نشان داده شده است، کلید API را که از مرحله قبل کپی کرده اید، روی متن قرار دهید، your-api-key (نقل قول ها را رها کنید)، همانطور که در زیر نشان داده شده است.

    self.garSession = [GARSession sessionWithAPIKey:@"your-api-key"
                                   bundleIdentifier:nil
                                              error:&error];
    

ARCore SDK را تنظیم کنید

برنامه GeospatialExample با یک Podfile از پیش پیکربندی شده با نسخه‌های ARCore SDK و iOS که شما نیاز دارید ارسال می‌شود. برای نصب این وابستگی ها، پنجره ترمینال را باز کنید و pod install از پوشه ای که پروژه Xcode وجود دارد اجرا کنید.

این یک فایل .xcworkspace ایجاد می کند که بعداً برای ساخت و اجرای برنامه از آن استفاده خواهید کرد.

برنامه نمونه را بسازید و اجرا کنید

  1. در Xcode، فایل فضای کاری GeospatialExample را انتخاب کنید و روی Signing & Capabilities کلیک کنید.

  2. کادر، مدیریت خودکار امضا را علامت بزنید.

  3. در قسمت Team نام تیم را وارد کنید.

    می‌توانید از شناسه پیش‌فرض Bundle برای اجرای برنامه از Xcode استفاده کنید، اما اگر از GeospatialExample به‌عنوان خرد برای برنامه خود در حال تولید استفاده می‌کنید، باید آن را تغییر دهید.

  4. دستگاه خود را برای اجرای برنامه نمونه وصل کنید.

  5. برنامه GeospatialExample را از فایل .xcworkspace بسازید و اجرا کنید تا آن را در دستگاه خود راه اندازی کنید.

    برای جلوگیری از خطاهای ساخت، مطمئن شوید که از فایل .xcworkspace می سازید و نه فایل .xcodeproj .

شما باید بتوانید نمای دوربین را همراه با اطلاعات اشکال زدایی که تغییر مکانی فعلی دستگاه شما را توصیف می کند، مشاهده کنید. همانطور که محیط اطراف خود را اسکن می کنید، اگر در منطقه ای هستید که توسط محلی سازی VPS پشتیبانی می شود، توجه کنید که مقادیر اطمینان از دقت موقعیت یابی ممکن است با حرکت در اطراف تغییر کند.

هنگامی که ARCore به مکان و عنوان دستگاه شما اطمینان دارد، می توانید با استفاده از تبدیل Geospatial یک Anchor را در مکان فعلی خود قرار دهید.

اگر اطلاعات VPS در دسترس نباشد، ممکن است دقت موقعیت یابی بسیار پایین باشد. برنامه باید به اینترنت متصل باشد و مکان آن باید برای VPS مشخص باشد. برای بهترین نتایج، برنامه نمونه را در ساعات روشنایی روز در بیرون (نه داخل خانه) اجرا کنید.

همچنین، اگر در منطقه‌ای هستید که از VPS پشتیبانی نمی‌کند، یا اگر سیگنال‌های GPS کافی نیستند، ممکن است لازم باشد آستانه‌های اطمینان را در برنامه تنظیم کنید تا یک لنگر قرار دهید.

برای تنظیم آستانه ها:

  1. در Xcode، فایل ViewController.m را باز کنید و به بخش زیر بروید:

    // Thresholds for 'good enough' accuracy. These can be tuned for the
    // application. We use both 'low'
    // and 'high' values here to avoid flickering state changes.
    static const CLLocationAccuracy kHorizontalAccuracyLowThreshold = 10;
    static const CLLocationAccuracy kHorizontalAccuracyHighThreshold = 20;
    static const CLLocationDirectionAccuracy kHeadingAccuracyLowThreshold = 15;
    static const CLLocationDirectionAccuracy kHeadingAccuracyHighThreshold = 25;
    
  2. در صورت نیاز این مقادیر را تنظیم کنید. هر چه مقدار بالاتر باشد، دقت کمتری دارد .

    کاهش دقت به برنامه اجازه می دهد تا عرض جغرافیایی بیشتری در قرار دادن لنگر داشته باشد. برای اطلاعات بیشتر به تنظیم برای دقت تبدیل مراجعه کنید.

مراحل بعدی

راهنمای توسعه‌دهنده Geospatial برای iOS را مرور کنید و با Geospatial API شروع به ساخت کنید.