Einzelnen Beitrag anzeigen

skoschke

Registriert seit: 6. Jan 2009
523 Beiträge
 
Delphi 10.4 Sydney
 
#1

Indy Mail Probleme bei Android 64 Bit App

  Alt 25. Jan 2024, 07:08
Hallo,

eine seit Jahren bestehende Android App (bisher als 32 Bit Version verteilt) wird nun auf 64 Bit umgestellt.
Seit diesem Zeitpunkt geht der Mailzugriff nicht mehr. Testweise eingeführte Messages sagen "Fehler Connect"

Delphi-Quellcode:
function TFormZugang.TestVerbindungEingang(): integer;
var
  IdPOP31: TIdPOP3;
  IOHandler: TIdSSLIOHandlerSocketOpenSSL;
begin
  // Result 0 = Connect Fehler, 1 = Login Fehler, 2 = fehlerfrei
  Result := 0;
  try
    IdPOP31 := TIdPOP3.Create(self);
    IOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(IdPOP31);
    IdPOP31.AutoLogin := false;
    IdPOP31.Port := settings.zugangPOP3Port;
    IdPOP31.ConnectTimeout := 20000;
    if not IdPOP31.Connected then
    begin
      IdPOP31.Host := settings.zugangPOP3;
      if SSL.IsChecked then
      begin
        // allg. Procedure zum Setzen der SSL-Parameter
        Set_SSL_POP3(IdPOP31, IOHandler);
      end
      else
      begin
        IdPOP31.IOHandler := Nil;
        IdPOP31.UseTLS := utNoTLSSupport;
      end;
      IdPOP31.Username := settings.zugangBenutzer;
      IdPOP31.Password := settings.zugangPasswort;
      try
        sleep(300);
        IdPOP31.Connect;
        Result := 1;
      except
        on E: Exception do
        begin
          showmessage('Fehler Connect');
          IdPOP31.DisposeOf;
          exit;
        end;
      end;
      try
        sleep(300);
        IdPOP31.Login;
        Result := 2;
      except
        on E: Exception do
        begin
          showmessage('Fehler Login');
          IdPOP31.DisposeOf;
          exit;
        end;
      end;
      if IdPOP31.Connected then
      begin
        IdPOP31.DisConnect;
      end;
    end;
    IdPOP31.DisposeOf;
  except
    on E: Exception do
      LogAusgabe(E.ClassName + ' in TFormZugang.TestverbindungEingang : ' +
        E.Message);
  end;
end;
und
Delphi-Quellcode:
procedure Set_SSL_POP3(var pop3: TIDPOP3;
  var SSLIoHandler: TIdSSLIOHandlerSocketOpenSSL);
begin
  SSLIoHandler.DefaultPort := 0;
  SSLIoHandler.SSLOptions.Method := sslvSSLv23;
  SSLIoHandler.SSLOptions.Mode := sslmClient;
  SSLIoHandler.SSLOptions.VerifyMode := [];
  SSLIoHandler.SSLOptions.VerifyDepth := 0;
  pop3.IOHandler := SSLIoHandler;
  pop3.UseTLS := utUseImplicitTLS;
  SSLIoHandler.Destination := pop3.Host + ':' + IntToStr(pop3.Port);
end;
Ich finde leider keinen Ansatz, was bei den Indys umgestellt werden müsste, wenn man sie unter Android 64 Bit verwenden möchte!
Kann mir bitte jemand einen Tip geben?
Achso: SSL ist an und der Port ist 465, falls das relevant ist...

Ciao
Stefan

Geändert von skoschke (25. Jan 2024 um 07:11 Uhr)
  Mit Zitat antworten Zitat