Besides setting the "HTTPS" environment variable  and SECURE_PROXY_SSL_HEADER
SECURE_SSL_REDIRECT,  also seems that  can be problem  when rendering template and sending mail with EmailMultiAlternatives() when .txt body is used as is in adapter.py  render_mail()
[1]: https://github.com/pennersr/django-allauth/blob/master/allauth/account/adapter.py
for ext in ["html", "txt"]:
        try:
            template_name = "{0}_message.{1}".format(template_prefix, ext)
            bodies[ext] = render_to_string(
                template_name,
                context,
                self.request,
            ).strip()
        except TemplateDoesNotExist:
            if ext == "txt" and not bodies:
                # We need at least one body
                raise
    if "txt" in bodies:
        msg = EmailMultiAlternatives(subject, bodies["txt"], from_email, to)
        if "html" in bodies:
            msg.attach_alternative(bodies["html"], "text/html")
    else:
        msg = EmailMessage(subject, bodies["html"], from_email, to)
        msg.content_subtype = "html"  # Main content is now text/html
    return msg
For example  print(bodies[ext]) gave:
  "To confirm this is correct, go to " https://127.0.0.1:8000/accounts/confirm-email/MjI:1kS0Mj:M5YfUf9-1Vg_TlgjVrK6vAtaLDE/ "
but on email is still http://
 http://url7514.sitename/ls/click?upn=HJL2SSWV...
With most devices also this worked since should be redirected still to https://, but on some didn't, so had to change in default templates/account/email/email_confirmation_message.txt to  html extension,
after result :
To confirm this is correct, go to https://sitename/accounts/confirm-email/M...