Configure o Oracle Mobile Hub SDK com seu Aplicativo Móvel

Você deve configurar o Oracle Mobile Hub SDK com sua aplicação móvel antes de escrever qualquer código.

Adicionar o SDK

Em uma configuração básica do aplicativo, sem interferir frameworks, você adicionará o SDK do cliente iOS a um aplicativo.

  1. Descompacte o arquivo de download, omce-ios-sdk-{n}.zip (onde {n} é o número da versão do SDK) em algum diretório da máquina.

  2. No conteúdo extraído do zip, arraste e solte o diretório oracle_mobile_ios_sdk para o navegador de projetos do Xcode.

    • Selecione Copiar itens, se necessário .

    • Selecione Criar Grupos .

    • Clique em Finalizar .

    Depois que o arquivo .a para uma biblioteca específica for copiado para a árvore de desenvolvimento da sua aplicação no Xcode, a API de plataforma correspondente estará disponível para sua aplicação por meio de chamadas SDK. Nesse ponto, todas as bibliotecas estáticas do SDK estão disponíveis para seu aplicativo.

  3. Selecione o destino do seu projeto, selecione a tab Fases do Build , expanda Vincular Binário com Bibliotecas , clique no botão + e adicione as seguintes bibliotecas:

    • CoreData.framework

    • CoreLocation.framework

    • libsqlite3.0.tbd

    • Security.framework

    • SystemConfiguration.framework

  4. Na seção Definições de Build do projeto, clique duas vezes em Outros Flags do Vinculador (em Vinculação ) e adicione -ObjC.

  5. Também em Definições de Build, expanda Caminhos de Pesquisa e:

    1. Adicione oracle_mobile_ios_sdk/release-iphoneos aos Caminhos de Pesquisa da Biblioteca.

    2. Adicione oracle_mobile_ios_sdk/release-iphoneos/include aos Caminhos de Pesquisa do Cabeçalho do Usuário.

  6. Expanda a pasta Documentation do zip descompactado, copie o arquivo OMC.plist e coloque-o na raiz do pacote da aplicação principal do seu aplicativo.

  7. Edite o arquivo OMC.plist alinhado com justificação.

  8. A partir do Xcode 7, é necessário contabilizar a política ATS (Application Transport Security), que impõe que as comunicações remotas sejam feitas por HTTPS.

    Apenas para fins de desenvolvimento, adicione a seguinte chave no arquivo Info.plist do aplicativo para desativar a política do ATS do aplicativo.

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

    Observação:

    Você não deve usar essa definição em produção. Para garantir que você forneça segurança ideal para seu aplicativo, consulte a documentação da Apple e siga as recomendações da Apple para desativar o ATS em domínios específicos e aplicar reduções de segurança apropriadas a esses domínios.

Configurar Propriedades do SDK

Para usar o SDK do cliente em uma aplicação iOS, você precisa adicionar o arquivo de configuração OMC.plist à aplicação e preenchê-lo com detalhes do ambiente para seu backend no Oracle Mobile Hub, bem como outras informações de configuração. Por sua vez, as classes SDK usam essas informações para ajudar a gerenciar autorização, log, rastreamento de eventos, sincronização de dados e outros recursos.

Você encapsula o arquivo de configuração na raiz do pacote principal da aplicação.

O arquivo é essencialmente dividido nas seguintes partes:

  • A chave mobileBackend e seu conteúdo.

    Você poderá incluir esta parte se estiver usando um backend com a aplicação. As classes SDK usam os detalhes de ambiente e autenticação que você especifica para acessar o backend e construir cabeçalhos HTTP para chamadas REST feitas a APIs.

  • Chaves que se aplicam à configuração como um todo, como logLevel e oAuthTokenEndpoint. Em geral, essas chaves não precisam aparecer na parte superior do arquivo.

Este é o mesmo arquivo no form de texto:

<?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>

E aqui há uma descrição de algumas das entradas mais importantes no arquivo OMC.plist.

  • oAuthTokenEndPoint — O URL do servidor OAuth no qual a aplicação obtém seu token de autenticação. Essa chave precisa ser fornecida para todos os aplicativos que dependem do OAuth para autenticação. Você obtém isso na página Definições do backend. O ponto final deve ser somente o URL base (no formato https://host.domain:port).

  • logLevel — Determina o volume de logs de SDK que é exibido na console do aplicativo. O valor padrão é error. Outros valores possíveis (no nível de detalhe) são warning, info e debug. Também é possível definir o valor como none.

  • logHTTP — Quando definido como true, o SDK registra os cabeçalhos e corpos de todas as solicitações e respostas HTTP.

  • mobileBackend — Uma entrada de dicionário que contém detalhes de autenticação para seu backend e outros detalhes opcionais, como propriedades de sincronização.

    Você obtém os detalhes de autenticação, como as credenciais do OAuth e HTTP, na página Definições do backend.

  • mobileBackend/baseUrl — O URL base de todas as APIs que você chama por meio do backend. Você obtém isso na página Definições do backend.

  • mobileBackend/authentication — Contém um dicionário com os seguintes elementos:

    • A subchave type, com valores possíveis (string) de oauth, basic, facebook e tokenExchange.

    • Uma ou mais subchaves para tipos de autenticação, que contêm um dicionário com as credenciais de autenticação.

      Nas subchaves para basic e oauth, você também pode adicionar a chave enableOffline. Por padrão, essa propriedade é definida como true.