2016-08-05 47 views
0

在聯繫人列表中,有推出了WhatsApp實現如下選項:選擇短信中,WhatsApp的,或致電在我的Android應用程序發送消息

// Country code is required 
final String phoneNumber = "+15555555555"; 
final String packageName = "com.whatsapp"; 

Intent intent = getPackageManager().getLaunchIntentForPackage(packageName); 

if (null == intent) { 
    // Launch Google Play at WhatsApp homepage 
    intent = new Intent(Intent.ACTION_VIEW); 
    intent.setData(Uri.parse("market://details?id=" + MESSAGE_PACKAGE_NAME)); 
    startActivity(intent); 
    return; 
} 

intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("smsto:" + phoneNumber)); 
intent.setPackage(packageName); 
startActivity(intent); 

但這隻能讓我通過發送郵件WhatsApp的。

卸下包名和意圖類型設置爲

intent.setType("vnd.android-dir/mms-sms"); 

推出的SMS應用。

如何在Android設備上安裝的所有應用程序中選擇使用電話號碼和標識符(環聊,短信,Skype,線路,電報,Viber,WhatsApp等)?

+0

我相信它的應用程序在首選SO文檔現在發佈這些。 – Shaishav

+0

@Shaishav,是否可以移動帖子? –

回答

1

幸運的Android Intent.createChooser是足夠聰明弄清楚,瞭解電話號碼作爲標識符:-)

// Country code is required 
String phoneNumber = "+15555555555"; 
Uri uri = Uri.parse("smsto:" + phoneNumber); 
Intent intent = new Intent(Intent.ACTION_SENDTO, uri); 
startActivity(Intent.createChooser(intent, "Send message")); 
相關問題