2016-06-22 180 views
1

我发现了一些通过whatsapp发送消息的代码。事情是这样的:
通过whatsapp使用Intent发送消息

Button send=(Button)findViewById(R.id.sendbtn); 
    EditText input=(EditText)findViewById(R.id.inputtxt); 
    final String txt=input.getText().toString(); 

    send.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent sendIntent=new Intent(); 
      sendIntent.setAction(Intent.ACTION_SEND); 
      sendIntent.putExtra(Intent.EXTRA_TEXT,txt); 
      sendIntent.setType("text/plain"); 
      sendIntent.setPackage("com.whatsapp"); 
      startActivity(sendIntent); 



     } 
    });` 

的代码工作,但在WhatsApp的屏幕显示了,我选择一个联系人,我WhatsApp的关闭和我的应用程序显示出来。还有什么要添加发送消息?

回答

1

你的所作所为是正确的,根据https://www.whatsapp.com/faq/android/28000012

它打开了WhatsApp,让你选择联系人,将消息发送给

Intent sendIntent = new Intent(); 
sendIntent.setAction(Intent.ACTION_SEND); 
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send."); 
sendIntent.setType("text/plain");sendIntent.setPackage("com.whatsapp"); 
startActivity(sendIntent); 

或者,您也可以选择一个联系人,然后whatapps将与选定的联系人打开。然后您可以从该窗口中添加自己的文字。

一看便知这个问题:How do I open conversation of a particular contact in Whatsapp

你不能做的是使用的意图,直接从您的应用程序将消息发送给特定的联系人。 (我认为这是一个关于whatsapp的反垃圾邮件决定)。

1

尝试更改如下代码:

Button send=(Button)findViewById(R.id.sendbtn); 
EditText input=(EditText)findViewById(R.id.inputtxt); 


send.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 

     final String txt = input.getText().toString(); 

     Intent sendIntent=new Intent(); 
     sendIntent.setAction(Intent.ACTION_SEND); 
     sendIntent.putExtra(Intent.EXTRA_TEXT,txt); 
     sendIntent.setType("text/plain"); 
     sendIntent.setPackage("com.whatsapp"); 
     startActivity(sendIntent); 



    } 
});` 
相关问题