web-dev-qa-db-fra.com

Partager un lien via un schéma d'URL (via Telegram par exemple)

Je souhaite partager un lien via un schéma d'URL, disons pour Telegram.

J'ai créé ceci: 

tg: // msg? text = www.example.com?t=12

Le lien ouvre le télégramme mais rien d’autre ne se passe. 

J'ai utilisé le même code pour Viber, et cela fonctionne:

viber: // forward? text = www.example.com?t=12

et il ouvre un nouveau message dans viber avec ce texte:

www.example.com

Dans l'autre mot, il coupe mon URL.

Une idée?

11
farhad1985

Vous pouvez également utiliser le lien de partage telegram.me qui revient au webogram si aucune application de télégramme n'est installée sur l'appareil.

https://telegram.me/share/url?url=<URL>&text=<TEXT>

24
Mohebifar

Cela fonctionne avec moi:

tg://msg?text=Mi_mensaje&to=+1555999
10
Mariam

Pour la part de télégramme:

Objectif c:

if([UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tg://msg?text=test"]){
 [UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tg://msg?text=test"]
}else{
 //App not installed.
}

Swift 3.0:

let urlString = "tg://msg?text=test"
let tgUrl = URL.init(string:urlString.addingPercentEncoding(withAllowedCharacters: CharacterSet.urlQueryAllowed)!)
if UIApplication.shared.canOpenURL(tgUrl!)
    {
        UIApplication.shared.openURL(tgUrl!)
    }else
    {
       //App not installed.
    }

Si vous avez utilisé canOpenURL, vous devez ajouter info.plist.

<key>LSApplicationQueriesSchemes</key>
<array>
   <string>tg</string>
</array>
4
Sivabalaa Jothibose

Il existe une variété de réponses ici, chacune travaillant à sa manière. Par exemple, utiliser tg: au lieu de http: en tant que protocole est plus court, mais cela provoquera une erreur si Telegramme.me n'est pas installé, alors que l'utilisation de l'URL complète http: redirigera vers un lien contenant les instructions d'installation pour Telegramme.me.

Si vous voulez voir toutes les options de gestion de ce problème, consultez ce projet github de partage social:

https://github.com/bradvin/social-share-urls#telegramme

1
HoldOffHunger

Essayez d’utiliser tg: // share :

<a href="tg://share?url=www.example.com?t=12&text=Check out this url">Link</a>
0
Andrejs Mivreņiks

php:

<a href="tg://msg?text=<?php echo rawurlencode($gotoURL); ?>">Link</a>



javascript:

<script>TEXT="any text or url";</script>

<a onclick="window.location='tg://msg?text='+encodeURIComponent(TEXT);">Link</a>



ou très simple:

tg://msg?text=www.example.com%2F%3Fget%3Dvalue

tg://msg?text=www.example.com%2F%3Ft%3D12
0
Samad

Pour vérifier si le télégramme est installé, vous pouvez effectuer les opérations suivantes (empruntées au module de partage Whatsapp de ShareKit):

BOOL isTelegramInstalled = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tg://msg?text=test"]];

iOS vérifie si une application pouvant gérer le schéma tg: //, qui est Telegram, est installée.

0
f0xik