OpenSSL | iOS

Para instalar o OpenSSL em um dispositivo iOS de 64 bits, você deve copiar os arquivos da biblioteca SSL libcrypto.a e libssl.a para o seu sistema. Baixe o .zip do iOS OpenSSL, extraia-o e encontre os arquivos .a no diretório \lib. Você deve copiar os arquivos da biblioteca SSL libcrypto.a e libssl.a para estes diretórios:

 

 

Adicione a unit sgcIdSSLOpenSSLHeaders_static (ou IdSSLOpenSSLHeaders_static se sua edição do sgcWebSockets não for Enterprise) à sua cláusula uses.

 

Se você precisar implantar qualquer arquivo, você pode definir RemotePath = StartUp\Documents e, para carregar o arquivo, utilize (requer adicionar System.IOUtils à cláusula uses):

 

TPath.GetDocumentsPath + PathDelim + <your filename>

 

As bibliotecas openSSL não devem ser implantadas utilizando o menu Project/Deployment no iOS.

 

API 1.1

Modifique IdCompilerDefines.inc e habilite SGC_OPENSSL_API_1_1 na seção IOS:

 

{$IFDEF IOS}

{$DEFINE HAS_getifaddrs}

{$DEFINE USE_OPENSSL}

{$IFDEF CPUARM}

// RLebeau: For iOS devices, OpenSSL cannot be used as an external library,

// it must be statically linked into the app. For the iOS simulator, this

// is not true. Users who want to use OpenSSL in iOS device apps will need

// para adicionar a biblioteca estática OpenSSL ao projeto e então incluir o

// IdSSLOpenSSLHeaders_static unit in their uses clause. It hooks up the

// funções vinculadas estaticamente para a unit IdSSLOpenSSLHeaders utilizar...

{$DEFINE STATICLOAD_OPENSSL}

// sgc--> habilite para openssl API 1.1

{$DEFINE SGC_OPENSSL_API_1_1}

{$ENDIF}

{$ENDIF}

 

Você pode baixar as bibliotecas a partir da sua conta.

 

 

API 3.0

Modifique IdCompilerDefines.inc e habilite SGC_OPENSSL_API_1_1 e SGC_OPENSSL_API_3_0 na seção IOS:

 

{$IFDEF IOS}

{$DEFINE HAS_getifaddrs}

{$DEFINE USE_OPENSSL}

{$IFDEF CPUARM}

// RLebeau: For iOS devices, OpenSSL cannot be used as an external library,

// it must be statically linked into the app. For the iOS simulator, this

// is not true. Users who want to use OpenSSL in iOS device apps will need

// para adicionar a biblioteca estática OpenSSL ao projeto e então incluir o

// IdSSLOpenSSLHeaders_static unit in their uses clause. It hooks up the

// funções vinculadas estaticamente para a unit IdSSLOpenSSLHeaders utilizar...

{$DEFINE STATICLOAD_OPENSSL}

// sgc--> habilite para openssl API 1.1

{$DEFINE SGC_OPENSSL_API_1_1}

// sgc--> enable for openssl API 3.0

{$DEFINE SGC_OPENSSL_API_3_0}

{$ENDIF}

{$ENDIF}

 

Você pode baixar as bibliotecas a partir da sua conta.