Wie wird ein Hyperlink an Gmail in Intent ACTION_SEND weitergeleitet?

8

Vielleicht ist diese Frage bereits gestellt oder eine andere Frage doppelt, aber ich habe keine Lösung für meine Suche gefunden. Hier sind die Links, denen ich bei meiner Frage gefolgt bin: Link1 Link2

Meine Frage bezieht sich eigentlich auf das Teilen von HTML-Text in Android-Standardabsicht mit einem ACTION_SEND. Wenn ich versuche, einen Hyperlink zu einer URL mit einem anderen Wert zu erstellen, wird ein einfacher Werttext angezeigt. Das ist nicht als Link anklickbar.

So mache ich das:

%Vor%

Für body2: Wenn ich den Text über Google Mail teile, wird der per Hyperlink verknüpfte Text als normaler Text angezeigt. Einfach "Klick mich". Ich habe es auch auf dem Desktop-Browser überprüft. Aber da ist es auch gleich. Ich habe diesen Text in Inspect Element überprüft (Sie können Element einer Browserseite überprüfen wie: Rechtsklick auf die Browserseite & gt; & gt; In einem Popup-Fenster klicken Sie unten auf Inspect ODER beziehen Sie sich auf Inspect Element ) Format und festgestellt, dass es keinen Tag für Hyperlink-Text gab.

Für body1: Es funktioniert und ich habe die URL als Hyperlink in der E-Mail, aber ich habe die URL als Hyperlink Ich möchte nicht die gleiche URL in E-Mail anzeigen, als es sollte ein Hinweis Wert als Body2-Format sein. Dieses Format kann durch direkte URL-Freigabe im Textkörper erreicht werden, ohne dass ein Tag erforderlich ist.

Endlich ist meine Suche, gibt es irgendeine Weise in Android für das Teilen des Hyperlink-Textes mit unterschiedlichem Hinweiswert anstatt von der Verbindung (URL).

    
Ready Android 20.12.2016, 13:05
quelle

6 Antworten

1

Ich schlage vor, dass Sie eine String-Ressource anstelle einer Java-Zeichenkette verwenden, es ist allgemein und gute Praxis und auf diese Weise müssen Sie nicht "entweder. Und mit den HTML-Daten müssen Sie es in CDATA wickeln.

XML:

%Vor%

in Java ersetzen Sie body2 durch:

%Vor%

Versuchen Sie es dann an die Absicht weiterzugeben und senden Sie es in einer E-Mail, es sollte ein richtiger Hyperlink sein, wie Sie es gerne hätten.

    
Faraz 28.12.2016, 05:58
quelle
0

Was Sie im Körper tun, ist vollkommen richtig.

Aber Gmail liest die zusätzliche android.intent.extra.TEXT als Zeichenfolge.

Sie machen tatsächlich eine Feature-Anfrage / melden einen Fehler.

    
rds 28.12.2016 20:55
quelle
0
%Vor%

Bitte fügen Sie diesen Code in textview xml hinzu. Es wird direkt google link

gehen     
Venkatesh Nani 29.12.2016 10:16
quelle
0

Ich glaube nicht, dass Sie E-Mail-Absicht verwenden können. E-Mail ohne Absicht senden E-Mail-Client zum Senden von E-Mails erstellen. Das wird HTML-Tags unterstützen.

PLZ verweisen

Ссылка

    
Rahul Giradkar 30.12.2016 11:19
quelle
0

Nachdem Sie Ihre String auf extra gesetzt haben, verlieren sie ihre Attribute als Spanned . Wenn Sie es als HTML senden, kann es von einigen Anwendungen gelöst und angezeigt werden, wie Sie möchten. Im Allgemeinen fügen Sie einfach einen einfachen Text in die Bundle Ihrer Intent ein, und jede Anwendung interpretiert sie so, wie sie es wünscht, also gibt es keine Lösung, sie als HTML zu senden und Anwendungen zu zwingen, sie als HTML anzuzeigen.

Wenn Sie andererseits wissen, welche Anwendungen Sie über share verwenden, können Sie deren Dokumentation lesen und prüfen, ob Hyperlinks über ACTION_SEND intent gesendet werden können.

Sie können einem Empfänger sagen, dass eine Art Ihres Textes nach intent.setType("text/html") liegt, vielleicht hängt das Verhalten einiger Anwendungen davon ab.

    
Orest Savchak 30.12.2016 12:13
quelle
0

Ja, ich habe diese Problemlösung erreicht. Danke, @Faraz.

Dies ist mein Antwortcode, da ich eine Tag-Zeichenkette in string.xml erstellt habe

%Vor%

Und mein Code ist wie folgt, was perfekt funktioniert, um mit dem Tag in android zu teilen:

%Vor%     
Ready Android 02.01.2017 06:16
quelle