我正在使用此代码,以便在WhatsApp中向特定号码发送消息:
public void sendMessage() {
runOnUiThread(new Runnable() {
@Override
public void run() {
String whatsappid = "962795195996@s.whatsapp.net";
Cursor c = getContentResolver().query(
ContactsContract.Data.CONTENT_URI,
new String[] { ContactsContract.Contacts.Data._ID },
ContactsContract.Data.DATA1 + "=?",
new String[] { whatsappid }, null);
c.moveToFirst();
Intent whatsapp = new Intent(Intent.ACTION_VIEW,
Uri.parse("content://com.android.contacts/data/"
+ c.getString(0)));
c.close();
whatsapp.putExtra(Intent.EXTRA_TEXT, "Test...");
whatsapp.setPackage("com.whatsapp");
try {
startActivity(whatsapp);
} catch (android.content.ActivityNotFoundException ex) {
ex.printStackTrace();
}
}
});
}
运行代码时,会在消息历史记录中打开WhatsApp并显示该号码,但文本消息未填写在输入框中。怎么解决这个问题?
答案 0 :(得分:0)
更改Intent.ACTION_VIEW 到Intent.ACTION_SEND
并添加 whatsapp.setType( “text / plain的”);