MLKModelManager
@interface MLKModelManager : NSObject
管理 MLKit 功能使用的模型。
-
傳回
ModelManager
例項。聲明
Objective-C
+ (nonnull instancetype)modelManager;
傳回值
ModelManager
執行個體。 -
無法使用,使用
modelManager()
類別方法。聲明
Objective-C
- (nonnull instancetype)init;
-
檢查特定模型是否已下載。
聲明
Objective-C
- (BOOL)isModelDownloaded:(nonnull MLKRemoteModel *)remoteModel;
參數
remoteModel
用於檢查下載狀態的模型。
傳回值
指定模型是否已下載。
-
將指定模型從伺服器下載至裝置的本機目錄。使用
isModelDownloaded(_:)
檢查模型的下載狀態。如果叫用此方法且模型已下載完畢,系統就會發出要求,檢查較新版本的模型是否可供下載。系統會下載新版模型 (如有)。如要瞭解此方法是否已執行,請觀察
MLKModelDownloadNotifications.h
中定義的.mlkitModelDownloadDidSucceed
和.mlkitModelDownloadDidFail
通知。如果最新模型已下載完成,在執行期間不會進行其他作業並發布.mlkitModelDownloadDidSucceed
通知,表示模型已可使用。聲明
Objective-C
- (nonnull NSProgress *)downloadModel:(nonnull MLKRemoteModel *)remoteModel conditions: (nonnull MLKModelDownloadConditions *)conditions;
參數
remoteModel
要下載的模型。
conditions
下載模型的條件。
傳回值
模型下載進度。
-
從裝置中刪除已下載的模型。
聲明
Objective-C
- (void)deleteDownloadedModel:(nonnull MLKRemoteModel *)remoteModel completion:(nonnull void (^)(NSError *_Nullable))completion;
參數
remoteModel
要刪除的已下載模型。
completion
模型刪除作業成功或失敗時,使用指定的
error
時可在主要佇列上回呼的處理常式。
-
一組已下載的實體擷取模型。 接著即可透過
ModelManager
的deleteDownloadedModel(_:completion:)
API 刪除這些模型,藉此管理磁碟空間。聲明
Objective-C
@property (nonatomic, readonly) NSSet<MLKEntityExtractionRemoteModel *> *_Nonnull downloadedEntityExtractionModels;