使用您的移动应用程序配置 Oracle Mobile Hub SDK

在编写任何代码之前,必须使用移动应用程序配置Oracle Mobile Hub SDK。

添加 SDK

在基本应用程序设置中,如果不包含框架,您会将 iOS 客户机 SDK 添加到应用程序。

  1. 将下载文件 omce-ios-sdk-{n}.zip (其中{n}是 SDK 的版本号)解压缩到计算机上的某个目录中。

  2. 从 zip 的提取内容中,将 oracle_mobile_ios_sdk 目录拖放到 Xcode 项目导航器中。

    • 选择复制项(如果需要)

    • 选择创建组

    • 单击完成

    在将特定库的.a 文件复制到 xcode 中的应用程序开发树之后,对应的平台 API 将通过 SDK 调用提供给您的应用程序。此时,所有 SDK 的静态库都可供您的应用程序使用。

  3. 选择项目的目标,选择构建阶段选项卡,展开带库的链接二进制文件,单击+ 按钮,然后添加以下库:

    • CoreData.framework

    • CoreLocation.framework

    • libsqlite3.0.tbd

    • Security.framework

    • SystemConfiguration.framework

  4. 在项目的构建设置部分中,双击其他链接器标记(在链接下)并添加-ObjC

  5. 此外,在构建设置中,展开搜索路径,并执行以下操作:

    1. oracle_mobile_ios_sdk/release-iphoneos 添加到库搜索路径

    2. oracle_mobile_ios_sdk/release-iphoneos/include 添加到用户标题搜索路径

  6. 展开已解包的 Zip 的 Documentation 文件夹,复制 OMC.plist 文件,并将其放置在应用程序主应用程序绑定的根目录中。

  7. 编辑最近复制的 OMC.plist 文件。

  8. 从 Xcode 7 开始,您需要考虑应用程序传输安全(ATS)策略,此策略强制远程通信超过 HTTPS。

    仅为了开发目的,在应用程序的 Info.plist 文件中添加以下关键字以关闭应用程序的 ATS 策略。

    <key>NSAppTransportSecurity</key> 
    <dict>
     <key>NSAllowsArbitraryLoads</key>
     <true/> 
    </dict>

    注 :

    不应在生产中使用此设置。要确保为您的应用提供最佳安全性,请研究 Apple 的文档并遵循 Apple 为特定域禁用 ATS 并为这些域应用适当的安全弱化的建议。

配置 SDK 属性

要在 iOS 应用程序中使用客户机 SDK,您需要将 OMC.plist 配置文件添加到应用程序中,并使用Oracle Mobile Hub中的后端的环境详细信息以及其他配置信息填充该文件。也可以使用 SDK 类来帮助管理授权、日志记录、事件跟踪、数据同步和其他功能。

可以将配置文件打包在应用程序主捆绑包的根目录中。

文件实际上分为以下几个部分:

  • mobileBackend 键及其内容。

    如果要在应用程序中使用后端 , 则包含此部分。SDK 类使用您指定的环境和验证详细信息来访问后端和为 api 发出的 REST 调用构造 HTTP 标头。

  • 整体应用于配置的关键字,例如 logLeveloAuthTokenEndpoint。这些关键字一般来说,但不必显示在文件的顶部。

以下是文本格式的相同文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"
<plist version="1.0">
<dict>
  <key>logLevel</key>
  <string>debug</string>
  <key>logHTTP</key>
  <true/>
  <key>oAuthTokenEndPoint</key>
  <string>https://MY_TOKEN_ENDPOINT</string>
  <key>mobileBackend</key>
  <dict>
    <key>name</key>
    <string>EasyShoppingMBE</string>
    <key>baseURL</key>
    <string>https://MY_CLOUD_DOMAIN.oracle.com</string>
    <key>authentication</key>
    <dict>
      <key>type</key>
      <string>oauth</string>
      <key>oauth</key>
      <dict>
        <key>clientID</key>
        <string>11dac238ffaa4b029e78e982114642ab</string>
        <key>clientSecret</key>
        <string>5624cbdd-a7c5-4c10-a758-6019a5ab8da8</string>
        <key>enableOffline</key>
        <true/>
      </dict>
    </dict>
  </dict>
</dict>
</plist>

此处是对 OMC.plist 文件中更重要的一些条目的说明。

  • oAuthTokenEndPoint—应用程序从中获取其验证标记的 OAuth 服务器的 URL。需要为依赖 OAuth 进行验证的所有应用程序提供此密钥。从后端的“设置 ”页获取此内容。端点只应为基本 URL (格式为 https://host.domain:port)。

  • logLevel—确定在应用程序的控制台中显示 SDK 日志记录的数量。默认值为 error。其他可能的值(提高详细程度)为 warninginfodebug。还可以将值设置为 none

  • logHTTP—设置为 true 时,SDK 将记录所有 HTTP 请求和响应的标头和正文。

  • mobileBackend—包含后端的验证详细信息以及其他可选详细信息(如同步属性)的字典条目。

    从后端的“置”页中获取验证详细信息,例如 OAuth 和 HTTP 身份证明。

  • mobileBackend/baseUrl—通过后端调用的所有 api 的基础 URL。从后端的“设置 ”页获取此内容。

  • mobileBackend/authentication—包含具有以下元素的字典:

    • 类型子键 ,可能为oauth, basic, facebook和tokenExchange的(string)

    • 包含带有验证身份证明的字典的验证类型的一个或多个子密钥。

      basicoauth 的子键中,还可以添加 enableOffline 键。默认情况下,此属性设置为 true