将消息发送到WhatsApp中的特定号码

时间:2015-01-22 08:03:26

标签: android whatsapp

我正在使用此代码,以便在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并显示该号码,但文本消息未填写在输入框中。怎么解决这个问题?

1 个答案:

答案 0 :(得分:0)

更改Intent.ACTION_VIEW 到Intent.ACTION_SEND

并添加 whatsapp.setType( “text / plain的”);