Whatsappで特定の連絡先チャットを開こうとしていますが、解決策はありません。私が完全に行き詰まっているのを助けてください。私はこれを試しました:
let whatsAppURL: NSURL = NSURL(string: "whatsapp://send?abid=\(primary)&;text=lOL;")!
if UIApplication.sharedApplication().canOpenURL(whatsAppURL){
UIApplication.sharedApplication().openURL(whatsAppURL)
}
この whatsappフォーラムリンク のように、特定のユーザーにメッセージを送信する方法はありません。これはwhatsapp URLスキームでは使用できません。
定義済みのメッセージを設定するだけで、URLスキームを使用してwhatsapp最近のコントローラーを開くことができます。
その可能なあなたはSpecficユーザーにメッセージを送ることができます。
直接アプリチャットのURLを開く
let urlWhats = "whatsapp://send?phone=+919789384445&abid=12354&text=Hello"
if let urlString = urlWhats.addingPercentEncoding(withAllowedCharacters: NSCharacterSet.urlQueryAllowed) {
if let whatsappURL = URL(string: urlString) {
if UIApplication.shared.canOpenURL(whatsappURL!) {
UIApplication.shared.openURL(whatsappURL!)
} else {
print("Install Whatsapp")
}
}
}
注:携帯番号チャットを開くには国コード(例:+91)が必須です
WebUrl Link open Chat
let whatsappURL = URL(string: "https://api.whatsapp.com/send?phone=9512347895&text=Invitation")
if UIApplication.shared.canOpenURL(whatsappURL) {
UIApplication.shared.open(whatsappURL, options: [:], completionHandler: nil)
}
以下のリンクを確認してください、
https://www.whatsapp.com/faq/en/general/260000
注:info.plistにURLスキームを追加します
<key>LSApplicationQueriesSchemes</key>
<array>
<string>whatsapp</string>
</array>
Swift 4.2/Swift 5の場合
func openWhatsapp(){
let urlWhats = "whatsapp://send?phone=(mobile number with country code)"
if let urlString = urlWhats.addingPercentEncoding(withAllowedCharacters: CharacterSet.urlQueryAllowed){
if let whatsappURL = URL(string: urlString) {
if UIApplication.shared.canOpenURL(whatsappURL){
if #available(iOS 10.0, *) {
UIApplication.shared.open(whatsappURL, options: [:], completionHandler: nil)
} else {
UIApplication.shared.openURL(whatsappURL)
}
}
else {
print("Install Whatsapp")
}
}
}
}
Swift 2.0の場合
let urlWhats = "whatsapp://send?phone=(mobile number with country code)"
if let urlString = urlWhats.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet()){
if let whatsappURL = NSURL(string: urlString) {
if UIApplication.sharedApplication().canOpenURL(whatsappURL){
UIApplication.sharedApplication().openURL(whatsappURL)
}
else {
print("Install Whatsapp")
}
}
}
注:info.plistにURLスキームを追加します
<key>LSApplicationQueriesSchemes</key>
<array>
<string>whatsapp</string>
</array>
これを試してみてください...
guard let url = URL(string: "https://wa.me/your_number") else {
return //be safe
}
if #available(iOS 10.0, *) {
UIApplication.shared.open(url, options: [:], completionHandler: nil)
} else {
UIApplication.shared.openURL(url)
}
これは不可能です。URLスキームでWhatsAppを開くだけです。