URLスキームを介してリンクを共有したいと思います。
私はこれを作成しました:
tg:// msg?text = www.example.com?t=12
リンクは、電報を開きますが、他には何も起こりません。
Viberにも同じコードを使用しましたが、動作します:
viber:// forward?text = www.example.com?t=12
次のテキストを含む新しいメッセージをviberで開きます。
www.example.com
他のWordでは、それは私のURLをカットします。
何か案が?
テレグラムアプリがデバイスにインストールされていない場合、webogramにフォールバックするtelegram.me共有リンクを使用することもできます。
https://telegram.me/share/url?url=<URL>&text=<TEXT>
これは私と一緒に動作します:
tg://msg?text=Mi_mensaje&to=+1555999
テレグラム共有の場合:
目標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.
}
CanOpenURLを使用した場合は、info.plistに追加する必要があります
<key>LSApplicationQueriesSchemes</key>
<array>
<string>tg</string>
</array>
ここにはさまざまな答えがあり、それぞれが独自の方法で機能しています。つまり、tg:
の代わりに http:
はプロトコルとして短くなりますが、Telegramme.meがインストールされていない場合はエラーが発生しますが、完全なhttp:
urlは、Telegramme.meのインストール手順を含むリンクにリダイレクトします。
これがどのように処理されるかのすべてのオプションを見たい場合は、このソーシャル共有githubプロジェクトをチェックしてください:
テストしたところ、この方法では、インストールされていない場合にテレグラムアプリまたはブラウザーを開くことができます。
let webURL = NSURL(string: "https://t.me/<YOUR ID>")!
UIApplication.shared.open(webURL as URL)
tg:// shareを使用してみてください:
<a href="tg://share?url=www.example.com?t=12&text=Check out this url">Link</a>
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>
または非常にシンプル:
tg://msg?text=www.example.com%2F%3Fget%3Dvalue
tg://msg?text=www.example.com%2F%3Ft%3D12
Telegramがインストールされているかどうかを確認するには、次の操作を実行できます(ShareKitのWhatsapp共有モジュールから借用)。
BOOL isTelegramInstalled = [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"tg://msg?text=test"]];
iOSは、tg://スキーム(Telegram)を処理できるアプリがインストールされているかどうかを確認します。