8

如何将我的应用程序中的按摩发送到whatsapp中的特殊号码,我知道此代码可以与whatsapp上的群组或联系人分享按摩

Intent waIntent = new Intent(Intent.ACTION_SEND);
waIntent.setType("text/plain");
String text = "Sorry For Interruption,I'm Just Trying Something";
waIntent.setPackage("com.whatsapp");

if (waIntent != null) {
    waIntent.putExtra(Intent.EXTRA_TEXT, text);//
    startActivity(Intent.createChooser(waIntent,"Share with"));

但我想将按摩发送到“966xxxxxxx”之类的特殊号码,我该怎么做?

4

2 回答 2

5

这是一个解决方案:

private void openWhatsApp(String id) {

Cursor c = getSherlockActivity().getContentResolver()
            .query(ContactsContract.Data.CONTENT_URI,
                  new String[] { ContactsContract.Contacts.Data._ID },  
                  ContactsContract.Data.DATA1 + "=?",
                  new String[] { id }, 
                  null);

c.moveToFirst();
Intent i = new Intent(Intent.ACTION_VIEW, 
              Uri.parse(
                   "content://com.android.contacts/data/" +           
                    c.getString(0)));

startActivity(i);
c.close();
}

其中 id 是什么是应用程序 uri,例如 966123456789@s.whatsapp.net

于 2013-07-23T01:38:37.797 回答
0

您可以使用此代码向特定号码发送数据

void openWhatsappContact(String number) {
Uri uri = Uri.parse("smsto:" + number);
Intent i = new Intent(Intent.ACTION_SENDTO, uri);
i.setPackage("com.whatsapp");  
startActivity(Intent.createChooser(i, ""));}

那真的对我有用,喜欢你的代码:)

于 2015-08-22T07:57:07.517 回答