[英]Android: how to pre-populate an SMS message
我正在編寫一個應用程序,當使用普通android SMS Messenger時,該應用程序需要使用聯系人的名字預填充SMS消息。
例如,如果我的聯系人姓名為Alex Smith。
當我選擇Alex Smith輸入消息時,我希望文本框已經有
'Alex,'
在SMS的開頭。
請問我該如何實現?
從聯系人中獲取聯系人姓名,方法如下:
String contactName = "Alex"; // get it from selected contact
Intent intent = new Intent( Intent.ACTION_VIEW, Uri.parse( "sms:" + phoneNumber ) );
intent.putExtra( "sms_body", contactName+"," );
startActivity( intent );
您無法更改系統應用程序,但是可以將“共享意向”從您的應用程序發送到SMS應用程序。 您還記得,在某些應用程序中按“共享”按鈕時,您可以與SMS共享smth。 (您將收到帶有應用意圖的文本的SMS)。 因此,將聯系人的姓名放在“共享意圖”中並將其發送到SMS應用程序。
有點晚了,但我希望它將對將來的用戶有所幫助。
void prePopulateSMS(final String mblNumVar, final String smsMsgVar) {
Log.d(TAG, "prePopulateSMS called. smsMsgVar: " + smsMsgVar);
Intent smsIntent = new Intent(android.content.Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("address", mblNumVar);
smsIntent.putExtra("sms_body", smsMsgVar);
startActivity(smsIntent);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.