I have problem with integer type with Android64 application, when sometimes integer is wrongly passed to the server. I created new test function
[ROServiceMethod]
function TestINT(Input:Integer):Integer;
function Tworkflow.TestINT(Input: Integer): Integer;
begin
log(input.ToString);
result:=input;
end;
I use TRORemoteService with TROBinMessage and TRONetHttpClientChannel. Delphi 12, RemObjects Remoting SDK 10.0.0.1583.
The same code on windows client works fine, but on android it starts to return strange integers starting input=128 .
Input: 185, incoming stream
Android client: Uk8xMDcAAAAAAAAAYDMhVG4we0U//Wd1XTTJcQQAAABBdXRoEAAAAHRlc3RJbnB1dEludGVnZXIxAAAA
Result: 49
Win32: Uk8xMDcAAAAAAAAADx2ujKItqUOz0yCsNmsWhwQAAABBdXRoEAAAAHRlc3RJbnB1dEludGVnZXK5AAAA
Result: 185
It must be on the client side in combination with Android. When I compile the same code to Win platform, it gives correct results.
On Android client WriteToStream looks correct for input 128 (the end of stream, where as I expect is the parameter, is the same as on Win client)
Stream:Uk8xMDcAAAAAAAAA2bVKciVy5U+PP6pqt2cJcwQAAABBdXRoEAAAAHRlc3RJbnB1dEludGVnZXKAAAAA
It seems, like network transfer is incorrect.
[quote=“EvgenyK, post:5, topic:29821”]
TROIndyHTTPChannel
[/quote] works fine. I was using TRONetHttpClient for SSL connection, but I found how to use Indy with SSL on Android.