OpenSSL не работает для симулятора iOS в Delphi DX. Информация по адресу: http://blog.marcocantu.com/blog/using_ssl_delphi_ios.html http://docwiki.embarcadero.com/RADStudio/Seattle/en/OpenSSL https://plus.google.com/100777187605111792758/posts/SPnHdXvTTNu
Я могу заставить его работать на устройствах, но не на симуляторе iOS. Тот же URL-адрес работает, когда я использую TWebbrowser.navigate, но, конечно, не с INDY. См. ниже и, возможно, предложите варианты как совершать вызовы HTTPS в симуляторе iOS! Это работало раньше в более ранних версиях Rad Studio (XE4, XE5), но не работает с XE7, если мне не изменяет память.
У меня есть эти файлы в папке usr/lib:
libcrypto.0.9.8.dylib
libssl.0.9.8.dylib
Вот мое использование
uses
IdSSLOpenSSL,
{$IF Defined(IOS) and Defined(CPUARM)}
IdSSLOpenSSLHeaders_Static,
{$ELSE}
IdSSLOpenSSLHeaders,
{$ENDIF}
...
Вот мой onCreate для основной формы
procedure TmLoginForm.FormCreate(Sender: TObject);
var
t:string;
begin
IdOpenSSLSetLibPath('/usr/lib/');
...
Вот часть функции, которую я использую, где в последней строке выдается исключение
function ParseGroups(OnlyUserCreated:boolean):integer;
var
IdHTTP :TIdHTTP;
HTML :String;
JSON_Groups :TJSONObject;
Group :uGroup;
begin
result:=0;
HTML:='';
IdHTTP:=TIdHTTP.Create(nil);
IdHTTP.HandleRedirects:=false;
try
HTML:=IdHTTP.Get(URL_Host+ACCESSTOKEN);
Ошибка: «Не удалось загрузить библиотеку SSL».
ShowMessage(IdSSLOpenSSLHeaders.WhichFailedToLoad);
показывает пустое сообщение
Обновлять:
добавление
IdSSLOpenSSLHeaders.Load;
после установки пути теперь вызывает сообщение whichFailedToLoad: «Не удалось загрузить /usr/lib/libcrypto».