CoreMLPredictionsPlugin1.31.0

CoreMLPredictionsPlugin1.31.0

AWS Mobile SDK ToolsAWS Amplify Swift Ops 维护。



  • Amazon Web Services

Amplify for iOS

AWS Amplify

AWS Amplify 提供了一个声明性和易于使用的接口,覆盖了不同类别的云操作。AWS Amplify 适用于任何基于 JavaScript 的前端工作流程,以及 React Native 移动开发者。

我们的默认实现与 Amazon Web Services (AWS) 兼容,但 AWS Amplify 被设计成开放和可插拔的,以支持任何自定义后端或服务。

API 文档

入门指南

Cocoapods CircleCI Discord

特性/API

  • 分析 - 用于记录指标和了解用户。
  • API (GraphQL) - 将 GraphQL 端点添加到您的应用程序中。
  • API (REST) - 将 REST 端点添加到您的应用程序中。
  • 认证 - 管理您的用户。
  • 数据存储 - 使离线/在线场景的分布式数据存储编程更容易。
  • 地理位置 - 向您的应用程序添加基于位置的功能。
  • 预测 - 用于检测文本、图像等!
  • 存储 - 将如图像和视频之类的复杂对象存储到云端。

除了上述列出的所有服务和功能,均通过 iOS SDK 或支持相应类别的任何类别可以通过以下类似逃生舱访问

guard let predictionsPlugin = try Amplify.Predictions.getPlugin(for: "awsPredictionsPlugin") as? AWSPredictionsPlugin else {
    print("Unable to cast to AWSPredictionsPlugin")
    return
}

guard let rekognitionService = predictionsPlugin.getEscapeHatch(key: .rekognition) as? AWSRekognition else {
    print("Unable to get AWSRekognition")
    return
}

let request = AWSRekognitionCreateCollectionRequest()
if let request = request {
    rekognitionService.createCollection(request)
}

平台支持

Amplify支持iOS 11及更高版本,以及某些类别(如预测和地理信息)的iOS 13。目前没有计划支持WatchOS、tvOS或MacOS上的Amplify。

许可

本库遵循Apache 2.0许可协议。

  • Add package dependency

  • 在搜索栏中输入Amplify iOS GitHub仓库的URL(https://github.com/aws-amplify/amplify-ios),然后单击下一步

    Search for repo

  • 您将看到为Amplify iOS仓库版本规则,该规则将安装您所需的Amplify版本。选择第一个规则版本,因为它将使用源自main分支的检测到最新兼容版本的依赖项,然后单击下一步。

    Dependency version options

  • 选择您希望添加到项目中的库。始终选择**Amplify库**。"插件"的安装取决于您使用的类别

    • API: AWSAPIPlugin

    • 分析:AWSPinpointAnalyticsPlugin

    • 认证:AWSCognitoAuthPlugin

    • 数据存储:AWSDataStorePlugin

    • 存储:AWSS3StoragePlugin

      注意:由于最低iOS版本要求不同,AWSPredictionsPlugin目前无法通过Swift Package Manager支持。最终将添加对该插件的支持。

    Select dependencies

    选择所有适用项,然后点击完成

    您可以通过打开项目的Swift Packages标签来修改项目中包含的SPM包:在Xcode导航器中点击项目文件,然后点击项目图标,然后选择Swift Packages标签。

  • 在您的应用程序代码中,当需要向Amplify添加插件、访问插件选项或访问类别逃生门时,请显式导入插件。

    import Amplify
    import AWSAPIPlugin
    import AWSDataStorePlugin
    
    // ... later
    
    func initializeAmplify() {
        do {
            try Amplify.add(AWSAPIPlugin())
            // and so on ...
        } catch {
            assert(false, "Error initializing Amplify: \(error)")
        }
    }

    如果您只需要访问Amplify类别API(例如,Auth.signIn()Storage.uploadFile()),您只需导入Amplify

    import Amplify
    
    // ... later
    
    func doUpload() {
        Amplify.Storage.uploadFile(...)
    }
  • CocoaPods

    1. Amplify for iOS可通过CocoaPods获取。如果您尚未安装CocoaPods,可以通过运行以下命令安装CocoaPods:

      $ gem install cocoapods
      $ pod setup
      

      根据系统的设置,您可能需要使用sudo来安装cocoapods

      $ sudo gem install cocoapods
      $ pod setup
      
    2. 在您的项目目录(*.xcodeproj文件所在目录)中,输入pod init并打开创建的Podfile。添加Amplify播包和您希望使用的任何插件。以下是一个示例Podfile,如果您将使用Predictions插件:

      source 'https://github.com/CocoaPods/Specs.git'
      
      platform :ios, '13.0'
      use_frameworks!
      
      target :'YourTarget' do
          pod 'Amplify'
          pod 'AmplifyPlugins/AWSCognitoAuthPlugin'
          pod 'AWSPredictionsPlugin'
          pod 'CoreMLPredictionsPlugin'
      end
    3. 然后运行以下命令:

      $ pod install
      
    4. 使用Xcode打开*.xcworkspace文件并开始使用Amplify。

      image

      注意:请不要使用*.xcodeproj。如果您打开的是项目文件而不是工作空间,您将收到错误。

    5. 在您的应用程序代码中,当需要向Amplify添加插件、访问插件选项或访问类别逃生门时,请导入AmplifyPlugins

      import Amplify
      import AmplifyPlugins
      
      // ... later
      
      func initializeAmplify() {
          do {
              try Amplify.add(AWSAPIPlugin())
              // and so on ...
          } catch {
              assert(false, "Error initializing Amplify: \(error)")
          }
      }

      如果您只需要访问Amplify类别API(例如,Auth.signIn()Storage.uploadFile()),您只需导入Amplify

      import Amplify
      
      // ... later
      
      func doUpload() {
          Amplify.Storage.uploadFile(...)
      }

    开发Pods

    您可以通过克隆此存储库并创建一个引用本地克隆的Podfile来手动安装库,如下所示:

    pod 'Amplify', :path => '~/amplify-ios'
    pod 'AWSPluginsCore', :path => '~/amplify-ios'
    pod 'CoreMLPredictionsPlugin', :path => '~/amplify-ios'
    pod 'AWSPredictionsPlugin', :path => '~/amplify-ios'
    pod 'AmplifyPlugins/AWSAPIPlugin', :path => '~/amplify-ios'

    然后安装依赖项

    pod install
    

    使用./YOUR-PROJECT-NAME.xcworkspace文件打开您的项目。请记住,从现在起始终使用./YOUR-PROJECT-NAME.xcworkspace来从Xcode中打开您的项目。

    报告错误/功能请求

    Open Bugs Open Questions Feature Requests Closed Issues

    我们欢迎您使用GitHub问题跟踪器报告错误或建议功能。

    在提交问题时,请检查现有打开的问题最近关闭的问题,以确保其他人尚未报告该问题。请尽量提供尽可能多的信息。此类信息极为有用。

    • 预期行为和观察到的行为
    • 可复现的测试用例或一系列步骤
    • 我们代码的版本
    • 针对错误所做的任何相关修改
    • 关于您的环境或部署的任何自定义项

    开源贡献

    我们欢迎社区中的任何贡献!在提交任何PR之前,请确保阅读我们的贡献指南此处。谢谢!♥️