MLKitTranslate Framework Reference

MLKModelManager


@interface MLKModelManager : NSObject

Manages models that are used by MLKit features.

  • Returns a ModelManager instance.

    Declaration

    Objective-C

    + (nonnull instancetype)modelManager;

    Return Value

    A ModelManager instance.

  • Unavailable. Use the modelManager() class method.

    Declaration

    Objective-C

    - (nonnull instancetype)init;
  • Checks whether the given model has been downloaded.

    Declaration

    Objective-C

    - (BOOL)isModelDownloaded:(nonnull MLKRemoteModel *)remoteModel;

    Parameters

    remoteModel

    The model to check the download status for.

    Return Value

    Whether the given model has been downloaded.

  • Downloads the given model from the server to a local directory on the device. Use isModelDownloaded(_:) to check the download status for the model. If this method is invoked and the model has already been downloaded, a request is made to check if a newer version of the model is available for download. If available, the new version of the model is downloaded.

    To know when this method is done, observe the .mlkitModelDownloadDidSucceed and .mlkitModelDownloadDidFail notifications defined in MLKModelDownloadNotifications.h. If the latest model is already downloaded, completes without additional work and posts .mlkitModelDownloadDidSucceed notification, indicating that the model is ready to use.

    Declaration

    Objective-C

    - (nonnull NSProgress *)downloadModel:(nonnull MLKRemoteModel *)remoteModel
                               conditions:
                                   (nonnull MLKModelDownloadConditions *)conditions;

    Parameters

    remoteModel

    The model to download.

    conditions

    The conditions for downloading the model.

    Return Value

    Progress for downloading the model.

  • Deletes the downloaded model from the device.

    Declaration

    Objective-C

    - (void)deleteDownloadedModel:(nonnull MLKRemoteModel *)remoteModel
                       completion:(nonnull void (^)(NSError *_Nullable))completion;

    Parameters

    remoteModel

    The downloaded model to delete.

    completion

    Handler to call back on the main queue when the model deletion completed successfully or failed with the given error.

  • A set of already-downloaded translate models (including built-in models, currently only English). These models can be then deleted through ModelManager‘s deleteDownloadedModel(_:completion:) API to manage disk space.

    Declaration

    Objective-C

    @property (nonatomic, readonly) NSSet<MLKTranslateRemoteModel *> *_Nonnull downloadedTranslateModels;