You are not logged in.
Pages: 1
Hi Arnaud today i discovered that Google removed OpenSSL from Android 6.
As result my Crossplatform Client could not connect.
Does anybody have a clue to Run without OpenSSL or has a solution for that ?
May be it effects also Smart Mobile Studio Client ?!
Rad Studio 12.1 Santorini
Offline
We may have to use the native HTTP classes available with latest version of Delphi.
Unit SynCrossPlatformSpecific.pas should be modified as such.
It would not affect Smart Mobile Studio clients at all, since HTTPS is integrated within the web component used.
Offline
You mean System.Net.HttpClient ?
May be a very good alternative cause the Android Client uses JNI
I took a look in the Documentation and it seems to be very easy to integrate. I would do it but i don't know exactly how ...
I'll write a ticket.
Last edited by itSDS (2015-10-23 11:34:07)
Rad Studio 12.1 Santorini
Offline
Yes I tried, but do not know which Params to use - i wrote a ticket.
Rad Studio 12.1 Santorini
Offline
Hi Arnaud i send you the Source via EMail - I integrated the THttpClient
Windows and Android Tests passed
Last edited by itSDS (2015-10-23 18:48:58)
Rad Studio 12.1 Santorini
Offline
Ty under iOS i do not use it. I have Problems with ssl. so i made a little change. I send it to you.
Rad Studio 12.1 Santorini
Offline
@itSDS
I would be interested into those file too!
Last edited by wil32 (2015-11-05 21:32:17)
Offline
Hi i send my modifications to arnaud but he did not integrate them, he seems to be busy
Rad Studio 12.1 Santorini
Offline
Should be included with http://synopse.info/fossil/info/8b7f795fdc
Sorry for the delay!
Offline
Hi Arnaud, tyvm,
but i had to made little modification to the ifdef section in the beginning
Please integrate this in the source.
...
{$ifdef MSWINDOWS}
{$ifdef FPC}
{$define USEFCL} // for debugging the FCL within Lazarus
{$else}
{$ifdef UNICODE}
{$define USESYNCRT} // sounds to be the best choice under Windows
{.$define USEHTTPCLIENT} // as alternative
{.$define USEINDY} // as alternative
{$else}
{$define USESYNCRT}
{$endif}
{$endif}
{$define USECRITICALSECTION}
{$else}
{$ifdef FPC}
{$define USEFCL}
{$define USECRITICALSECTION}
{$else}
{$ifdef ISDELPHIXE8}
{$ifdef ANDROID}
{$define USEHTTPCLIENT} // use new System.Net.HttpClient
{$else}
{$define USEINDY}
{$endif}
{$else}
{$define USEINDY}
{$endif}
{$endif}
{$endif}
...
Let me explain:
Under Windows you can use all 3 HTTPCLIENT, SYNCRT, INDY just as you like I prefer using SYNCRT, but put the outdotted other defines as alternatives to show this.
You made a mistake putting the {$ifdef ISDELPHIXE8} under the WINDOWS ifdef. it is for iOS/ANDROID, i changed this.
ATM there is a problem (may be bug or i don't know how) in using HTTPCLIENT under IOS with authorization of self created certificates.
I added ifdef ANDROID before define httpclient This may change if i find out how to accept this kind of certificates under IOS. (Perhaps one has an idea?)
Rad Studio 12.1 Santorini
Offline
One other thing:
in SynCrossPlatform.inc you used $ifend please change it to $endif cause of the Compiler Warning
Rad Studio 12.1 Santorini
Offline
Please try http://synopse.info/fossil/info/eb8a987288
Offline
tyvm thats ok now
Rad Studio 12.1 Santorini
Offline
I forgot the endif / ifend Problem is still in syncrossplatform.inc can you pls fix it
Rad Studio 12.1 Santorini
Offline
Pages: 1